ทำไม PHP ถึงเกลียด? [ปิด]


17

เมื่อเร็ว ๆ นี้ฉันเคยเจอเรื่องตลกและการ์ตูนเกี่ยวกับความน่ากลัวของ PHP

เนื่องจากความไม่รู้ภาษาอย่างสมบูรณ์ทำไมจึงเป็นเช่นนี้ มันคือการรับรู้ของฉันเองหรือเป็นความรู้สึกทั่วไปโดยรวมในชุมชนการเขียนโปรแกรมหรือไม่?


2
ฉันเขียนซอฟต์แวร์ใน c # และฟังคำวิจารณ์ทั้งหมดของ Microsoft มันก็แค่ทุบตีภาษาอื่น ๆ
Scott Selby


4
@Andy หนึ่งไม่ควรลืมโพสต์บล็อกของ Jeff: PHP เอกพจน์และPHP Sucks แต่มันไม่สำคัญ

5
ไม่มีภาษาสองประเภท ... ทุกคนเกลียดชังและไม่มีใครใช้
GrandmasterB

2
@HerrK วิธีเดียวที่สามารถตอบได้ (ของฉันรวมอยู่) คือความคิดเห็นว่าทำไมคุณคิดว่า php แย่มาก มันจะนำไปสู่การอภิปรายที่ไม่ก่อผล (มันแย่มาก! ไม่เลย! Java ดูดมากเหมือนกัน!) คำถามไม่ได้ปรับให้เหมาะสมสำหรับคำตอบที่ดีตามที่เขียนในปัจจุบัน (นี่ไม่ได้หมายความว่าไม่สามารถเขียนคำตอบที่ดีได้ ) เช่นกันเป็นสถานที่ที่ดีที่จะถาม discussiony และความคิดเห็นของคำถามเป็นที่ของวิศวกรรมซอฟต์แวร์สำหรับการพูดคุย มันจะมีประโยชน์อย่างยิ่งในการแชทกับยานนิสของเราเกี่ยวกับ PHP และการรับรู้ในอุตสาหกรรม

คำตอบ:


29

หมายเหตุ: เขียนจากท่าทางที่มีความเห็นสูง

ดูเพิ่มเติมที่: PHP: Fractal of Bad Design

นานมาแล้วเมื่อเว็บยังเด็กคุณเขียนเว็บแอพพลิเคชั่นเป็นภาษา Perl นั่นมันจริงๆ นั่นคือทางเลือกของคุณเท่านั้น (ยกเว้นกรณีที่คุณจริงๆชอบทำงานกับสตริงใน C) (และใช่ฉันกำลังคัดสรรที่ดีของ ASP และสิ่งที่คล้ายกัน ... ฉันอยากจะลืมวันนั้น) มีแอปพลิเคชันที่ยอดเยี่ยมและมีขนาดใหญ่ของเว็บที่เขียนด้วยภาษา Perl และมีหลาย ... หลายชิ้น ... อึอึเขียนใน perl คุณยังสามารถค้นหาได้หากคุณดู - สคริปต์ CGI ที่น่ารำคาญว่ามีคนตบด้วยกันที่ไม่ได้เข้าใกล้การฆ่าเชื้ออินพุตของพวกเขา

เมื่อเว็บเริ่มเข้ามามีบทบาทมากขึ้นแอพพลิเคชั่นที่ยิ่งใหญ่และยิ่งใหญ่ก็ย้ายไปยังเฟรมเวิร์กอื่นที่ออกแบบมาเพื่อการจัดการการเชื่อมต่อหลายพันครั้งที่ดีกว่า ผู้ที่สามารถเรียนรู้ภาษาใหม่ได้ย้ายมาที่จาวา (นั่นเป็นตัวเลือกที่ดีที่สุดสำหรับหลาย ๆ กรอบ) ผู้ที่ไม่สามารถทำได้ดีมีภาษานี้ที่ดูเหมือน perl และทำสิ่งที่ดีกว่า (ไม่จำเป็นต้องแยกกระบวนการสำหรับแต่ละคำขอ) มันเป็น php

Php เติบโตขึ้นอย่างเป็นธรรมชาติ ... หากคุณสามารถเรียกสัตว์ประหลาดของแฟรงเกนสไตน์ได้ แฮ็กจำนวนมาก (คุณรู้หรือไม่ว่าฟังก์ชันแฮชดั้งเดิมสำหรับชื่อฟังก์ชันคือstrlen ?) บางส่วนที่เพิ่มเข้ามาในภาษาหลัก (แทนที่จะเป็นห้องสมุด) ที่ยังคงอยู่ในทุกวันนี้ มันไม่สวยเลย (โผล่ที่ reddit's / r / lolphpซึ่งโผล่ความสนุกจากความไม่พอใจเหล่านี้ ... คุณรู้ไหมว่า-1 monthมันอยู่เสมอ 30 วัน ?)

และในขณะที่สิ่งที่ยิ่งใหญ่และยิ่งใหญ่ได้ถูกสร้างขึ้นใน php (ดูที่ wordpress เป็นตัวอย่าง) มันยังคงเป็นสัตว์ประหลาดภายใต้ผ้าห่มที่มีความลึกลับเกี่ยวกับการทำงานของสิ่งต่าง ๆ (หรือไม่ทำงานหรือส่วนใดของสิ่งที่ทำงานส่วนใหญ่ เวลา).

มันเป็นภาษาที่ง่ายและรวดเร็วในการเรียนรู้ผู้คนจำนวนมากที่ไม่ต้องการใช้เวลาในการเรียนรู้ภาษาใช้งาน และเมื่อมันหยุดและคุณต้องรักษามันตอนนี้? ภาษาที่ยอมให้มีการขาดระเบียบวินัยจากผู้เขียนโค้ดที่ไม่เข้าใจในสิ่งที่พวกเขากำลังทำอยู่ทำให้เกิดข้อผิดพลาดที่น่าสนใจ

มันเป็นภาษาของการรวมเว็บไซต์อย่างรวดเร็วเข้าด้วยกันและปลั๊กอิน WordPress word baked ครึ่งหนึ่ง ที่อายุ 16 ปีเขียนรหัสสำหรับเพื่อนบ้านของพวกเขาในราคา $ 20 หรือนักศึกษาวิทยาลัยสำหรับเงินเบียร์ ... รู้ว่าพวกเขาจะไม่มองมันอีกครั้ง ไปเรียกดูแท็ก phpของ Stack Overflow เพื่อดูสักเล็กน้อยและพิจารณาว่าคุณอาจดูแลรหัสนั้นอยู่วันหนึ่ง

จำไว้ว่ารหัสของคนอื่นมักจะแย่อยู่เสมอ และถ้าคุณต้องจัดการกับรหัสของคนอื่นใน PHP - มันแย่มาก


6
ไม่น่าแปลกใจที่ผู้คนเกลียด PHP ถ้าพวกเขาใช้เวิร์ดเพรสเป็นตัวอย่าง ... เฟรมเวิร์กเช่น Symfony หรือคลาสเช่น Pimple เป็นสคริปต์ php ที่ดีกว่าที่ฉันควรจะเขียน symfony.com/components pimple.sensiolabs.org
Félix Gagnon-Grenier

ทุกภาษามีข้อบกพร่องอยู่ในนั้น PHP มีข้อบกพร่องมากมาย บางส่วนถูกจัดเรียงบางอย่างเป็นไปตามที่ระบุ แต่มีการสร้างทางเลือก PHP พัฒนาขึ้นตามกาลเวลา แต่ปัญหาคือชุมชน มันมีชุมชนที่เต็มไปด้วย noobs และมือสมัครเล่น รุ่นพี่ของฉันเคยบอกว่า "ไม่มีใครรู้ php แม้ว่าพวกเขาจะมีประสบการณ์ 5 ปี" จริงมากกว่าครึ่งของนักพัฒนา php ไม่ทราบแนวคิด OOP พวกเขาเพียงแค่ทำงานให้เสร็จโดยใช้ฟังก์ชันอาเรย์และสตริงที่คัดลอกมาจาก stackoverflow
tejas.jaiswal
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.