«refactoring» etiketlenmiş sorular

Yeniden düzenleme, mevcut bir kod gövdesini yeniden yapılandırmaya yönelik, dış davranışını değiştirmeden iç yapısını değiştiren disiplinli bir tekniktir.

7
Kod bazı ortak kodlara nasıl refactor edilir?
Arka fon Devam eden bir C # projesi üzerinde çalışıyorum. Ben bir C # programcı, öncelikle bir C ++ programcısı değilim. Bu yüzden temelde kolay ve yeniden düzenleyici görevler atandım. Kod bir karmaşa. Bu büyük bir proje. Müşterimiz yeni özellikler ve hata düzeltmeleri ile sık sık yayınlanmasını istediğinden, diğer tüm …

7
Eğer akıcı bir kodlayıcı iyi uygulamaları göz ardı ederse, akıcılığı ona karşı çalışmıyor mu? [kapalı]
Kapalı . Bu soru görüş temelli . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Bu yayını düzenleyerek gerçekler ve alıntılarla yanıtlanabilmesi için soruyu güncelleyin . 4 yıl önce kapalı . Oldukça büyük ve buggy bir uygulama üzerinde çalışıyorum - ve yazılma şekli nedeniyle (size ayrıntıları ayıracağım, ancak …

10
Kopyalama / yapıştırma kalıbı nasıl düzeltilir?
Çalıştığım yerde, insanlar (danışmanlar) özellikleri olabildiğince hızlı yayınlamak için baskı altında hissediyorlar. Bu nedenle, işleri doğru şekilde nasıl yapacağınızı düşünmek için çok fazla zaman harcamak yerine, hiçbir şeyi kırmak istemedikleri için, kod farklı modüllerden kopyalanır ve değiştirilir. Kod tabanı tüm şirkete açık olduğundan bunu önlemek kolay değildir. Birçok insan bu …

7
Çoğunlukla bir regex içeren büyük işlevleri yeniden düzenlemeli miyim? [kapalı]
Kapalı . Bu soru görüş temelli . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Bu yayını düzenleyerek gerçekler ve alıntılarla yanıtlanabilmesi için soruyu güncelleyin . 5 yıl önce kapalı . Az önce yaklaşık 100 satırlık bir fonksiyon yazdım. Bunu duyduğunda, muhtemelen bana tek sorumlulukları anlatmak ve beni …

5
Neden yeniden düzenleyeceğim kod için testler yazmalıyım?
Ben büyük bir eski kod sınıfı yeniden düzenleme. Yeniden düzenleme (sanırım) bunu savunuyor: eski sınıf için test yazma halkı sınıftan ayırmak Sorun: Sınıfı yeniden düzenlediğimde, 1. adımdaki testlerimin değiştirilmesi gerekecek. Örneğin, bir zamanlar eski bir yöntemde olan, şimdi ayrı bir sınıf olabilir. Bir yöntem neydi şimdi birkaç yöntem olabilir. Eski …

2
Bir yapıcı yerine bir fabrika yöntemi kullanmalıydım. Bunu değiştirebilir ve yine de geriye dönük uyumlu olabilir miyim?
Sorun Diyelim ki bir dosyadan veri okumak için DataSourcebir ReadDatayöntem sağlayan (ve belki de diğerlerini basitleştirelim) adlı bir sınıfım var .mdb: var source = new DataSource("myFile.mdb"); var data = source.ReadData(); Birkaç yıl sonra, veri kaynağı olarak dosyalara .xmlek olarak .mdbdosyaları destekleyebileceğime karar veriyorum . "Veri okuma" uygulaması .xmlve .mdbdosyalar için …

6
“Kod geliştirme” nin önceliği ve ciddiyeti nasıl belirlenir?
Hata izleme sistemimizde "öncelik" ve "önem derecesi" alanlarımız vardır. Şiddeti "kullanıcıyı nasıl etkiler" ve önceliği "ürünü nasıl etkiler" olarak tanımlıyoruz. Benim sorum, "kod geliştirme" görevinin önem derecesine ve önceliğe göre nasıl sınıflandırılacağı ile ilgili. İyileştirmenin herhangi bir davranışı değiştirmediğini, ancak bunu "daha iyi bir kod" haline getirdiğini varsayalım. Genel olarak …

10
büyük değişiklikler önermek / stajyer olarak yeniden yazmak [kapalı]
Kapalı. Bu soru konu dışı . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Soruyu Yazılım Mühendisliği Yığın Değişimi için konuyla ilgili olacak şekilde güncelleyin . 4 yıl önce kapalı . Bağlam: dahili bir proje (pek çok insanın kullandığını sanmıyorum) bu eski güncelliyoruz Sorunlar: mvc çerçevesini kötüye kullanır …

11
Başka bir şey üzerinde çalışırken önceden var olan hataları düzeltmeli misiniz?
Uzlaşma: Yeni bir özellik üzerinde çalışırken veya bir kusuru giderirken, kodda eski bir sorun bulursunuz. Ne yapmalısın? Düzelt ve kodun davranışını değiştirme riski. Ya şimdiye kadar bir şans eseri çalışıyor ya da kusur tespit edilmedi ya da kimsenin bildirmeye zaman ayırmaya değer. Bunu yalnız bırakmalı ve sorunun daha sonra çalışmasını …

7
Boyler için bir savunma?
Bana göre, kaynak plakası açıkçası kötü. Ancak, kazan plakasını azaltmak için herhangi bir girişimde direnç gösteren bir geliştiriciyle tanıştım. Zaman içinde geliştirdiğim nefreti aşan, kolayca oluşturulmuş, iyi düşünülmüş bir argümana sahip olmadığımı fark ettim. Daha az kaynak plakası lehine ikna edici bir argüman oluşturabilmem için, bazı karşı düzenlemeler nelerdir? Başka …

3
Tek bir uygulama oluşturan çokluk. Umutsuz mu? Servis bulucu mu kullanıyorsunuz?
Enjeksiyonları kabul etmek yerine doğrudan bağımlılıklarını oluşturan 1001 müşterimiz olduğunu varsayalım. Patronumuza göre 1001'i yeniden düzenlemek bir seçenek değil. Aslında kaynaklarına erişime bile izin verilmiyor, sadece sınıf dosyalarına. Yapmamız gereken, bu 1001 müşterinin geçtiği sistemi "modernize etmek" tir. İstediğimiz her şeyi yeniden düzenleyebiliriz. Bağımlılıklar bu sistemin bir parçasıdır. Ve bu …

10
Bilinen bir hata giderildiğinde yeni hataların başka bir yerde görünmesinin nedeni ne olabilir?
Bir tartışma sırasında meslektaşlarımdan biri, hataları çözmeye çalışırken mevcut projesiyle ilgili bazı zorlukları olduğunu söyledi. “Bir hatayı çözdüğümde, başka bir yerde başka bir şey çalışmayı bırakıyor” dedi. Bunun nasıl olabileceğini düşünmeye başladım, ama anlayamıyorum. Bazen doğru iş yapmak ve üzerinde çalıştığım kod parçası genel bir görünümü için çok yorgun / …

3
Dinamik bir dilde yazılmış kodda nasıl gezinir ve yeniden düzenlersiniz?
Python, Ruby veya Javascript yazmanın çok az kaynak gerektirdiğini seviyorum. Basit fonksiyonel yapıları seviyorum. Temiz ve basit sözdizimini seviyorum. Bununla birlikte, dinamik bir dilde büyük bir yazılım geliştirirken gerçekten kötü olduğum üç şey var: Kodda gezinme Kullandığım nesnelerin arayüzlerini tanımlama Verimli yeniden düzenleme Ben basit editörler (yani Vim) yanı sıra …

4
Belirgin bir soyutlama olmadan kod çoğaltma
Kod satırlarına baktığınızda, mantıktaki rolünü sadakatle tanımlayan tematik bir soyutlamaya uymayacağınız bir kod çoğaltma vakasıyla hiç karşılaştınız mı? Ve bunu ele almak için ne yaptın? Kod çoğaltmadır, bu yüzden ideal olarak, örneğin kendi işlevini yapmak gibi bazı refrakterleme yapmamız gerekir. Ancak kodun onu tanımlamak için iyi bir soyutlaması olmadığından, sonuç, …


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.