Cel mai bun răspuns
Răspunsul lui Oluwasegun este imparțial și bun, dar scurt. Răspunsul lui Bobsy, deși are câteva puncte valabile, este extrem de părtinitor și opinionat. Așadar, permiteți-mi să fac tot posibilul pentru a vă oferi ceva care nu este părtinitor, declară clar ceea ce este / nu este o opinie și oferă ambele părți „poveștii”. Următoarele se vor ocupa de numai de dezvoltare web, nu de dezvoltare software (ceea ce, deopotrivă, se poate face cu ambele).
În primul rând, definiți „mai bine ”? Acesta este un termen incredibil de subiectiv, care depinde în totalitate de ceea ce căutați. Vrei să spui mai repede? Mai utilizat? Mai ușor? Oferă perspective mai mari de angajare? Disponibilitate mai mare de cadre și biblioteci? Aș putea continua.
PYTHON
Ce sunt Punctele forte ale Python?
- Vastă gamă de biblioteci / module încorporate și de la terțe părți special pentru dezvoltarea web și gestionarea serverelor (gestionarea serverelor se aplică și dezvoltării web).
- Aceste biblioteci terță parte sunt bine proiectate, bine întreținute, ușor de instalat și puternice.
- Ușurința dezvoltării. Dacă v-ați programat vreodată în Python, știți cât de ușor este.
- Django este foarte puternic. Ajută la înlocuirea JavaScript și PHP.
- [ OPINION ] Personal, urăsc PHP și JavaScript. Sunt frustrante de utilizat și ambele sunt vulnerabile. PHP mai mult din cauza defectelor în limbă; JavaScript din cauza defectelor din specificațiile ciudate, care conduc la interpretări slabe ale modului în care ar trebui implementat motorul JS.
- Complet orientat spre obiect.
- Excelent pentru manipularea datelor și computerul învățare (poate fi important dacă furnizați publicitate direcționată pe platforma dvs.).
- Cu cadrul și modulele potrivite (incluse ca standard), vă puteți integra corect și frumos cu un server de baze de date și generați interogări pentru site-ul dvs.
- de ex Dacă utilizatorul își caută în cont o anumită cheie de licență, cadrul gestionează acest lucru prin traducerea a ceea ce face utilizatorul într-o interogare SQL.
- de ex. # 2: Dacă administratorul caută un client prin adresa de e-mail, cadrul îl va traduce într-o interogare SQL, apoi va traduce rezultatele înapoi și le va afișa în HTML formatat CSS.
Care sunt punctele slabe ale Python?
- Lent. Ca foarte lent. Mai lent decât le place să recunoască fanii Python. După cum a spus Oluwasegun, PHP este de până la 3 ori mai rapid (uneori depinde mai mult, alteori mai puțin).
- Când îl utilizați pentru dezvoltare, nu vă puteți gândi la el ca și cum ați folosi Python: folosești un cadru (de exemplu, Django). Așadar, învățarea Python nu este suficientă, trebuie să învățați și cadrul.
- Python nu este nici pe departe la fel de utilizat ca PHP, astfel încât factorul său de angajare, în special în ceea ce privește dezvoltarea web, este mult mai limitat. Am auzit o statistică că ~ 80\% din toate site-urile web folosesc PHP – nu pot verifica statisticile, dar nu m-ar surprinde.
- Acest tip merge mână în mână cu încetineală, dar trebuie abordat separat: utilizarea resurselor. Python hogs resurse mult mai mult decât PHP. V-ați gândi că, dacă ar folosi atât de multe resurse disponibile, acest lucru ar ajuta, de fapt, să-l accelereze …… Nu, nu, nu.
- [ Opinie ] Aspectul OOP al Python este abisal. Dacă ați realizat vreodată OOP într-un limbaj precum Java, C # sau C ++, veți înțelege de ce îl urăsc. Orice limbă care se bazează pe
this
șisuper()
nu a făcut-o corect. Vă face să arătați codul confuz ca dracu, ofensează întregul proces și face dezvoltatorul predispus la erori. Pur și simplu nu este necesar – întregul aspect al limbajului se simte (așa cum cred că am spus în altă parte pe acest site) ca și cum ar fi fost blocat , cu un ciocan , de un pește orb…. ca o gândire ulterioară. Si ghici ce? A fost! Bine, nu a fost fixat cu ajutorul unui ciocan, de către un pește. Dar a fost un gând ulterior și nu a fost intenționat inițial să facă parte din limbă (inițial nu a fost inclus). - Este o implementare slabă și restrictivă a POO. Din nou, Aviz . Unora le place, dar de obicei sunt cei care spun că C și C ++ sunt dificile și confuze.
Una peste alta, nu este groaznic, nu? Personal, cred că cea mai mare problemă din cele de mai sus este „cota de piață” în comparație cu PHP, oricum din perspectiva angajabilității.
PHP
Care sunt punctele forte ale PHP?
- Foarte rapid.
- Complet orientat spre obiect .
- Folosit în marea majoritate a serviciilor web back-end și în funcționalitatea „din culise” a site-urilor web.
- Se integrează frumos cu serverele SQL și practic cu toate gusturile acestora.
- Generează automat interogări în baza de date (consultați secțiunea Python, de exemplu, ceea ce înseamnă acest lucru)
- Funcționalitate încorporată extraordinar de diversă, concepută pentru utilizarea web.
- Există o mulțime de API-uri web PHP care extind în continuare ceea ce se poate face.
- Multe dintre acestea sunt concepute special pentru a fi utilizate cu PHP și nu pot fi utilizate cu Python și Django.
- de ex. Multe API-uri de comerț electronic
Care sunt punctele slabe ale PHP?
Oh, băiete. Există câțiva veritabili:
- [ Opinie ] Sintaxa este îngrozitoare. Da, aceasta este o opinie, dar este o opinie foarte răspândită. Fiecare programator PHP cu care am vorbit vreodată a susținut această opinie. Dacă nu sunteți deja familiarizați cu acesta, verificați-l.
- Atacuri cu injecție SQL. Consultați linkul de mai jos pentru o explicație detaliată a ceea ce este, de ce se întâmplă și cum să o rezolvați utilizând PHP:
- Preveniți vulnerabilitățile de injecție SQL în aplicațiile PHP și remediați-le
- Executarea codului la distanță:
- O eroare dintr-o aplicație PHP poate accepta introducerea utilizatorului și o poate evalua ca cod PHP.
- Încrucișare -Site Scripting (XSS [X = Cross]):
- XSS stocate și XSS reflectate
- Bypass de autentificare – Din punct de vedere tehnic, este o eroare a dezvoltatorului, dar limbajul în sine îl face foarte ușor de faceți această greșeală.
- Aș putea continua cu mai multe, dar iată un link în schimb:
- https://www.wordfence.com/learn/understanding-php-vulnerabilities/
- [ Aviz ] OOP este la fel de rău ca în Python. Posibil mai rău din cauza sintaxei. Încă folosește
this
(dar este de fapt$this
)
Una peste alta, aceste vulnerabilități sunt destul de îndrăzneț, dar se datorează în principal erorilor dezvoltatorului. Cunoașteți bine PHP și căutați nu doar „ Cum mă dezvolt un PHP” , ci „capcanele de dezvoltare PHP” și „vulnerabilitățile PHP”, atunci nu fi o astfel de problemă.
Toți împreună acum
Deci, care este concluzia finală care trebuie trasă aici? Ei bine, în ciuda a ceea ce le place să spună fanii Python, Python nu poate înlocui pe deplin PHP, din cauza prezenței API-urilor comune PHP doar și a dominanței în domeniu a PHP.
Știu că am continuat deja pentru vârste, dar acesta este punctul meu final și este cu adevărat important să afirm: Ideea că dezvoltatorii ar trebui să aleagă un „cel mai bun limbaj pentru că este cel mai bun” este un eșec masiv atât al sistemului de învățământ modern, cât și al dezvoltatorilor [tineri] junior. Pentru a fi cu adevărat competenți în orice domeniu de dezvoltare, fie web, aplicație sau software, va trebui să cunoașteți mai multe limbi. Același lucru este valabil pentru a fi utilizabil în mod fiabil.
ANECDOTE : Când am început în industrie, îmi amintesc că am fost foarte impresionat când am întrebat și dezvoltatorii de la locul de muncă mi-au spus că știu Assembly, C, C ++, C #, JavaScript, binar și hexadecimal.
I Sunt mai puțin impresionat acum pentru că știu C, C ++. unele C # (învață mai multe), JavaScript, Python, Java, HTML, CSS, unele PHP (învață mai multe), SQL, binar, hex … Mă simt de parcă îmi lipsesc unele, dar nu-mi amintesc din capul meu. Sunt încă mult mai experimentați și mai pricepuți decât mine, dar acum înțeleg că cunoașterea multor limbi este normal și este ceea ce trebuie făcut.
Deci, în concluzie, nu este vorba despre care este mai bine, este vorba de a înțelege unde și când să le folosești. Și, pentru dezvoltarea web, BARE MINIMUM pe care ar trebui să-l înveți sunt următoarele:
- HTML
- CSS
- JavaScript
- PHP
- JSON (înlocuiește XML)
- SQL (MySQL, Oracle, MS SQL sunt principalele 3) – feriți-vă de diferite „arome”
- Python
Cele de mai sus sunt absolut negociabile pentru o carieră. Opțional, învățați și Java. Este util pentru aplicațiile web.
Editați: Dovada lipsei părtinirii? Urăsc în egală măsură Python și PHP; la fel ca în realitate, nu-mi plac pe amândoi.
Răspuns
Python VS PHP : ce limbă ar trebui opteaza pentru? Întrebarea este de cea mai mare importanță pentru noii dezvoltatori și start-up-uri. Răspunsul la această întrebare nu este atât de simplu, deoarece ambele limbi sunt populare. Acestea sunt utilizate la nivel global pe internet din cauza bugetării și a altor probleme de dezvoltare.
Probleme cu care se confruntă începătorii în timp ce aleg între PHP și Python:
- Pentru dezvoltatorii care abia încep începutul dezvoltării web PHP, este dificil să decidă între limbi.
- Începătorilor le este greu să aleagă între limbile de dezvoltare web, deoarece au cerințe diferite.
- De asemenea, se confruntă cu două probleme în timp ce se ocupă de orice limbi.Unul – trebuie să învețe construcția de programare și apoi să învețe cum să le implementeze în limba aleasă. În al doilea rând, necesită expertiză în sintaxă, ceea ce nu are sens pentru ei.
- Aceste probleme cu care se confruntă noii dezvoltatori se datorează sfaturilor părtinitoare pe care le primesc de la Python și Dezvoltatori PHP . Dacă vorbiți cu un dezvoltator Python, acesta va enumera toate avantajele limbajului și fără dezavantaje. La fel este și în cazul dezvoltatorilor PHP, ei ar insista că nu există un limbaj mai bun.
Deci, cum decideți între cele două limbi? Ei bine, pentru a vă ușura lucrurile, am enumerat patru puncte în acest blog pentru comparația Python VS PHP . După aceasta, veți fi ușor să decideți între cele două limbi.
Înainte de a trece la cele trei puncte, să analizăm câteva statistici cu privire la utilizarea ambelor limbaje de dezvoltare web.
Puncte de comparație pentru Python VS PHP
1. Cadre
Un cadru este o comunitate care dezvoltă coduri și menține compilarea codului. Ajută un dezvoltator să creeze rapid o aplicație web fără a crea nimic de la zero.
Un cadru oferă numeroase funcții pe care dezvoltatorii le pot adăuga conform nevoilor lor de a adăuga funcționalitate aplicației.
Structurile Python sunt puternice și versatile, dar oferă opțiuni limitate. Limbaj Python oferă o gamă largă de cadre care îndeplinesc practic aceeași funcție ca și pentru PHP. Există o creștere continuă a numărului de cadre Python din cauza utilizărilor crescute ale limbajului în proiecte. Flask și Django sunt cadre populare utilizate de dezvoltatori la nivel global.
Cadrele PHP sunt, de asemenea, numeroase, oferind dezvoltatorilor opțiunea de crearea de aplicații specifice industriei. Cadrele PHP populare sunt symfony și Laravel, care sunt utilizate de multe aplicații populare, utilizate de milioane de utilizatori.
2. CMS
Un CMS este o platformă software care oferă o soluție versatilă pentru proiecte de dezvoltare de aplicații. Oferă o soluție pentru blog, comerț electronic și așa mai departe, asigurându-se că dezvoltatorii se pot concentra asupra cazului de afaceri. Cel mai popular CMS este WordPress, care este construit folosind PHP. Alte CMS populare sunt Magento și WooCommerce, populare pentru dezvoltarea site-urilor de e-commerce. Și ele sunt construite folosind PHP.
Python are o platformă CMS Django care are o utilizare limitată.
PHP este un câștigător clar aici, deoarece este o platformă CMS mai bună, utilizată de mulți utilizatori.
3. Popularitate
Ambele limbi de dezvoltare web sunt populare, dar în prezent, PHP domină 80\% din piață. PHP este utilizat de multe site-uri web populare care includ Yahoo, Wikipedia, Tumblr și așa mai departe. Și Facebook a folosit PHP inițial înainte de a trece la PHP framework.
Python este una dintre opțiunile excelente de programare backend. Și PHP a fost pe piață de ceva vreme și este încă folosit în scopuri de backend.
Limbajul Python este destul de popular, mai ales din moment ce Google l-a ales pentru unele dintre celebrele sale proiecte. Reddit, Pinterest, YouTube, Instagram și Spotify sunt câteva platforme care utilizează limbajul Python.
În ceea ce privește popularitatea, ambele limbile se concurează una pe alta. Sunt anunțate zilnic noi proiecte care utilizează limbile menționate.
4. Curba de învățare
Curba de învățare în termeni de limbaje de programare înseamnă fluența pe care un dezvoltator o are în sintaxa limbii. De asemenea, implică înțelegerea dezvoltatorului pentru utilizarea instrumentelor pentru a traduce designul web în cod funcțional.
Python este câștigătorul clar, deoarece este ușor de învățat și de înțeles pentru începători. PHP este dur și are puțin spațiu pentru greșeli, ceea ce face ca acesta să nu fie potrivit pentru începători.
Python are mai mult spațiu pentru greșeli, iar codul nu se rupe din cauza unor erori mici. Tocmai din acest motiv școlile predă limbajul web Python pentru elementele de bază ale programării.
Cadrul PHP și experții încearcă din răsputeri să facă limba mai ușoară și mai ușor de utilizat.
Concluzie:
Python VS PHP nu este niciodată – dezbaterea finală, dar ambele limbi oferă dezvoltatorilor numeroase oportunități de învățare. Cu sintaxa, instrumentele și funcționalitățile lor gata de utilizare, atât dezvoltatorii Python, cât și PHP au multe de lucrat.
Este recomandat să încercați ambele limbi. Ar trebui să optați pentru cel care se potrivește proiectului dvs. și este ușor de utilizat. PHP este cel mai potrivit pentru proiectele tehnice, în timp ce Python este ușor pentru noii dezvoltatori și start-up-uri.