Deneyimden bahsetmişken ...
Katıldığım ilk Açık Kaynak projesi, ilk başladığımda hep işemek ve sirke ile doluydum.
Hemen yaptığım şey, bir grup kaynak dosyadan geçmek ve kişisel tercihlerime göre stilize etmeye başlamak, büyük bir yama oluşturmak ve göndermekti.
'İyi' (benim gibi) olan biriyle çalışıyorsanız yamayı hemen reddeder. Çoğunlukla, açık kaynaklı bir projeye katkıda bulunduğunuzda, düzeltmelerinizi tek bir sorunu ele alan ısırık boyutunda parçalara ayırmanız beklenir. 'Tüm gotolar kaldırıldı' bir atomik işlem için iyi bir örnek değil. İlk önce daha küçük, iyi belgelendirilmiş taahhütlere ayırsanız bile reddedilebilir.
Bunun nedeni, kodun zaman içinde birden fazla kişi (farklı stillerle) üzerinde çalıştığından, bir geliştiricinin stiline uyacak şekilde tüm kitaplıktaki değişiklikleri kabul etmek gerçekten mümkün değildir. Stili hatırlamak için stil değiştirmek mümkün olsaydı, her açık kaynak projesi asla ilerlemezdi, çünkü kod sürekli olarak farklı devs stillerine uyacak şekilde düzenlenirdi.
Kodu yeniden düzenleme ve işlevsellik ekleme (veya kullanımdan kaldırılmış hammaddeyi kaldırma) genellikle 'temizleme' kodundan önceliklidir.
Açık kaynak kodlu bir projede çalışmanın en zor ve ödüllendirici kısmı, gönderdiğiniz değişiklikleri neden önerdiğiniz sorulur . Eğer iyi bir neden verebilirseniz, yamanızın gönderilme şansı daha yüksektir.
Benim tavsiyem, ilk önce yapmaya çalıştığınız şeylerin tadına bakmak için bu değişikliklerden birkaçını tek bir kaynak dosyada yapmanızdır. Değişiklikler iyi gerekçelendirilmiş ve kabul edilmişse, bunun gibi daha fazla değişikliğin projenin kalitesini iyileştirip iyileştirmeyeceğini sorun. Bu şekilde, yamalarınız gelecekte reddedilirse, hiçbir şey için çok çaba harcamayacaksınız.
Açık kaynak geliştirmek kod yazmaktan daha fazlasıdır. Sen bekçisi (kontrol itme erişim kim DEVS) çünkü bir güven ilişkisi kurmak için çalışıyoruz olacak projenin bütünlüğünü korumak için gerekeni yap. Daha fazla yama gönderdikçe, ağ geçidi denetleyicisi tarzınız için daha iyi bir fikir edinir ve değişikliklerinizi haklı çıkarmanıza gerek kalmaz.
Bu zaman alan bir süreç ama çok faydalı. Sadece bakabilmek ve bir başkasının kodunu eleştirmekten çok şey öğrenmekle kalmayacak, aynı zamanda kendi tarzınıza da eleştirileceksiniz.
'Başkalarının kodlama stilindeki hataların adaletsizliğini düzeltmeye' çalışırken çok zaman kaybetmeden kendinize şunu sorun:
Önerdiğiniz değişiklikler projeye değer katmaya mı, yoksa kendi iç üslup dininize mi dayanıyor?
Stack Overflow (ve ilgili Stack Exchange siteleri) konusunda çok fazla din vardır . Ben demek çok . İnsanlar stil hakkında durmadan düşünür ve konuşurlar, sanki onun hakkında ne kadar çok konuşursanız, 'mükemmel, ideal, yıkılmaz, yanılmaz' kodlama stiline o kadar yaklaşırsınız. Bunun hakkında çok konuşuyorum çünkü eğlenceli.
Açık Kaynak dünyasında, stil çok önemli değil. Fonksiyon olduğunu .
Not: Bu tavsiyelerin tümü, bekçinizin makul ve yetenekli bir programcı olduğunu varsayar. Eğer öyleyse, tek endişesi 'bebeklerini' korumak olan whiny b & # & es'den birine takılmadığınız için kendinizi şanslı sayın. Onlar do birini karşılaşmanız durumunda şaşırmayın, dışarı vahşi mevcuttur.
goto
mutlaka bir karmaşa değildir. Kullanımının mükemmel bir şekilde haklı gösterildiği birçok durum vardır.