Naucz się kodować: Sekret metody rekurencyjnej

0

Kodowanie to przyszłość, zarówno globalna, jak i indywidualna. Nie ma tu żadnych „jeśli" ani „ale”. Boisz się o swoją pracę, martwisz się globalizacją i boisz się, że nie będziesz w stanie związać końca z końcem w nadchodzących latach? Następnie przygotuj się na przyszłość, ucząc się kodowania.

Jest otwarty dla każdego, bez względu na wiek, płeć czy kolor skóry, zarabia dobre pieniądze, a przeciętny programista zarabia około 100 tys. 22% do 2022 roku.

I jest całkowicie niezależny od lokalizacji. Możesz to łatwo zrobić online, komunikując się przez e-mail Skype lub snapchat. Więc jeśli mieszkasz w Pasie Rdzy, Bangladeszu lub w jaskini, dopóki masz przyzwoite połączenie, możesz kodować, pobierać pensję i żyć w komforcie – choć trzeba przyznać, że ta ostatnia część może być trudna, jeśli jesteś żyjąc w całości w ziemi.

I nawet największa wymówka ze wszystkich, że trudno się tego nauczyć i że nie masz nikogo, kto by cię nauczył, już nie trzyma wody. Każdego dnia w Internecie pojawia się coraz więcej zasobów, które pomogą Ci dowiedzieć się, jak wybrać język, w którym chcesz programować, jak się uczyć tego języka i możliwości kodowania w nim.

Jedyną rzeczą, która cię powstrzymuje, jesteś ty sam.

Jakiego języka powinieneś się uczyć?

Dobra, to może być trochę pogmatwane. Powstrzymuje cię trochę więcej niż to. Ale wszystkie problemy można przezwyciężyć! To nawet nie musi cię kosztować. Pierwszym wyborem, który musisz podjąć, jest wybór języka, którego chcesz zacząć się uczyć. Jest ich dużo i może to trochę przerażać.

Na szczęście tutaj również dostępne są narzędzia. Alternatywnie możesz to opracować samodzielnie. Właściwie to nie jest takie trudne. Pierwszą rzeczą, którą musisz wiedzieć, jest to, że istnieją dwie różne grupy języków. Są to języki dynamiczne i statyczne.

  • Języki dynamiczne są bardziej przyjazne dla początkujących. Nie wymagają tak dużej ilości kodu i są bardzo elastyczne. Nauczą cię teorii. Są one również tak zwane „wyższym poziomem”. Oznacza to, że nie martwią się o bity i śruby (które są niższymi poziomami), a zamiast tego usuwają stamtąd kilka stopni. Więc zamiast mówić „wyjmij chleb z lodówki, wyjmij dwie kromki, weź masło…” zamiast tego powiedz po prostu „zrób kanapkę z masłem orzechowym i dżemem”. Oczywiście to drugie rozwiązanie jest dużo szybsze iw ten sposób języki dynamiczne uzyskują wyniki szybciej.
  • Języki o typie statycznym to druga strona medalu. Te języki są bliższe temu, co wyobrażasz sobie, kiedy myślisz o kodowaniu. Ten język jest na niższym poziomie i dlatego wymaga więcej kodu, aby osiągnąć to samo – ale przynajmniej możesz zdecydować, czy twoja kanapka będzie ze skórką, czy bez, więc to jest to. Te języki programowania są uważane za bardziej skalowalne, niezawodne i łatwiejsze w utrzymaniu. Jednocześnie błędy są surowiej karane.

Zrozumiałeś? Dobra, teraz spójrzmy na kilka przykładów języków, których możesz użyć. Zaczniemy najpierw od niektórych języków dynamicznych.

PHP

Jeśli planujesz poeksperymentować z WordPressem – a prawdopodobnie tak, ponieważ jest to jedna z najpopularniejszych platform do tworzenia witryn internetowych z XXX witrynami internetowymi zbudowanymi z jej pomocą – to powinieneś zacząć od PHP .

Na szczęście ten język skryptowy po stronie serwera jest dość przyjazny dla początkujących, ponieważ łatwo zrozumieć, co zrobi kod, gdy go użyjesz. Oznacza to, że jest o wiele łatwiejszy do nauczenia się niż wiele innych języków.

Co więcej, ponieważ jest mocno wyspecjalizowany do użytku w sieci i prawdopodobnie od tego zaczniesz swoją przygodę z nauką programowania, z pewnością poradzisz sobie gorzej niż PHP.

Inne platformy zbudowane na PHP to Facebook, Wikipedia, Yahoo i Tumblr.

JavaScript

Na drugim końcu skali jest JavaScript. Jest niezwykle popularny i używany w wielu różnych miejscach i na różne sposoby. Jest kompatybilny ze wszystkimi przeglądarkami, jest często używany do tworzenia interaktywnych aplikacji internetowych, a także jest używany jako język po stronie serwera.

Jedyny problem? Jest uważany za dość trudny, ponieważ jest to język bez typów, co bardzo utrudnia debugowanie. Z pewnością będziesz chciał się tego w końcu nauczyć, ale prawdopodobnie nie powinieneś próbować tego robić w pierwszej kolejności. Zamiast tego skup się na jednym z pozostałych.

Świetnie, więc teraz przyjrzyjmy się kilku statycznie typowanym językom, które warto rozważyć.

Jawa

Naprawdę nie można mówić o statycznie pisanym języku bez wspominania o Javie. To tak, jakby mówić o Ameryce Północnej bez mówienia o Stanach Zjednoczonych. Dziewięćdziesiąt procent firm z listy Fortunate 500 używa języka Java. Zgadza się. Dziewięć zero. A ci, którzy tego nie robią, są prawdopodobnie jak ludzie, którzy odmówili używania Apple w latach dziewięćdziesiątych. Chodzi o zasadę, do cholery!

Nie jest to łatwy język, więc może nie być najlepszym miejscem do rozpoczęcia. To powiedziawszy, z pewnością można się tego nauczyć, ponieważ jeśli 90% tych firm go używa, to oczywiście ktoś musi na to zarabiać, prawda? Z pewnością możesz zrobić coś gorszego niż wybrać Javę jako swój pierwszy statycznie pisany język.

C

Innym (bardzo) ważnym językiem jest C. Jest to język wyboru systemów operacyjnych. Wpłynęło to na każdy język programowania, o którym do tej pory wspomnieliśmy. W pewnym sensie przypomina to łacinę, z której każdy język europejski zapożyczył wiele z niej i jej idei. I podobnie jak łacina, jej nauka znacznie ułatwi naukę wszystkich innych języków.

Problem? Ponownie, łacińskie porównanie dobrze mi posłuży. Jest złożony i abstrakcyjny i będzie wymagał sporo kodu, aby zrobić to, co inni robią w znacznie mniej. Oznacza to, że jako początkujący może być trudno utrzymać motywację. Prawdopodobnie najlepiej jest najpierw nauczyć się czegoś, aby poradzić sobie z podstawowymi pomysłami, a następnie podnieść C.

Gdzie mogę dowiedzieć się o tych platformach?

Cieszę się, że zapytałeś. Dostępne są naprawdę niezliczone zasoby, niektóre z nich są płatne, niektóre bezpłatne. Proponuję zacząć od darmowych. Możesz po prostu wpisać wybrany język i dodać słowa „jak programować w” i gotowe.

Alternatywnie, skoro już tu jesteś, możesz kliknąć jeden z poniższych linków i sprawdzić dostępne tam platformy do nauki kodu online.

CodeAcademy jest bezpłatna, a 24 miliony osób nauczyło się już kodować za pośrednictwem tej platformy. To prawdopodobnie więcej ludzi, niż myślisz, że może kodować na tym świecie. To bardzo dobre miejsce na początek. Tutaj możesz nauczyć się HTML, CSS, Javascript, Jquery, PHP, Python i Ruby.

Coursera ma ponad 1000 dostępnych kursów. Większość kursów jest bezpłatna. Możesz również otrzymać certyfikat na niektóre kursy, jeśli zapłacisz. To miejsce ma kursy w tak znakomitych lokalizacjach, jak University of Washington, Stanford, The University of Toronto i Vanderbilt.

edX to kolejny dobry. Ten jest open source, więc nigdy nie będziesz musiał nic płacić. Został zbudowany przez Harvard i MIT w 2012 roku i od tego czasu rośnie. Obecnie z tym miejscem związanych jest ponad 60 szkół. Będziesz więc wiedział, że będziesz miał różnorodność i będziesz na krawędzi. Z pewnością mogłeś trafić gorzej.

Jak się nauczyć

Istnieje kilka podstawowych narzędzi, na które musisz zwrócić uwagę. Przede wszystkim musisz zapoznać się z bibliotekami wybranego języka programowania. Oto terminy i wyrażenia, które musisz zrozumieć, aby komputer robił to, co chcesz.

Tak, zrozumienie tych bibliotek jest trochę jak nauka innego języka. Na szczęście kodowanie ma jedną dużą zaletę, której nie będziesz mieć gdzie indziej, a mianowicie to, że wyrażenia są przynajmniej częściowo w języku angielskim. Oznacza to, że będziesz miał przynajmniej kilka punktów powiązania z normalnym rozumieniem. I uwierz mi, to bardzo pomoże.

Teraz możesz już zacząć eksperymentować, wypróbowywać nowe rzeczy i odkrywać różne aspekty języka. Dzięki kilku naprawdę podstawowym artykułom programistycznym możesz poradzić sobie z wybranym językiem.

Alternatywnie możesz zacząć przyglądać się wzorcom projektowym w tym języku. Co oznacza to tajemniczo brzmiące wyrażenie? Oznacza to, że przyjrzysz się niektórym podstawowym rozwiązaniom wielkich rzeczy, które musi wykonać każdy język programowania. Tak, możesz sam spróbować to rozgryźć – w rzeczywistości radzę spróbować swoich sił przynajmniej w kilku z nich, ponieważ nauczy Cię to myślenia w języku programowania i zrozumienia podstaw. To powiedziawszy, nie chcesz spędzać czasu na wymyślaniu koła na nowo – zwłaszcza, że ​​twoje koło będzie prawdopodobnie kwadratowe w porównaniu z tym, co już tam jest.

Czytaj rekurencyjnie

Bardzo ważnym sposobem nauki czytania artykułów programistycznych jest czytanie ich rekurencyjnie. Oznacza to, że czytasz artykuł, który ma charakter informacyjny, bierzesz wszystkie terminy, których nie rozumiesz, i samodzielnie je sprawdzasz w Google. Następnie czytasz artykuły, które są tam najbardziej pomocne, a jeśli są tu jakieś terminy, których tu nie znasz, powtarzasz proces. Wreszcie, kiedy zrozumiesz koncepcję, na którą się natknąłeś, wracasz do artykułu i kontynuujesz czytanie.

Tak, oznacza to, że od czasu do czasu będziesz otwierać dziesiątki różnych artykułów, aby uporać się z jednym artykułem, ponieważ jeden termin prowadzi do drugiego i tak dalej. Chodzi o to, że w miarę upływu czasu i odkrywania, że ​​wiesz coraz więcej, zdarza się to coraz rzadziej. Co więcej, twoje zrozumienie będzie o wiele pełniejsze i bardziej holistyczne, niż gdybyś po prostu czytał rzeczy bez zrozumienia wszystkiego, co jest prezentowane.

Dlaczego potrzebujesz tak holistycznej wiedzy, pytasz? Dlaczego nie możesz po prostu przejrzeć programowania, tak jak robisz wszystko inne? Z bardzo konkretnego i ważnego powodu: w przypadku innych dziedzin, jeśli nie rozumiesz tajników danej koncepcji, możesz sobie z tym poradzić, albo bełkocąc niejasno, albo unikając mówienia o tym.

To nie jest możliwe w programowaniu. W programowaniu naprawdę musisz zrozumieć każdy aspekt. Jeśli tego nie zrobisz, możesz napisać bardzo nieefektywny kod lub, co gorsza, nieumyślnie wprowadzić do swojego kodu słabe punkty, które uczynią go podatnym na włamania lub awarie. Oznacza to, że nie ujdzie ci na sucho po prostu ominięcie czegoś, czego nie znasz. Musisz zacisnąć zęby i zmierzyć się z każdą koncepcją.

Wniosek

Niezależnie od tego, czy uczysz się programowania, aby zarabiać pieniądze, aby mieć lepszy wgląd w to, jak działa Twoja strona i Twoja firma, aby lepiej komunikować się z osobą zarządzającą Twoją witryną lub aby zaoszczędzić pieniądze, programując aspekty samodzielnie, korzyści nauki programowania są ogromne.

Nie tylko będziesz w stanie napisać własny kod, ale będziesz w stanie lepiej zrozumieć, co oznacza świat komputerów i dlaczego funkcjonuje on w taki, a nie inny sposób. Komputery to nie ludzie – tak, to brzmi niedorzecznie, ale nie zdajesz sobie sprawy z pełnego znaczenia tego wyrażenia, dopóki nie zrozumiesz logiki i mechaniki kilku języków programowania. Stamtąd możesz wiedzieć, kiedy coś jest podejrzane, co jest możliwe, a kiedy ktoś udaje, że coś jest trudne, gdy w rzeczywistości jest to bułka z masłem.

To wszystko są niezwykle przydatne umiejętności. A wszystko, co musisz zrobić, aby je zdobyć, to usiąść i poświęcić kilka godzin tygodniowo na naukę języka programowania. Innymi słowy, korzyści znacznie przewyższają koszty, prawda?

Comments are closed, but trackbacks and pingbacks are open.

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów