Öncelikle, ben PHP_CodeSniffer ve sürdürücüsü değilim, bu yüzden açıkça bu alanda önyargılı değilim. Ama aynı zamanda bir PHP dev olarak benim 10 yıl içinde bazı büyük kod tabanları üzerinde çalıştık, bu yüzden ben kodlama standartları iyi bir şey neden bazı somut nedenleri getirebilir umuyoruz. Ben bu konuyla ilgili bir blog serisi yazabilirsiniz, ama ben sadece seni PHP_CodeSniffer hakkında böylece araç benim için sorun çözüldü anlayabiliyorum nasıl meydana geldiği hakkında küçük bir hikaye vereceğim.
Ben birkaç büyük CMS projeler üzerinde çalıştık. İlk arkasında kod bir yığın ve nispeten küçük bir geliştirme ekibi vardı. Biz hiçbir standartları vardı. Ama biz hiçbir gerçek sorunları vardı. Ekip küçük ve uzunca bir süre birlikte kaldı. Biz birbirimize alıştık.
Sonra yeni bir CMS inşa. Biz Devs sadece bir çift taze başladık. O zaman sadece iki geliştiriciler bir ekibin parçası oldu. Yine, kodlama standartları bize herhangi bir sorun neden yoktu. Ben ve diğer dev aynı arka plan geldi ve zaten biz takip bazı kurallar kurmuştu. Biz o zamanlar PHPCS gerek yoktu.
Ama bu takım bir anda bir geliştirici büyüdü ve sonunda 12 tam zamanlı devs ulaştı ve epeyce geldi ve gitti. Bazı eski CMS geldi ve bazı şirket dışından geldi. Tüm farklı geçmişlere ve geliştirme için farklı bir yaklaşım vardı. Stilleri çok farklı çünkü ne kodu kim yazdı belliydi. Eğer karmaşık bir şey üzerinde çalıştı zaman, ilk önce sadece kod görmeye kullanılan yol değildi çünkü onların tarzı ayarlamak gerekiyor. Bu ilk kez Shakespeare okuma gibi. Eğer doğal bir tempoda okuyabilir önce buna alışması gerekiyor.
Geliştiriciler için, durdurmak ve başka bir kodlama stilini anlamaya zorunda ekstra zaman sadece saf boşa zaman. Bu boşluk, girinti ve dirsek pozisyonu ile batağa saplanmış iken bir fikir uzak kayma için bir şans. Günün sonunda, bu şeyler sadece bir önemi yok. Ama bana onların akışını kırmak için geliştiriciler neden olmadığını onlar çok önemli, size söyleyeyim. Bu yüzden onları doğru yoldan almak ve geliştiriciler en iyi ne yapalım yapmak için bir yol gerekli.
Aynı zamanda, biz çok daha fazla JavaScript içine kazıyordu. Tarzı genellikle pencereden dışarı atıldı Yeni bir dil. Kod örneği sitelerinden yapıştırılan copy / idi ve birlikte püre. Yeni bir dilde karmaşık kod geliştirmek için öğrenme zaman, bizim JS bizim PHP benzer görünmesi için bir yol bulmak için mantıklı. Biz daha sonra bunu en aza olabilir, ama bizim akışını tutmak için tekrar, hızla diller arasında geçiş yapabilmek için gerekli.
Yani PHP_CodeSniffer yapmak için doğdum. Bu geliştiriciler biçimlendirme ve diğer alev yem konular dışına tamamen hareket yapmak için aynı kodlama tarzı çalışmasına yardımcı olur. Bu bir ölçüde PHP gibi JS tedavi sağlar. Ben doğru sınıf içerme kodu kullanarak değil non-tercüme dizeleri veya geliştirici gibi ürüne özgü kokuları algılamak için kullanabilirsiniz. Ben de IE öldürür JS virgül etrafında sol değil emin yapma gibi dile özgü kokuları kullanabilirsiniz. İstediğini için kullanabilirsiniz. Bu XML ruleset file ile birlikte birleştirmek için kolay burun çekmeler yığınları ile birlikte gelir. Ayrıca kendi yazabilirsiniz. Bunu statik kod analizi için bir one-stop-shop yapmak için 3. parti araçları entegre edebilirsiniz. Sen standartları ve istediğiniz gibi kod kokuyor hakkında da ciddi olabilir.
PHP_CodeSniffer, herhangi dev bir araç gibi, sizin için çalışması gerekir. Bunun için çalışmak yok. Bu, umurumda istemediğiniz olanları kaldırmak için standart özelleştirmek veya uyarılar haline hataları açmazlar çok fazla hata üretir eğer. Benim hikayem üzerinden gidiyoruz bir şey gibi geliyor ya da gelecekte geçmesi olabilir ama eğer o size yardımcı olabilir görmek için PHP_CodeSniffer yakından göz alarak değer.
Ben kodlama standartları, bazı proje ve geliştiriciler için gerçekten önemli olduğunu anlamak, bu size yardımcı olur, ve diğerleri umarım. Bu ayrıntı değil. Bu geliştiriciler odak kaybetmek neden şeyler listesinden bir kodlama stilini kaldırma hakkında.