Skelbimas

Programavimas yra sunku. Vieninteliai žmonės, kurie sako kitaip, yra tie, kurie turi ilgametę kodavimo patirtį. Gerai būti priblokštam! Ten yra daug mokytis ir tikriausiai pamiršite dalykus taip pat greitai, kaip išmoksite. Patikėk manimi: tai normalu.

Tačiau vien todėl, kad tai normalu, dar nereiškia, kad tai nėra varginanti. Tiesą pasakius, išmokti koduoti Kaip išmokti programuoti be jokio stresoGalbūt nusprendėte užsiimti programavimu dėl karjeros ar tiesiog kaip hobis. Puiku! Bet galbūt jūs pradedate jaustis priblokšti. Ne taip puiku. Štai pagalba, palengvinanti kelionę. Skaityti daugiau gali sukelti didelį stresą, jei nesilaikysite tinkamo mąstymo ir požiūrio.

Norite kuo greičiau išmokti tą naują kalbą, biblioteką ar sistemą, tiesa? Tai suprantama. Laimei, yra keletas patarimų, kurie gali padėti jums geriau išsaugoti visą tą sunkią programavimo informaciją, kuri vis sklinda pro vieną ausį, o pro kitą – tiesiai.

Daugiau jokių „Cam“ seansų

Niekas nenori to girdėti, bet kimšimas yra pats blogiausias būdas išmokti programuoti. Jei esi kažkuo panašus į mane, prisikimšti buvo tavo

instagram viewer
Modus operandi viskas mokykloje ir universitete. Tai vienintelis būdas žinoti, kaip mokytis.

Bet pasimokyk iš savo klaidų: kuo daugiau bandysite prikimšti, tuo mažiau atsiminsite. Tai beveik pasakytina apie bet kokį žiniomis pagrįstą dalyką, tačiau tai ypač pasakytina apie programavimą.

Šio reikalavimo pagrindas yra iš 2008 metų tyrimo Kalifornijos universitetas, San Diegas:

„Studentai geriau sekasi skirstydami studijų sesijas, o ne tada, kai per vieną prisėdimą bando viską sugrūsti į savo dėmes.

Kodėl? Greičiausiai dėl serijinės padėties efektas:

„Serijos pozicijos efektas – tai žmogaus tendencija geriausiai prisiminti pirmąjį ir paskutinįjį serijos elementus, o prasčiausiai – vidurinius elementus.

Kitaip tariant: bet kurios konkrečios studijų sesijos metu labiau tikėtina, kad išsaugosite informaciją, kurią išmokote šalia seanso pradžioje ir pabaigoje ir labiau tikėtina, kad pamiršite informaciją nuo vidurio sesija.

Norite maksimaliai padidinti pradžios ir pabaigos skaičių. Štai kodėl, kai reikia mokytis ir įsisavinti naują medžiagą, geriau turėti kelis trumpus užsiėmimus, o ne keletą ilgų.

Kitą kartą sėsdami mokytis kodo, imkitės po vieną temą ir padarykite trumpą pertraukėlę tarp kiekvienos temos. (Tiesiog įsitikinkite, kad pertraukos nevirstų atidėliojimu!)

Apžvalga, peržiūra, peržiūra

Kita priežastis, kodėl susikaupimas prieštarauja ilgalaikiam žinių išsaugojimui, yra ta, kad laikui bėgant atmintis blunka. Tai ne visada tiesa – aš tikiu, kad visi turime keletą vaikystės prisiminimų, kurie niekada neišnyks – bet panašu, kad tai yra bendras prisiminimų, nesusijusių su emocijomis, atvejis.

Kyla diskusijų, ar pati atmintis genda dėl laiko (skilimo teorija) arba tiesiog išstumiamas ir laikui bėgant pakeičiamas naujais prisiminimais (trukdžių teorija). Kad ir kurią teoriją pasirinktumėte, greičiausiai senesni prisiminimai išnyks.

Čia pasirodo apžvalga.

naujoko kodavimo patarimai-atminties apžvalga

Pagalvokite apie tai kaip apie vaikščiojimą prisiminimų mišku. Kiekvieną kartą, kai norite pasiekti atmintį, turite tai padaryti atsekti nervinį kelią norėdami jį rasti. Kiekvieną kartą, kai atsekate tą atmintį, kelias įsirėžia šiek tiek daugiau – lygiai taip pat, kaip natūraliai susidaro purvo kelias, kai žmonės eina tuo pačiu keliu vėl ir vėl. Jei nustosite eiti taku, jis gali išblėsti ir prisiminimas pasiklys kažkur miške.

Atmetus visą pop psichologiją, štai ką reikia pasakyti: kalbant apie programavimą, neužtenka vieną ar du kartus išmokti temą. Jūs turite jį peržiūrėti dešimtis ar net šimtus kartų. Kiekviena apžvalga šiek tiek giliau įsirėžia tą temą į jūsų smegenis.

Žinau, kaip tai gali būti sunku, jei esate natūralus kramtytojas, bet nustebsite, kaip greitai pradėsite išlaikyti medžiagą, kai tik pasistengsite ją reguliariai peržiūrėti.

Naudokite kelis skirtingus išteklius

Sunkiausias programavimo aspektas – bent jau visiškai naujiems programuotojams – yra daugybė detalių ir niuansų, kuriuos reikia įtraukti. Kol šis įsisavinimas neįvyks, būsite nuolatinėje galvos laužymo būsenoje.

Priklausomai nuo kalbos, turėsite įsiminti šimtus sintaksės taisyklių (pvz., raktinių žodžių, kabliataškių, tarpų). Kai kurios kalbos yra griežtesnės, kitos mažiau griežtos, o dar kitos turi savo unikalų sintaksės metodą, kuris niekur kitur nenaudojamas. Visa tai gali būti paini, jei neturite ankstesnės kodavimo patirties.

naujokas-koderis-patarimai-kodų painiava

Jau nekalbant apie visą konceptualią informaciją, kuri peržengia atskiras kalbas. Tokios temos kaip objektinis programavimas, objektų komponentų sistemos ir stebėtojų modeliai tikrai gali priversti galvą suktis pirmą kartą, kai bandote jų mokytis.

Jau anksčiau dalinausi šia iliustracija, bet ji tokia aktuali, kad verta kartoti:

„Tarkime, kas nors jums parodė statulos nuotrauką. Tai gali suteikti pakankamai vaizdo, kad galėtumėte tinkamai pajusti statulą, bet negautumėte viso vaizdo. Nutolinta nuotrauka prarastų sudėtingas detales, o priartinta nuotrauka prarastų perspektyvos pojūtį. Tačiau naudodami papildomas nuotraukas, darytas iš kitų kampų, tikrai galite pamatyti statulos pilnumas tekstūra, dydžiu, detalėmis, iš priekio į galą, iš šono į šoną ir Nuo viršaus iki apačios."

Mokymasis programuoti gali būti stebėtinai savavališkas. Visi gali girti A šaltinį kaip geriausią būdą mokytis X kalbos, bet galbūt jums tai nėra prasmės. Galbūt visi nekenčia B šaltinio, bet žvilgtelėkite ir tai visiškai logiška! Kalbant apie ką nors kitą, galbūt jie išsiskirsto, kai studijuoja A ir B išteklius, bet gauna daug naudos iš C šaltinio.

Štai kodėl taip svarbu, kad būtumėte pasiruošę vartoti įvairius išteklius. Kiekvienas mokosi skirtingai. Jei kyla problemų dėl tam tikros temos, ieškokite kito šaltinio. Galbūt toks bus jums labiau tinkamas. O gal ir ne.

Net jei manote, kad suprantate tam tikras temas, gali būti, kad apie tai reikia daugiau sužinoti. Taip pat gali būti, kad kieno nors kito paaiškinimas galutinai įtvirtins mintį jūsų mintyse. Niekada negali žinoti, tad kodėl nesunaudojus kuo daugiau išteklių?

Atminkite, kad žaidimai gali būti labai naudingas šaltinis! Peržiūrėkite šiuos linksmi ir mokomieji kodavimo žaidimai 9 geriausi kodavimo žaidimai, skirti lavinti programavimo įgūdžiusKodavimo žaidimai padeda greičiau mokytis naudojant praktinę praktiką ir patirtį. Be to, jie yra smagus būdas išbandyti savo programavimo įgūdžius! Skaityti daugiau .

Mokykitės sąvokų, kaip jas mokydamiesi

Yra graži programavimo koncepcija guminių ančių derinimas Keisčiausi programavimo principai, apie kuriuos niekada negirdėjoteŠie principai išmokys jus išmintingai naudoti savo kodą. Kai kurios keistos, o daugelis – juokingos, tačiau visos vienodai praktiškos ir svarbios. Atkreipkite dėmesį! Skaityti daugiau , kuriame aprašoma technika, kaip eilutė po eilutės paaiškinti savo kodą negyvajai guminei antiei. Jis naudojamas, kai sugenda tam tikras kodo segmentas, tačiau tam nėra jokios akivaizdžios priežasties.

Kaip bebūtų keista, dauguma programuotojų turi „Eureka! akimirką viduryje aiškinant kodą, nes jie staiga pamato, kur įvyksta kodavimo logikos klaida. Verbalizacija suaktyvina skirtingą smegenų sritį, priversdama pažvelgti į problemą nauju kampu.

Ši koncepcija taip pat gali būti naudojama norint išmokti naujos medžiagos. Galbūt susidūrėte su šia populiaria citata, kuri dažnai priskiriama Albertui Einšteinui:

„Jei negalite to paprastai paaiškinti, jūs to nesuprantate pakankamai gerai.

Išskyrus kai kurias sritis, kuriose nagrinėjamos pažangios teorinės žinios, šis posakis galioja. Kuo geriau suprasite temą, tuo geriau būsite pasirengę ją paaiškinti taip, kad tas, kuris tos temos neišmano, vis tiek galėtų ją suprasti.

naujokas-koderis-patarimai-guminė antis

Taip pat yra priešingai. Kai bandysite dėstyti temą, susidursite su tam tikromis sąvokomis, kurių, atrodo, negalite aiškiai paaiškinti. Tai ne tik puikus būdas diagnozuoti jūsų žinių trūkumus, bet ir tikrasis tinkamo paaiškinimo suradimo procesas gali padėti sutvirtinti mintį.

Tai vadinama mokymusi mokant ir iš esmės tai yra guminės anties derinimo posūkis.

Dabar nesakau, kad turėtumėte iš tikrųjų mokyti kitus; verčiau kiekvieną naują programavimo temą, kurią išmoksite, pabandykite jos išmokyti guminę ančiuką (arba nematomą draugą). Iš pradžių tai gali atrodyti kvaila, bet jums tai gali būti neįtikėtinai vaisinga, kai kalbama apie atminties išsaugojimą.

Sąmoninga praktika daro tobulą

Talento sąvoka yra visiška šiukšlė. Niekas neišeina iš įsčių kaip pasaulinio lygio smuikininkas, imtynininkas ar programuotojas. Žinoma, kai kurie žmonės gali būti labiau linkę į tam tikras disciplinas, bet talentas be patirties yra nenaudingas Neleiskite savo paslėptiems talentams mirti: 7 būdai, kaip eiti ir vėl juos rastiBlogos naujienos yra tai, kad jūs turite sunkiai dirbti, norėdami patobulinti savo paslėptus talentus. Geros naujienos yra tai, kad yra daugiau nei bet kada anksčiau galimybių atskleisti savo talentus. Skaityti daugiau . Panašiai sunkus darbas visada yra vertingesnis už talentą.

Tai buvo pasakyta, ne visos sunkaus darbo formos yra vienodos. Malcolmas Gladwellas sukūrė liūdnai pagarsėjusią 10 000 valandų taisyklę, kuri sako, kad norint tapti jo meistru, į dalyką reikia investuoti mažiausiai 10 000 valandų. Nors nuotaikos gali būti teisingos, daugelis žmonių klaidingai supranta, ką jis norėjo pasakyti.

Naujoko koduotojo patarimai-tyčia praktika

Trumpai tariant, 10 000 valandų įsipareigojimas iš tikrųjų negarantuoja meistriškumo. Žinote posakį: „Praktika nepadaro tobulo. Tobula praktika daro tobulą." Kad tai būtų prasminga, praktika turi būti tyčinė Norite tapti kažko ekspertu? Išbandykite sąmoningą praktikąLabai lengva jaustis nukritusiam, kai sunkiai bandai tobulinti tam tikrus įgūdžius. Pasinaudokite „sąmoningos praktikos“ galia, kad įveiktumėte tuos siaubingus plokščiakalnius. Skaityti daugiau . Meistriškumą galima pasiekti tik per 10 000 valandų apgalvotos praktikos.

Tai, kaip jūs praktikuojatės, yra daug svarbesnis už tai, kiek laiko praleidžiate praktikai.

Skaitymas yra pasyvus. „YouTube“ pamokų žiūrėjimas yra pasyvus. Podcast'ų klausymas yra pasyvus. Kaip naujokas programuotojas jums gali kilti pagunda pereiti nuo mokymo programos prie kitos, nagrinėti temą po temos, praktiškai netaikant tų žinių. Atsispirkite šiai pagundai.

Vienas dalykas yra suprasti pavyzdį prieš jus, bet kitas dalykas yra susintetinti sprendimą nuo nulio. Jei norite pagreitinti mokymosi procesą, turite būti linkę būti aktyvūs, o ne pasyvūs. Aktyvi praktika yra vienintelė rūšis, kuri galiausiai yra svarbi.

Eksperimentuokite su asmeniniais projektais

Man namų darbai buvo pati blogiausia dalis mokykloje. Atrodė, kad tai yra sudėtingas triukas, norint užmušti linksmybes ir priversti studentus užimti – tai, tiesą sakant, kartais buvo tiesa. Tačiau dabar, kai žiūriu atgal, namų darbų svarba pagaliau įgauna prasmę. Tai privertė aktyviai taikyti naujai įgytas žinias.

Jei esate užsiregistravę programavimo kursai ir užsiėmimai 11 geriausių nemokamų internetinių kompiuterių programavimo kursų svetainiųNaudodamiesi šiais nemokamais internetiniais kompiuterių programavimo kursais galite tapti puikiu programuotoju be informatikos laipsnio. Skaityti daugiau , nenuvertinkite namų darbų veiksmingumo. Priimkite tai rimtai, visada vertinkite tai kaip galimybę tai, ko išmokote, toliau įtvirtinti ilgalaikėje atmintyje.

Tačiau dažnai namų darbų vis tiek neužtenka. (Ir jei mokotės programuoti patys be tikro instruktoriaus, tikriausiai neturėsite namų darbų.)

Naujokų koduotojų patarimai asmeniniai projektai

Kokia išeitis? Sukurkite keletą pašalinių projektų!

Pagalvokite apie a keletas projektų idėjų 5 projektų idėjos, padėsiančios greičiau išmokti programuotiYra keletas būdų, kaip palengvinti programavimo mokymosi kreivę. Susitepkite rankas ir mokykitės greičiau su šalutiniais projektais, kuriuos galite pradėti bet kada. Žaisk su šiais penkiais. Skaityti daugiau kuriuos norėtumėte įgyvendinti. Absoliučiai naujokams galite apsvarstyti „Tic-Tac-Toe“ arba „Hangman“ žaidimą. Patyrę programuotojai, bandantys išmokti naujos sistemos, pabandykite užkoduoti paprastą programą mobiliesiems arba žiniatinklio žaidimą. Kol tai jus domina asmeniniu lygmeniu, pirmyn!

Šio požiūrio grožis yra dvejopas.

Pirma, labiau tikėtina, kad jis pritrauks jūsų dėmesį. Tyrimai parodė, kad mokiniai geriau mokosi, kai gali nagrinėti juos dominančias temas. Būtent tai ir siūlo asmeninis projektas. Turite galutinį tikslą, kurį iš tikrųjų norite pasiekti, todėl labiau tikėtina, kad išsaugosite informaciją, kuri jus nuves.

Antra, nėra jokio spaudimo, kad pasisektų. Nors sėkmė būtų gerai, formalumo trūkumas leidžia eksperimentuoti ir būti kūrybingam. Neišvengiamai susidursite su problemomis, tačiau tai labiau panašu į žaidimą su „Lego“, o ne į namų darbus. Tai smagiau ir ne taip įtempta.

Atsipalaiduokite ir pažymėkite viską

Tiesa ta, kad joks programuotojas neprisimena viskas jie išmoko. Net kai kurį laiką dirbate su tam tikra biblioteka ar sistema, nėra neįprasta, kad negalite prisiminti kiekvienos funkcijos ar kintamojo.

Tiesą sakant, bandymas viską įsiminti gali būti didžiulis laiko ir pastangų švaistymas. Nuorodų lapai egzistuoja dėl priežasties. Kam įsiminti visą enciklopediją, kai prireikus gali ją tiesiog atversti?

naujokas-koderio patarimai-nuoroda-viskas

Taigi, kada įsiminti ir kada kreiptis?

Kalbant apie konceptualią medžiagą, visada įtraukite ją į savo galimybes. Turiu omenyje teorijos supratimą, net jei negalite jos konvertuoti į tikrą kodą (ir teorija turėtų būti pakankamai aiški, kad galėtumėte ją aiškiai išmokyti).

Dėl viso kito, pvz., konkrečių funkcijų pavadinimų, parametrų sąrašų ar net kalbos keistenybių, Nesijaudinčiau dėl įsipareigojimo atminčiai. Nedvejodami atidėkite nuorodinį lapą. Kartais taip dažnai minite ką nors, kad galiausiai tai įsimenate. Jei taip atsitiks, gerai. Jei ne, tai irgi gerai.

Asmeniškai aš turiu šimtus internetinių žymių prie įvairių API, vadovų ir mokymo programų. Jei man reikia įdiegti kokį nors kelio paieškos algoritmą, galėčiau kreiptis į vadovą, kuris padėtų man jį užkoduoti prieš vėl pamiršdamas. Tai padeda suprasti pagrindines sąvokas, bet stengiuosi nesijaudinti dėl įgyvendinimo detalių.

Paskutinės mintys

Pakartosiu milijoną kartų, jei reikės: programuoti yra sunku ir gerai, jei su tuo kovojate. Jau daugiau nei dešimtmetį programuoju kaip hobis ir vis dar gąsdinau, kai turiu išmokti naujų sąvokų.

Nemuškite savęs, jei negalite visko prisiminti iš karto. Aukščiau pateikti patarimai, tikimės, jums bus naudingi, ir net jei ne, visada galite pasikliauti pažymėtomis nuorodomis kaip paskutinę priemonę.

Ar jums sunku programuoti? Kokių žinote gudrybių ir patarimų, kurie gali būti naudingi pradedantiesiems programuotojams? Pasidalykite savo išmintimi su mumis toliau pateiktuose komentaruose!

Vaizdo kreditai: Dvejetainis programuotojas per Shutterstock, Atminties trintukas per Shutterstock, Užtemdytas kodas per „Shutterstock“., Rubber Ducky Via Shutterstock, Klaviatūros spausdinimo mašinėlė per „Shutterstock“., PHP šaltinio kodas per Shutterstock, Failų aplankai per „Shutterstock“.

Joelis Lee turi B.S. informatikos srityje ir daugiau nei šešerių metų profesionalaus rašymo patirtį. Jis yra MakeUseOf vyriausiasis redaktorius.