Neden hala PHP kullanıyorsunuz?

17 Cevap

(Ruby on ASP. Net ve Ruby özellikle) çok daha cazip PHP daha arıyoruz şimdi benim kemer altında bir PHP geliştiricisi olarak birkaç yıl var ve ben diğer web dilleri / çerçeveler itiraf etmeliyim. PHP rekabet toz sol ediliyor gibi sadece görünüyor. Ben bile ciddiye tamamen PHP terk ve Ruby on Rails ile çıkmayı düşünüyorum.

Halt diğer dillerin dev atılımlar alıyor ve PHP sadece (daha fazla ya da daha az) durgun kalıyor gibi görünüyor zaman PHP kullanmaya devam etmelidir yüzden, benim soru, değil mi?

Edit:

PHP hakkında benim gerçekten sevdiğim bazı şeyler vardır. Biraz sizin zaten söyledi gibi, kullanım kolaylığı ve 0 $ maliyet insanlar start PHP gelişmekte nedenleri arasında baş vardır, ama continue PHP gelişmekte niçin soruyorum .

Gerçekten kullanımı PHP kolaylaştırmak için girişimde, bu size bazı gerçekten kötü programlama alışkanlıklarını verebilir özellikleri yerleşik bazı olduğuna inanıyorum. Her sayfa aynı davranışı gerekli çünkü Örneğin, ben birden fazla dosya üzerinde biberli yinelenen kod sürü görmek.

17 Cevap

halt PHP kullanmaya devam etmelidir

Sadece dağıtmanız gereken altyapı (server ...) PHP destekleyen, ya da bir PHP-özel kütüphanesi gerekir çünkü. Bu yaygın bir kitle için yazılım geliştirme ve nihai çalışma ortamları üzerinde çok az kontrole sahip konum, özellikle eğer, oldukça yaygın bir senaryodur. PHP en reachability sağlar.

Bunun dışında, ben gerçekten bir şey düşünmek için mücadele ediyorum. Ben bu konuda Jeff ile kulüpler: PHP sucks […]. Ve evet, ben farkında değilim, gibi çok önyargılı bir gelebilir.

PHP hemen hemen her web barındırma tarafından desteklenmektedir. Ayrıca diğer teknolojiler (Python, Ruby, ASP.Net) çoğu CGI iyi idare veya kalıcı işlemleri gerekmez. Maliyet PHP açısından destek kolay ve insanlar "kutunun dışında" kullanabileceğiniz komut bir bolluk var.

Kesinlikle PHP diğer diller / çerçeveler üzerinde olan faydaları vardır. DHH (Rails yaratıcısı) raslantı wrote about this topic söyleyerek:

"I've been writing a little bit of PHP again today. That platform has really received an unfair reputation. For the small things I've been used it for lately, it's absolutely perfect."

Ona katılıyorum. PHP bunu destekleyen bir tam özellikli bir çerçeve gerekmez küçük siteler için idealdir. Ve söz değil bu dağıtmak çok kolaydır ve hemen hemen her web barındırma tarafından desteklenmektedir. Bu ayda 15 $ altında güvenilir bir Rails host bulmak zordur, ancak PHP dan sonraki hiçbir şey maliyet.

Yani bir boyutu iyi web uygulaması oluştururken eğer ben, bu tür Rails veya Django gibi popüler bir çerçeve denemenizi öneririz dedi.

Doğru, PHP bazı kötü programlama alışkanlıkları teşvik edebilir, ama onları zorlamaz. Ben profesyonel bir programcı olarak, en iyi uygulamaları kullanarak kendini kontrol ve kod egzersiz emin değilim.

PHP de çok hızlı. Facebook, başka bir çok büyük web siteleri arasında, PHP kullanır. Twitter, bir ya da iki yıl önce vardı sorun bak. Kendi site yük yetişmek böylece diğer dillere Ruby / Rails kendi sistemini göç ettik. Ruby güzel bir dildir, ama bu güzelliği bir maliyetle geliyor. Bu PHP'nin verimliliği maç olamaz.

Ayrıca, PHP tüm gerisinde değildir. Dil sorunları bir yeri vardır, ancak bu sorunları daha kötü, daha iyi değil elde edilmiştir. Her açıklaması daha düzeltmeleri, daha fazla tutarlılık ve daha iyi tasarım getiriyor. 5.0 OO tasarım için büyük bir destek getirdi. 5.3 bile ad vardır. PHP proje kesinlikle ilerliyor.

Web geliştirme: aynı yapıyorsun tüm diğerleri dilleri üzerinde bir çok avantajı vardır çünkü.

  • öğrenmek kolay
  • geliştirmek kolay
  • Çoğu görev için yeterince karmaşık (facebook en karmaşık değil)
  • barındırmak için kolay
  • iyi toplum ve destek
  • ücretsiz
  • vb

PHP hala avantajları bir ton var.

Bahsedilen diğer şeylerin yanı sıra. Bu "yapılan şeyler almak" için harika. Bir ölçüde statik web sitesi dinamik işlevselliği sadece bir nebze gerekir? Bang ... şeyleri düzeltmek için küçük bir php.

(Oo destek eklenmesi güzel olsa da) bir nesne yönelimli kongre zorlamaz çünkü hoşuma gidiyor. Bir çok kez çözmeye çalıştığınız basit bir sorun doğal olarak çok moda doğrusal ve sorunu tanımlamak için 100 soyut sınıflar gerek kalmamasıdır. İnsanlar Java ekmek kaldıktan sonra OOP kötüye bir yol var.

Bir öğrenme eğrisi çok yoktur. Bu çoğu programcı aşina aynı denenmiş ve gerçek c-benzeri kongre izler. Bu, muhtemelen ihtiyacınız olacak tüm güzel webcentric fonksiyonları sunuyor (itiraf rağmen, arama kuralları standardize edilmesi gerekir - iğne, samanlık vs samanlık, iğne)

Büyük kitaplığı desteği, her web sunucusu üzerinde büyük bir destek var. Kullanışlı, kullanıcı yorumları ile tam bir AMAZING yardım kılavuzu (İtiraf sadece ilerlemek ve örnek bazı şeyleri öğrenmek için eğlenceli).

Bu sadece işleri planlıyoruz. Evet, belirli çerçeveler sizden uzağa soyut çalışıyor olduğunu detayları ile karışma fazladan zaman harcamak olabilir, ama benim deneyim gibi çerçeveler gerekenler sağlamak için başarısız olduğunda, bir zor zaman kapakları altına almak ve bir şeyler yapmak zorunda olduğunu söylüyor Size (ya da başkaları için geliştirme istemci) işlerin istediğiniz şekilde çalışır. Bu "sızıntılı soyutlamalar Kanunu" bir bakış açısıyla büyük bir anlaşma

Müşterilerimizin bazıları bu ısrar çünkü php kullanmak. Bu kaygıları barındıran veya onlar bize var olan bir yazılım bileşeni (CMS, forum, blog motor vb) üstüne inşa etmek istiyorum olun.

Biz sen nokta var, ve bir dil ava gitti. Sonunda, biz bir çok eşsiz bir noktada geldi:

  • Ön ucunda PHP
  • Arasında Nice (python) uygulama sunucusu
  • Arka ucunda Python

Biz zayıf noktalarından hiçbiri ile birkaç, her iki dilde güçlü noktaları ile sona erdi. UI ve etkileşim tüm PHP uygulanan ve Business Logic, Veritabanı İş, sınıflar ve arka uç şeyler her Python yazılır.

Açıkçası benim etki Python PyQt ile entegre, özellikle eğer .. Eğer aynı kod% 90 kullanarak web ve masaüstü uygulamaları yapabilir, Ruby morethan bir sürü sunuyor.

Ben küçük projeler için php ile sopa. Ben i güncellenmesi tutmak ve üzerinde çalışan, bir kaç yıl önce küçük bir CMS inşa. O dedi, Facebook ve digg.com php kullanmak ve ince iş gibi görünüyor

Bu Oku: http://www.oreillynet.com/ruby/blog/2007/01/php_vs_ruby_on_rails_an_evolu.html

Bu sen aynı şeyi yaşamış olabilir bir adam hakkında küçük bir hikaye var, ve o iki (PHP ve [on Rails] Ruby) arasındaki bazı gerçek karşılaştırmalar verir.

Ben PHP kullanarak başlamadan önce biliyordum tüm CSS ve HTML oldu. Ben programlama mantığı oldukça sağlam bir kavrayışa vardı, ama ben gerçek bir programlama dilinin sözdizimi veya mekaniği hakkında çok az şey biliyordu. Patronum bana söyleyerek, PHP içine yazdığım bazı VBA komut dosyası açın söyledim "PHP kolay." Hafta içinde ben dışarı şeyi yazmıştı ve tüm personel site yeniden projeleri üzerinde çalışıyordu.

Şimdi PHP ile başlamak için sadece büyük bir fiş değil. PHP (ve MySQL ve javascript) öğrenme yana, ben "neden, ASP gibi bu diğer iyileri bazı. NET veya Ruby elimi denemek değil" düşündüm. Ve o Churchill Alıntı hatırlatıyor:

Democracy is the worst form of government except all others.

Bir arkadaşım bana PHP.net bazı belgeleri aramak yardımcı oldu ve o alaycı "Onlar gerçekten kendi sitesi için Ruby kullanılarak yapılmalıdır."

Ve ben her zaman PHP KORKUNÇ belgeleri vardı sanıyordum. Çok seyrek, çok küstahça. Nadiren gerçek dünya.

Sonra bir gün ben Ruby belgeleri sitesine gitti. Ben ağlamak istedim. Bu çirkin ve kafa karıştırıcı oldu. Ben ya da ne olup bittiğini hiçbir fikrim yoktu. Ben siteleri yerine en iyi uygulamaları kitap bağlantılara bakın.

MSDN oldum ve bu bir saç daha iyi. Ben bir daha katlama listesini görmek, ben kusmak olacak.

JQuery genellikle, oldukça büyük belgelerine sahiptir. PHP her zaman benim soruları cevaplamak ya da en azından benim soru ne olduğunu bilmek noktasına beni alacak.

Bilgisayar programlama örgün eğitim varsa belgeleri yoktu ne zaman geri acımasızlığına okuldan geldiyse, ya da, o zaman muhtemelen iyi şeyler almak için backweeds yoluyla sığ oldukça rahat. Ama yaratıcı ve zeki ama bizim siteleri uzatmak için sunucu tarafı komut dosyası öğrenmek bizler için, PHP mesafe tek deniz feneri. O YOU muhtemelen çok hızlı bir şekilde terk etmemeli neden sunucu taraflı web geliştirme için en popüler dillerinden biri olmaya devam edecektir yüzden web geliştiricileri, bu tür favori olacaktır Ve bu yüzden.

Daha son ve en büyük gösterişli bir dil bulmak daha böyle bir karar gider çünkü. PHP, yaygın olup birçok mevcut kütüphaneler vardır, ve büyük bir kullanıcı tabanına sahip. Yeni bir site oluşturmak için scala devs bir takım bulmak ve :-) olsun kaç adaylar görmek için deneyin

Ben esas şimdi Django / Python ile çalışıyorum iken, hızlı bir gelişme yenmek zor & PHP dağıtım. Ancak, ben onunla bir küçük site daha yapmak zorunda kalmıştım.

Iyi bir cevap için Harry Fuecks Pro PHP Rant bakın.

Esnek çünkü PHP üstündür. Bu olmasını istediğiniz her şey olabilir. Diğer ürünlerin çoğu artık birkaç yıl içinde gerçek olacak bazı sahte standart takip edebilirsiniz sadece bu yüzden, doğal olmayan bir şekilde çalışmaya zorlamak.

Açıkçası. Kimse PHP kullanmak için değil iyi bir neden atıf vardır. Ben hiç duymak kötü kod yazmak mümkün olmasıdır. Peki. Yaa. Herhangi bir dilde kötü kod yazabilirsiniz.

Bütün web fikir açıklık ve özgürlük konusunda, bu yüzden rekabet yenilik tutar çünkü ben şahsen daha fazla web teknolojileri hoş geldiniz.

PHP diğer web teknolojisinin en PHP pek çok uygulamaları (özellikle topluluk uygulamaları) kabul var ve nasıl hem tasarımcıları ve geliştiricileri bir uygulama yaparak onların yol içine hack başlayabilirsiniz nasıl bazı bölgelerinde ilham düşünüyorum çok önemli bir web teknolojisidir.

Ben de böyle ASP.net gibi teknolojiler prototip hızlandırmak için kesmek gelişme bu tür destek katacak düşünüyorum, bu yüzden PHP önümüzdeki 10 yıl ya da öylesine için web sopa ile bekliyoruz.

Ben onunla tanıdık ve çünkü platformda var önce sanat hacminin çünkü PHP kullanmaya devam. PHP'nin eski sürümleri özellikle zarif iken, PHP 5.2 / 3 uzun bir yol kat etti.

Mod_php yazma ve uygulamaları önemsiz dağıtma yapar, çünkü birçok dilde karşı, PHP harika. PHP'nin sözdizimi benim için mantıklı - kaşlı benim gün yapmak. Ben taşlar (Yakut) ya da tipik bir brüt uygulama yapısı (Django) hakkında endişelenmenize gerek yok. Ben istiyorum (ve tutarlı değilim) ne zaman ben istediğim zaman sekmeleri kullanın, ve boşluklar olabilir. Fonksiyonlar açık argümanlar, startpoints ve bitiş noktaları vardır.

Ama PHP'nin dizi sözdizimi değişiklik görmek istiyorum, ve ben dizeleri ve diziler gibi veri türleri uzatabilirsiniz nesneler haline görmek istiyorum.

Ben klasik ASP bir arka plan var, ben ASP.NET 'te temel şeyler yönetebilirsiniz, ama ASP.NET ile ilgili tüm gerçekten harika şeyler beni öğrenmek için yol çok zordur. Bana dil (en Bilmiyorum C # vardır) gibi VB kullanımı ve aslında işe öğreticiler bulmak için (şeyler sürümleri arasında çok fazla değiştirmek gibi) zor.

PHP özellikle büyük belgelerine sahip sanmıyorum, ama ASP.NET daha sadece biraz daha iyi ve Web'de daha yararlı bilgiler var bu yüzden sadece tek bir dil var.