• 1 Oy - 5 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5
PHP - Programlama Prensipleri
#1
Yabancı bir programcının kişisel blogundan alıntıladığım bir makale. 24 Maddelik bu makalede herkes her konuya katılır mı bilmiyorum ama bir çoğuna uyulması gerektiğini düşünüyorum. Orjinal kaynak linkini aşağıda paylaşacağım, hemen aşağıdan ise çevirisini okuyabilirsiniz.



Prensiplerim
  • PSR-2 Kodlama Stili rehberini takip ediyorum
  • TDD (Test Driven Development (Test Tabanlı Geliştirme)) PHPUnit ve PHPSec frameworklerini kullanıyorum
  • BDD (Behavior Driven Development (Davranış Tabanlı Geliştirme)) Behat framework kullanıyorum
  • Kodlarımı Semantic Versioning ile sürümlüyorum
  • 5'ten fazla parametre kullanmamaya çalışıyorum (Methodlarda kullandığımız parametreler)
  • Bir sınıf içerisinde 15'ten fazla method kullanmamaya özen gösteriyorum
  • Bir methodda 25'ten fazla satır kod yazmamaya çalışıyorum
  • Public methodlarımda elimden geldiğince az kod yazmaya çalışıyorum ve bütün işi genellikle Private methodlara yüklemeye çalışıyorum
  • God Object(Tanrı nesneleri)'lerden kaçınıyorum
  • DRY, SOLID ve Law Of Demeter (Yabancılarla Konuşma) prensiplerini benimsiyorum
  • Kodumu analiz ediyorum ve PSR kodlama standardları hatalarını PHP-CS-Fixer veya PHP_CodeSniffer ile çözüyorum
  • Kaynak kodlarda ki potansiyel problemler ve Code Smell(Kötü kod kokusu) için PHP Mess Detector kullanıyorum
  • PHP Copy/Paste detector kullanıyorum
  • Projelerimin boyutunu ölçmek için phploc kullanıyorum
  • Gereksiz fonksiyonellik yapmaya çalışmıyorum çünkü You are not going to need it!(ihtiyaç duymayacaksın)
  • Worse is Better(Kötünün daha iyi olduğunun) farkındayım
  • Gerektiğinde Interface kullanıyorum
  • Dependency Injection, Design Pattern(Tasarım deseni)'ı kullanıyorum
  • Agile (Çevik) yazılım geliştirme methodlarından faydalanıyorum
  • Her zaman GIT kullanıyorum ve git-flow ile branching model tekniklerinden faydalanıyorum
  • Kodlarımı gerektiğinde Refactor edebiliyorum
  • Kodlamadan önce ve kodlama esnasında ERD ve UML modelleme tekniklerinden faydalanıyorum
  • Cargo Cult Programlamadan hoşlanmıyorum
  • UI(Kullanıcı Arayüzü) ve UX(Kullanıcı Deneyimi) geliştiren insanların Principle Of Least Astonishment(Minimum Hayret İlkesi) anlamasını bekliyorum
Çalışma Tavsiyelerim
  • Çalışma arkadaşlarınızı yaptığı hatadan dolayı asla kurban etmeyin. Yerine yapıcı bir şekilde hatası hakkında onunla özel olarak konuşun. Gülme komşuna gelir başına
  • Çalışma arkadaşlarınızın hatalarından faydalanmayın. Muhtemelen "kurnaz" olarak adlandırılacaksınız, bunun yerine mütevazi olun.
  • Kendinizin yapabildiği ve çalışma arkadaşınızın yapamadığı bir şey için böbürlenmeyin. Unutmayın tanrının bir lütfu değilsiniz o yüzden sesinizi alçak tutun.
  • Eğer çalışma arkadaşınız bir şey yapmayı bilmiyorsa bunu herkese anlatmayın. Bunun yerine arkadaşınıza ilgili konuyu öğretin.

Yukarıda ki DRY, SOLID ve Minimum Hayret ilkesi gibi konuları ayrıca işleyeceğim şimdilik orjinal makalede belirtilen linkleri direk verdim. Bu konuları ileride bu başlığın altında alt başlıklar halinde bulabilirsiniz. Umarım faydalı olmuştur.

Kaynak: Inanzzz
  Alıntı
#2
Bir cogunu zaten uyguluyorum. Makalenin icinde bilmedigim sistemler var. Hepsini teker teker inceleyecegim. Bakalim neler gelecek basimiza.
  Alıntı
#3
Smile eyw
  Alıntı


Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi