Õppige kodeerima: rekursiivse meetodi saladus

0

Kodeerimine on koht, kus tulevik on nii globaalselt kui ka individuaalselt. Selles pole "kui" ega "aga". Kas kardate oma tööd, olete mures globaliseerumise pärast ja kardate, et te ei tule järgmiste aastate jooksul ots otsaga kokku? Olge siis tulevikukindel, õppides kodeerima.

See on avatud kõigile, olenemata nende vanusest, soost või nahavärvist, see teenib palju raha, kuna keskmine tarkvaraarendaja teenib aastas umbes 100 000, ja see sektor peaks eeldatavasti jätkama kasvu. 22% kuni 2022. aastani.

Ja see on täiesti asukohast sõltumatu. Saate seda hõlpsalt teha veebis, suheldes Skype’i e-posti või snapchati kaudu. Nii et kui elate roostevöös, Bangladeshis või koopas, saate seni, kuni teil on korralik ühendus, kodeerida, palka saada ja mugavalt elada – kuigi tõsi, et viimane osa võib olla raske, kui olete elades maa sees tervikuna.

Ja isegi nende kõigi suurim vabandus, et seda on raske õppida ja et sul pole kedagi, kes sind õpetaks, ei pea enam vett. Iga päev lisatakse võrku rohkem ressursse, mis aitavad teil õppida, kuidas valida keelt, milles soovite kodeerida, kuidas seda keelt õppida ja kuidas selles kodeerida.

Ainus, mis sind tagasi hoiab, oled sina.

Mis keelt peaksite õppima?

Olgu, see võib olla väike nips. Sind hoiab natuke rohkem tagasi. Kuid kõik probleemid on ületatavad! See ei pea teile isegi raha maksma. Esimene valik, mille üle peate otsustama, on see, millise keele õppimist soovite alustada. Neid on palju ja see võib veidi hirmutada.

Õnneks on ka siin tööriistad olemas. Teise võimalusena saate selle ise välja töötada. See pole tegelikult nii raske. Esimene asi, mida pead teadma, on see, et on kaks erinevat keelerühma. Need on dünaamilised ja staatilised keeled.

  • Dünaamilised keeled on algajale sõbralikumad. Need ei vaja nii palju koodi ja on väga paindlikud. Nad õpetavad teile teooriat. Neid nimetatakse ka "kõrgemateks". See tähendab, et nad ei muretse otsikute ja poltide pärast (mis on alumised tasemed), vaid eemaldatakse sealt mitu sammu. Seega, selle asemel, et öelda "võta külmkapist leib välja, võta kaks viilu välja, võta võid…" ütleksite selle asemel lihtsalt "tee maapähklivõi ja moosivõileib". Ilmselgelt on viimane palju kiirem ja sel viisil toovad dünaamilised keeled tulemusi kiiremini.
  • Staatiliselt trükitud keeled on mündi teine ​​pool. Need keeled on lähedasemad sellele, mida kujutate ette, kui mõtlete kodeerimisele. See keel on madalamal tasemel ja nõuab seetõttu sama asja saavutamiseks rohkem koodi – kuid vähemalt saate otsustada, kas teie võileib on koorega või ilma, nii et see on olemas. Neid programmeerimiskeeli peetakse skaleeritavamaks, vastupidavamaks ja hõlpsamini hooldatavaks. Samas karistatakse eksimuste eest karmimalt.

Sain aru? Olgu, järgmiseks vaatame mõningaid näiteid keeltest, mille kasutamist võiksite kaaluda. Kõigepealt alustame mõne dünaamilise keelega.

PHP

Kui kavatsete WordPressiga mängida – ja tõenäoliselt on see teie jaoks üks populaarsemaid veebisaitide loomise platvorme, mille abil on loodud XXX veebisaiti Internetis –, siis tasub alustada PHP-ga. .

Õnneks on see serveripoolne skriptikeel üsna algajasõbralik, kuna selle kasutamisel on lihtne aru saada, mida kood teeb. See tähendab, et seda on palju lihtsam omandada kui paljusid teisi keeli.

Veelgi enam, kuna see on suuresti spetsialiseerunud veebikasutusele ja tõenäoliselt alustate sealt programmeerimise õppimist, saate kindlasti hakkama ka PHP-st halvemini.

Muud PHP-le ehitatud platvormid on Facebook, Wikipedia, Yahoo ja Tumblr.

Javascript

Skaala teises otsas on Javascript. See on tohutult populaarne ja seda kasutatakse paljudes erinevates kohtades ja viisidel. See ühildub kõigi brauseritega, seda kasutatakse sageli interaktiivsete veebirakenduste loomiseks ja seda kasutatakse ka serveripoolse keelena.

Ainus probleem? Seda peetakse üsna keeruliseks, kuna tegemist on tüpimata keelega, mis muudab silumise väga raskeks. See on see, mida soovite kindlasti lõpuks õppida, kuid tõenäoliselt ei tohiks te seda kõigepealt proovida. Selle asemel keskenduge ühele teisele.

Suurepärane, nii et järgmiseks vaatame mõningaid staatiliselt trükitud keeli, mida võiksite kaaluda.

Java

Staatilisest kirjakeelest ei saa tõesti rääkida ilma Java mainimata. See oleks nagu rääkida Põhja-Ameerikast ilma USA-st rääkimata. 90 protsenti Fortunate 500 ettevõtetest kasutab Java-d. See on õige. Üheksa null. Ja need, kes seda ei tee, on tõenäoliselt nagu inimesed, kes keeldusid Apple’i kasutamast. See on asja põhimõte, kurat!

See ei ole just lihtne keel, nii et see ei pruugi olla parim koht alustamiseks. See tähendab, et see on kindlasti õpitav, sest kui 90% nendest ettevõtetest seda kasutab, siis ilmselt peab keegi seda teenima, eks? Kindlasti saaksite teha hullemini, kui valida Java oma esimeseks staatiliselt kirjutatud keeleks.

C

Teine (väga) oluline keel on C. See on operatsioonisüsteemide valikkeel. See on mõjutanud kõiki seni mainitud programmeerimiskeeli. Mõnes mõttes on see nagu ladina keel, kus kõik Euroopa keeled on sellest ja selle ideedest palju laenanud. Ja nagu ladina keelt, muudab selle õppimine kõigi teiste keelte õppimise palju lihtsamaks.

Probleem? Jällegi, ladina võrdlus aitab mind hästi. See on keeruline ja abstraktne ning nõuab üsna palju koodi, et teha seda, mida teised teevad palju vähem. See tähendab, et algajana võib olla raske motivatsiooni säilitada. Tõenäoliselt on kõige parem esmalt midagi õppida, et põhiideedega hakkama saada, ja seejärel omandada C.

Kust ma saan nende platvormide kohta teavet saada?

Mul on hea meel, et sa küsisid. Saadaval on tõesti lugematu arv ressursse, mõned neist on tasulised, mõned tasuta. Soovitan teil alustada tasuta. Võite lihtsalt sisestada valitud keele ja lisada sõnad "kuidas programmeerida" ja oletegi teel.

Teise võimalusena ja kuna olete juba siin, võite klõpsata ühel järgmistest linkidest ja vaadata seal olevaid veebipõhiseid koodiõppeplatvorme.

CodeAcademy on tasuta ja 24 miljonit inimest on selle platvormi kaudu juba kodeerima õppinud. See on ilmselt rohkem inimesi, kui sa arvasid, et suudavad siin maailmas kodeerida. See on väga hea koht alustamiseks. Siin saate õppida HTML, CSS, Javascript, Jquery, PHP, Python ja Ruby.

Courseras on saadaval üle 1000 kursuse. Enamik kursusi on tasuta. Tasumisel saad osade kursuste kohta ka tunnistuse. Selles kohas on kursused sellistes kuulsates kohtades nagu Washingtoni Ülikool, Stanford, Toronto Ülikool ja Vanderbilt.

edX on veel üks hea. See on avatud lähtekoodiga, nii et te ei pea kunagi midagi maksma. Selle ehitasid Harvard ja MIT 2012. aastal ning on sellest ajast alates kasvanud. Tänapäeval on selle kohaga seotud üle 60 kooli. Nii saate teada, et teil on vaheldusrikkust ja olete veritseva ääre peal. Kindlasti saaksite hullemini teha.

Kuidas õppida

On mõned olulised tööriistad, millele peate tähelepanu pöörama. Kõigepealt peate tutvuma valitud programmeerimiskeele raamatukogudega. Need on terminid ja väljendid, millest peate aru saama, et panna arvuti tegema seda, mida soovite.

Jah, nende raamatukogude mõistmine on natuke nagu teise keele õppimine. Õnneks on teil kodeerimisel üks suur eelis, mida mujal pole, ja see on see, et väljendid on vähemalt osaliselt inglise keeles. See tähendab, et teil on vähemalt mõned seosed oma tavapärase arusaamaga. Ja uskuge mind, see aitab palju.

Nüüd saate juba hakata katsetama, katsetama uusi asju ja uurima keele erinevaid tahke. Mõne tõeliselt lihtsa programmeerimisartikli abil saate valitud keelega hakkama.

Teise võimalusena võite hakata vaatama kujundusmustreid keeles. Mida see salapäraselt kõlav väljend tähendab? See tähendab, et vaatate mõnda põhilahendust suurtele asjadele, mida iga programmeerimiskeel peab tegema. Jah, võite proovida neid ise välja mõelda – tegelikult soovitan teil proovida vähemalt mõnda neist, sest see õpetab teile programmeerimiskeeles mõtlema ja põhitõdesid mõistma. Sellegipoolest ei taha te kulutada aega ratta leiutamisele – eriti kuna teie ratas on tõenäoliselt kandiline võrreldes juba olemasolevaga.

Loe rekursiivselt

Väga oluline viis programmeerimisartikleid lugema õppida on nende rekursiivne lugemine. See tähendab, et loed artiklit, mis on informatiivne, võtad kõik mõisted, millest sa aru ei saa ja googeldad neid iseseisvalt. Seejärel loete läbi kõik artiklid, mis on seal kõige kasulikumad, ja kui on termineid, mida te siin ei tea, kordate seda protsessi. Lõpuks, kui olete aru saanud kontseptsioonist, mille otsa komistasite, naasete artikli juurde ja jätkate selle lugemist.

Jah, see tähendab, et aeg-ajalt avate kümneid erinevaid artikleid, et ühe artikliga hakkama saada, kuna üks termin viib teiseni ja nii edasi. Asi on selles, et mida aeg edasi ja avastad, et tead rohkem ja rohkem, seda juhtub üha vähem. Veelgi enam, teie arusaam on palju täielikum ja terviklikum kui siis, kui loeksite asju, mõistmata kõike, mida esitatakse.

Miks teil selliseid terviklikke teadmisi vaja on, küsite? Miks te ei saa programmeerimist lihtsalt läbi lugeda nagu kõike muud? Väga konkreetsel ja olulisel põhjusel: teiste valdkondadega, kui te ei mõista kontseptsiooni läbi ja lõhki, võite sellest pääseda, kas ebamääraselt lobisedes või sellest rääkimist vältides.

Programmeerimisel pole see võimalik. Programmeerimisel peate tegelikult mõistma kõiki aspekte. Kui te seda ei tee, võite kirjutada väga ebatõhusa koodi või, mis veelgi hullem, lisada koodi tahtmatult nõrkusi, mis muudavad selle vastuvõtlikuks häkkimisele või kokkujooksmisele. See tähendab, et te ei pääse sellest, kui lihtsalt kõrvale hiilite millestki, mida te ei tea. Peate hammustama ja iga kontseptsiooniga tegelema.

Järeldus

Kas õpite programmeerimist raha teenimise eesmärgil, et saada paremat ülevaadet oma lehe ja ettevõtte juhtimisest, paremini suhelda saidi haldajatega või säästa raha ise programmeerimisega, programmeerimise õppimine on tohutu.

Saate mitte ainult oma koodi kirjutada, vaid ka paremini mõista, mida arvutimaailm tähendab ja miks see nii toimib. Arvutid ei ole inimesed – jah, see kõlab hullult, kuid te ei mõista selle väljendi täielikku tähendust enne, kui mõistate mõne programmeerimiskeele loogikat ja mehaanikat. Sealt saate siis teada, millal miski on hale, mis on võimalik ja kui keegi teeskleb, et midagi on raske, kuigi tegelikult on see käkitegu.

Need kõik on tohutult kasulikud oskused. Ja nende saamiseks pole vaja muud teha, kui istuda maha ja investeerida paar tundi nädalas programmeerimiskeele õppimisse. Teisisõnu, kasu kaalub palju üles kulud, kas te pole nõus?

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More