Povilas Korop. Kodėl yra gerai/blogai programuoti PHP kalba?

Komentarai Prisijungti

Viršuje:   Seniausi | Naujausi

Shinigami 2012-10-04 14:43
PHP buvo pirma kalba nuo kurios pradėjau mokytis programavimo Bet jau seniai jos nenaudoju.
BlueC 2012-10-04 14:51
Esu rašęs PHP, bet tik truputį. Kadangi netraukiu iki web aplicijų programuotojo, tai labai kažko pasakyti negaliu. Sutinku, kad klaidų problema egzistuoja, todėl labai svarbu laikytis tvarkos kodo rašyme, naudoti šablonus. Išsprendžiama problema, ypač jei nėra komandinio darbo. Teko matyt komandą, kurioje buvo daug individualybių, rašė PHP. Nepasisekė. Dėl galimybės uždirbti daugiau ir galimybės rasti darbo - čia yra prieštaravimas. Galimybę uždirbti daugiau mažina tai, kad programuotojų pasiūla yra didelė, todėl jie pigesni. Didesniems projektams, kaip ir minėjo autorius taip pat keliami reikalavimai naudoti .NET, Java, t.t. Bet turint patirties labai neblogai galima suktis mažųjų, net vidutinių įmonių nišoje. Beje, nepatarčiau pradėt mokytis programavimo nuo šios kalbos. Kai kurių įpročių po to gali būti sunku išvengti, jei kartais nutartumėt imtis kitų kalbų. Bet jei tikrai žinote ko siekiate gyvenime, galite, tik ar tikrai žinote? Aš pvz. nežinau kokios kalbos bus perspektyvios po 10 metų. Kita vertus po 10 metų nuo PHP paskutinio projekto (t.y. dabar) aplamai mažai programuot tenka - yra jaunų, gabių tam.
karka91 2012-10-04 14:55
Argumentai, kad python ar perl yra geresnės kalbos yra grįsti daugiausiai `fanbojiškumu` neatsižvelgiant kur tos kalbos naudojamos. Aš sutinku, kad php turi daug problemų (vietomis sumaišytas api, resursų naudojimas ir t.t.) tačiau pats faktas, kad python/perl yra bendros paskirties kalbos, o php - web scriptinimo kalba, nurodo, kad jos turėtu silpniau pasirodyti prieš php web arenoj. Tinklapiai nėra platforma kurioje reikalaujama didelės spartos ar optimizuotu struktūrų tad aš pats geriau parašysiu 100 eilučių kurios bus vykdomos 10ms ilgiau ir naudos daugiau atminties, nei 500 eilučių kuriose dar turėsiu jaudintis ir dėl žemo lygio problemų. PC resursai nebėra tokie riboti, kad dėl jų tektu smarkiai sukti galvą, tad mano nuomone geriau rinktis kalba kuri leidžia sutaupyti viena brangiausių resursų - developer'ių laiką.
arab 2012-10-04 15:20
Sunku ismokt php programint ? Nes vis jos prireikia ir galvoju gal vertetu laisvu laiku pastudijuot ? Aisku cia tas "ismokt" labai placiai gali but naudojamas, bet kad elemtarius scriptukus pasirasyt, web puslapiam, daug tam laiko reik skirt ?
Shinigami 2012-10-04 15:38
Iš kur ištraukei, kad web puslapį programuoti su python reikia daug laiko? Dabar yra jau ne vienas web framework'as, kad butu galima greitai ir lengvai programuoti internetinius puslapius naudojant python. http://wiki.python.org/moin/WebFrameworks pažįstamas turi įmonę kuri užsiima internetinės sistemos įmonėms kūrimu ant Zope2. Ir viską programuoja ant python 2.4
edgarasl 2012-10-04 20:34
Nėra riboti, bet nėra ir pigūs. Įmonei visi resursai kainuoja - RAMas kainuoja, CPU kainuoja, disko vieta kainuoja. Jeigu įmonė kas mėnesį gali sutaupyti 3000lt ant resursų, tai ar negeriau rinktis greitesnę kalbą?
M.Mantas 2012-10-04 21:31
Studento rašliava. Matosi kad dirba tik su mažais projektais. -- Visos kalbos turi trūkumų, bet problema ne tame jei programuotojo rankos kreivos. Manau PHP dėl savo paprastumo (iš pirmo žvilgsnio) turi per daug "specialistų". Truputėlį liūdna kai žmogus kelis metus dirba tikrą darbą, bet nematyt jokio progreso jo mastyme ir kodo kultūroj. P.S. specialistų Lietuvoje trūksta
w00xer 2012-10-04 21:42
Mane profai ir programeriai gal pasmerks, bet kyla klausimas, jei uzsiimi tik mazais projektais, nedideles imones, asmenine kazkokia veikla, kam isradineti dvirati naujai ir kodinti puslapi php kad ir nuo nulio, jei yra CMS, kurias galima pilnai customaizinti turint css ir javascript pagrindus? Ar as klystu? Nes man kaip eiliniam internautui, kuris su profesionaliom sistemom is esmes nesusidures, kazkokiam nedideliam projektui giliam kodinimui prasmes kaip ir nera...
Shinigami 2012-10-04 22:17
Nedideliam įmonės puslapiui, kad tik pristatytum įmonę. Be jokių forumų ir čiatų. Gali užtekti ir HTML + CSS + javascrip. Ir daugiau nieko nereikia. Sukūrei 5 html puslapius ir gana. Kažką suprogramuoti reiktu tik tokioms įmonėms kurios pačios norėtu kas kažkiek laiko pridėti naujos informacijos ar sukurti naujus puslapius. Naudoti php ar python ar kokia kita kalbą, nėra dviračio išradinėjimas. php naudojama tik todėl, kad ją gali naudoti beveik visuose serveriuose, o kitas kalbas palaiko ne visi serveriai, arba reikia papildomai prašyti, kad įdiegtu į serverį, paslaugų tiekėjas. Bei php programuotojų yra ant kiekvieno kampo (kiek iš jų gerų - nežinau). Tačiau galinčių programuoti kitomis kalbomis yra daug mažiau. Todėl kitos kalbos web'e ir sunkiai plinta.
w00xer 2012-10-04 22:28
Nevisiskai supratai mane. Va butent ir klausiu, kam uzsiimineti programinimais, jei yra puikiausios CMS, joomla, drupal, wp... Apipavidalini viska su css, modulius, addonus ir panasu velnia tvarkai per cms... Kokiuose dideliuose portaluose gak ir taip, specifines funkcijas gal ir reikia sukurt... Bet nedideliam projektui...?
Shell32 2012-10-05 00:03
Kiekvienai problemai - savas įrankis. Jūs nenorėtumėte programuoti Web puslapio su C, lygiai taip pat niekas neprogramuoja kontrolerių su PHP (net jei tai būtų įmanoma). Tema net neturėtų būti formuluojama apskritai, - svarbu rezultatas ir turinys, o ne įrankis.
Shinigami 2012-10-05 07:33
Va čia ir yra php cms problema. Jei nori pakeisti puslapio išvaizdą (susikurti pats) tau vis tiek reikia php žinių. Nes visas html ir javascript kodas yra sumaišytas su php kodu.
Domas1 2012-10-05 07:36
Apie php galiu pasakyti tiek: * pliusai mano nuomone turi daug nemokamo Hostingo; * o minusai mano nuomone butu tokie kiek susiduriau Per daugiau negu 10metu ivairiu technologiju panaudojime: 1) baisiai nepatinka tas $ simbolis ir kas tokia nesamone sugalvojo;) 2) labai leti frameworkai jei kalba eina apie didziulias ekomercijos scetaines, sioje vietoje tenka arba savo nuo 0 viska programuoti arba taikyti kitas technologijas 3) sunku rasti unix normalu administratoriu su windows viskas paprasciau 4) ne Lietuvoje ir ne Rusijoje php sistemos dideles kompanijos nenaudoja sutinku o pinigu moko kur kas daugiau ir viskas jog ne tik paprasciau kuriama bet galimybes kur kas didesnes tarkime su .net, jei nepatinka gali naudoti silverlight ir tt Php mano nuomone geriausia tinka taikyti kai kisenes skyletos Php liks gyvuoti tol kol bus nemokamu paslaugu. O autoriui galiu pasakyti jog visiskai nevykes straipsnis.
sz520qm 2012-10-05 11:57
Kažkas pasiūlė Silverlight kaip web develop'inimo alternatyvą. Kekekeke
sigun 2012-10-05 19:57
Apie python negaliu kažko pasakyti, nesusidūriau. O pastebėjimus apie kitas iš mano varpinės kaip admino administruojančio ir keliolika web svetainių, kurių didžiausia ~40K unikalių dienai. Perl - lėčiau, nei php, net jei php paleista kaip skript engine (na čia buvo aktualu prieš 12 metų ). Jei lygint su php dirbančiu kaip web serverio modulis - php greitesnis daug kartų. Man perle žymiai sunkiau su papildomų modulių diegimu. Kai PHP užtenka config eilutėje atkomentuoti reikiamą modulį, tai perl'e pastoviai žaidi su cpan. O dar reikia žinoti kokio ten modulio užsiprašyti. Ir nežinau kodėl, bet stabiliame debiane pastoviai ko nors pritrūksta... Tiesa, kas nori vieną kitą žilą plauką adminui įtaisyt ir ant php gali taip padaryti su pear'u... Ruby - teko kelis metus palaikyti puslapį ruby on rails. Baisiai nepatiko. Kraupiai lėtas. Su fastcgi + reverse proxy + užklausų balansavimas skirtingiems serveriams greičio problemą sutvarko, bet prie didesnio apkrovimo (jau minėta svetainė su 40K unikalių) karts nuo karto lūždavo. Spėju dėl to, kad lengvesnę užklausą gavę serveriai sugebėdavo puslapio dalį gražint gerokai anksčiau. Bet to nepavyko sugaudyt, paprasčiau buvo padaryt automatinį threado restartą, kai tik kuris nors per ilgai neatsakydavo... Vienu žodžiu, patirtis nekokia ir kai organizacija nutarė keisti turinio valdymą tikrai apsidžiaugiau. .NET - admino naktinis košmaras. Lėta. Klaikiai. Kodas kompiliuojamas ir vis tiek stabdis. Nežiūrint to atminties pasiima šmtais MB kiekvienas workeris... Veikia tik windows serveriuose. Reikia instaliuoti visą infrastruktūrą. Galvasopis dėl licenzijų. Turbūt 99% instaliacijų dirba su MS SQL, o tai dar papildomas galvasopis dėl licenzijų. Kodo atnaujinimams turi restartuoti visą IIS ir tuo pačiu užmušt ir visas kitas svetaines serveryje. Jei kelios skirtingos svetainės dar vienas galvasopis - kai kiekvienai jų reikia vis kitos .NET versijos... O jei dar naudojama reports services... Ir pvz. ateina laikas juos konsoliduoti pvz. iš kelių serverių į vieną... Arba dar geriau, kai ataskaitos padaromos ant sql express report servisų (kad nereikalautų SQL standard + licenzijų ir taip tilptų į biudžetą), o vėliau programa taip pučiasi, kad nebetelpa į GB ir visa tai reikia vėlgi numigruoti į SQL standart ir dar ne tą versiją... Neseniai teko praeiti, nelinkiu nei vienam. O dar jei nutaria web aplikaciją kurti ant sharepoint tai jau nebe naktinis košmaras, tai - tragedija. Deja šiuo metu turim ir šitą... Nes k..rvos iš marketingo nenorėjo įdėti vienos mūsų pasiūlytos eilutės į konkurso sąlygas - "sprendimas turi nereikalauti licenzijų arba teikėjas nuperka ir įskaičiuoja į pasiūlymo kainą visas reikalingas licenzijas. Kadangi vartotoju ne vienas šimtas, visi mėgėjai "programuoti" ant sharepoint automatiškai būtų likę konkurso apačioje. O dabar teko priimti, kad tokie laimėjo ir papildomai organizacijos biudžete ieškoti dar link 100K Lt licenzijoms ir po viso šito turėti lėtai veikiantį gremėzdą... EU pinigai blyn... Praėjus 3 metams galėsim tyliai numarint ir ieškot kažko geresnio. Dar straipsnyje nepaminėta java. Sutinku, jog turi savo nišą, bet web'e tikrai nepatiko. Teko naudotis kelių skirtingų ir tikrai žinomų Lietuvos kompanijų sukurtus projektus. Nepatiko... Taip pat pisliava dėl java versijų, taip pat lėta. Jei neturi išeities kodų lieki kūrėjo malonėje. O jie kartais bankrutuoja... Apibendrinant - PHP gal ir blogis, bet man tai tikrai mažiausias blogis iš visų (kaip rašiau neturiu patirties su python web'e). Ir veikia visur, ir DB backend gali naudoti praktiškai bet ką, ir veikia pakankamai greitai ir gerai palaikoma, praktiškai jokių problemų migruojant. Tik vieną kart susidūriau, kai kūrėjai buvo suprogramavę savo funkcijas, o po daug metų pasirodžiusioje naujoje php versijoje jau atsirado tokiu pat vardu pora native funkcijų.
Ishiki 2012-10-06 20:06
Pagrindine PHP problema yra didelis kiekis sudarankiu kurie wapsie nesupranta su kuo dirba. Pazystu zmoniu kurie irgi programina virs 10 metu, bet ju kodas prilygsta 5ta klasio... Todel nebukit tie sudarankiai, pirma gerai supraskit PHP ir jos galimybes, o po to kalbekit.
rwc 2012-10-14 02:33
, dėl visko pilnai sutinku. O vat Java tikrai nebūtų blogis, jei Lietuvoje būtų pakankamos kvalifikacijos Javistų, neišradinėjančių dviračio, tačiau gerai žinančių naudojamas technologijas. Prisigalvoja visokių portalų serverių, sukergia po 5 skirtingus freimworkus kiekvienam atvejui (JBoss Weld+OSGi+Spring+CXF+CDI+EJB3+JNDI+Annotations vien servisų sukabinimui ir t.t.). Tai ir gaunas bilekoks bardakas. Galima paimti "lengvesnius" Application Serverius (galima ir Jetty/Tomcat/Resin, bet AS dažniausiai turi beveik viską, ko reikia savyje), kodinti iš esmės vienam standartui, parinkti kokį "lightweight" UI freimworką - ir viskas veiktų, ir nebūtų sudėtingiau nei PHP. Galbūt, problema yra programerių paruošime. Su PHP'eriais - viskas aišku, kreivarankiai, įvaldę vieną CMS ir tiek. O su Java - tai dažnas žino labai daug, bet nemoka pagrindų, darbdaviai reikalauja savybių, kurios rimtuose projektuose peilis. Javistus pas mus kažkodėl piešia kaip genijus, kurie turėtų tobulai išmanyti visą JavaEE steką, DB normalizavimą, PL_SQL, HTML, 15 freimworkų ir dar biznio procesus... Kada normaliai susikoncentruoti ir išmokti vieną steko dalį, bet gerai?