Kodda yorum yapmaktan hoşlanmayan bir ekip üyesi ile nasıl baş edebilirim?


182

Ekip üyelerimden biri kodunda yorum yapmaktan kaçınıyor.

Kodu kendiliğinden belgelenmiyor ve diğer programcılar kodunu anlamakta zorlanıyorlar.

Ondan kodunu yorumlamasını birkaç kez istedim, ancak daha sonra yapacağına dair mazeret veya iddialarda bulundu. Kaygısı, yorum eklemek çok zaman alacak ve projeleri geciktirecek.

Kurallarını doğru bir şekilde belgelemeye ikna etmesi için kendisine hangi argümanı sunabilirim?

Bu notta, kod yorumlarına odaklanmak yanlış mıyım yoksa bu, ele alınması gereken daha büyük bir sorunun göstergesi mi?


109
Yorumlarınız için yorum yapmak kodu daha iyi yapmaz. Kod, yorumlar olmadan (neden dahil) anlaşılabilir ise, o zaman para cezası verin.
Martin York

63
Evet, ve bir yarış durumunu veya çıkmazı çözmek için bir kod parçasının karmaşıklığı üçe katlanırsa, bu konuda yorum yapmayın! İnsanların, kodun neden olduğu gibi olması gerektiği ve deneysel değişiklikler yaparlarsa neden gizemli yollarla kırıldığının bulmacasını çözmelerine izin verin. Herkes eşzamanlılık satranç ustası olmalı ...
Kaz

12
@Kaz Sarcasm (İnşallah) metne iyi çevirmez.
deworde

10
@deworde & artjom - evet, bu iğnelemedir. hayır, olabileceği kadar temiz bir şekilde görünmüyor, ama açıkça iğneleyici.

17
Aşağıdaki Dale Carnegie prensibi Eğer o istemiyoruz belirtti comment..you istemiyorum anlamaya çalışmalısınız geciktirmek onun diğer en olmaz yorumda bulunmamakla eğer ona söyleyebiliriz project..so Kodu anlayabiliyorum ve bu da projeyi daha da geciktirecek .. bu kesinlikle yardım etmeli ..
Anirudha

Yanıtlar:


430

Yalnızca yorumlar daha iyi kod için yapılmaz ve yalnızca "daha fazla yorum" için bastırmanın, /* increment i by 1 */stil yorumlarından biraz daha fazlasını vermesi olasıdır .

Öyleyse kendinize bu yorumları neden istediğinizi sorun . “En iyi uygulama”, nedenini anlamadığınız sürece bir argüman sayılmaz.

Şimdi, yorum kullanmanın en çarpıcı nedeni, kodun anlaşılmasının daha kolay olması ve insanların yorum eksikliğinden şikayet etmeleri durumunda, ya ipucu olmayan papağanlar ya da çalıştıkları kodu anlamakta zorlanıyorlar.

Bu yüzden eksik yorumlardan şikayet etmeyin: okunamayan kodlardan şikayetçi olun. Ya da daha iyisi, şikayet etme, sadece kod hakkında sorular sormaya devam et. Anlamadığınız bir şey için, yazan kişiye sorun. Yine de bunu yapmalısın; okunamayan kod ile daha fazla soru soracaksınız. Ve daha sonra bir kod parçasına geri dönerseniz ve ne yaptığını doğru hatırladığınızdan emin değilseniz, aynı soruyu tekrar sorun.

Yorumlar düzeltebilirse ve meslektaşınızın işleyen bir beyni varsa, bir noktada kodu yorumlamanın size her zaman aptal sorular sormaktan çok daha kolay olduğunu fark edecektir. Ve soruları bulamıyorsanız, o zaman belki bu kod zaten mükemmel bir şekilde okunabilir durumdadır, ve hatalı olan sizsiniz - sonuçta, tüm kodların yorumlara ihtiyacı yoktur.

İnsanların becerileri cephesinde, küçümseyici ses kullanmaktan kaçınmak veya her ne pahasına suçlamaktan kaçının; Sorularınız konusunda ciddi ve dürüst olun.


269
+1 "eksik yorumlar hakkında şikayet etme: okunamayan kod hakkında şikayet etme"
Md Mahbubur Rahman,

4
Ya kod ile ilgili herhangi bir sorunun cevabı "Bunu anlamak için ne yaptın?"
Saul,

40
+1: Okunabilir işlev isimleri için bastırmanın faydaları olabilir ... Kod İnceleme: "xg_jkhsfkasq'ın ne yaptığını anlayamıyorum". “Ah, birincil besleme tamponunu temizliyor, şimdi bırakabilir miyim?” "Elbette, ancak flush_primary_buffer işlevini yeniden adlandırana kadar onaylamam konusunda kararsızım" "Ah, ama aynı zamanda ana önbelleği de temizliyor, böylece bu ad yanıltıcı olacak" "NEDİR? Bu önbelleği temizlemeyin, bu Sistemi durduracaksınız! Bu mantığı değiştirirken, bu işlevi yeniden adlandırır mısınız? "
deworde

18
Kod okuyamadığım izlenimini vermekten endişe ediyorum. Teknik olmayan bir yönetici, sürekli olarak Bob'dan yardım istediğimi fark edebilir çünkü Bob'un kodu benim için fazla gelişmiş. Bu Bob'un 'gelişmiş' bir geliştirici olduğu ve onun seviyesinde çalışmaya hazır olmadığım anlamına gelir.
Rob P.

5
@Rob P. Korkuyu görüyorum, ancak kodu okuyamıyorsanız ve kodu korumanız bekleniyorsa, kod iyi yazılmış değildir veya yeterince bilginiz yoktur. Yeterince bilmiyorsanız sormanız gerekir. Eğer soran kodun okunmasının zor olduğunu ortaya çıkarırsa, düzeltilmesi için bastırın. İşin püf noktası, eğer sosyal mühendislik yoluna girecekseniz, Bob'un masanıza mı gittiğinize ya da ona mı gideceğinize göre karıştırmak ve bir şeyleri işaret etmek konusunda çok aktif olmak olacaktır. Sonuçta, teknik olmayan bir yönetici tartışmanın içeriğini kavrayamaz ...
deworde

114

Kendini belgeleyen kod yazarken ya da faydalı yorumlar yazmakta zorlanan birçok geliştiriciyle tanıştım. Bu tür insanlar çoğu zaman bunu doğru yapmak için yeterli öz disiplin veya deneyimden yoksundur.

Asla işe yaramaz olan, "daha fazla yorum eklemelerini söylemek". Bu, kendi disiplinlerini veya deneyimlerini artırmayacaktır. IMHO işe yarayabilecek tek şey sık sık kod incelemeleri yapmak ve yeniden düzenleme oturumları yapmaktır. Bir dev bir görevi tamamladığında, anlamadığınız kodun herhangi bir bölümünü açıklamasına izin verin. Derhal, her ikiniz de 6 ay sonra anlayacağınız şekilde kodu yeniden gözden geçirin veya belgeleyin.

Bunu birkaç ay boyunca, haftada en az iki kez yapın. Yeterince şanslıysanız, diğer geliştiriciler bu oturumlardan öğrenerek inceleme sıklığını azaltabilir.


5
+1 bu, değişikliği bulduğum bir iş arkadaşına gerçekten uygulamanın, aslında onlarla birlikte oturmanın ve onların yanında incelemeyi / refactor yapmanın tek yoludur. Bir kod incelemesini reddetme konumunda değilseniz, bu zor olabilir. Bazen orta seviyedeyken, sadece yaşlıları ilgilendirmek zorunda kalırsınız ve dinlemiyorlarsa, yaşlı olana kadar burnunuzu ezin ve bu tür çöpleri veto edebilir
Jimmy Hoffa

1
Bir ekipteki genel geliştirici standardını geliştirme deneyimimde kod incelemeleri ve çift programlama en iyi yoldur. Takım içindeki knoledge ve becerilerin paylaşımı ile ilgilidir. Onsuz, geliştiricilerin zor yoldan öğrenmelerini sağlıyor ve üniversiteden mükemmel çıktıklarını varsayıyorsunuz. Endüstride bu uygulamanın genel eksikliği, muhtemelen okunaklı, iyi düzenlenmiş kod yazamayan 10+ yıllık deneyime sahip birçok geliştiricinin olmasının nedenidir.
Martin Brown

27

Henüz kimsenin kod incelemelerinden bahsetmediğinden şaşırdım. Kod değerlendirmeleri yapın! Kötü kaliteyi kontrol ettiğinde, sadece "yorum ekle" deme. Sürekli olarak sorular sorun ve kodunun ne yaptığını ve nedenini size söylemesini sağlayın. Not almak. Daha sonra, kod incelemesinin sonunda, notların bir kopyasını verin ve sorularınızı oldukça net bir şekilde ortaya koymasını söyleyin. Ya daha fazla yorum yaparak ya da sadece daha iyi kaliteyi sağlamak için kodunu yeniden gözden geçirerek (tercihen mümkün olduğunda ikinci)


2
+1 - Kodun herhangi bir kısmı hakkında bir soru sormanız gerekiyorsa, o kısım ya bir yorum ya da yeniden yapılanmaya ihtiyaç duyar, bu nedenle soruyu gelecekte başkası tarafından sorulması gerekmez.
Dunk

+1 Ayrıca şaşırmış kod / emsal değerlendirme cevapları çok düşük. Ekip düzeyinde kod incelemeleri uygulamak (bir kişiyi seçmemek için) sorunun çözülmesine yardımcı olabilir (ve belki de bilmediğiniz başkalarının bile olmadığını :). En uçta, değişikliklerinizi başka bir ekip üyesi tarafından gözden geçirilmediği sürece zorlamanıza izin verilmeyen, zorla bırakmayacak bir politika uygulayabilirsiniz.
Chris Lee

Şirketimin kod inceleme politikalarındaki @ChrisLee teknik olarak uygulanmadı, ancak bir hikaye Teste Hazır olarak işaretlenmeden önce, geliştirme çalışmasını kim yaparsa yapsın kod gözden geçirilmeli. CTO lol olsa bir check-in yaparken kod incelemesi yapmak oldukça ilginç
Earlz

18

Bu, takım çalışanınızın ürettiği koda bağlıdır. Eğer okursanız Temiz Kod Amca Bob kitabı sen o aslında tercih olduğunu göreceksiniz değil koduna yorum eklemek. Eğer kodun kendisi olması gerektiği gibi okunursa, yorum yapmak için herhangi bir ihtiyaç yoktur.

Durum böyle değilse veya pazarlık yapılmayan politikalardan dolayı yorum yapmanız gerekiyorsa, asıl soru, yorum yazmasını isteyen yalnızca siz mi, yoksa tüm takım mı yoksa takım / proje mi olduğu sorusudur. Önder. Eğer sadece sizseniz, neden bu kadar önemli olmadığını anlamak için diğer meslektaşlarınızla konuşmalısınız.

Proje liderinin yorumları eksikse, bunların eksiksizliğini bir parçası olarak da isteyebilirsiniz , yani gönderilen kodda yorum yoksa, çalışma henüz bitmedi. Mevcut işi bitinceye ve bu yorumlar için gerekli olana kadar başka işler yapmaya devam edemeyebilir. Ancak, bu tür bir zorlamanın büyük olasılıkla korkunç yorumlara yol açacağını aklınızda bulundurun (kodsuz yorumların tekrarlanmasını bekleyin).

Alçakgönüllü görüşüme göre tek uygulanabilir yöntem, sizin ve diğer herkesin yorumlardan elde ettiği gerçek kazancı tartışmaktır. Bunu sadece tartışma yoluyla anlamıyorsa, her zaman da zor yol vardır: yeni kod yazmalarına izin vermek yerine, mevcut kod üzerinde çalışmalarını sağlamak. Mümkünse, bunlara iki farklı çalışma alanı bulmalısınız - biri uygun faydalı yorumlar ile diğeri yorumlar içermez. Başkasının okunamayan ve yorumlanamayan kodunu okumak zorunda olmak, kendi çalışmanız için bir göz açıcıdır.

Hepimiz bir zamanlar oradaydık ve özensiz çalışmak için bir kaynağın orijinal yazarına kızdık. Her birimizin aynı zamanda okuryazarlığı önemsemeniz gerektiğini fark etmenizi sağlayan bir yazar olduğu ek bir yansımasıdır - bu nedenle, bu yansıması teşvik etmek için sonuçları meslektaşınızla tartışmayı unutmayın.


Yorumlardan gerçek kazançları tartışmak için +1. Yorumların kaynak koduna değer katması amaçlanmıştır.
Sparky

1
Re: "Bu tür bir zorlama büyük olasılıkla korkunç yorumlara yol açacaktır". Kodunuz gibi yorum yapmadıysanız, kod yapıldıktan sonra yorumları tekrar doldurmanız, onlara inanıp inanmamanızla ilgili neredeyse her zaman korkunç yorumlara yol açacaktır. Kodlama yaparken, tam olarak Niçin belirli bir şeyi yaptığınızı tam olarak bildiğiniz zamandır. Başkalarına haber vermenin zamanı geldi. İşlemi tamamladıktan sonra yorum yaparsanız, kod yazarken ne düşündüğünüzü bile hatırlamayacaksınız, bu nedenle sadece yorum yapmak için işe yaramaz bir yorum atama eğilimindesiniz.
Dunk

3
daima kitabın yaklaşımında bir sorun vardı. Yorumlar v., Hiçbir miktar temiz kodun yapamayacağı bir iş sürecini / mantığını (veya nedenini) açıklamakta faydalı olabilir.
bharal

Koddaki yorumlar gerekli olmasa da, en azından Javadoc
Danubian Sailor

2
Temiz Kod iyi bir kitaptır, ancak müjde olarak değerlendirilmemelidir. Sağduyu uygulamak ve ne işe yaradığına kendiniz karar vermelisiniz. Yorumlardaki tavsiyelere katılmıyorum, çünkü programlama dilleri nedenine bağlı olarak yetersiz olan bir sorunun nasıl olduğunu açıklamaya yöneliktir. SKU ürününe bir ülke kodu ekleyen Google Alışveriş için kod yazıyordum. Kodun ne yaptığı açıktır, ancak aynı ürün kodunu yalnızca bir kez kullanabildiğinizi bilmiyorsanız, farklı pazarlarda bile, bunu neden yaptığımı bilemezsiniz. Eklediğim yorum açıklığa kavuşturuldu.
GordonM

10

Talimatları takip edemeyen bir çalışanınız varsa, onu işten çıkarın ve kariyerinin ilerlemesine yardımcı olmayacağının kesin olduğundan emin olun. Kodlama tarzındaki tutarlılık bir ekip için kritik öneme sahiptir ve eğer herkes yorum yazıyorsa ve bu değilse, kodlama stiline zarar verir.

Bu, muhtemelen ona yardım edebileceğini söyledi. Tecrübelerime göre, biri yorum yapmanın çok zaman aldığını protesto ettiğinde , psikolojik bir engel var ...

  1. Kod / tasarım seçimleri konusunda bilinçli ve onları nesirlendirmek istemiyor. (Kod incelemeleri, birisinin kendi güvenini arttırmak ve onları yıkmak kadar faydalı olabilir.)
  2. Çok doğrusal çalışıyor ve ileride pek düşünmüyor. Yorum yapmak acı vericidir çünkü niyetini farklı bir şekilde oluşturmak için yazmak üzere olduğu ani kodu çalışma hafızasından çıkarmaya zorlar. (Bu doğruysa, yorum yapmak kod kalitesi için çok önemlidir.)
  3. Tarihsel olarak insanlar yorumlarını anlamıyor.

Bir programcının, yorumların testler gibi olduğunun farkına varması önemlidir: Sadece gelecekteki kullanımlar için değildirler - Programcının kendisi içindir. Yaklaşımı hakkında farklı düşünmeye zorlarlar.

Bunların hiçbiri CI, testler veya kod incelemelerinin yerine geçmez. Kodlamanın kendisi değil, kod yazmanın çok kritik bölümlerinden sadece bir tanesi.


3
Tehditlerin mutlaka etkili olacağını sanmıyorum, zorbalık (niyet olmasalar bile) ile karşılaşabilirler ve bir kural olarak kodlayıcılar daha yukarılardan gelen düzenlemelere küstah olma eğilimindedir ve bu durumda sadece topuklarını daha da kaz. Son bir çare olarak, ancak sadece son çare olarak gelebilir.
GordonM

@GordonM sen daha iyi olurdu sence değil onun davranışlarının uygun olmadığını ve devam uygunsuz davranış sonuçlarının ne olabileceğini zaman bir çalışan anlatmak için?
kojiro

Hiç bir şey söylememek kesinlikle iyi bir fikir değildir, ancak insanları tehdit etmek, özellikle yorum tarzı gibi göreceli küçük bir şey yüzünden bir korku ortamını artıracaktır. Eğer ona makul bir şekilde neden açıklarsanız, ekibin bu kadar önemli yorum yapmasının neden önemli olduğunu düşündüğünü açıklarsanız. Ama birisinin çuvalla göreceli olarak küçük bir şey yüzünden beni tehdit etmesi durumunda, onun yerine başka bir iş aramaya daha yatkın olacağımı biliyorum.
GordonM

@GordonM Aslında söylediklerimin tehdit edici olduğu fikrine istisna oldum, ama yine de düzelttim.
kojiro

8

Kod inceleme yazılımını edinin ve iyi kullanın.

Fırın kullanıyoruz ve seviyoruz. Her değişikliğin gözden geçirilmesi gerektiğine dair bir politikamız var (geliştiricilerin etiketler ve çatışmasız birleşmelerde kendileri için incelemeleri artırmalarına / onaylamalarına izin vermemize rağmen (çoğumuz rebaseif kullanıyor olsak da);

Açık olmayan kod, kod incelemesinin reddedilmesinin nedenidir. Düzeltmenin yorum veya daha açık kod olması önemli değil, ancak gözden geçirenin anlayabilmesi gerekir. Bazı geliştiriciler kodu yeniden yazmayı tercih eder, ancak bazıları (kendim dahil) yorumlarda niyetini ifade etmeyi genellikle daha kolay bulur (kod ne yaptığını kolayca gösterebilir, ancak ne yapması gerektiğini göstermek daha zordur ).

Kodun netliği hakkında herhangi bir soru varsa, gözden geçiren her zaman kazanır. Tabii ki yazar anlıyor, çünkü yazmışlar. Başka birine açık olması gerekiyor.

Kiln gibi bir yazılım kullanarak, hiçbir değişiklik gözden kaçırılmaz. Dev ekibimdeki herkes bu yolu çok tercih ediyor. Kod inceleme yazılımı hem kod kalitemiz hem de uygulama kalitemiz üzerinde büyük bir etkiye sahiptir :-)

Devs’in yazılımı ilk tanıtırken reddedilen incelemelerle savunması kolaydır, ancak benim deneyimime göre, işlerin bu şekilde daha iyi olduğunu farketmeleri ve benimsemeleri çok uzun sürmez :-)

Düzenleme: Ayrıca kayda değer, devs’in şifreli kodları sözlü olarak veya derlemede yapılan açıklamalarda açıklamamalarını sağlarız. Bir şey net değilse, açıklamak için en iyi yer koddadır (yorumlarda veya yeniden gözden geçirme yoluyla), sonra yeni değişiklik kümelerini aynı incelemeye ekleyin.


4

İlginçtir ki , doğal dile uygulanan okunabilirlik , okuma ve anlama hızı ile ölçülür. Sanırım basit bir kural gerçekten de kabul edilebilir, eğer belirli bir kod yorumu bu özelliği iyileştirmezse, bundan kaçınılabilir .

Neden yorumlar?

Kod yorumu gömülü bir dokümantasyon biçimi olsa da, dilin kendi öğelerini kullanarak gereksiz "fazla belgelenmiş" programlamayı (anlamlı koddan) önlemek için üst düzey programlama dillerinde birçok yol vardır. Ayrıca, bireysel ifadelerin kelimenin tam anlamıyla tautolojik bir biçimde açıklandığı (zaten verilen cevaplarda "/ * 1 * /" i örneklendiğinde, "/ * 1 * /" örneğine dikkat edin), programlama kitapçığından kodu listelemeye dönüştürmek kötü bir fikirdir. sadece dili ile deneyimsiz programcılar için.

Bununla birlikte, gerçekte “tüm kötülüklerin kaynağı” olan “az belgelenmiş” (ancak anlamsız) kodu yorumlamaya çalışmaktır. "Belgelenmemiş" kodun varlığı çok kötü bir sinyaldir - ya yapılandırılmamış bir karışıklık ya da mistik kaybedilen amaçların tuhaf kesilmesidir. Açıkçası, böyle bir kodun değeri en azından sorgulanabilir. Ne yazık ki, her zaman örnekler vardır, gerçekten de, (görsel olarak gruplandırılmış) biçimlendirilmiş kod satırlarının bir bölümüne, yeni alt yordamın içine kaydırmak yerine, ("küçük kafanın hobgobini" olan "aptalca tutarlılığı" dikkate alın) bir bölüme yorum eklemek gerçekten daha iyi olduğunda, her zaman örnekler vardır. .

Kod okunabilirliği! = Kod yorumları

Okunabilir kod, yorumlarda açıklama gerektirmez. Koddaki her belirli yerde, her zaman bu belirli kodun gerçekleştirmesi gereken bir görev bağlamı vardır. Amaç eksikse ve / veya kod gizemli bir şey yaparsa = ne pahasına olursa olsun kaçının. Garip bilgisayar korsanlarının kodunuzu doldurmasına izin vermeyin; bu, temel teknolojilerin anlaşılması için buggy teknolojilerinin zaman / ilgi eksikliği ile birleştirilmesinin doğrudan bir sonucudur. Projenizde mistik kodlardan kaçının!

Öte yandan, Okunabilir program = kod + belgeler , örneğin "API'ye yorum" belgelerinin oluşturulmasını kolaylaştırmak için birden fazla meşru yorum bölümü içerebilir.

Kod stili standartlarını takip edin

Yeterince komik olan soru, kodun neden yorumlanacağıyla ilgili değil, ekip çalışmasıyla ilgili - yüksek düzeyde senkronize edilmiş bir tarzda kodun nasıl üretileceği (herkesin okuyabileceği / anlayabileceği) ile ilgili. Şirketinizde kod tarzı standartlarına uyuyor musunuz? Asıl amacı, yeniden düzenleme gerektiren kod yazmaktan kaçınmak, fazla "kişisel" ve "öznel" olarak belirsiz olmaktır. Bu yüzden, eğer birinin kod stilini kullanma zorunluluğunu görürse, uygun şekilde nasıl uygulanacağına dair çok ciddi araçlar var - insanları eğitmekle başlayıp kodun kalite kontrolü için otomasyonla (sayısız metin vb.) Ve (revizyonu bitirmek) kontrolü entegre) kod inceleme sistemleri.

Bir kod okunabilirliği evangelisti ol

Bu kodun yazıldığından daha sık okunmasını kabul ediyorsanız. Fikirlerin açık bir şekilde ifade edilmesi ve açıkça düşünülmesi sizin için önemliyse, hangi dilin iletişim için kullanıldığına bakılmaksızın (matematik, makine kodu veya eski ingilizce) .. Göreviniz alternatif ve çirkin alternatif düşünme biçimini ortadan kaldırmaksa .. (üzgünüm , sonuncusu başka bir "tezahür" den ..) .. soru sor, tartışma başlat, belirsizliği ele alan (muhtemelen sadece Beck'in tasarım modellerine benzer bir şey değil, daha çok RC Martin tarafından daha önce bahsedildiği gibi) kod temizliği üzerine kitaplar düşündürmeye başla. programlamada. Ayrıca, ana fikirlerin bir mermi noktası geçişi (okunaklılık konusunda O'Reilly kitabından alıntı)

  • Her kod satırı için geçerli olan ipuçlarıyla adlandırma, yorum yapma ve biçimlendirme işlemlerini basitleştirin
  • Karmaşıklığı ve karışıklığı azaltmak için programınızın döngülerini, mantığını ve değişkenlerini iyileştirin
  • Her seferinde bir işi yapmak için kod bloklarını yeniden düzenleme gibi işlev düzeyindeki sorunlara saldırı
  • Okunaklı olmasının yanı sıra kapsamlı ve özlü bir test kodu yazın

"Yorum yapma" yı kesmek, hala çok şey bırakılmış (Sanırım yorum gerektirmeyen bir kod yazmak harika bir egzersiz!). Anlamsal olarak anlamlı tanımlayıcıları adlandırmak iyi bir başlangıçtır. Daha sonra, mantıksal olarak bağlı işlemleri fonksiyonlar ve sınıflar halinde gruplayarak kodunuzu yapılandırın. Ve bunun gibi. Daha iyi bir programcı daha iyi bir yazardır (elbette verilen diğer teknik becerileri varsayarsak).


Sadece eğlence için yorum gerektirmeyen kod yazabilirsiniz. Bu gerçekten harika bir alıştırma olabilir, ancak koda geri dönmeniz gerekiyorsa ve hiçbir şeyi gerçekten değiştiremiyorsanız, bu işlevin neden böyle çalıştığını bilmeyeceksiniz çünkü belki de böyle bir istemcisi var. Elbette, projenin belgelendirilmiş ve gerekçeli olarak projesinin% 1’inde olabilirsiniz, ancak o zaman bile kodlama sırasında verdiğiniz kararlar belgelere geri gönderilmez. Ve açıkçası ... Kodda olmayan belgeleri okuyan. Kesinlikle programcılar değil;
Nux

1
İyi bir mühendis tüm sistemi önemser (kodlanmamış dokümantasyon dahil) - ama burada elbette, genel olarak kodlama aklımda. Demek istediğim foo , bar , tmpSomething2 ve IamJustTooSmartAssToCare adlı kodda tanımlayıcıların olmaması zaten geliştirildi. durum ve kodun ne olduğunu ve ne yaptığını açıklamak için genel ihtiyacı azaltır. Kod, insanlar tarafından okunan, anlaşılan, tekrar kullanılan ve korunan iyi tasarlanmış bir API gibi "düşünme modu" ile yazılmalıdır. Kodda anlaşılması zor olan çok fazla yorum çok kötü bir işaret!
Yauhen Yakimovich

BTW, HACK veya "geçici" bir hata düzeltme biçiminde herhangi bir alana özgü mantığın programlanması / kodlanması, aslında "tuhaf HACK" ler üretmektedir - birçoğunun kara kutu içinde sıkıştığı anda - beklemelerini bekleyin başarısız olun ve geri ateş edin. Bu, "gerçek dünya" projelerindeki son teslim tarihleriyle doğrulanabilir. ama gerçekte, etki alanı mantığının yeniden yapılandırılmasını gerektiren (veya belki de yeni bir iş bulmak) ucuz bir yazılımdır.
Yauhen Yakimovich

Okunabilirliğin önemli olduğu konusunda hemfikir olduğumun, “okunabilirliği bir öncelik haline getirirseniz yorumlara ihtiyacınız olmayacağını” söyleyerek göründüğünüzdür. Bu sadece doğru değil. Bunu orada yaptım. Yaptıklarınızı düşünmek, değişkenleri adlandırmaktan sadece mantıklı bir şekilde adlandırmaktan ibaret değildir. Tabii ki bunu yapın, fakat ayrıca yorumlara bir sebep de ekleyin (bazı harici sistemlerde bir hata / gereksinim / hikaye numarası şeklinde olsa bile). Benim dediğim de o.
Nux

“Okunabilirliği bir öncelik haline getirirseniz, yorumlara ihtiyacınız olmayacak” - evet tam olarak söylediğim bu (ve bunun başarılması kolay görünmediğinin farkındayım). BTW Komple taahhüt (sürüm kontrolü) geçmişini sürdürürken durumların "hata / gereksinim / hikaye numarası" nı yansıtması için yeterli olmadığı durumlar var mı? Oldukça uzun bir süredir taahhüt ediyorum - benim için çalışıyor ve geliştirme geçmişinden kodları boş tutmama izin veriyor ... daha az organik olarak yetiştiriliyor.
Yauhen Yakimovich

3

Kod yorumlarına odaklanmak yanlış mıyım yoksa bu çözülmesi gereken daha büyük bir sorunun göstergesi mi?

Biraz. Harika kod yorumlara ihtiyaç duymuyor. Ancak dediğiniz gibi, kodu kendiliğinden belgelenmiyor. Bu yüzden yorumlara odaklanmam. Geliştiricilerinizin beceri ve işçiliğini geliştirmeye odaklanmalısınız.

Peki bunu nasıl? Doc Brown'ın gözden geçirme / yeniden düzenleme oturumları ile ilgili önerileri iyi bir fikirdir. Çift programlamayı daha etkili buluyorum, ancak uygulanması daha da zor olabilir.


Çift Programlama mükemmel bir fikirdir, başka bir programcıya kodun geliştirilmesine ilişkin bir fikir verir, böylece ne olup bittiğini bilirler ve iki kişiyi kod için hesap verebilir kılarlar. Ayrıca, ikisinden birinin bir şeyin yorum yapması gerektiğini söyleme şansı veriyor çünkü sıradan bir şey veya birisinin değiştirebileceği bir şey olması nedeniyle "bir hafıza sızıntısı", "kötü kodlama" gibi görünüyor. Bazı şeylerin yorum yapması gerekiyor, bu yüzden gelecekteki bir başkası bir şeyi geri almıyor çünkü doğru görünmüyor.
Malachi

3

Öncelikle, yorumlar hakkındaki yaklaşımınızı tekrar ele almanızı öneririm.

API düzeyinde dokümantasyon yorumları yapıyorlarsa (daha sonra halka açık), bu geliştirici işini yapmıyordur. Ancak diğer tüm yorumlar için dikkatli olun.

Karşılaştığım vakaların çoğunda, yorumlar kötüdür. Nedenini iyi anlayabilmek için Robert Martin tarafından "Temiz kod" adlı kod yorumları bölümünü okumanızı tavsiye ederim .

Yorumlar kodunuzu çeşitli şekillerde incitti:

1) Bakımı zordur. Refactoring yaparken ekstra iş yapmanız gerekecek; Yorumda açıklanan mantığı değiştirirseniz, yorumu da düzenlemeniz gerekir.

2) Genellikle yalan söylerler. Yorumlara güvenemezsiniz ve bunun yerine kodu okumalısınız. Hangisi soruyu gündeme getiriyor: neden yorumlara hiç ihtiyaç duyuyorsun?

// this method returns the sum of 'a' and 'b'
public int GetHash(int a, int b)
{
    //the calculation of the hash
    int result = a*b;
}

(Karma toplam değil üründür.)

3) Yorumlar kodu bozar ve çok nadiren herhangi bir değer ekler.

Benim çözümüm: Daha fazla yorum eklemek yerine, onlardan kurtulmaya çalışın!


4
Bu sadece saçma. Umarım hiç kimse böyle kötü yorumlama tarzının faydalı olduğuna inanmaz. Ancak yorumların asla kullanılmaması gerektiğine gerçekten inanıyor musunuz?
jmk

1
Evet, bu aptalca bir öneri, eğer kod inanılmaz bir şekilde okunabilirse birkaç yorumu anlayabilirim ama yorumları görmek, yöntemin neden yaptığını ve birkaç dersten daha fazlasına ulaştığınızda nerede kullanılacağını söylemelidir. yorum yapmamak için sebep yok, herkese yardımcı oluyorlar.
DBlackborough

3
Hatırlanması gereken en önemli şey, şu anda her şey size mantıklı gelse de, başkasının kodunuzu 3 yıl içinde sürdürmesi gerekecek. Baştan savma.
xaxxon

4
@xaxxon Bu kişi siz olsanız bile elmalar söz değil.
kabarık

3
@ mehaase - Ne değil, nasıl değil, fakat neden koda yorum eklemek için en önemli neden.
Henk Langeveld

1

Bir takım üyesi başka bir takım üyesinin kodunu anlamakta zorlanıyorsa (herhangi bir nedenle); Daha sonra bu ekip üyesi orijinal kodu kimin yazdığını (herhangi bir kontrol revizyonu sistemi) kim bulabilir ve bu kodun yazarından doğrudan açıklamasını istemek için teşvik edilmelidir (örneğin, masalarına doğru yürüyün, oturun ve tartışın).

Bu durumda yorum eksikliği bir sorunsa, kodunu yeterince yorumlamayan kişi ne yaptığını açıklamak için zamanının büyük kısmını harcayacaktır; ve (eğer akıllılarsa) tüm bu açıklamalara zaman harcamaktan kaçınmak için yorumlar eklemeye başlayacaktır.

Ekip üyelerini birbirlerinden açıklama istemelerini teşvik etmenin başka nedenlerden dolayı değerli olduğunu unutmayın. Örneğin, belki bir ekip üyesi daha az deneyimlidir ve daha deneyimli ekip üyelerinden bir şeyler öğrenebilir.

Çoğunlukla, ekip üyelerini birbirlerinden açıklama istemelerini teşvik ederek kendi kendini dengeleyen bir sistem yaratırsınız; farklı ekip üyeleri birbirlerine "otomatik olarak ayarlanır".


1

Bu büyük ölçüde tdammers cevabının bir uzantısıdır, ancak düzenli aralıklarla kod incelemeleri yapar.

Ona (ve diğer geliştiricilere) oturmak, kodlarını yürümek ve üstlerinin ve meslektaşlarının önünde az ya da çok savunmak, herkesi daha iyi kodlayıcılar yapacak ve nispeten kısa bir süre boyunca gerçek bir değer katacaktır. Kısa vadede, söz konusu geliştiriciye inceleme sırasında kodunu doğru şekilde yorumlayabilmesi için hiçbir mazeret vermeyecektir.

DÜZENLEME: Birisinin önerimi neden reddettiğinden emin değilim - belki de kod incelemesinin yararlarının ortak bilgi olacağını kabul ettim ... lütfen uygulamanın topluluk analizi için bu konuyu inceleyin:

Kod incelemesi iyi bir uygulama mıdır?


İnsanlarla dolu bir oda okunamayan kodunuza gülmeye başladığında, daha iyi bir kodlama ve yorumlama işi yapmaya başlarsınız. :) Kod incelemelerinin büyük bir savunucusuyum.
Evik James

1
İnsanların diğer meslektaşlarının önünde kodda
güldürülmesi

1
Kod incelemesi yapan insanlar yapıcı olmaktan ziyade gülüyorlarsa, her bit okunabilir kod yazamayan bir geliştirici kadar eğitime ihtiyaç duyar. Eleştiriciden ziyade yapıcı olan eleştiriler vermek, geliştiricilerin genellikle eksik buldukları sosyal becerilerden biridir.
Martin Brown

1

Yorum yapma konusundaki sık sık aşırı görüşleri göz önünde bulundurursak, tartmak için tereddüt ediyorum.

Düzgün belgelenmesi gerektiğini (okunamayan) bir kod yazacaksanız size sunabileceğim bazı argümanlar nelerdir?

Sürdürülebilir ve okunabilir bir kodun nasıl yazıldığını anlamak zaman, uygulama ve tecrübe gerektirir. Deneyimsiz programcılar (ve ne yazık ki pek çok deneyimli olanlar) genellikle Ikea Etkisi'nden ( PDF ) muzdariptir . Bunun nedeni, onu oluşturdukları ve yakından tanıdıkları ve kodun yalnızca harika değil aynı zamanda okunabilir olduğundan da emin olmalarıdır.

Eğer kişi harika bir programcıysa, herhangi bir dokümantasyon gerekli ise çok az. Ancak, çoğu programcı harika değildir ve kodlarının çoğu "okunabilirlik" bölümünde acı çekecektir. Vasat ya da programcıdan “kodlarını açıklamasını” istemek, kodlarını daha kritik bir gözle görmeye zorlamaları açısından faydalıdır.

Bu, kodlarını "belgelemek" anlamına mı geliyor? Şart değil. Durumda, geçmişte bu konuda benzer bir programcı vardı. Onu belgelemeye zorladım. Maalesef belgeleri onun kodu kadar çözülemezdi ve hiçbir şey eklemedi. Retrospect kodunda incelemeler daha yararlı olurdu.

Siz (veya bir delege) bu programlayıcıya oturmalı ve eski kodlarından bazılarını kaldırmalısınız. Sadece üzerinde çalıştığı yeni şeyler değil. Asgari etkileşim ile kodunda size rehberlik etmesini istemeniz gerekir. Bu ayrıca kodunu yazarken açıklayacağı ayrı bir "belgeleme" oturumu olabilir. O zaman daha iyi yaklaşımlar hakkında geri bildirim almalıdır.

Bir kenara ... kodun "okunabilirliğinin" ne kadar iyi olduğuna bakılmaksızın bazen bazı belgelere ihtiyaç duyulur. API'ler belgelere sahip olmalı, son derece teknik ve karmaşık işlemler programlayıcıya dahil olan süreçleri anlamada yardımcı olacak belgelere sahip olmalıdır (genellikle programcıların bilgi alanı dışındadır) ve karmaşık regex'leri gibi bazı şeyler gerçekten neye karşı olduğunuzu belgelemelidir.


0

Pek çok proje kod belgelerine ihtiyaç duyar: arayüz belgesi, tasarım belgesi, ...

Bazı projeler, bu dokümantasyonun kod açıklamalarına koyulmasını ve Doxygen veya Sphinx veya Javadoc gibi araçlarla çıkarılmasını gerektirir, böylece kod ve dokümantasyon daha tutarlı olur.

Bu şekilde, geliştiricilerin kod üzerine faydalı yorumlar yazmaları gerekir ve bu görev proje planlamasına dahil edilir.


6
Hayır, bu şekilde geliştiricilerin bazı yorumlar yazmaları gerekir . Onların faydası sıklıkla batan, bunları yazmak için basınçla azalan aşağıda (geçersiz açıklama aktif zararlı bölgeye sıfır olduğu politika kuvvetle itilir ise hiçbir açıklama daha kötü).
Jan Hudec

1
@JanHudec - Sana katılıyorum. Bu yüzden bazı kontroller ayarlanmalı. Otomatik oluşturma, örneğin koddaki işlev argümanlarının yorumlardakilerle aynı olmasını sağlar. Ayrıca, bir kaynak dosyaları dizini yerine tek bir PDF'ye sahip olmak, belgelerin daha fazla kişi tarafından daha okunaklı (yani daha gözden geçirilebilir) olmasını sağlar.
mouviciel

2
Hayır, değil. .Pdf dosyasında, kodun açıklamanın söylediğinden daha farklı bir şey yaptığını nasıl fark edeceksiniz?
Jan Hudec

1
Belki de fikrim etki alanım, her şeyin gözden geçirildiği, kontrol edildiği, doğrulandığı, iki veya üç veya dört kez test edildiği alan kritik yazılımı tarafından önyargılıdır. Otomatik belge oluşturma, tutarsızlıkları bastırmaz, ancak azaltılmasını sağlar.
mouviciel

Evet, çok önyargılısınız. Mantıklı olduğu gibi alanlarda, çoğu birim testlerde KG için yeterlidir ve her son işlevin belgelenmesi zaman kaybı olur.
Jan Hudec

0

Cevapların ve yorumların çoğunun neye işaret ettiğini belirteceğim: Muhtemelen burada algılanan çözümünüzü zorlamak yerine asıl konuyu çözmeniz gerekir.

Kodunda yorumları görmek için motive oldunuz; neden ? Bir sebep verdin; bu neden senin için neden bu kadar önemli? Onun yerine başka bir şey yapması için motive oluyor; neden ? Bir sebep verecek; neden bu sebep onun için bu kadar önemli? Çatışmanın gerçekten ortaya çıktığı seviyeye gelinceye kadar bunu tekrarlayın ve orada ikinizin de yaşayabileceği bir çözüm bulmaya çalışın. Bahse girerim yorum yapmakla çok az ilgisi var.


0

İyi bir kodlama standardını izlerseniz, gereken minimum yorum sayısı olacaktır. adlandırma kuralları önemlidir. Yöntem isimleri ve değişken isimleri rollerini tanımlamalıdır.

TL’m daha az yorum kullanmamı önerir. kodumun anlaşılabilir ve kendi kendini tanımlayıcı olması gerektiğini istiyor. simple example: arama düzeni için kullanılan dize türü için değişken ad

   var str1:String="" //not uderstandable
   var strSearchPattern:String="" //uderstandable

0

Kod incelemesi yanıtlarını seviyorum, ancak belki de işlemim de size yardımcı olacaktır.

Yorumlara bayılırım, ancak ilk seferde neredeyse hiç bir zaman onları koda eklemiyorum. Belki bu sadece benim tarzımdır ancak geliştirme sırasında kodun aynı kısmına 3-5 kez vuracağım (yeniden düzenleme, yazma testleri vb.).

Ne zaman kafam biraz karıştığında veya ne zaman birisi bana kodun bir bölümü hakkında bir soru sorduğunda, bunu düzeltmeye çalışıyorum, bu da mantıklı geliyor.

Bu, kafa karıştırıcı bir işlem kümesini kendi işlevlerine kaldırmak için bir yorum eklemek kadar basit olabilir veya yeni bir nesneyi çıkarmak gibi daha büyük bir yeniden düzenleyiciyi tetikleyebilir.

Gruptaki herkesi kodlarının başkalarına okunabilir olduğunu "kendilerine" "teşvik etmenizi öneririm - bu, birileri size kodunuz hakkında her soru sorduğunda, bir değişiklik yapmayı taahhüt ettiğiniz anlamına gelir - veya daha iyisi o zaman değişikliği yapmak için kişi!

Bunun için "Takım Sözleşmenizin" bir parçası olarak itmeyi ciddiye alın (Bir tane yoksa kesinlikle kesin bir sözleşme oluşturun) - bu şekilde herkes bu konuda hemfikir ve böyle bir yerde bir duvarın üzerine oturtun. Yapmaya karar verdikleriyle ilgili herhangi bir soru.


0

Belki de bu adama iyi kodlama disiplini hakkında bir takdir verilmesi gerekiyor ve neden diğer kişilerin yazdığı kodu anlayabilmesi önemli.

Kariyerimde gerçekten çok kötü bazı kod tabanları üzerinde çalıştım, kodun çok kötü organize edildiği, değişken isimleri çok zayıf, yorumlar o kadar kötü ya da varolmayan, kod temeli üretkenliğime zarar verdi. Anlamadığınız bir kod tabanını düzeltmek veya geliştirmek için çalışamazsınız ve yeni gelenler için uygun olmayacak şekilde yazılmışsa, üzerinde çalışmaktan daha fazla zaman harcarlar.

Zorlu tecrübeden daha iyi bir öğretmen olamaz!

Her kod tabanında, gizlenen bazı bitler var, sistemin parçaları kimseye dokunmak istemiyor çünkü bir şeyleri kırmaktan korkuyorlar ya da herhangi bir anlamlı iş yapamıyorlar çünkü kodunu kim yazdıysa ve anlayışı ele geçirdi mi? onlarla kodun. Eğer bu kod açıklanmadıysa ve kendi kendini belgelendirmiyorsa, o zaman işleri daha da kötüleştirir.

Sana kod kodunuzun bitini bulmanızı ve bunun için zahmetli kodlayıcı sorumluluğunu vermenizi öneririm. Ona sahipliğini ver, sorumluluğunu üstlen, kod üzerinde çalışmanın gerçek acısını öğrenmesine izin ver, çünkü kısa bir zaman diliminde anlaşılması iyi belgelenmemiş veya imkansız değildir. Birkaç ay çalıştıktan sonra, gelmeye başlayacağına eminim.


-1

Yorum yapmadan ona bir tane kod daha verin ve kodu anlamasını isteyin. O zaman doğru yorumların önemini anlayabilir.


12
Bunun üzerindeki -1 düğmesinden zar zor kaçtım. Yazdığım kodların çoğu çok az yorum içeriyor. İnsanların en azından son birkaç yılda anlaşılabilir olmadığı konusunda şikayetçi olduklarını sanmıyorum. Çok az istisna dışında, kodun anlaşılması için yorumlar yapması gerekiyorsa, yorum yapması gerekmiyor, açıklık için iyileştirilmesi gerekiyor. (Tabii ki, dilin sözdizimi temel bir anlayış üstlenmek zorunda şeyler gibi C ++, basitçe kullanmaktan kaçınmak için yolumdan gitmez. İnsanlar kafa karıştırıcı bulabilirsiniz çünkü; eğer C # , kullandığınız gerekenleri yapar it; vb.)reinterpret_cast<>()??
bir CVn

2
@ MichaelKjörling: Ne tür bir kod yazdığınıza bağlı olabilir. Kodunuz bir dilin veya bir API'nin nadiren bilinen özelliklerine bağlıysa veya keşfetmeniz için saatlerce süren belirsiz bir hatadan kaçınmak için karşı sezgisel bir şekilde bir şey yaptıysanız, yorum yapmak çok daha etkili olacaktır. (muhtemelen bir makaleye bağlantı içeren) yorum yapmadan bu arka plan bilgileri hakkında "net" kod yapmaya çalışmaktansa.
LarsH

@ MichaelKjörling: Özellikle bunu söylemek için motive oldum çünkü geçen aydır derin bir GIS API'si ile güreşim oldu. API'nin tesisleri karmaşıktır ve çok ayrıntılı bir şekilde belgelenmemiştir. Bizi bazen günlerce geride bırakan sürprizlerle karşı karşıyayız. Bir başkasının (ya da 6 ay içinde benim) kodumuza göre etkili bir şekilde çalışabilmesi için bu külçeleri yeniden keşfetmesi gerekmesini beklemek o kişinin zamanının büyük bir israfı olacaktır. Ve bu sırlar genellikle “netlik için iyileştirme” yorumuyla belgelenemez.
Lars,

@LarsH Muhtemelen yorumumda bahsettiğim "çok az istisna" dan biri olarak nitelendirilecekti. Gerçekten değer kattığı bir yere yorum yapmaya karşı değilim ; ancak kodu okumayı kolaylaştıran veya zorlaştıran yorumların sayısı değildir. Bununla birlikte, bir API ile başka yerlerde bu tuhaflıkları belgelemek konusunda daha meyilliyim; Örneğin, bir wiki veya benzeri. Belki de her kullanımın yanındaki ilgili sayfaya bir bağlantı ekleyin. Bu şekilde, kod ilk denemede beklediğiniz gibi çalışmadığında, API'nın belirli bir özelliğini kullanan başka bir yer aramanıza gerek kalmaz.
CVn

@ MichaelKjörling: genel olarak kabul etti. Bu istisnaların nadir olup olmadığı, programladığınız alana ve kullanmak zorunda olduğunuz API'lere bağlıdır. Bağlantılar / referanslar, yalnızca mevcut duruma değil, genel olarak uygulanan notlara iyi gelir. Hiç kimse kodun kendisinde bir tez istemez.
LarsH 6'13,

-1

Bu programcı bazı kod bakımı yapıyor mu. Değilse, şunları yapmalıdır: Etrafınızdaki sevilmeyen herhangi bir projeyi kontrol etmeli ve bakımını ona vermelidir.

Genellikle bunlar, düzeltilmesi kolay olanı düzeltmek için neler olup bittiğini anlamaya çalışırken saat kaybettiğiniz, kötü belgelenmiş projelerdir. Bu tür bir deneyim onu ​​güncel istemezse, doğru ve yararlı belgeler hiçbir şey yapmaz.


1
Bu yaklaşım, programcının işleri uygun şekilde eğitmek yerine istifa etmesini sağlamak için daha olasıdır.
Martin Brown

-1

Geçmiş projelerimden birinde düzinelerce yorum eksikti (algoritma, sonuçlar ya da bazı temel JavaDoc), bu yüzden onun için 130 sayı yapmaya karar verdim, her 4 günde bir sayı hakkında e-posta bildirimi yaptım. 3 hafta sonra 280 sorun yaşadı, daha sonra yorum yazmaya karar verdi.


-1

Yorumların bir amacı ve yalnızca bir amacı vardır:

Bu kod neden bu şeyi yapıyor?

Bir yorum neden bir şeylerin böyle olduğunu açıklamıyorsa, kaldırılmalıdır. Kodu bozan işe yaramaz yorumlar işe yaramazdan azdır, aktif olarak zararlıdır.

IDE'mdeki yorumlarımı en belirgin şey haline getirme alışkanlığım var. Yeşil bir arka plan üzerinde beyaz metin ile vurgulanırlar. Gerçekten dikkatini çek.

Bunun nedeni, kodun bir şeyin ne yaptığını açıklamasıdır ve yorumların neden yaptığı içindir. Bunu yeterince vurgulayamıyorum.

İyi bir yorum örneği:

/* Must instantiate clsUser before trying to encrypt a password because the code to 
   encrypt passwords only uses strong encryption if that module is loaded. */

Kötü bir örnek:

/* instantiate clsUser */

Yorumları kodun "bölümleri" olarak kullanıyorsanız: Mamut yönteminizi daha küçük, kullanışlı adlandırılmış işlevlere bölün ve yorumları kaldırın.

Bir sonraki satırda ne yaptığınızı söylüyorsanız: Kodu kendinden açıklamalı hale getirin ve yorumu kaldırın.

Yorumları uyarı mesajı olarak kullanıyorsanız: Nedenini söylediğinizden emin olun.


-2

Buradaki cevapları tamamlamak için şunu ekleyebilirim: "Doğru yapılmasını istiyorsan kendin yapmalısın."

"Baş kod yorumcusu" olmak istemem, bu geliştiricinin ne yapmasını istediğinizi göstermede rol model olmak demek. Göstermenin söylemekten daha etkili olduğunu söylüyorlar . Kalite yorumlarının yararını gösterebilir veya hatta bu diğer geliştiriciyi (hatta istediği ölçüde) mentorluk ederseniz, kod yorumunu kabul etmede daha fazla başarı elde edebilirsiniz.

Benzer şekilde, evde yapmak istemediğim bazı ev işleri var. Ancak aynı işleri, karımın "evcil hayvan peeve" işleri olarak gerçekleşir ... onun mutlu olması için yapılması gereken işleri . Aynı durum tersi için de geçerlidir. Bu geliştiricinin sizden farklı öncelikleri olduğunu kabul etmeniz gerekebileceğini ve her konuda sizinle aynı fikirde olmayacağınızı düşünüyorum. Karım ve benim bulduğumuz çözüm, "evcil hayvan peeve" işleri için, kendi başımıza biraz daha fazla iş yapmak anlamına gelse de, onları kendimiz yapmak zorundayız.


1
Temizleyici kodun gösterilmesinin / kodlarının yeniden okunaklı hale getirilmesinin daha okunaklı olması, yorum parçalarını koda koymaktan daha büyük bir değişiklik gösterdiğini iddia ediyorum.
Makoto

Birisi bana fikrimden hoşlanmadıklarını açıklayabilir mi?
M. Dudley

-6

Basit: Çalışan yorum yapmıyorsa shift+alt+j, her bir yöntemde aynı anda kod girerek otomatik yorum yapmasını isteyin . Bu sorunlardan kaçınmak için lütfen kod revizyonunu yapın.


11
"Otomatik yorum"? Yani işte bütün o açıklamalar geliyor "1 tarafından i artırır" nerede? Hangi IDE bunu yapar (böylece kullanıldığı yerlerde işlerden kaçınabilirim)?
05:

Ben okunabilir bir şey haline bu düzenlemeye çalıştım, ama kelime olup olmadığından emin değilim ilk ondan önce veya sonra virgül olmalıdır. Her bir yöntemde ilk veya önce ilk önce yorum yapmak mı ?
TRiG
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.