Usein, kun uusi ohjelmointikieli otetaan käyttöön, keskustelu alkaa joidenkin joukossa nero mielet alalla, jossa kieltä verrataan kieleen, joka jo levittää juuriaan. IT -alalla leviää usein eräänlainen surina ja uutta verrataan usein kaikilta osin ominaisuudet, syntaksi tai ydin CPU ja muisti, mukaan lukien GC -aika ja kaikki nykyisen kanssa ystävällinen.
Monia esimerkkejä tällaisista tapauksista voidaan poimia ja tutkia menneisyydestä, mukaan lukien niiden välinen keskustelu Java ja C#, C ++, jne. Yksi tällainen tapaus, joka herätti paljon huomiota, oli keskustelu kahden kielen välillä, jotka tulivat peräkkäin lyhyellä aikavälillä, ts. Python ja Perl.
Kun taas Python keksittiin alun perin ABC -kielen seuraajana vain "harrastus”Ohjelmointiprojekti (joka houkuttelee Unix/C -hakkereita) tekijälle, joka nimesi sen suurimman tähtinsarjansa mukaan Monty Python.
Ehdotettu luku:Python -ohjelmoinnin ja komentosarjojen käytön aloittaminen Linuxissa
Perl oli vain noin kaksi vuotta aiemmin Unix -skriptikielellä, jonka tarkoituksena oli helpottaa raporttien käsittelyä. Se oli sekoitus monia kieliä, mukaan lukien
C, awk, sedja shell -käsikirjoitus.On syytä huomata, että nämä kielet, jotka ovat kehittyneet eri aikomuksista, ovat olemassa Vertaa jatkuvasti, mikä on saanut minut tutkimaan ja selvittämään syitä, joista muutamia tärkeitä on lueteltu kuten alla:
Sukellamme syvälle tähän keskusteluun ja yritämme selvittää yleiset näkökohdat, joissa nämä kaksi kieltä eroavat toisistaan. Yritetään myös selvittää totuuden lähde monille kliseille, jotka voidaan kuulla alalla sanomalla "Python on Perl, jossa on harjoituspyörät"Tai"Python on samanlainen kuin Perl, mutta erilainen”Jotta voimme yrittää päättää lopullisesti tarkalla ratkaisulla tähän loputtomaan keskusteluun.
Pythonilla on valtava etu Perliin verrattuna koodin luettavuuden suhteen. Pythonin koodi on paljon selkeämmin ymmärrettävissä kuin Perlin koodi, vaikka luettaessa koodia vuosien jälkeen.
Kun sisennys edustaa koodilohkoa ja asianmukainen rakenne, Pythonin koodi on paljon puhtaampi. Toisaalta Perl lainaa syntaksinsa eri ohjelmointikieliltä, kuten C, komentotiedosto ja jopa awk ja sed suodattimia säännöllisten lausekkeiden suhteen.
Ehdotettu luku:15 hyödyllistä sed -komentoa päivittäisiin Linux -järjestelmänhallintatehtäviin
Tämän lisäksi, kanssa "{" Ja "}"
edustaa koodilohkoa ja tarpeetonta lisäystä ‘;’
jokaisen rivin lopussa Perl -koodista voi tulla ongelma ymmärtää, jos luet sen kuukausien tai vuosien jälkeen, koska se sallii rumat komentosarjat.
Perlin kieli lainaa syntaksinsa C ja muut UNIX komentoja kuten sed, awk, jne. minkä vuoksi sillä on erittäin tehokas ja sisäänrakennettu säännöllisen lausekkeen tuki tuomatta kolmannen osapuolen moduuleja.
Myös, Perl pystyy käsittelemään käyttöjärjestelmää käyttämällä sisäänrakennettuja toimintoja. Toisaalta, Python on kolmannen osapuolen kirjastoja molemmille toiminnoille, ts. re varten regex ja os, sys käyttöjärjestelmille, jotka on varmistettava ennen tällaisten toimintojen suorittamista.
Perlin säännöllisissä lausekkeissa on "sed”Kuten syntaksi, joka helpottaa hakutoimintojen lisäksi myös korvaamista, korvaamista ja muita toimintoja a merkkijono voidaan tehdä helposti ja nopeasti kuin python, jossa henkilön on tiedettävä ja muistettava toiminnot, jotka palvelevat tarve.
Esimerkki: Harkitse ohjelmaa, joka etsii numeroa merkkijonosta paikassa Perl ja Python.
Python
Tuo uudelleen. str = ’hei0909 siellä” tulos = re.findall ('\ d+', str) tulostustulos.
Perl
$ string = 'hei0909there'; $ merkkijono = ~ m/(\ d+)/; tulosta "$ & \ n"
Näet syntaksin kohteelle Perl on helppoa ja inspiroivaa sed komento joka hyödyntää Pythonista syntaksi, joka tuo kolmannen osapuolen moduulin "Uudelleen".
Yksi ominaisuus missä Python varjostaa Perl on sen edistynyt OO
ohjelmointi. Python on laaja olio-ohjelmointituki puhtaalla ja johdonmukaisella syntaksilla objektin ollessa OOP
sisään Perl on vanhentunut, jos pakettia käytetään luokkien korvikkeena.
Myös kirjoittaminen OO
Perl -koodi lisää koodiin paljon monimutkaisempaa, mikä lopulta vaikeuttaisi koodia Ymmärrä, jopa Perlin aliohjelmia on erittäin vaikea ohjelmoida ja lopulta vaikea ymmärtää myöhemmin.
Toisaalta Perl on paras yhden rivinsa kanssa, jota voidaan käyttää komentorivillä eri tehtävien suorittamiseen. Lisäksi Perl -koodi voi lopulta tehdä erilaisia tehtäviä harvemmalla koodirivillä kuin python.
Lyhytkoodiesimerkki molemmista kielistä, mikä korostaa Perlin kykyä tehdä enemmän vähemmän LOC: ssa:
Python
kokeile: avoimella ("data.csv") muodossa f: riville f: tulostusrivillä, paitsi poikkeukselle e: print "Tiedostoa ei voi avata - %s" %e.
Perl
open (FILE, ”%lt; inp.txt ”) tai kuole” Tiedostoa ei voi avata ”; sillä aikaa() { tulosta “$ _”; }
Tässä osassa keskustelemme Pythonin ja Perlin eduista ja haitoista.
OO
Ohjelmointi, myös langan ohjelmointi Pythonissa on paljon parempi kuin Perl.‘@’
tunnistaa taulukot ja ‘%’
tunnistaa hajautukset.‘$`’
, ‘$&’
jne. on vaikea ymmärtää ja ohjelmoida vähemmän kokeneelle ohjelmoijalle. Myös Perl -koodi lukiessa olisi vaikeaa ja monimutkaista ymmärtää, ellei sinulla ole laadukokemusta.Kuten edellä on nähty, missä molemmat kielet ovat hyviä suhteessa kohdistamiinsa sovelluksiin, Python ottaa hieman etua Perl ensimmäinen valinta aloittelijalle puhtaan ja helposti ymmärrettävän koodinsa vuoksi, kun taas toisaalta Perl ylittää Pythonin se koskee merkkijonon manipulointitoimintoja ja joitain kehittyneitä yhden linjan UNIX-käyttöjärjestelmiä, kuten käyttöjärjestelmää ja monia muita tunnettuja toimintoja varten.
Joten lopulta kaikki riippuu kohdennetusta alueesta. Kaikki kommenttisi tähän artikkeliin ovat tervetulleita ja pyytävät sinua kertomaan mielipiteesi aiheesta, jos Python voittaa tai Perl.