Tasarım kalıplarını ve yeniden düzenlemeyi kasıtlı olarak nasıl uygulayabilirim? [kapalı]


10

Kalıpları yeniden düzenleme kitabını okuyordum ve becerileri uygulama şansını nasıl elde edebileceğimi merak ediyordum, çünkü kalıpları yeniden şekillendirmenin ve kullanmanın yeni yolları üzerinde kasıtlı uygulama olmadan becerilerim gelişmeyecek.

Ancak ofis işleri, her işi olabildiğince çabuk bitirmemi gerektiriyor. Çoğu zaman, projenin tasarımı ve mimarisi benim tarafımdan kontrol edilmiyor, sadece mevcut kodla benzer stili takip edebiliyorum. Bazen kötü bir tasarıma sahip bir proje vardır, ancak tasarım becerisi benden daha iyi olan başka bir geliştirici de vardır ve projeyi yeniden düzenlemek için zaten tüm planı vardır, böylece sadece planını takip ediyorum. Pratik yapma fırsatını nasıl elde edebilirim?

Yanıtlar:


6

Açıkçası kapınıza çarparak bir fırsatın gelmesini bekleyemezsiniz. Beceri pratiğine çok meyilli iseniz, daha iyi yetenekli geliştiricinin ne olduğuna bakılmaksızın tasarımlarınızla gelmeniz harika olurdu . Sadece fikirlerinizi savurun ve benim var olan bu kötü tasarım için nasıl yararlı olacağını güzel bir sohbet. Belki ilk birkaç denemede başarısız olursunuz, ancak çok şey öğrenirsiniz ve (ayrıca daha iyi yetenekli geliştirici meslektaşınızın da sizden öğrenecek bir şeyleri olduğunu görürsünüz).

Kısacası tasarımlarınızı da masaya koyun ve başka ne kadar iyi veya kötü durduğunuzu bilin, becerinizi karşılaştırmanın bir yolu yoktur.


3

Uygulama, uygulama, uygulama. Hobi projeleri kesinlikle iyi bir fikirdir. Ve öğrenmek istiyorsanız, bir başkasının açık kaynak projesi üzerinde çalışmak genellikle daha iyidir , bu şekilde kullandıkları kalıplardan öğrenebilirsiniz.

Ben içine bakarak öneririm dojoların kodlama ve kod katalarını . Bu kavramın arkasındaki fikir, iyi tanımlanmış yönetilebilir uygulama problemleri üzerinde pratik yaparak, problemler kendi kodunuzda ortaya çıktığında daha iyi donanıma sahip olacağınızdır. (Web siteleri bunu benden daha iyi açıklıyor, kesinlikle kontrol edin.)

Yan nokta: Oldukça örüntü olmayan önemli bir şey, test söz konusu olduğunda uygun alışkanlıklardır.

Ayrıca, son yorum: ofis işleri, her görevi olabildiğince çabuk bitirmenizi gerektirir. Çok hızlı çalışır ve çok fazla hata yaratırsanız, daha sonra geri dönmek zorunda kalacağınız için görevi bitirmediniz . Bu bir yeniden çalışma. Bir şeyleri yapmanın doğru yolunu öğrenmek için yeterli zaman ayırmazsanız, kısa vadede kendiniz için daha fazla iş yaratacak ve uzun vadede iyileşmek için uygun kalıpları öğrenmeyeceksiniz. Size ve işvereninize uygun tasarım kalıpları uygulamanıza değer. (Bununla birlikte, tasarım desenleri onları aşırı derecede veya arka plan anlayışı olmadan uygulayan insanlar tarafından sıklıkla aşırı kullanılabilir ve kötüye kullanılabilir, ancak bu ayrı bir noktadır.)


Yeniden işleme ilginç bir konudur .. 37signals.com/rework bu konuda iyi bir kitaptır.
carpeliam

1
Oh, bir yorum daha, ve bu diğer insanların kalıplarını takip etmekle birlikte gider. Ofisinizdeki insanları kaynak olarak kullanın. Eğer bir şeyi yeniden düzenleme konusunda planları varsa, düşünce süreçlerini açıklamalarını sağlayın ve size öğretmeye zorlayın. Ofisiniz kişisel mesleki gelişiminize odaklanmıyorsa, bir sorun var demektir.
carpeliam

Bir görevin ne zaman bittiği ile ilgili not için +1.
Péter Török

1

Aşağıdaki seçeneklerin olduğunu düşünüyorum:

  • Çalışma dışı zaman üzerinde pratik yapmayı düşünün - sadece işte kalın ve kodu VCS'ye taahhüt etmeden kodu yeniden düzenlemeyi deneyin. Kasıtlı pratik yapmak için değişiklikleri yapmanıza gerek yoktur. İkinci doğanız oluncaya kadar bir prosedürü yeniden oluşturmanız gerekir.
  • Yeniden düzenlemenin daha uygun olduğunu iş arkadaşlarınızla tartışmak için iletişim becerilerinde uzmanlaşmayı düşünün. Önemli Konuşma , bir iletişimin mekaniğini anlamak için gerçekten yararlıdır.
  • Evcil hayvan projesi - bir evcil hayvan projesi oluşturun ve becerilerinizi pratik edin. Çok yararlı olması gerekmez. Amacınız programlama becerilerini uygulamaktır.
  • Hizmetlerinizi açık kaynak projesinde sunmayı düşünün - bu, geri bildirim alabileceğiniz için kasıtlı uygulama için daha avantajlıdır.
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.