it-swarm.dev

Code Complete'in kilit noktaları nelerdir?

Pek çok kişinin Code Complete'i okumaya değer bir kitap olarak söylediğini duydum. Ne yazık ki, o kadar meşgulüm ki okuyacak vaktim yok, bu yüzden bana kitabın kilit noktalarının ne olduğunu söyleyebilir mi?

74
Casebash

Kod Komple yazılım işçiliği ile ilgilidir; çalışma programcısı için yazılmış ileri düzey/orta düzey bir kitaptır, ancak yine de en az bir yıldır program yapan biri için çok yararlı olacaktır.

Bu nedenle, Kod Tamamlama'nın (2. baskı) kilit noktaları, Bölüm 34, Yazılım İşçiliğinde Temalar bölümünde güzel bir şekilde özetlenmiştir. Notlarımdan açıklandığı gibi:

  1. Karmaşıklığı Yenile: disiplin, kurallar ve soyutlama yoluyla zihninizdeki bilişsel yükü azaltın.
  2. Prosesinizi Seçin: başlangıçtan (gereksinimler) bitişe (dağıtım) ve ötesine (bakım) kadar kalitenin bilincinde olun.
  3. Önce İnsanlar, İkinci Bilgisayarlar için Program Yaz: kod okunabilirliği, anlaşılabilirlik, gözden geçirme yeteneği, hata oranı, hata düzeltme, değiştirilebilirlik ve bunun sonucunda ortaya çıkan geliştirme süresi ve kalitesi için çok önemlidir.
  4. Kendi Dilinizde Programlayın, İçinde Değil: Ne düşünün? ve neden? Nasıl?
  5. Dikkatinizi Sözleşmeler Yardımı ile Odaklayın: sözleşmeler karmaşıklığı gerektiği yerde yapı sağlayarak yönetir, böylece nihai kaynak - dikkatiniz - etkili bir şekilde kullanılabilir.
  6. Sorun Etki Alanı Açısından Program: mümkün olan en yüksek soyutlama düzeyinde çalışın; üst düzey kod çözülmekte olan sorunu tanımlamalıdır. İşletim sistemi düzeyini, programlama dili düzeyini, düşük düzeyli uygulama yapılarını, düşük düzeyli sorun etki alanı terimlerini ve son olarak (kodlayıcı olmayan) kullanıcıyı tam anlamıyla anlamlı kılacak yüksek düzeyli etki alanı terimlerini ayırt edin.
  7. Düşen Kayalara Dikkat: Programlama sanat ve bilimi birleştirdikçe, uyarı işaretleri de dahil olmak üzere, iyi yargı önemlidir.
  8. Yinelenen, Tekrar tekrar, Tekrar ve Tekrar: yineleme gereksinimleri, tasarım, tahminler, kod, kod ayarlama.
  9. Yazılım ve Dini Bir Araya Getireceksiniz: Eklektik ve denemeye istekli olun. Esnek olmayan bir zealot olmayın, merak ve öğrenmeyi engeller. Araç kutunuzda sadece bir çekiç olmanın ötesine geçin.

Ancak en önemli katılımlar 33. Bölümde, Kişisel Karakter: bilinçli olarak bir kodlayıcı olarak gelişmeye çalıştığınızda, bunu yapabilirsiniz. Bunu yapmanın en hızlı yolu ana kodlayıcıların tutumları (alçakgönüllülük, merak, entelektüel dürüstlük, disiplin, yaratıcılık) ve aynı zamanda alışkanlıkları (kitapta birçok iyi alışkanlık listelenmiştir, örneğin iyi değişken/değer adları seçmek).

Ayrıca, kitap yazılımda ortalama ve mükemmel arasındaki farkın çok büyük olduğunu; sadece bu gerçek vicdanlı kodlayıcıyı daha iyi hale getirmelidir.

Bu kısa; uzun versiyon kitapta. :) Daha fazla ayrıntı istiyorsanız size çok uzun olmayan, çok kısa olmayan notlarımı da gönderebilirim. Ancak, yazma tarzı zaman zaman yorucu olsa bile, kitap kesinlikle para ve zaman harcanır.

Kod Tamamlandığında, kesinlikle tavsiye ederim Pragmatik Programcı . Orta düzey programcılar için, güzel yazılmış ve yüksek, orta ve düşük seviyeli tavsiyelerin harika bir karışımı.

86
limist

Bu bir ara kitap, yazılım geliştirme en iyi uygulamaları bir potpuri.

Bir başlangıç ​​programcısıysanız, materyalin çoğunu anlamayacaksınız ve deneyimli iseniz, kitap sadece zaten bildiğinizi onaylayacaktır. Sonuç olarak, kitap, zaten biraz programlama bilgisi olan, ancak hepsini bir araya getirmek için en iyi uygulamalar kitabına ihtiyaç duyan ara programcılar için en değerli olabilir.

Kod bloklarının nasıl biçimlendirileceği ve her bir yaklaşımın göreli değerleri hakkında birkaç sayfa harcanır. Şahsen, kıvırcık parantezlerinizi nereye koyacağınıza dair büyük tartışma bittiğini düşünüyorum. (ya da öyle mi?)

18
Robert Harvey