Być albo nie być….front/back-end`owcem? Oto jest pytanie…

Frontend czy backend?
Literacko, co nie? Hamletowskie pytanie towarzyszy także początkującym koderom. Mnie również.
No bo… którą ścieżką iść?  Tym razem o wyborze, który niejako nas (programistów) definiuje.
Żeby wejść do branży IT, jest wiele możliwości. Można skończyć studia informatyczne. Innym sposobem jest zapisanie się na kurs/bootcamp, który oferują szkoły programowania. Najtrudniej moim zdaniem jest uczyć się samemu. I tu pojawia się pierwszy z dylematów: front-end, czy może back-end? Zająć się bardziej layoutem aplikacji, czy może ‚silnikiem’, na którym ta witryna pracuje? Sam stałem przed takim wyborem. A co wybrałem?

Na początek HTML, potem będzie już z górki…

Tak myślałem i jak bardzo się wtedy myliłem. Pisząc tego posta, przypomniałem sobie, jak jeszcze w szkole podstawowej nauczyciel informatyki pokazywał nam, jak ‚pisać’ w Internecie. Był to język znaczników HTML. Aj, ile radości było w tym, żeby wypisać, pogrubić, zwiększyć, zmniejszyć coś na ekranie. Z biegiem czasu HTML już w wersji 5 nabrał nieco innego przeznaczenia. Chodzi tu o semantykę kodu, dzięki której roboty mogą rozpoznawać to, co znajduje się na naszej stronie: acha-tu jest nawigacja i stopka. Ten element to header, a ten to sekcja itd…


bootstrap

W świat webowy wchodziłem stopniowo. Przyszła pora na CSS3. Klasy, id – stylowanie za pomocą m.in. tych funkcjonalności pozwalało dostosowywać witrynę do moich potrzeb i wymagań. Jest to niezwykle wciągający obszar, który pochłania wiele godzin. Czy z perspektywy czasu, poświęconego danemu projektowi zrobiłbym ten sam zupełnie inaczej? Oczywiście, że tak. Ważne jest, by mieć projekt graficzny. Bez niego można balansować na granicy pomysłów, z których każdy będzie jeszcze lepszy. (Na zdjęciu powyżej: przykładowy szkielet na podstawie  Bootstrap Framework).

Dziś każdy layout nie może obyć się bez interakcji z użytkownikiem. Javascript i biblioteki jQuery są niejako powiązane z już działającymi aplikacjami. Dzięki nim możemy nie tylko ‚płynnie’ przechodzić pomiędzy sekcjami, ale też wyświetlić  po kliklnięciu alert.  Oczywiście są to tylko niektóre z możliwości, jakie oferują te front-technologie.

‚Front-end TO NIE JEST programowanie!’ 

Na programistycznych forach, grupach często spotykam się z takim zdaniem. Czy front-end rzeczywiście nie jest programowaniem? Patrząc z perspektywy takiej, że technologii, które skupiają się na tym, żeby strona prezentowała się tak, jak chce tego klient, albo grafik jest CAŁA MASA. Od HTML5, CSS3, poprzez Javascript. Do tego dochodzą preprocesory, frameworki i gotowe biblioteki. Do dziś wiele aplikacji internetowych korzysta z jQuery, Bootstrapa, czy Angulara.  Odnosząc się do powyższego nagłówka, mogę powiedzieć, że front-end to bardziej web design, coś, co ma wyglądać, a nie działać. Za tę drugą część odpowiada backend. O tym teraz zdań kilka…

Back-end, czyli to co widzę JA, a nie TY.

Napisałem już o tym, jak prezentować treść, teraz o tym, co pokazywać, czyli dane.

Każda aplikacja czy strona internetowa potrzebuje ‚silnika’, który będzie odpowiedzialny za jej działanie. Ja wybrałem PHP. To język skryptowy, działający po stronie serwera. Dzięki oprogramowanej tak aplikacji dostaniemy odpowiedź np. o złym lub poprawnym logowaniu. Spotykamy się z tym na co dzień. W banku czy facebooku.

Pierwszym skryptem, który udało mi sie uruchomić na moim lokalnym serwerze, był to kod odpowiedzialny za wyświetlenie ciągu znaków: ‚Hello World’ na ekranie monitora.

 

hello-world

 

Działa! Radość przeogromna!
Backend tak samo jak front-end posiada wiele technologii: Sam PHP bazuje na paru frameworkach: Symfony, Laravel, CodeIgniter, Zend. Dodatkowo PHP`owiec powinien znać język SQL, który generuje zapytania do bazy danych i pobiera, uaktualnia, usuwa lub też wrzuca zasoby. Reasumując, w świecie programowania back-end developer odpowiada za tworzenie oprogramowania (kodu) powstającej strony www, a także sprawuje pieczę nad bezpieczeństwem i rozwojem zastasowanych rozwiązań.

A więc, co wybrać?

Nie jestem od udzielania rad, ale… jeśli mogę podpowiedzieć komuś to, czemu nie? :)
Jeśli chcesz płynnie, ciekawie i szybko wejść do świata IT – wybierz FRONT-end. Efekt kodowania widzisz od razu w przeglądarce. Zacznij poznawać HTML, potem CSS i  JavaScript. Zbiegiem czasu rozwiniesz się i wiedzy będziesz szukał dalej. Jeśli Front to za mało, przejdź na drugą stronę i skieruj się ku technologiom backendowym. W ten sposób będziesz z „niejednego pieca chleb jadł”, stając się ‚Full stack Developerem’.
Kończę pytaniem do Was: z którą z technologii rozpoczęła się Wasza przygoda z kodowaniem?
Czekam na Wasze komentarze.
Cześć.