I zrobili C
i C++
teraz chcę, aby rozpocząć swoją karierę jako web-developer . Dużo czytałem o tworzeniu stron internetowych i dowiedziałem się, że istnieją dwa typy programistów w sieci,
1. Client Side Developers.
2. Server Side Developers.
Chcę skupić się na rozwoju po stronie serwera . Pomyślałem, że najlepiej zacząć od podstaw, więc zacząłem robić HTML
iCSS
. Dowiedziałem się, że CSS
był zbyt duży, aby ktoś mógł go łatwo opanować. Chcę wiedzieć, jakie podstawy powinien znać programista po stronie serwera, czy powinien być mistrzem HTML i CSS
czy po prostu z niego zrezygnować?
Odpowiedzi:
Zważasz na ich dobre poznanie. Jeśli jesteś programistą, to jesteś programistą. Powinieneś być w stanie samodzielnie pisać aplikacje internetowe, w tym technologię po stronie klienta.
źródło
Uważam się za programistę „po stronie serwera”.
Pomimo bycia „tylną stroną” tworzenia stron internetowych, myślę, że niezwykle pomocna jest znajomość podstaw HTML i CSS. Pracuję na typowych „systemach zarządzania treścią internetową” (WCMS), takich jak Drupal, Day CQ i Liferay, a większość wymagań biznesowych i próśb dotyczy zmiany wyglądu.
Nie trzeba stać się „mistrzem” w HTML lub CSS, ale przynajmniej powinieneś wiedzieć, jak stworzyć statyczną stronę internetową, stylizowaną za pomocą CSS. Powinieneś znać podstawy formularzy i różne mechanizmy wprowadzania. W przypadku CSS zrozum różnicę między atrybutem ID i CLASS oraz sposobem działania selektorów. Dużo tego z czasem odbierzesz.
Na koniec zdobądź wiedzę na temat typowych różnic między przeglądarkami. Znowu jest to wiedza, którą zdobędziesz w miarę upływu czasu, ale zauważ, że istnieją różnice w przeglądarce i przygotuj się na jej rozpoznanie.
źródło
Właściwie zidentyfikowałbym trzy segmenty:
Będziesz potrzebował dogłębnej znajomości zarówno HTML, jak i CSS. Podział pracy między programistami po stronie serwera a programistami po stronie klienta zazwyczaj wymaga, aby programista po stronie serwera dostarczał HTML generowany przez interakcje z bazą danych i programowaniem. HTML zawiera również identyfikatory CSS, dzięki czemu mogą być nim manipulowani przez programistów lub projektantów po stronie klienta.
Twoim zadaniem jako programisty po stronie serwera jest zazwyczaj dostarczanie znaczników HTML / CSS pozostałym dwóm. Dąż do pełnego opanowania zarówno HTML, jak i CSS.
źródło
Musisz znać HTML + CSS, ponieważ są one niezbędne i nie są trudne do nauczenia. Napotkasz pułapki, próbując ustawić CSS dla wszystkich przeglądarek, ale musisz to wiedzieć, ponieważ czasami musisz wygenerować HTML po stronie serwera.
Możesz rozpocząć naukę, tworząc własny blog. Jeśli nie ma o czym pisać, możesz pisać o swoich lekcjach.
źródło
Nie rozumiem, dlaczego ludzie nie rozumieją. W witrynach internetowych nie ma kodu front-end. To wszystko kod zaplecza. Kodem frontonu jest przeglądarka, więc jeśli nie pracujesz w Mozilli, IE, Chromium / google lub safari, piszesz kod po stronie serwera. Oto jak to działa: Przeglądarka żąda pliku z serwera WWW. Serwer WWW wysyła plik. Przeglądarka interpretuje ten plik i może żądać dodatkowych plików (obrazów, javascript, css itp.) I interpretować te pliki, dopóki wszystkie pliki nie zostaną zinterpretowane.
Ten pierwszy plik, o który prosi przeglądarka, to plik HTML. Plik HTML jest analizowany, a przeglądarka decyduje o sposobie renderowania jego zawartości. Tak więc jedną z ważnych koncepcji, które należy zachować, jest to, że plik html jest zużywany przez analizator składni.
Serwer WWW to oprogramowanie, które nasłuchuje na porcie i przetwarza żądania plików. Jeśli plik jest plikiem statycznym (w tym przypadku mamy na myśli plik statyczny w tym sensie, że plik jest już utworzony), to jest on po prostu kopiowany w stanie niezmienionym do żądającego klienta. Jeśli plik jest dynamiczny, co oznacza, że jest tworzony przy każdym żądaniu pliku, serwer WWW żąda wygenerowania pliku przez oprogramowanie, które generuje plik (działający proces, załadowana biblioteka lub spawnujący proces) i to oprogramowanie generuje plik i wysyła go do serwera WWW, który z kolei wysyła go do klienta.
Po „udostępnieniu” tego pliku klientowi i jego przeanalizowaniu klient może zażądać innych typów plików, takich jak pliki json, w których może ominąć parsowanie przez moduł renderujący HTML i zamiast tego zwrócić plik do uruchomionego w nim interpretera javascript klient i są one analizowane (eval jest formą parsowania) przez javascript. Na tym opiera się AJAX.
Jak to na ciebie wpływa? Jeśli jakikolwiek plik na serwerze jest generowany dynamicznie, oznacza to, że na serwerze działa oprogramowanie, które mówi mu, jak wygenerować plik. Osoby, które programują to oprogramowanie, są uważane za programistów „po stronie serwera”.
Te pliki HTML wygenerowane na serwerze poinformują przeglądarkę, jakie inne pliki mają zostać uwzględnione, więc javascript, obrazy i css muszą zostać zaimportowane, ułożone i inaczej zorganizowane przez wygenerowany plik html.
Wiele frameworków internetowych, i śmiem twierdzić, metodologie (MVC i in.) Zostały opracowane w celu stworzenia granicy między czystą pracą „po stronie serwera” a pracą „po stronie klienta”.
Zapomniałem wspomnieć o ludziach danych. Ludzie zajmujący się przechowywaniem danych są nawet bardziej po stronie serwera niż twórcy oprogramowania do generowania plików HTML. Przechowywanie danych, czy to relacyjna baza danych, NoSQL, czy inaczej, to zupełnie inna sprawa. Wspominam o tym, ponieważ reklamowane ramy i metodologie Big-Vendor (MVC i inni) najwyraźniej ułatwiają po prostu „po prostu pogrubienie tego”.
Łał, co za długa odpowiedź.
Robię tę pozornie natarczywą odpowiedź, aby zakwestionować twoje stwierdzenie, że istnieją programiści po stronie serwera i po stronie klienta. Jeśli dostarczasz swój system informacyjny za pośrednictwem strony internetowej, wszystko musi być przechowywane, organizowane i zarządzane na serwerze. I to jest wielki bałagan, a jeśli naprawdę nie nauczysz się, jak to wszystko działa, będziesz miał naprawdę dużo czasu, aby to działało dobrze. Wszystko po stronie serwera.
źródło
+1 za pytanie. Zawsze też myślałem, że kodowanie po stronie serwera jest bardziej interesujące i ważne niż robienie html + css + js + ajax + .. i wielu innych rzeczy. W każdym razie, jeśli jesteś sam i chcesz stworzyć własną aplikację internetową, musisz być zarówno programistą po stronie serwera, jak i projektantem + (programistą po stronie klienta). Dlatego teraz uczę się HTML5 i CSS3.
źródło
Właściwie to zależy. W większości przypadków musisz znać HTML i CSS. W rzadkich przypadkach możesz zignorować oba.
Przypadek 1
W mojej firmie są projekty ściśle rozdzielone między HTML i CSS i wszystko, co jest związane ze stroną serwera . Pozwala to przynieść najlepszego programistę C # lub PHP z jednej strony, a najlepszego programistę HTML, CSS i JavaScript z drugiej strony. Konkretnie, programista po stronie serwera tworzy dla każdej strony obiekty po stronie serwera zawierające wszystko, czego potrzebujemy do wyświetlenia strony; obiekty te są następnie serializowane do formatu XML. Deweloper po stronie klienta wybiera te obiekty i przekształca je w XHTML za pomocą XSLT.
To powiedziawszy, nigdy nie widziałem takiego podejścia w innych firmach. Ma też wiele ograniczeń i nawet jeśli jest doskonały w niektórych przypadkach, w ogóle nie działa.
Przypadek 2
Gdy w małych witrynach programista i projektant współpracują ze sobą, nie ma zgody co do tego, kto pisze HTML i CSS. Musisz zdecydować o każdym projekcie, zgodnie z umiejętnościami obu zaangażowanych osób. Nawet jeśli w wielu przypadkach to programista zajmuje się HTML i CSS, możesz również znaleźć projektantów, którzy znają HTML i CSS bardzo dobrze . W takim przypadku, jeśli zamierzasz pracować nad małymi projektami i tylko z takim projektantem, nie musisz uczyć się HTML / CSS.
Przypadek 3
Przy większych projektach nie jest niczym niezwykłym zatrudnienie dedykowanej osoby do napisania kodu HTML i CSS na podstawie pracy projektantów i programistów po stronie serwera. Jest to zwykle dobry pomysł, aby to zrobić, ponieważ nie chcesz płacić 100 USD za godzinę dla doświadczonego programisty C #, który faktycznie pisze HTML; to tylko strata czasu i pieniędzy.
Biorąc to pod uwagę, przypadki te nie są najczęstsze. Skup się więc na rozwoju po stronie serwera, ale spróbuj też nauczyć się HTML i CSS. Dodatkowa wiedza nigdy nie boli.
źródło
Czasami, szczególnie na początku, będziesz sam pracował nad projektem i będziesz musiał zrobić front-end i back-end. W takim przypadku potrzebujesz co najmniej podstawowej wiedzy o HTML i CSS. Nie musisz być świetnym projektantem, musisz tylko wyświetlić informacje z backendu w przeglądarce, abyś mógł przetestować różne rzeczy.
źródło
Właściwie wszystko zależy. Jeśli wpadasz w błoto w zakresie programowania oprogramowania serwera, upewnij się, że znasz standardowe sposoby, w jakie wielbiciele stron internetowych naprawdę wysokiego poziomu (HTML / CSS) powinni być w stanie komunikować się z Twoją aplikacją. Jeśli jednak planujesz wykonać dużo pracy ściśle związanej z HTML / CSS, musisz znać język HTML i CSS dość dobrze. Tak czy inaczej, zawsze dobrze jest znać dodatkowe technologie. Jestem natywnym programistą i nawet ja znam HTML / CSS na tyle, by stworzyć całkiem przyzwoitą stronę internetową. To powiedziawszy, nauczyłem się go tylko po to, aby nauczyć się AJAX pisać niektóre dodatki do Chrome / Firefox.
źródło