Powrót do blog

Krótki tutorial jak zaprogramować zniżkę do szkoły programistycznej

Python, Java, JavaScript oraz C# - na fali rozpowszechnionych mitów o programowaniu i stereotypów samego programisty, nazwy te spopularyzowały się na tyle, że z dużym prawdopodobieństwem wśród znajomych budzą różnorakie skojarzenia.

Zrób to sam.

Python, Java, JavaScript oraz C# - na fali rozpowszechnionych mitów o programowaniu i stereotypów samego programisty, nazwy te spopularyzowały się na tyle, że z dużym prawdopodobieństwem wśród znajomych budzą różnorakie skojarzenia. Są tak popularne, że ich składnia przebija się w popkulturze, nierzadko w popularnych produkcjach (Mr. Robot chociażby), ciesząc oczy każdego geeka.

Zainteresowanie jest na tyle duże, że pojawia się pytanie: dlaczego języków jest tak wiele, czym się od siebie różnią - a przede wszystkim - którego powinienem się nauczyć, żeby XXX (tu wstaw swoje preferencje)? Czy wybrać front-end development, czy back-end development?

W istocie, obszarów zastosowania jest co niemiara - od niskopoziomowej elektroniki po gry konsolowe, na komercyjnych aplikacjach webowych skończywszy. Jak tu się odnaleźć?

Jak jest?

W praktyce języki programowania, podobnie jak większość technicznych wynalazków, ewoluowały aby swoją strukturą czy możliwościami zaoferować więcej, szybciej i wygodniej. Popularne języki programowania w zasadzie więcej łączy niż dzieli, a różnice można porównać do sytuacji, w której mamy do dyspozycji młotki różnego koloru. Deska i gwóźdź pozostają takie same. Istnieją jednak rozróżnienia, które mogą pomóc, szczególnie tym, którzy próbują postawić pierwsze kroki. Te rozróżnienia uwidaczniają się w składni, paradygmacie i dedykowanych narzędziach.

Składnia języka programowania to zestaw reguł zapisu instrukcji w taki sposób, aby mogły być poprawnie zrealizowane przez komputer. I tak język programowania Python umożliwia zrealizowanie instrukcji w oparciu o intendacje, gdzie poziom wcięcia linijek kodu definiuje interpretacje komend. W skrócie:

print(“25% zniżki”)

napisane w języku Python, podobnie jak:

console.log(“25% zniżki”);

w języku JavaScript, umożliwiają zrealizowanie pełnego programu, choć w tym przypadku, mało sensownego.

Ten sam program rozpisany w języku programowania C# wyglądać będzie następująco:

namespace HelloWorld

{

    class Hello {         

        static void Main(string[] args)

        {

            System.Console.WriteLine("25% zniżki");

        }

    }

}

}

W C# składnia wiąże się z zastosowanym paradygmatem, czyli sposobem w jaki zapisujemy kod. C#, podobnie jak Java wspierają głównie paradygmat obiektowy, będący dominującym paradygmatem w branży. Z powyższych przykładów widać, że składnia C# jest bardziej złożona, w żaden jednak sposób nie utrudnia dalszej nauki.

Gdzie jest Python?

Poruszając się po cyfrowym świecie z perspektywy użytkownika nie mamy świadomości jak wiele popularnych technologii napędza popularne i znane powszechnie serwisy internetowe. Python przykładowo stoi u podstaw Reddit’a czy Youtube’a. C# z kolei zasila Visual Studio - jeden z najpopularniejszych edytorów kodu. Niezależnie od przeznaczenia - najpopularniejsze języki programowania umożliwiają rozwój w wielu dziedzinach. Pisząc w języku Python możesz stworzyć grę (framework pyGame) ale i również aplikację webową (frameworki Django czy Flask). Analogicznie u podstaw najpopularniejszych frameworków webowych takich jak Angular czy React leży JavaScript. Miłośnikom gamedev’u spodobać się może javascriptowy Cocos2d. Aplikacje okienkowe w C# dostarczą winformsy/wpf, internetową aplikację rozpiszemy w ASP .NET Core, a gry w popularnym Unity. Java nie pozostaje w tyle oferując chociażby aplikacje webowe w Springu.

Jeżeli wspomniane wyżej nazwy kojarzą się póki co z nazwami pokemonów, nic nie szkodzi - wniosek jest następujący: w warunkach mocnej konkurencji języki programowania oferują podobne możliwości a częstokroć to sytuacja rynkowa definiuje, który z nich jest warty nauczenia.

Backend czy frontend?

W ostatnim akapicie pozostaje dylemat. Jak zdefiniować Back-end Developera a jak Front-end Developera? Pierwszy termin określa profil osoby technicznej zajmującej się stricte logiką programu - to Back-end Developer programuje przepływ danych. Dobrą analogią będzie samochód, w którym Back-end Developer zajmuje się silnikiem. Front-end natomiast angażuje siły i kompetencje techniczne po stronie wizualnej projektując i definiując końcowe doświadczenie użytkownika - jak działają dane przyciski, do jakich stron prowadzą i jak wyświetlają dane. Po tej stronie oprócz twardej logiki liczą się również kompetencje angażujące UX, architekturę informacji czy szeroko pojęty zmysł estetyczny.

Na koniec

Nauka programowania oraz ścieżka rozwoju programisty wymagają sporego wysiłku oraz dużej rozwagi przy wyborze konkretnych języków programowania oraz technologii. Te elementy same w sobie są zbieżne i za ich pomocą można zrealizować ten sam cel - napisanie dobrej aplikacji webowej - ale w kontekście rynku pracy mogą zdecydować o szybszym zatrudnieniu, bądź potrzebie dalszego przekwalifikowania. Samonauka świetnie sprawdza się w dalszych etapach rozwoju programisty i większość z developerów uczy się samodzielnie przez całą zawodową karierę, ale jeśli jesteś na początku tej drogi, to warto mieć kogoś, kto wskaże kierunek i zadba o merytoryczny, oparty o doświadczeniach rozwój.

Jak zacząć naukę programowania? Jedną z najlepszych opcji są nasze 12-miesięczne, dzienne lub weekendowe kursy Full-stack Developer w Codecool. Taki okres nauki gwarantuje, że tempo przyswajania wiedzy będzie odpowiednie dla każdego i pozwoli Ci nie tylko zapoznać się z elementami programowania (jak zdarza się to w trakcie bardzo intensywnych zajęć bootcampowych), ale też zrozumieć, utrwalić i przećwiczyć w praktyce tę wiedzę. Z drugiej strony, nie zajmie Ci to kilku lat, które musiałbyś poświęcić decydując się na studia.

Decydując się na podpisanie umowy do końca 2021 otrzymasz też wyjątkowy rabat wwysokości 25% ceny kursu. Dodając do tego możliwość podpisania Umowy z gwarantowanym zatrudnieniem, trudno znaleźć na rynku lepszą ofertę startu w IT.

Wystarczy zrobić pierwszy krok i umówić się z nami na spotkanie

Zapraszamy! :)

Regulamin konkursu "Zakoduj swój bonus"

Udostępnij