PHP czy framework?

0

Czesc, ucze sie od jakiegos czasu php i zastanawiam sie czy nie przsiasc sie na jakis framework. Z tego co patrzylem zasady sa podobne, wiec nawet niewazne na jaki wejde na kolejny jak sie przesiade bedzie mi latwiej, ale chodzi o to, jak pracodawcy patrza na umiejetnosci pisania w czystym php, czy frameworku. Wiem co to mvc i obiektowka, wiec na frameworku sie odnajde, ale chcialbym zeby nauka nie poszla w las, dlatego zastanawiam sie, czy nie lepiej ogarnac bardziej czystego php - choc wydaje mi sie ten jezyk, ze jest w nim straszny balagan mimo wszystko, a widzac kod w frameworku wyglada wrecz perfect. No ale jak to wyglada w rzeczywistosci. W pracy? Framework, czy raczej tradycyjne podejscie?

0

znajomość "czystego" php jest ważna ale większość firm używa frameworków

1

Oczywiście, że framework. Przyspieszasz pracę, piszesz czysty i zrozumiały dla innych kod. Pierwsze o co zapytają, to jakie znasz frameworki i wzorce projektowe. Czasami nie warto używać frameworka typu Laravel przy małych projektach. Trzeba rozróżnić kiedy użyć np. Smarty, a kiedy coś konkretniejszego, jednak reasumując i tak powinno się używać jakiegoś frameworka lub przynajmniej solidnie implementować wzorce. Nauka na pewno nie pójdzie w las.

1

Ja po 2 miesiącach przygody z web devem zostałem przeniesiony z HTML/CSS na Zend'a. Z php prawie nic nie umiałem, ale miałem podstawową wiedzę z zakresu programowania w Javie i OOP. Według mnie framework jest dla kogoś, ktos zna już dany język. To tak samo jak miałem z jQuery. Zacząłem go używać zanim zrozumiałem dobrze JS i wkurw.... się co 5 sekund, bo a to this mi sie bindowało nie takie jak trzeba, a to domknięcia ( wtedy nie widziałem, że coś takiego istnieje w tym języku) się pojawiały itd. W obydwu przypadkach wróciłem do początku, przyswoiłem solidnie podstawy i dopiero wróciłem do frameworków. Poza tym uważam, że dobrze jest wiedzieć jak coś działa, zanim się zacznie korzystać z gotowych komponentów.

Piszę to z punktu widzenia początkującego, więc zwróć większa uwagę na opinie doświadczonych programistów.

0

To znaczy ja liznalem tego php-a. Bawilem sie z formularzami itp. Proste crud aplikacje rowniez sobie napisalem wykorzystujac tablice $_GET chociazby. I tak sobie mysle. A co tam, zobacze sobie jakies tutoriale. Niechacy jakos natrafilem na Laravel wlasnie. Spodobal mi sie, nie powiem. No ale tak sobie mysle. Kurcze, juz do frameworka mam sie rzucac? No ale jak na razie wszystko jest dla mnie zrozumiale i wiem co z czego jest + framework js-owe, ktore tez cos tam sobie robilem. Jako iz ogladalem wczoraj przez kilka godzin tutki do laravel i juz sobie go zaimplementowalem composerem, to chyba zaczne w tym pisac, ale jako drugi strzal myslalem nad symfony. Tak sobie mysle, ze warto to umiec, bo nawet jak w pracy bym pisal w springu, to podejrzewam, ze na projekt php predzej czy pozniej zostane wrzucony. Mial ktos doswiadczenie z laravelem? Tak sobie mysle jaki front do tego polaczyc. Osobiscie co polecacie?

0
KrawiecBombata napisał(a):

Proste crud aplikacje rowniez sobie napisalem wykorzystujac tablice $_GET chociazby.

Tak co do CRUD, GET służy do pobierania danych z bazy danych np. wyświetlenie listy jakichś danych i jeśli chodzi Ci o tablicę $_GET która to w istocie obrazuje to co masz w pasku adresu, konkretniej parametry:

domena.com/index.php?parametr1=wartosc1&parametr2=wartosc2

Wykorzystuje się w wyszukiwarkach.

I nie wstawia się nowych rekordów przez $_GET tylko przez $_POST, dotyczy to także modyfikacji. Pomijam tu już REST, gdzie wykorzystuje się metody GET, POST, PUT, DELETE.

Niechacy jakos natrafilem na Laravel wlasnie. Spodobal mi sie, nie powiem. No ale tak sobie mysle. Kurcze, juz do frameworka mam sie rzucac?

I co z tego że Ci się spodobał akurat ten framework? W większości przypadków używa się Symfony a ten będzie NARZUCONY przez pracodawców i nie jest istotne czy Ci się podoba czy nie. A niektóre firmy używają WŁASNYCH rozwiązań, więc na niewiele się zda znajomość popularnych frameworków.

Ogólnie, FW zawiera zbiór gotowych klas do typowych zastosowań, aplikację webową przy ich użyciu pisze się o niebo szybciej niż od zera, co nie zwalnia od znajomości czystego PHP bo to i tak podstawa.

0

Naucz się dowolnego wiodącego frameworka. W sieci jest dosyć diagramów/wykresów prezentujących ich popularność. Jeśli przyswoisz jeden, to nauka następnych przyjdzie Ci łatwiej i jeżeli będzie się trzeba na coś przerzucić, to nie będziesz miał większych problemów.

0

domena.com/index.php?parametr1=wartosc1&parametr2=wartosc2
tak i wlasnie dzieki tym parametrom wykonywalem operacje przez php i mysql.

I co z tego że Ci się spodobał akurat ten framework? W większości przypadków używa się Symfony a ten będzie NARZUCONY przez pracodawców i nie jest istotne czy Ci się podoba czy nie. A niektóre firmy używają WŁASNYCH rozwiązań, więc na niewiele się zda znajomość popularnych frameworków.

Tak, ale jak wczesniej napisalem mam w planach nauke laravel a pozniej symfony. Dzieki temu z pewnoscia jakikolwiek bedzie mi NARZUCONY framework bedzie mi lepiej, bo bede wiedzial z czym sie je, pozostanie mi jedynie przyzwyczajenie sie do rozwiazan danego srodowiska w ktorym bym musial pracowac.

Jak na razie mam zainstalowany laravel, wiec zrobie sobie cos w tym a pozniej symfony, zeby miec porownanie i wybrac, zeby nie bylo pozniej za pozno. Btw. nie ograniczajmy sie do polskich rynkow ;)

0

Mam pytanko. Wie ktos moze jak polaczyc laravel z angularem? Bo jak wrzucam {{dane}}, to wypluwa mi blad. Bo w laravel tez uzywa sie takich znacznikow, wie ktos jak to pogodzic?

0

Może użyj: { zamiast { i } zamiast } ale w miejscach gdzie jest kod tego Angulara, PHP ma tylko wygenerować dynamiczną stronę a tam w miejscach określonych przez {{ }} wstawia się jakieś zmienne.

http://www.degraeve.com/reference/specialcharacters.php

0

Hm, poszlo. Jest jakis sposob, zeby np. podmienic a angularze znaki { i } np, na {% %}, chociazby, bo przeciez nie bede takiego kodu uzywal.

0
	var app = angular.module('firstapp', [], function($interpolateProvider) {
        $interpolateProvider.startSymbol('{%');
        $interpolateProvider.endSymbol('%}');
    });;

Tutaj kod dla osob ktore chcialyby zmienic swoje znaki w angularze.

0

@Patryk27

Wezmę na przykładzie Kohana Framework, wyszukiwanie dajmy na to listy ogłoszeń o pracę:

jakasdomena.com/jobs?fromdate=2015-01-01&todate=2015-05-31

domyślny routing:

Route::set('default', '(<controller>(/<action>(/<id>)))')
    ->defaults(array(
        'controller' => 'welcome',
        'action'     => 'index',
));

I kontroler:

class Controller_Jobs extends Controller_Template
{
    public function action_index()
    {
        try
        {   
            if ($this->request->query('fromdate') && $this->request->query('todate'))
            {
                $fromdate = $this->request->query('fromdate'); 
                $todate = $this->request->query('todate'); 
            
                $jobs = DB::select('*')
                    ->from('jobs')
                    ->where('jobdate', '>=', $fromdate)
                    ->where('jobdate', '<=', $todate)
                    ->execute()
                    ->as_array();
            }
            else
            {
                $jobs = DB::select('*')
                    ->from('jobs')
                    ->execute()
                    ->as_array();
            }
        }
        catch (Database_Exception $e)
        {
            $error = 'Database error';
        }

        $this->template = View::factory('jobs/index')
                        ->set('jobs', $jobs)
                        ->bind('error', $error);  
    }
}

Zamaiast $this->request->query można by użyć $_GET i sprawdzanie typu isset ale to chyba niepotrzebne zamieszanie i pewnie też ryzyko błędów.

0

Nie wiem czy padła już taka odpowiedź w tym wątku, ale od siebie jeszcze proponuje Ci popisać w jakimś MicroFrameworku typu Slim. Taki kompromis pomiędzy pewnym schematem kodu (o ile w miarę trzymasz się wzorców) a własnym widzimisię. Fajnie rozwija i pozwala zrozumieć jakie problemy rozwiązują te większe frameworki.

Dodatkowo oprócz badania samych frameworków korzystaj z Composera i buduj swoje aplikacje sprawdzając rozwiązania osób trzecich.

(Nie wiem do końca czy to właściwe podejście, ale właśnie takie sam obrałem przygotowując jakieś fundamenty pod przyszłą pracę.)

0

Dzieki serdecznie za rady. Jak na razie napisze sobie jakas stronke w laravel, a po tym sprobuje zrobic to samo, ale w symfony i zobacze co mi bardziej odpowiada, zeby zaczac jako pierwsze. Jak myslicie, czy nauka frameworkow php-a pomoze mi w jakims stopnie, gdybym chcial pozniej sie przeniesc na springa?

0

Wiem, ze jest to framework dla javy. Ale wlasnie do tego zmierzam. Czy uczac sie springa bede widzial podobienstwa. Czyli routingi i te sprawy, tylko po prostu inaczej jest to obrane, czy tam sa inne rozwiazania kompletnie.

0

Poznanie ogólnej koncepcji na której opiera się programowanie obiektowe na pewno Ci nie zaszkodzi i pomoże lepiej pracować nie tylko z językiem przy którym nauczyłeś się OOP.

1 użytkowników online, w tym zalogowanych: 0, gości: 1