Rubiin ja PHP: milline sobib kõige paremini teie alustamiseks?

Pilt autor: kpom saidil Upsplash

See artikkel postitati algselt Codica ajaveebisse.

Niisiis, soovite alustada uut projekti nullist ja otsite parimat veebiarendusplatvormi. Veeb programmeerimiskeelte osas pole teie nõudmistele vastava valiku tegemine nii lihtne.

Järgmises artiklis võrdleme Ruby vs. PHP-d 2018. aastal ja leiame mõlema tehnoloogia kriitiliste aspektide peamised plussid ja miinused. Keelte uusimad versioonid on Ruby 2.5 ja PHP 7.2. Kogu allpool esitatud statistika on asjakohane 2018. aasta juuni kohta.

Mõlemad keeled on üle 20 aasta vanad, küpsed ja tootmises tõestatud. Nende põhjal loodi palju suurepäraseid tooteid. Vaatame neid tehnoloogiaid algusest peale.

Ajalugu

1994. aastal HTMLi mallina leiutatud PHP on nüüd usaldusväärne veebiarendustehnoloogia, mida saab kasutada isegi üldotstarbel. Seevastu Ruby ilmus 1995. aastal üldotstarbelise objektorienteeritud keelena, kuid Ruby on Rails edu tõttu on see nüüd peamiselt veebiarenduses rakendatav.

Ehkki mõlemal programmeerimiskeelel olid algselt erinevad eesmärgid, on nad veebiarenduse areenil praegu väga konkurentsitihedad tehnoloogiad.

Filosoofia

Üks peamisi erinevusi Ruby ja PHP vahel põhineb nende filosoofial.

Ruby peamised objektid olid arendajate rõõm ja produktiivsus, kes soovivad töötada stiilse, elegantse ja paindliku keelega.

Usun, et inimesed tahavad end programmeerimisel väljendada. Nad ei taha keeltega võidelda. Programmeerimiskeeled peavad programmeerijatele tunduma loomulikud. Püüdsin panna inimesi programmeerimisest rõõmu tundma ja Ruby kasutamisel keskenduma programmeerimise lõbusale ja loomingulisele osale.
- Yukihiro Matsumoto, Ruby looja

Seetõttu on see keele süntaks nii elegantne ja ilus. Arendajad armastavad seda ja naudivad selles programmeerimist.

Tulles tagasi PHP juurde, oli see kirjutatud peamiselt selle looja Rasmus Lerdorfi isiklikel eesmärkidel. Esialgu tahtis ta lihtsalt loendada oma veebiprotsessi külastuste arvu.

Noh, ma ei plaaninud PHP-d. Ma arvan, et probleemide lahendamise, mitte tarkvaraprojektide osas. Ma tegelikult vihkan programmeerimist, kuid armastan probleemide lahendamist.
- Rasmus Lerdorf

Peagi meelitas PHP lihtsus veebiarendusmaailmas palju programmeerijaid ja mitme aasta jooksul kujunes sellest esimene massituru skriptikeel. Kuid populaarsusel oli ka külg. Kiire kasvu tõttu oli hea keelekujunduse loomine raske. Paljud artiklid olid sel viisil kirjutatud kui “PHP: halva kujunduse fraktaal”.

Paljud arendajad lülituvad PHP-lt üle Ruby või Pythonile, kuna nende kahe disain on palju parem.

Võrdlusloend

Võrdleme mõlema veebitehnoloogia järgmisi aspekte:

  • Õppimiskõver
  • Raamid
  • Populaarsus
  • Kogukond
  • Arendajate kulud
  • Kiirus ja jõudlus

Alustame siis meie lühikest küsitlust.

1. Õppimiskõver

Ruby või PHP õppimise ajal on mõlemal tehnoloogial lühike õppimiskõver. Internetis on palju interaktiivseid õpetusi, näiteks Õpi PHP või Proovi Rubiini.

Ruby-koodi näide:

paaritu arv = [1, 3, 5, 7, 9]
paaritu_arvu.eaga tegema | paaritu_numbri |
  paneb paaritu_arvu
lõpp

PHP-koodi näide:

Nagu näete, on PHP näites avatud silt

Erinevalt keeltest on raamistikel järsk õppimiskõver. Isegi kogenud arendajate jaoks pole mitme raamistikuga tõhus toimimine praegu nii lihtne.

2. Raamid

Vaatame lähemalt veebiraamistikke.

Selles tabelis leiate mõlema keele põhiraamid ja Githubi tähtede arvu. Nagu nähtub, on Rails Ruby maailmas esirinnas, PHP-maailmas aga näituse üle võtnud Laravel.

Kui Rails domineerib teiste Ruby-raamistike üle, on PHP-raamistike vaheline konkurents palju tugevam, sest PHP saavutas populaarsuse juba ammu enne seda, kui teised veebiarenduse keeled seda tegid.

Teisest küljest on Rails saavutanud veebi esimese mass-MVC raamistiku kuulsuse. Rails on kopeerinud palju raamistikke paljudes keeltes, sealhulgas PHP, ja Laravel oli nende hulgas.

3. Populaarsus

Nende kahe programmeerimiskeele levimuse kohta on statistika veebipõhiseid ressursse mitmesuguseid.

3.1 Ruby ja PHP keeles kirjutatud veebisaidid

Nagu W3Techs statistika viitab, on PHP selles kirjutatud veebisaitide arvu absoluutne liider.

Andmed kehtivad 2018. aasta juuli kohta

PHP kogukasutus moodustab 83,5%. Siiski tuleb tunnistada, et tohutu osa PHP turust koosneb sellistest CMSidest nagu Wordpress, Drupal ja Joomla.

3.2 Raamidega ehitatud saidid

BuiltWith.com näitab, et Rails-raamistik on PHP-raamistikega võrreldes populaarsem.

Andmed kehtivad 2018. aasta juuli kohta

Nagu näeme, on kõigis kategooriates kõige rohkem saite üles ehitatud Ruby on Rails'is.

3.3 Programmeerimiskeelte järjestamine

Spektristatistika „Parim programmeerimiskeel“ osutab, et veebiarenduse jaoks on Ruby määr kõrgem kui PHP-l.

Andmed kehtivad 2017. aasta juuli kohta

Nagu väitis Githubi aruanne, oli Ruby 2017. aastal populaarsemate tõenditaotluste arvu järgi PHP-st populaarsem.

Üldiselt, ehkki PHP on kõigi saitide hulgas populaarsem, on Ruby (ja Rails) PHP-st ülekaalus arendajate tegevuse arvu järgi Githubis ja raamistikega veebisaitidel.

Paljud PHP projektid olid varem kirjutatud ilma igasuguse raamistikuta või installitud uuesti Joomla, Wordpressi ja Drupali süsteemide koopiateks. Arvestades, et Rails'iga loodi suur hulk kohandatud projekte ja idufirmasid.

4. Kogukond

Programmeerimiskeele ümber üles ehitatud kogukond on arendajatele suurepärane jõud.

Mõlemal tehnoloogial on suurepärased kogukonnad. Üks peamisi Ruby ja PHP võrdluse eripärasid on see, et Rubyl on üks Rails-raamistikul põhinev kogukond, samas kui PHP-l on arvukalt kogukondi, mis on killustatud sõltuvalt raamistikust või olemasolevatest toodetest.

Üldiselt võime PHP kogukonnas välja tuua kolm haru:

  • Arendajad, kes töötavad Laraveli, Symfony jt raamistikega ja loovad projekte nullist.
  • Programmeerijad, kes tegelevad üksnes Joomla, Wordpressi või Drupali süsteemide inseneriga. Nad osalevad nende toodete kohandamise protsessis oma klientide jaoks.
  • Arendajad, kelle eesmärk on säilitada ja toetada veebisaite, mis on kirjutatud enne moodsate PHP raamistike ilmumist.

Sellega seoses on õiglane võrrelda Rails'i arendajaid ja neid PHP arendajaid, kes töötavad raamistikega. Järelikult on näiteks Laraveli arendajate arv väiksem kui Rails'i programmeerijatel.

Seevastu ei saa me alla suruda suurt ringi, mille tugev Ruby on Rails kogukond Githubis moodustas. Koos keskenduvad nad jõulisele ja kvaliteetsele arendusele, andes olulise panuse ühistesse jõupingutustesse.

5. Arendajate kulud

On olemas arvamus, et PHP arendajad on odavamad ja neid oleks lihtsam leida kui Ruby (Rails) arendajaid.

Tõde on see, et arendajate teenuste hind sõltub nende kvalifikatsioonist ja kõrgelt kvalifitseeritud programmeerijatele makstakse mõlemas keeles hästi.

Tegelikult ei eksisteeri praegu PHP arendaja terminit nagu varem. Praegu võime rääkida näiteks Symfony või Drupali arendajatest. Ja Rails ja Laravel / Symfony inseneride maksumus on umbes sama.

Altpoolt leiate tõepoolest statistika mõlema veebitehnoloogia töökuulutuste kohta.

Numbrid kehtivad 2017. aasta juulis

Nagu näidatud, oli mõlema keele programmeerijate nõudlustase peaaegu sama.

Kuid samal ajal on Rails'i arendajate nõudluse tase kõrgem kui Laraveli jaoks, mis on PHP ülim raamistik.

6. Kiirus ja jõudlus

Nüüd võrdlevad kõik veebikogukondade inimesed Ruby vs PHP tehnoloogia toimivust.

Vaadates ajalugu, võime leida, et Ruby ja PHP olid mõnel hetkel enam-vähem sama kiirusega. Kuid nüüd on PHP 7.2 kiirus märkimisväärselt paranenud. See on palju kiirem kui eelmised versioonid. Lisaks on kasvuruumi, sest 7.3 on nüüd saadaval alfaversioonina. Tubli töö, nüüd on pall Ruby väljakul.

Ruby 2.5 vabastamisel 2017. aasta detsembris tutvustas kogukond jõudluse paranemist kuni 10% võrreldes Ruby 2.4-ga ja esitas hulga muid olulisi värskendusi. Nüüd ootab Ruby kogukond Ruby 2.6 väljaannet, mis on nüüd eelvaatena saadaval. Sama oluline on Ruby 3x3 algatus, mis kipub Ruby jõudlust oma kolmandas versioonis kolmekordistama.

Ehkki arendajad kipuvad tehnoloogia toimivust parandama, pole see põhjuseks ühegi keele valimiseks just selle kiiruse tõttu. Riistvara uuendamine oleks olukorrale praktilisem lahendus.

Eelised

Igal antud programmeerimiskeelel on oma unikaalsed aspektid ja ainulaadne energia, mis teenib eesmärki, milleks need leiutati. Vaadakem siis pilk mõlema tugevatele külgedele.

Puudused

Nii nagu tugevad küljed, on igas keeles alati ka mõni puudus. Igatahes on veel arenguruumi.

Kokkuvõte

Nende kahe programmeerimiskeele vahel valides ei leia te kindlat vastust, mis oleks parim. Mõlemal neist on eeliseid ja puudusi.

Nüüd on PHP jõudlust parandanud, kuid selle keelekujundus on endiselt nõrk. Ruby vajab kiiruse suurendamist, kuid sellel on elegantne disain ja süntaks. Need mõlemad võimaldavad luua kauneid ja vastupidavaid veebirakendusi.

Codicas valisime Ruby, kuna meile meeldib selle keele filosoofia, kujundus ja lihtsus.

Kuid sõltumata sellest, millist keelt me ​​kasutame, on meie peamine ülesanne aidata klientidel saavutada oma ärieesmärke. Tipptasemel ettevõttena pakume alati ettevõttele kohandatud lahendusi, mida meie kliendid naudivad.

Algselt avaldati veebisaidil www.codica.com.

Lisateavet Ruby on Railssi eeliste kohta alustamisel:

Veel rubriigist Rails: