érdekes

A kódolás legjobb módjai

Fotó: Christopher Gower (Unsplash)

Ha meg akarja tanulni a kódolást, az első lépések ebbe a hatalmas univerzumba való belépése félelmetesnek tűnik, ha nem is megfélemlítő feladat. Itt van a nagy titok: Rengeteg ingyenes (és olcsó) erőforrás is felhasználható, amiben megadhatja magának minden szükséges segítséget, új technikákat taníthat magának, és ezt a tanulási folyamatot szórakoztatóvá és izgalmassá teszi - olyan izgalmas, mint a kódolás, legalább .

Függetlenül attól, hogy felnőttként szeretne áttérni a technológiai iparba, hallgatóként szeretne megtanulni a legújabb nyelvet, vagy egy olyan rajongóként, aki csak meg akarja tudni, hogyan működnek a szoftverek és szolgáltatások, a programozás elindításához csak egy számítógépre és internet-hozzáférésre van szüksége utazás. Mielőtt azonban repülőugrást indítana, itt vannak a legjobb tippeink és erőforrásaink a jobb láb elindításához.

Kérdezd meg magadtól: Miért akarod megtanulni a kódolást?

Vegyünk néhány percet (vagy egy napot), hogy gondolkodjon az okokon - az okokon -, hogy miért szeretne megtanulni a programozási nyelvet. Légy őszinte magadhoz. Megpróbálja megtanulni a legeredményesebb minimumot az előléptetéshez? Nagy karrierváltást tervez? Szeretné létrehozni a következő legnagyobb alkalmazást? Izgalítsa szobatársait a különböző intelligens eszközök programozásával, hogy valami fantasztikusat csináljon?

A válasz segít meghatározni, hogy mely programozási nyelveket kell elsajátítania, valamint azt, hogy milyen elkötelezettségre (időben és pénzben) van szüksége a céljának. Például, ha álma az, hogy elkészíti a PhotoShop következő nagyszerű operációs rendszerét vagy gyilkos alternatíváját, akkor előnyei lehetnek egy hivatalos informatikus oktatásból, amely megtanítja a C ++ -ot, valamint olyan összetettebb témákra, mint az adatszerkezet, az algoritmusok és a memóriaelosztás.

Másrészről, ha egy közép-karrier szakember a technológiai karriert kívánja átállni, akkor a rövid távú kódoló bootcam sokkal értelmesebb lehet, mint hogy második fokozatba tartozásba kerüljön. Ha csak webhelyeket szeretne létrehozni, vagy a Raspberry Pi-t a határokhoz szorítani, akkor elegendő lehet az interaktív oktatóanyagok és az ingyenes online tanfolyamok kombinációja.

Válassza ki a megfelelő programozási nyelvet

Miután kitalálta, miért akarja kódolni, könnyebben meghatározhatja, hogy melyik programozási nyelvet kell kezelnie. Bár nincs egyetlen „legjobb” programozási nyelv, amelyet meg lehet tanulni, egyes nyelvek felhasználóbarátabbak, mint mások. A HTML és a CSS a kódolási világ legkönnyebb belépési pontjainak tekinthetők, ám ezek csak igazán hasznosak az alapvető webhelyek fejlesztésekor.

A fizetési rendszereket vagy adatbázisokat tartalmazó interaktív webhelyekhez a Javascript, a PHP, az SQL és a Python ismerete szükséges, hogy az összes elem énekeljen. A mobilalkalmazások készítői a Swift vagy C segítségével készítik iOS alkalmazásokat, míg a Java vagy Kotlin az Android alkalmazásokhoz. A videojáték-fejlesztők az Unity, vagy akár a C # felé fordulnak, hogy életre keltsék a játék ötleteiket.

Még mindig nem tudja eldönteni az indító programozási nyelvét? A legtöbb szakember javasolja a Python, C # vagy a JavaScript tanulását, mivel ezek a legszélesebb körű segédprogramot és karrier rugalmasságot kínálják. Annak érdekében, hogy meggondolja magát, nézd meg ezt a nagyszerű infographic képet, amely összehasonlítja néhány népszerű programozási nyelvet.

Mindenekelőtt csak kezdje el a tanulást. Ha egyszer kényelmesebbé válik az egyik programozási nyelv, akkor a következőt sokkal gyorsabban tudja felvenni - például egy új hangszer vagy idegen nyelv elsajátítását.

Próbálja ki néhány online tanfolyamot

Ha jobban szeretné ellenőrizni a tanulási ütemtervet (vagy nem akarja egyedül belemenni), akkor az online kódolási kurzus jobb lehet, mint egy személyes kódoló bootcamp. Számos különféle online osztály létezik, amelyek ugyanazokat a programozási nyelveket tanítják, és nehéz lehet kitalálni, melyik valóban megéri az idejét és pénzét.

Ha nem bánja az egyedüli gyakorlással, akkor nézd meg az Odin Project alkalmazást, egy ingyenes opciót, amely összehozza a legjobb nyílt forráskódú tartalmakat, hogy egy kódoló kezdő programozóvá váljon.

Szeretne több egyéni edzést és karrier-előkészítést teljes munkaidős bootcamp elvégzése nélkül? Próbáljon meg feliratkozni az Udacity vagy a Treehouse előfizetési modell tanúsító tanfolyamaira, ahol lehetősége van segítséget kérni oktatótól ahelyett, hogy a kódolási hibákat vagy kérdéseket önmagában szenvedné. Nem tudsz sokkal jobban megtenni, mint az Udemy 19 dolláros kódolási osztályai (még kevésbé, ha eladásra kerül) - akár teljes munkaidős bootcamp és informatikai hallgatók jelentkeznek ezekre az osztályokra, hogy kiegészítsék tanulásukat.

Nem számít, hány kurzust fejez be, sok kezdőnek továbbra is nehéz alkalmazni viszonylag alapvető ismereteit. Ebből a célból sokan javasolják a Watch and Code ingyenes gyakorlati JavaScript tanfolyamát, amely egyetlen olyan projekt körül forog, amelyet folyamatosan iterál.

Összpontosítson a számítási gondolkodás tanulására

Ahelyett, hogy egy speciális programozási nyelv megtanulására összpontosítana, megtanulhatja azt is, ahogyan a számítógép megérti. Más szavakkal, javítsa készségeit olyan koncepciókon, mint a mintafelismerés, az algoritmusok és az absztrakciók. Vannak olyan lingók is, mint a hurkok, amelyek minden felhasználható nyelven felbukkanhatnak. Minél jobban megérti ezeket az alapelveket, annál könnyebb megtanulni a következő nyelvet (és ennek eredményeként jobb termékeket vagy projekteket tervezni).

Az internetnek köszönhetően nem kell beiratkoznia egy négyéves főiskolai programra, hogy megtanulja a számítástechnika alapjait; számos főiskolai szintű osztály ingyenesen (vagy névleges díjjal) elérhető online.

Nem tudom eléggé ajánlani a Harvard CS50x bevezetését a számítógépes tudományba. Ingyenesen ellenőrizheti a kurzust az edX-en keresztül, és igazolást szerezhet az összes feladat elvégzésével, vagy pedig saját tempójában járhat, és figyelheti az összes előadást, amelyet a Youtube-on írtak. A tizenöt online tanfolyam kiválasztásával elkészítheti saját DIY főiskolai szintű informatikai programját (ezek közül sok a Goldavelez.com U sorozatban is szerepel).

Szerezz egy könyvet

A kódolás megtanulásának legjobb módja az, ha közeli és személyes felépítést készít néhány elhullott fával - egy igazi könyv, amelyet az elejétől a végéig követhet. A tökéletes világban ez egy átfogóbb bevezetést nyújt a kódoláshoz, mint a webhelyen a témakörök közötti ugrás.

Valószínűleg megtalálja az e-könyvet bármely nyelvre vagy keretre, amelyet meg akar tanulni a GitHub-on, de sok webfejlesztő esküszik Jon Duckett színes sorozatára az elülső és a weboldal fejlesztésével kapcsolatban.

Öntanuló programozóként részesülhetnek azok a könyvek is, amelyek szélesebb körű tanácsokat nyújtanak a szakmával kapcsolatban. Javítani fogja gondolkodását és szokásait, olyan tulajdonságait, amelyek bármely nyelvre alkalmazhatók, amelyet úgy dönt, hogy megtanul. Steve McConnell 900 oldalas kódja teljes: A szoftverfejlesztés gyakorlati kézikönyve (2. kiadás) a bevált gyakorlatok végleges útmutatójának tekinthető, adatokkal alátámasztott tanácsokat adva a projekttervezéstől a hibakeresési kódig.

Ennek a behemothnak a következménye a Tiszta Kód: Agile szoftverfejlesztési kézikönyv, Robert Martin, Robert bácsi. Martin úgy véli, hogy a kódot hatékonyan kell írni az egyszerű tesztelés és a skálázhatóság érdekében, így ezt sok modern fejlesztő csapat számára kötelező olvasni.

Mivel a programozás valójában a problémamegoldásról szól, értékelni fogja a gondolkodási folyamatot és a „boríték hátulját” megoldásokat, amelyeket Jon Bentley oszt meg a Programming Pearls (2. kiadás) részében. Minden fejezet számos kihívással ér véget, amelyeket gyakran használnak a műszaki állásinterjúk során, ezért tegye ezt a könyvet az előkészítés részévé.

Nézze meg néhány interaktív útmutatót vagy kódoló játékot

Nézzünk szembe a tényekkel: a kódsor olvasása a képernyőn vagy egy könyvben zamatosnak tűnhet. Amikor egy példát látsz a cselekvésben, az elvont fogalom hirtelen tökéletesen értelmezhető. Ez az interaktív kódolási oktatóanyagok szépsége, amelyet az interneten találhat.

Például a FreeCodeCamp nemcsak a kódolási fogalmakat bontja fel apró részekre a böngészőben, hanem összekapcsolja az egyes fogalmakat egy releváns feladattal is, amelyet meg kell oldani, mielőtt a következő témára lépne. Ily módon nem csak ugrani a szórakozásra; a webhely tényleg arra készteti Önt, hogy hibaelhárításával ellenőrizze a kódot, amint megtanulja.

A kódoló játékok szintén egy szórakoztató módszer a lábak nedvesítésére a programozás során. Ha van egy órája, hogy megöli, akkor kipróbálhatja az egyszerű Hour of Code játékot. Ezenkívül sok iskola már használja a Minecraft: Educational Edition tanítani a gyerekeknek a programozási alapokat kódoló blokkokkal, sőt a JavaScript használatával is. (Ingyenes letöltheti a Minecraft verzióját, ha rendelkezik Office 365 Education fiókkal.)

Szeretne egy összetettebb játékfejlesztési útmutatót, amelyet feltehet önéletrajzába? Lehet, hogy a CodinGame korhatékonyabb, ha nem érzi magát egész nap a lyukak lyukasztásában.

Próbálj ki egy gyerekjátékot

Ki állítja, hogy a felnőttek nem tanulhatnak ugyanazon STEAM / STEM játékokból és videojátékokból, amelyek a gyerekeket kódolják? Végül is ezeket a termékeket arra tervezték, hogy a kódolási logikát és a szintaxist megtanítsák anélkül, hogy unatkoznának a könnyen elvonható gyermekektől, így akár felnőtt kódolók is találhatnak szórakozást és oktatást.

Ha jobban meg szeretné érteni a hardver és a szoftver kapcsolatát, akkor élvezheti a Piper Computer Kit 2-et, amely Raspberry Pi-meghajtású számítógépet épít. Ezzel a divatos laptop használatával megtanulhatja a kódolást az egyedi Minecraft Story Mode kihívásokon keresztül, használhatja a drag-and-Blockly nyelvet a fizikai számítások megtanulásához, vagy akár el is vehet néhány alapvető Python-ot az előre telepített órákból.

Noha valószínűleg nem lesz képes elkészíteni saját BB-8 droidját, megtanulhatja kódolni egyet a Sphero BOLT-jával. A társalkalmazás segítségével irányíthatja a droid labdáját a Scratch nevű drag-and-drop kódolási blokkok segítségével, vagy szintre emelheti a JavaScriptet a haladóbb lépések programozásához.

Tanítsa meg kedvenc készülékeinek (és asszisztenseinek) új trükköket

Van intelligens otthoni készüléke, például az Amazon Echo? A kódolási képességeit kipróbálhatja testreszabott mini-programok létrehozásával, hogy az eszköz digitális asszisztensei több funkcionalitást nyújtsanak. Az Amazon Alexa máris tud sok alapvető hangutasítás-készséget, például a legfrissebb hírek olvasását, de bonyolultabb feladatokat megtaníthatja a Node.js, Java, Python, C # vagy Go kódolással. (Vagy ha valami könnyebbvel szeretne kezdeni, próbálja ki az Alexa ügyességi tervrajzának egyszerűbb oldalát.)

Lehet, hogy korlátozódik a kódolás iránti érdeklődése - érdemes elsajátítania a Python-ot ahhoz, hogy például Raspberry Pi csodálatos projekteket készítsen. Ha igen, akkor alkalmazhat DIY megközelítést a tanuláshoz, megnézve a sok projektet, amelyet mások osztanak meg a weboldalán.

A meglévő projektek újjáépítésével többet megtudhat a testreszabható eszköz belső működéséről. Lehet, hogy inspirációt talál arra, hogy új módszereket hozzon létre a mini-számítógép használatához, és tovább mélyüljön a kód világába. (Ha még egy kis segítségre van szüksége az induláshoz, regisztrálhat az UC Irvine Raspberry Pi Platform és Python Programming programjában a Raspberry Pi Platform osztályra is.

Nézze meg a kódolásról szóló videókat

Néha egyszerűbb, ha valaki megmutatja, hogyan történik. Mindenféle oktatási videót megtalálhat a manapság szinte bármilyen, a kódoláshoz kapcsolódó témában: a korábbi Google-alkalmazók megosztják a kódolási interjúkkal kapcsolatos megoldásaikat, a YouTubers a kódolási maratonokat közvetíti, sőt a programozási veteránok is megmutatják, hogyan lehet a kívánt nyelven elhárítani egy adott hibát.

Azt javaslom, hogy nézd meg a CS Dojo, a TheNetNinja és a Harvard CS50 YouTube csatornáját. Ha nincs ideje tökéletes kódolási videót vagy csatornát keresni, akkor megnézheti a LinkedIn Learning hatalmas videókönyvtárát is, amely ellenőrzött és professzionális megjelenésű oktatóanyagokat tartalmaz. Noha a szolgáltatás havi 30 dolláros előfizetési díja semmi semmire sem tüsszent, korlátlan mennyiségű tartalmat és témát nézhet meg - így a LinkedIn Learning jobb üzlet lehet, mint a többi igényes online osztály, amely idegesítő korlátozásokkal jár.

Gyakorold személyes projektekkel

Nem számít, hány tanúsítványt és kódoló műhelyt tölt ki, vagy hány programozási nyelvet tanult meg, a kódolási készségek bizonyítékul szolgálnak a programozási projektben. Miközben személyes projektjének nem kell ugyanolyan ambiciózusnak lennie, mint a következő Google Maps létrehozásának, a 24/7-en dolgozó munka valamelyikének kell lennie, hogy folyamatosan javítsa és kibővítse annak hatókörét.

Kezdjen kicsit, de gondolkozz nagyon. A projektnek tartalmaznia kell az eszközkészletben jelenleg meglévő készségeket, de rendelkeznie kell egy tervvel a jövőbeni funkcióiról és készségeiről is, amelyekre szükség van ahhoz, hogy ezt a látomást valósággá változtassa. Anélkül, hogy néhány projektben alkalmazná a kódolási képességeit, még professzionális kódoló koncertekre sem számíthat, így kezdje meg a tervezést és a gyakorlást. (Tanácsunk? Használd a kódoló darabokat, hogy csodálatos beállítást készítsen a játékéjszakákhoz.)

Ünnepeld a kis győzelmeket

A kódolás minden részletben van, ezért „a kis győzelmeket meg kell ünnepelni”, ahogyan az egyik programozó professzorunk elmondta. A gyakorlat elvégzése érdekében minden elem önállóan működik, valamint folyamatos tesztelés annak biztosítása érdekében, hogy minden kódsor mindegyikével együtt működjön - hibák nélkül. Ha nem látszik kisebb jelentőségű dolgokat, mint például a HTML-címke bezárása, akkor egy egyszerű szintaxishiba hibakeresésében tartózkodik, ahelyett, hogy lenyűgözőbb és összetettebb kódot írna.

Türelmesnek kell lenned magaddal; ne várja el, hogy csak néhány hónapos tanulmány vagy néhány bootcamps után kódolja a következőt. A hibamentes esküvői RSVP űrlap kódolása egy weboldalon, vagy egy egyszerű, mégis helyes számbecslési játék elkészítése már a kezdők számára is jelentős eredmény. Ha elakad, ne add fel. Mindenképpen segítséget kell keresnie mindenhol, ahol megtalálható, de tudnia kell, mikor kell szünetet tartani a kiégés elkerülése érdekében. És akkor próbálja meg, próbálja újra.

Google a hibaüzeneteit

Ez a legjobb kódolási tanácsunk: Ha nem tudja kitalálni, miért tört meg a kód, akkor mindig online kereshet megoldásokat. Végül is valószínűleg nem te vagy az első, aki hibát követett el, és valaki az interneten biztosan megtalált megoldást a problémájára. Csak „másolja és illessze be” a hibaüzenetet a Google-ba (vagy a kívánt keresőmotorba), adjon hozzá néhány idézőjelet az egész mondathoz, hogy ne csak a kulcsszavakat keresse, majd nyomja meg az „Enter” -t. Remélhetőleg ez a kis trükk vezet a helyes válaszhoz.

Ha továbbra is problémái vannak, akkor bármikor felteheti kérdését olyan fejlesztői fórumokon, mint a Stack Overflow, a Reddit programozási subreddit vagy a GitHub. Soha nem fáj, ha telefonálunk egy barátnak vagy internetes idegennek.

Hack valaki más kódját

Ha valaki más kódjának megtervezésével teszteli az egyes sorokat, hogy megnézze, hogyan működik, akkor jobban megértheti a nagy képet. A tonna rengeteg nyílt forráskódnak köszönhetően szinte bármit megtanulhat, ha megvizsgál valaki más (hibátlan) munkáját. Ne felejtsd el megosztani a kódot a közösséggel, ha inspiráció merül fel, és javíthatja a program azon részét, amelyben hevert.

Szerezzen mentort (vagy tanítson valakit)

A programozó közösség tele van emberekkel, akik hajlandóak segíteni a programozók következő generációjában. A GitHub, az online társalgó azon fejlesztők számára, akik a Git-et használják kódolási projektjeik kezelésére, online együttműködésre tervezték. A fejlesztők nemcsak fogadják és megosztják projektjüket társaikkal, hanem kód-visszajelzést és általános tanácsokat nyújtanak a közösség számára.

Lehet, hogy talál néhány hasznos online mentort a GitHubon keresztül, vagy találkozhat más veterán fejlesztőkkel egy helyi kódoló Meetup eseményen vagy hackathonon. Ha szerzett tapasztalatokat a programozásban, akkor megválaszolhatja más emberek kérdéseit, vagy akár meg is taníthatja az újoncoknak megtanultakat - ez egy nagyszerű teszt annak ellenőrzésére, hogy valóban ismeri-e a dolgát.

Vegyen részt egy kódoló bootcamp-ben

A bootcamps kódolása ellentmondásos lehet: gyors bevezetést és tapasztalatot nyújtanak sok készséghez, de valószínűleg nem ez az arany jegy egy vadonatúj Google-feladathoz.

Ha profiként akarsz menni és teljes munkaidős fejlesztővé válni, akkor az intenzív és személyesen kódoló bootcamp segíthet Önnek, különösen akkor, ha valódi emberekkel való strukturált környezetben tanul a legjobb motivációra. Ugyanakkor az ilyen típusú bootcamps gyakran a legdrágább és időigényesebb a látogatáshoz: 15 000 USD-t felnőttre számít csak a tandíjért, plusz néhány hónapos megélhetési költségeket, amíg elvégzi a diplomát.

Szerencsére az olyan intézmények, mint a Flatiron School és a Grace Hopper Program, ösztöndíjakat vagy halasztott tandíjat kínálnak, hogy ezeket a bootcamppeket olcsóbbá tegyék az alulreprezentált csoportok számára, mint például a kisebbségek és a techno nők. Nézze meg a kurzusjelentést a sok online és személyes indítótábor átfogó lebontása céljából - ideértve az alumaik részletes áttekintését is, amely eldöntheti, hogy a bootcamp segít-e elérni a programozási álmait.