Adesea, atunci când este introdus un nou limbaj de programare, există o dezbatere care începe printre unele dintre minți geniale din industrie în care limba este comparată cu cea care își răspândește deja rădăcinile. Un fel de buzz se răspândește adesea în industria IT, iar cel nou este adesea comparat pe orice aspect, poate atunci să fie caracteristici, sintaxă sau procesor central și aspecte de memorie, inclusiv timpul GC și toate, cu cel existent drăguț.
Multe exemple de astfel de cazuri pot fi preluate și investigate din trecut, inclusiv dezbaterea dintre Java și C #, C ++, etc. Un astfel de caz care a atras o atenție semnificativă a fost dezbaterea dintre două limbi care a ieșit una după alta într-un interval scurt de timp, adică Piton și Perl.
Întrucât Piton a fost inventat inițial ca succesor al limbajului ABC doar ca „hobby”Proiect de programare (care ar atrage hackeri Unix / C) pentru autorul care l-a numit după seria celui mai mare star al său Monty Python.
Citire sugerată:Noțiuni introductive despre programarea și scriptarea Python în Linux
Perl a fost cu aproape 2 ani mai devreme ca un limbaj de script Unix care intenționa să faciliteze procesarea rapoartelor. A fost un amestec de o combinație de mai multe limbi, inclusiv C, awk, sed, și script shell.
Lucrul care merită remarcat este că aceste limbi care au evoluat cu intenții diferite sunt comparat constant, ceea ce m-a făcut să studiez și să-mi dau seama motivele, dintre care sunt enumerate unele importante ca mai jos:
Să ne adâncim în această dezbatere și să încercăm să ne dăm seama de aspectele generale în care aceste două limbi se diferențiază una de alta. De asemenea, să încercăm să aflăm sursa adevărului pentru multe clișee care pot fi auzite în industrie spunând „Python este Perl cu roți de antrenament”Sau„Python este similar cu Perl, dar diferit”, Astfel încât să putem încerca să încheiem cu o soluție exactă la această dezbatere nesfârșită.
Python are un avantaj imens față de Perl când vine vorba de lizibilitatea codului. Codul Python este mult mai clar de înțeles decât cel al lui Perl, chiar și atunci când citește codul după ani.
Cu indentare care reprezintă blocul de cod și structurare adecvată, codul Python este mult mai curat. Pe de altă parte, Perl își împrumută sintaxa din diferite limbaje de programare, cum ar fi C, scripting shell și chiar awk și sed filtre când vine vorba de expresii regulate.
Citire sugerată:15 Comenzi „sed” utile pentru sarcinile zilnice de administrare a sistemului Linux
În afară de aceasta, cu '{' și '}'
reprezentând un bloc de cod și adăugarea inutilă a ‘;’
la sfârșitul fiecărei linii, codul din Perl ar putea deveni o problemă de înțeles dacă îl citiți după luni sau ani, datorită admisibilității scripturilor urâte.
Limbajul Perl își împrumută sintaxa de la C si altul UNIX comenzi precum sed, awk, etc. datorită căreia are un suport regex puternic și încorporat fără a importa module terțe.
De asemenea, Perl poate gestiona operațiunile sistemului de operare folosind funcții încorporate. Pe de altă parte, Piton are biblioteci terțe pentru ambele operațiuni, adică re pentru regex și OS, sisteme pentru operațiile OS care trebuie asigurate înainte de a face astfel de operații.
Operațiunile regex ale lui Perl au „sed'Ca sintaxa care face mai ușoară nu numai operațiunile de căutare, ci și înlocuirea, înlocuirea și alte operații de pe un șirul se poate face ușor și rapid decât python, unde o persoană trebuie să cunoască și să-și amintească funcțiile care răspund la nevoie.
Exemplu: Luați în considerare un program pentru a căuta o cifră în șir în Perl și Piton.
Piton
Import re. str = ‘hello0909there’ result = re.findall (‘\ d +’, str) rezultatul tipăririi.
Perl
$ string = ‘hello0909there’; $ string = ~ m / (\ d +) /; tipăriți „$ & \ n”
Vedeți sintaxa pentru Perl este ușor și inspirat din comanda sed care profită Python’s sintaxa care importă modulul terță parte 're'.
O caracteristică în care Piton umbrele Perl este avansat OO
programare. Piton are suport extins de programare orientat obiect, cu o sintaxă curată și consecventă în timp ce obiectul OOP
în Perl fiind învechit acolo unde pachetul este folosit ca înlocuitor pentru clase.
De asemenea, scris OO
codul din Perl va adăuga mult mai multă complexitate codului, ceea ce ar face în cele din urmă codul dificil înțelegeți, chiar și subrutinele din Perl sunt foarte greu de programat și în cele din urmă dificil de înțeles mai tarziu.
Pe de altă parte, Perl este cel mai bun pentru un singur liner care poate fi utilizat pe linia de comandă pentru îndeplinirea diferitelor sarcini. De asemenea, codul Perl poate efectua în cele din urmă diverse sarcini în mai puține linii de cod decât python.
Un exemplu de cod scurt al ambelor limbi, care evidențiază capacitatea Perl de a face mai multe în mai puțin LOC:
Piton
încercați: cu deschis („data.csv”) ca f: pentru linia din f: linia de imprimare, cu excepția excepției ca e: print „Nu se poate deschide fișierul -% s”% e.
Perl
deschis (FILE, ”% lt; inp.txt ”) sau morți„ Nu se poate deschide fișierul ”; in timp ce() { tipăriți „$ _”; }
În această secțiune, vom discuta despre avantajele și dezavantajele Python și Perl.
OO
Programarea, de asemenea, programarea firelor în Python este mult mai bună decât Perl.‘@’
identifică matrici și ‘%’
identifică hashuri.‘$`’
, ‘$&’
etc sunt greu de înțeles și programat pentru un programator mai puțin experimentat. De asemenea, codul Perl atunci când este citit ar fi dificil și complex de înțeles, cu excepția cazului în care aveți o experiență de calitate.După cum s-a văzut mai sus, în cazul în care ambele limbi sunt bune în privința lor, în conformitate cu aplicațiile pe care le vizează, Piton are un pic de avantaj peste Perl ca primă alegere pentru un începător datorită codului său curat și ușor de înțeles, în timp ce, pe de altă parte, Perl depășește Python atunci când este vorba despre operații de manipulare a șirurilor și despre unele linii avansate pentru UNIX, cum ar fi sistemul de operare și diverse alte operații despre care este cunoscut pentru.
Deci, în cele din urmă, totul se referă la zona specifică pe care o vizați. Toate comentariile tale despre acest articol sunt binevenite și ți-ar cere să-ți expui opiniile cu privire la acest subiect dacă în conformitate cu tine Python câștigă sau Perl.