Descumpanit din pricina php

Salutare

Dupa o saptamana de php ma simt absolut descumpanit si depresiv :frowning:

As dori daca se poate dintre colegii forumisti, cu ceva experienta in php sa ma ajute :smile:

Credeam despre mine ca sunt un programator normal, usual guy, that follows rules and convention(SOLID, OOP, etc).
Dupa o saptamana de php ma simt retard.
Am reusit sa fac un todo list folosind laravel, apoi am facut acelasi todo list in php(a doua oara doar din cli)

De ce sunt descumpanit?

M-a nenorocit standart library :expressionless: Nu imi dau seama care sunt functiiile/metodele pe care ar trebui sa le folosesc(ex: sa verific daca un input este integer…)
Apoi, modul in care oop + functional… nu are nici un D-zeu

Ma asteptam sa gasesc o clasa X cu 100 metode frumos documentate si sa fiu fericit. Stau mai mult cautand care metoda este corecta pentru un anumit task. DE CE D-ZEU nu se face curatenie in standart library???
rilly?? http://gcov.php.net/viewer.php?version=PHP_5_6

Anumite framework-uri sunt over complicated. Prea multe design patterns aruncate cand unele lucruri se pot rezolva cu duck-typing. Exemplu: Laravel

  • MVC + facades + Contracts + IoC. Why is this need it?
    Documentatia pe care o gasesti pe internet, well, dupa ce am cautat pe internet …
  • MAI BINE NU FOLOSI nimic din ce gasesti pe internet. majoritatea este pentru beginners, sau old, sau oop cretin. Sunt un miliard de framework, librarii, clone ale clonelor, nimeni nu respecta nici un standart…imi vine sa plang, literalmente ma doare capul. Sambata seara ora 22:30.
    m-am abonat la laracast si urmaresc video-urile acolo, interesante, laravel mi se pare un rails in php cu mai multe design patterns over the place. Unele solutii alese mi se par ciudate :expressionless:
    Am citit codul unu proiect de pe odesk/elance whatever. Este incredibil, nu as putea sa lucrez cu legacy code in php. este I N C R E D I B I L.

Imi doresc sa invat php, dar nu vreau sa invat bad php, bad habbits etc. OOP in php mi se pare un fork gresit din java. in ruby/java sunt obisnuit sa arunc errori, de ce in php unele functii intorc null, altele empty string…
Ma scuza-ti pentru haosul din cap, din acest post si defularea aceasta.

Salut, sunt Claudiu si an nevoie de ajutor. Putem face aici pe acest fain forum, o pagina de good practice, aka:

  • ce clase sa folosesti
  • ce functii sa folosesti
  • ce librarii sa folosesti
  • bloguri/repository/site-uri/video/books de citit
1 Like

ok, nu sari in framework-uri daca vrei sa inveti php. fa totul de la 0. lasa spl-ul pe mai tarziu, nu-ti trebuie la inceput. lucreaza procedural. nu-l compara cu alte limbaje care au fost gandite de la 0 ca OO. in php oop-ul a aparut destul de taziu.

o sa folosesti empty() si isset() pana o sa-ti vina acru :). invata diferenta dintre ele ca o sa te scuteasca de multe injuraturi.si tine minte, ca in php 0 sau empty string sau null pot fi evaluate ca false. invata diferenta intre == si ===

bafta. fereste-te sa lucrezi dupa indieni sau cu ei. la fel, daca vrei sa vezi php scris cu fundu uita-te la codul wordpress :smile:

is_string, is_int, is_numeric, is_object, is_array, is_***. ia-ti manualul si tine-l la indemana. pentru inputuri folosesti is_numeric() pentru ca inputurile sunt trimise ca string-uri

aceleasi principii se aplica si in php.

niste linkuri:

http://php.net/manual/en/history.php.php

ps: mi-as taia o mana pentru ceva de genu $string->method();
ps2: abia m-am trezit. dupa ce-mi beau cafeaua s-ar putea sa-mi dau seama ca ce-am postat n-are nici o logica.
ps3: fuck duck typing

6 Likes
  1. Primul rezultat pe google http://php.net/manual/ro/function.is-numeric.php
  2. Te asteptai ca php sa aibe 100 de functii, intr-o singura clasa? Nici o sansa, e un nou limbaj.
    Si mai rau, unu care a inceput cu stangu si inca incearca sa se indrepte de ani buni.

OOP:

  1. Pai, MVC pentru ca daca arunci totul in aceeasi oala, o sa iasa haos.
  2. Facades pentru ca in felul asta eviti IOC, sau instantierea directa. Iar IOC pentru ca vrei sa eviti facades, si in acelasi timp vrei sa-i dai lui TwitterPublisher exact ce are nevoie.
    Facades in Laravel sunt niste proxy-uri mai destepte, nu te speria, nu respecta design pattern-ul principal.
  3. Welcome to PHP, locul in care fiecare si-a facut cate un framework. Pentru ca nu le-a placut laravel, ca avea prea multe design patterns.

Si Uncle Bob ar putea parea un idiot, cere mult prea multe cand alte chestii s-ar putea rezolva mult mai rapid. Dar nu-i un om rau.

Daca te-ai uitat in Laravel 4 si te-ai speriat de complexitate, Laravel 5 e si mai de groaza. Incearca sa impuna niste noi “Best practice” care fie o sa-ti placa, fie o sa le urasti din tot sufletul.

PS1: Inca depunem rugaciuni pentru http://nikic.github.io/2014/03/14/Methods-on-primitive-types-in-PHP.html

1 Like