Saya membuat komentar yang tidak sopan di utas pertanyaan lain yang menyebut PHP sebagai bahasa yang buruk dan mendapat suara yang tidak masuk akal. Ternyata disini banyak sekali orang yang menyukai PHP Show Jadi saya benar-benar penasaran. Apa yang saya lewatkan? Inilah alasan saya untuk tidak menyukainya
Yang terburuk, PHP meyakinkan orang bahwa mendesain aplikasi web itu mudah. Dan itu memang membuat banyak upaya yang terlibat jauh lebih mudah. Namun faktanya, mendesain aplikasi web yang aman dan efisien adalah tugas yang sangat sulit Dengan meyakinkan begitu banyak orang untuk mempelajari pemrograman, PHP telah mengajarkan seluruh subkelompok programmer tentang kebiasaan buruk dan desain yang buruk. Itu memberi mereka akses ke kemampuan yang kurang mereka pahami untuk digunakan dengan aman. Hal ini menyebabkan reputasi PHP sebagai tidak aman (Namun, saya akan dengan mudah mengakui bahwa PHP tidak lebih atau kurang aman daripada bahasa pemrograman web lainnya. ) Apa yang saya lewatkan tentang PHP? Jadi yakinkan saya sebaliknya Jawaban Nilai TertinggiSaya akan mencoba menanggapi setiap poin-poin Anda
Saya suka dan benci topik ini. Karena pada intinya, isu ini adalah benar. Mengapa beberapa fungsi dua kata dipisahkan dengan garis bawah, dan beberapa tidak? . Tapi di penghujung hari. apakah ini benar-benar penting? . bersih hanya dengan satu klik browser, ini bukan masalah besar. Apakah negatif terhadap PHP sebagai bahasa? . Apakah itu menghalangi kemampuan saya untuk menjadi programmer yang efektif?
Secara pribadi, saya pikir ini bukan poin yang bagus. Penghentian diperlukan untuk evolusi suatu bahasa, terutama bahasa yang memiliki kruft sebanyak PHP. PHP mendapat banyak kritik karena "mempermudah menjadi pemrogram yang buruk*" tetapi pada saat yang sama, grup PHP juga mendapat masalah saat mereka mencoba menghapus konstruksi bodoh dari bahasa tersebut, seperti panggilan lewat waktu . Menghilangkan referensi lewat waktu panggilan adalah salah satu langkah terbaik yang pernah mereka lakukan. Tidak ada cara yang lebih mudah bagi pengembang pemula untuk menembak dirinya sendiri selain dengan "fitur" ini
Saya tidak berpikir ada kurangnya pertimbangan sama sekali, saya pikir Anda baru saja tersengat oleh perubahan khusus ini dan dibiarkan dengan rasa asam di mulut Anda. Perubahan bahasa sering diketahui berbulan-bulan jika tidak bertahun-tahun sebelumnya. Panduan migrasi disediakan untuk perpindahan dari 4 ke 5, dan perbedaan versi didokumentasikan dalam manual. Referensi lewat waktu panggilan adalah "fitur" yang mengerikan dan tidak memberi pengembang kekuatan ekspresif apa pun yang tidak bisa mereka dapatkan dengan cara lain. Saya senang itu hilang (bersama dengan omong kosong lain seperti kutipan ajaib)
Saya memiliki perasaan campur aduk tentang ini. Sebagian dari diri saya berpikir "siapa peduli, pelolosan karakter tidak ada artinya di luar string", dan sebagian dari diri saya berpikir "pasti mereka bisa menggunakan sesuatu yang lebih baik". Tapi bisakah mereka? . Apakah itu pengawasan besar yang sampai 5. 3 PHP tidak pernah memiliki ruang nama sama sekali?
Saya pikir tidak apa-apa untuk tidak setuju dengan bagaimana PHP melakukan ini, tetapi tidak setuju bahwa itu membuat bahasanya "buruk". Tapi tanyakan seberapa besar keinginan saya untuk duduk di topik ini dan berdebat tentang pengetikan yang lemah vs kuat. (P. S. Saya tidak, sama sekali) Sebagai catatan. PHP akan mengeluarkan kesalahan level E_WARNING ketika jenis argumen penting dan tidak dapat diselesaikan dengan paksaan
PHP adalah DSL untuk web. Saya telah melakukannya penuh waktu selama 8 tahun dan mungkin menggunakan rekursi 4 atau 5 kali, biasanya untuk beberapa jenis direktori yang mengganggu atau traversal XML. Hanya saja bukan pola yang sering dibutuhkan untuk pengembangan web. Saya tidak memaafkan kinerja yang lambat, tetapi ini adalah masalah akademis yang jauh lebih banyak daripada masalah produksi. Jika Anda membutuhkan kinerja rekursif yang sangat kuat, PHP adalah bahasa yang salah untuk Anda
Saya sangat 100% setuju dengan ini
*Hmmm, topik ini terdengar sangat akrab Tapi serius, saya merasa luar biasa bahwa orang-orang akan mengeluh tentang bahasa yang benar-benar akan 100% membiarkan Anda menerapkan sistem keluaran apa pun yang Anda inginkan (volume dan gaya sistem templating PHP saja yang berbicara tentang ini) - ATAU - lewati semua overhead itu dan . Ini tidak membuat PHP buruk sama sekali. Itu bagian dari apa yang membuat PHP bagus
Apakah yang Anda maksud adalah caching bytecode (seperti akselerator), atau caching keluaran? Jika yang pertama, maka saya tidak begitu tahu betapa saya peduli dengan topik ini. Akselerator gratis dan mudah dijalankan. Kami dapat berdebat tentang mengapa itu bukan bagian dari bahasa tetapi pada akhirnya, menurut saya itu tidak terlalu penting Jika Anda berbicara tentang caching keluaran maka saya tidak tahu harus berkata apa kepada Anda. SETIAP proyek web dengan lalu lintas yang signifikan membutuhkan caching (seed podcast #27, misalnya). Ini sama sekali bukan masalah khusus PHP Singkatnya, saya pikir Anda menganggap PHP sebagai bahasa yang "buruk" dengan cara yang sangat akademis. Dan di posting Anda sebelumnya, Anda mungkin ditolak oleh orang-orang seperti saya yang menggunakan PHP untuk "menyelesaikan sesuatu" Jawaban Teratas KeduaSemua kritik Anda (dan lebih banyak lagi) valid. Anda diperbolehkan dan bahkan diharapkan untuk membenci PHP Tapi, sekali lagi, itu memiliki beberapa manfaat
Terakhir, Anda dapat mengatasi banyak jika tidak semua kerugian dengan menulis kode bagus yang akan Anda tulis dalam bahasa lain. Anda dapat menulis kode yang solid, aman, dan berbau harum di PHP, yang berkali-kali akan berjalan lebih cepat dan lebih mudah untuk dihosting dan diskalakan daripada banyak alternatif Jawaban Peringkat Teratas Ketiga
Sederhana. Fakta bahwa pemrogram yang buruk menjadi sangat defensif tentang bahasa mereka. ;) PHP mudah dipelajari, jauh lebih mudah daripada alternatifnya, dan setelah Anda mempelajarinya, tidak terlalu jelas 1) apa yang salah dengan PHP, 2) bagaimana alternatifnya lebih baik, dan 3) cara beralih ke, dan Dan mungkin fakta bahwa, alternatif apa yang dimiliki orang? . Dan itu lambat. Jadi mungkin "kekuatan" PHP sebenarnya adalah tidak ada alternatif yang baik. Setidaknya inilah mengapa saya menjauh dari semua pemrograman web jika memungkinkan. PHP menyebalkan, dan saya juga tidak terlalu tertarik dengan alternatif mana pun PHP memiliki begitu banyak masalah mendasar yang bahkan tidak lucu. Dari kurangnya dukungan unicode, hingga banyak konversi tipe implisit yang sering menyebabkan celah keamanan yang tidak terduga, hingga perpaduan sempurna antara presentasi dan. yang lainnya, atau ke modul database default yang tidak (terakhir saya periksa) menggunakan kueri berparametri. Kita berbicara tentang bahasa yang dibuat untuk dua hal, akses basis data dan menghasilkan HTML, dan yang buruk pada keduanya Itu hanya kekacauan yang tidak menyenangkan, bahasa yang dirancang oleh orang-orang yang tidak memenuhi syarat, atau tidak mampu, untuk merancang sebuah bahasa. ;) Apakah perusahaan besar menggunakan PHP?Tapi Anda akan terkejut. Apa kesamaan yang dimiliki oleh startup teknologi Fortune 500 dan raksasa perusahaan seperti Facebook, MailChimp, Slack, dan Etsy? . They're companies that use PHP in their end-to-end computing infrastructure.
Mengapa perusahaan besar menggunakan Java dan bukan PHP?Java digunakan dalam proyek yang kompleks untuk tingkat perusahaan, sedangkan PHP digunakan dalam proyek dengan kompleksitas yang lebih sedikit dan ideal untuk start-up . Java hadir sebagai bahasa tujuan umum, sedangkan PHP dibuat untuk membuat halaman web dinamis dan melayani banyak kegunaan sekarang.
Mengapa PHP tidak digunakan?Penyebutan pertama bahwa PHP sedang sekarat dapat ditemukan di web sejak 2013. Saat itu Software Gunslinger menerbitkan sebuah artikel (yang sangat saya rekomendasikan. ) mengatakan bahwa PHP akan mati karena tidak mendukung proses jangka panjang dan karena kekurangan asinkronis . Dan itu faktanya, PHP tidak dibuat untuk itu.
Mengapa PHP tidak cocok untuk aplikasi web berbasis konten raksasa?Ini karena PHP sebagai bahasa scripting tidak mengizinkan modifikasi atau perubahan apa pun pada kerangka perilaku inti aplikasi web . |