Python mēneÅ”a laikā

Ceļvedis absolūtiem tējas iesācējiem.
(Piezīme no joslas: Ŕie ir indieŔu autora padomi, taču tie Ŕķiet praktiski. Lūdzu, pievienojiet komentāros.)

Python mēneÅ”a laikā

Mēnesis ir ilgs laiks. Ja katru dienu mācībām velti 6-7 stundas, vari paveikt ļoti daudz.

MēneÅ”a mērÄ·is:

  • IepazÄ«stieties ar pamatjēdzieniem (mainÄ«gais, nosacÄ«jums, saraksts, cilpa, funkcija)
  • Praktiski apgÅ«stiet vairāk nekā 30 programmÄ“Å”anas problēmas
  • Apkopojiet divus projektus, lai jaunas zināŔanas liktu lietā
  • IepazÄ«stieties ar vismaz diviem ietvariem
  • Sāciet darbu ar IDE (izstrādes vidi), Github, hostingu, pakalpojumiem utt.

Tas padarīs jūs par jaunāko Python izstrādātāju.

Tagad plāns ir nedēļu pēc nedēļas.

Python mēneÅ”a laikā

Raksts tika tulkots ar EDISON Software atbalstu, kas sniedz praktiskus padomus junioriemun projektē programmatūru un raksta tehniskās specifikācijas krievu un angļu valodās.

1. nedēļa: iepazīstieties ar Python

Izprotiet, kā viss darbojas Python. Pārbaudiet pēc iespējas vairāk lietu.

  • 1. diena: 4 galvenie jēdzieni (4 stundas): ievade, izvade, mainÄ«gais, nosacÄ«jumi
  • 2. diena: 4 galvenie jēdzieni (5 stundas): saraksts, cilpai, kamēr cilpa, funkcija, moduļa importÄ“Å”ana
  • 3. diena: vienkārÅ”as programmÄ“Å”anas problēmas (5 stundas): apmainÄ«t divus mainÄ«gos, pārvērst Celsija grādus Fārenheita grādos, aprēķināt visu skaitļa ciparu summu, pārbaudÄ«t skaitļa primārumu, Ä£enerēt nejauÅ”u skaitli, noņemt dublikātu no saraksta
  • 4. diena: mērenas programmÄ“Å”anas problēmas (6 stundas): apgriezt virkni (pārbaudÄ«t palindromu), aprēķināt lielāko kopÄ«go dalÄ«tāju, apvienot divus sakārtotus masÄ«vus, uzrakstÄ«t skaitļu minÄ“Å”anas spēli, aprēķināt vecumu utt.
  • 5. diena: datu struktÅ«ras (6 stundas): kaudze, rinda, vārdnÄ«ca, korteži, saistÄ«tais saraksts
  • 6. diena: OOP ā€” objektorientēta programmÄ“Å”ana (6 stundas): objekts, klase, metode un konstruktors, OOP mantojums
  • 7. diena: algoritms (6 stundas): meklÄ“Å”ana (lineāra un bināra), kārtoÅ”ana (burbuļu metode, atlase), rekursÄ«vā funkcija (faktoriāla, Fibonači sērija), algoritmu laika sarežģītÄ«ba (lineāra, kvadrātiskā, konstante)

Neinstalējiet Python:

Es zinu, ka tas izklausās pretrunÄ«gi. Bet ticiet man. Es pazÄ«stu daudzus cilvēkus, kuri ir zaudējuÅ”i vēlmi kaut ko iemācÄ«ties pēc tam, kad nav spējuÅ”i instalēt izstrādes vidi vai programmatÅ«ru. Es iesaku nekavējoties iekļūt tādā Android lietojumprogrammā kā ProgrammÄ“Å”anas varonis vai uz vietni Repl un sāciet apgÅ«t valodu. Nemēģiniet vispirms instalēt Python, ja vien neesat Ä«paÅ”i lietpratÄ«gs.

2. nedēļa: programmatÅ«ras izstrādes sākÅ”ana (projekta izveide)

Iegūstiet pieredzi programmatūras izstrādē. Mēģiniet izmantot visu, ko esat iemācījies, lai izveidotu reālu projektu.

  • 1. diena: iepazÄ«stieties ar izstrādes vidi (5 stundas): Izstrādes vide ir interaktÄ«va vide, kurā rakstÄ«siet kodu lielākajiem projektiem. Jums jāpārzina vismaz viena izstrādes vide. Iesaku sākt ar VS koda instalējiet Python paplaÅ”inājumu vai Jupyter piezÄ«mju grāmatiņa
  • 2. diena: Github (6 stundas): Izpētiet GitHub, izveidojiet repozitoriju. Mēģiniet veikt apņemÅ”anos, nospiest kodu un aprēķināt atŔķirÄ«bu starp jebkuriem diviem Git kokiem. Izprotiet arÄ« sazaroÅ”anas, apvienoÅ”anas un izvilkÅ”anas pieprasÄ«jumus.
  • 3. diena: pirmais projekts: vienkārÅ”s kalkulators (4 stundas): Pārbaudiet Tkinter. Izveidojiet vienkārÅ”u kalkulatoru.
  • 4., 5., 6. diena: personÄ«gais projekts (5 stundas katru dienu): izvēlieties vienu no projektiem un sāciet strādāt pie tā. Ja jums nav ideju projektam, skatiet Å”o sarakstu: vairāki labi Python projekti
  • 7. diena: Hostings (5 stundas): Saprast serveri un hostingu, lai uzņemt savu projektu. Iestatiet Heroku un izvietojiet savu lietotnes bÅ«vējumu.

Kāpēc projekts:

Tikai akli sekojot soļiem nodarbÄ«bā vai video, jÅ«su domāŔanas prasmes neattÄ«stÄ«sies. Savas zināŔanas jāpielieto projektā. Kad esat iztērējis visu savu enerÄ£iju atbildes meklējumos, jÅ«s to atcerēsities.

TreŔā nedēļa: jÅ«tieties ērti kā programmētājs

Jūsu mērķis 3. nedēļā ir iegūt vispārēju izpratni par programmatūras izstrādes procesu. Jums nebūs jāpilnveido savas prasmes. Bet jums vajadzētu zināt dažus pamatus, jo tie ietekmēs jūsu ikdienas darbu.

  • 1. diena: datu bāzes pamati (6 stundas): pamata SQL vaicājums (tabulas izveide, atlase, kur, atjaunināŔana), SQL funkcija (vid., maks., skaits), relāciju datu bāze (normalizācija), iekŔējā savienoÅ”ana, ārēja pievienoÅ”anās utt.
  • 2. diena: izmantojiet Python datu bāzes (5 stundas): izmantojiet datu bāzes ietvaru (SQLite vai Pandas), izveidojiet savienojumu ar datu bāzi, izveidojiet un pievienojiet datus vairākām tabulām, lasiet datus no tabulām
  • 3. diena: API (5 stundas): iemācieties izsaukt API, apgÅ«stiet JSON, mikropakalpojumus, REST API
  • 4. diena: niecÄ«ga (4 stundas): Apskatiet Numpy un praktizējiet to lietoÅ”anu pirmie 30 vingrinājumi
  • 5., 6. diena: vietnes portfelis (5 stundas katru dienu): iemācies Django, izveidot portfeļa vietni, izmantojot Django, apskatiet arÄ« Flask ietvaru
  • 7. diena: vienÄ«bu testi, žurnāli, atkļūdoÅ”ana (4 stundas): izprotiet vienÄ«bu testus (PyTest), uzziniet, kā strādāt ar žurnāliem un tos pārbaudÄ«t, kā arÄ« izmantot pārtraukuma punktus

Reālais laiks (slepens):

Ja jÅ«s aizraujas ar Å”o tēmu un pilnÄ«bā tai veltaties, visu varat paveikt mēneÅ”a laikā.

  • PastāvÄ«gi apgÅ«stiet Python. Sāciet pulksten 8:5 un dariet to lÄ«dz pulksten XNUMX:XNUMX. Paņemiet pārtraukumu pusdienām un uzkodām (kopā stunda)
  • 8:XNUMX izveidojiet sarakstu ar lietām, kuras Å”odien studēsiet. Pēc tam veltiet stundu, lai atcerētos un praktizētu visu, ko iemācÄ«jāties vakar.
  • No pulksten 9 lÄ«dz 12 mazāk mācies un praktizējies. Pēc pusdienām paceliet tempu. Ja esat iestrēdzis ar problēmu, meklējiet risinājumu tieÅ”saistē.
  • Katru dienu veltiet 4-5 stundas mācÄ«bām un 2-3 stundas praksei. (jÅ«s varat ņemt ne vairāk kā vienu brÄ«vu dienu nedēļā)
  • JÅ«su draugi domās, ka esat traks. Nelieciet viņiem vilties ā€“ ievērojiet tēlu.

Ja strādājat pilnu slodzi vai mācāties universitātē, jums bÅ«s nepiecieÅ”ams vairāk laika. Man kā studentam vajadzēja 8 mēneÅ”us, lai paveiktu visu sarakstā norādÄ«to. Tagad strādāju par vecāko izstrādātāju (vecāko). Manai sievai, kura strādā ASV centrālajā bankā, vajadzēja seÅ”us mēneÅ”us, lai izpildÄ«tu visus sarakstā iekļautos uzdevumus. Nav svarÄ«gi, cik ilgi tas aizņem. Pabeidziet sarakstu.

Ceturtā nedēļa: esiet nopietni par darba iegÅ«Å”anu (stažieris)

Tavs mērÄ·is ceturtajā nedēļā ir nopietni domāt par darba iegÅ«Å”anu. Pat ja jÅ«s Å”obrÄ«d nevēlaties darbu, intervijas laikā jÅ«s daudz uzzināsit.

  • 1. diena: kopsavilkums (5 stundas): izveidojiet vienas lapas CV. Sava CV augÅ”daļā iekļaujiet savu prasmju kopsavilkumu. Noteikti pievienojiet savu projektu sarakstu ar saitēm uz Github.
  • 2. diena: vietnes portfelis (6 stundas): Uzrakstiet dažus emuārus. Pievienojiet tos iepriekÅ” izveidotajam vietnes portfelim.
  • 3. diena: LinkedIn profils (4 stundas): izveidojiet LinkedIn profilu. Nododiet visu savā CV vietnē LinkedIn.
  • 4. diena: sagatavoÅ”anās intervijai (7 stundas): Google visbiežāk uzdotie interviju jautājumi. Praktizējiet 10 programmÄ“Å”anas problēmu risināŔanu, par kurām tika uzdots intervijās. Dariet to uz papÄ«ra. Intervijas jautājumus var atrast tādās vietnēs kā Glassdoor, Careercup
  • 5. diena: tÄ«kloÅ”anās (~ stundas): Izkāp no skapja. Sāciet apmeklēt tikÅ”anās un darba gadatirgus. IepazÄ«stieties ar personāla atlases speciālistiem un citiem izstrādātājiem.
  • 6. diena: vienkārÅ”i piesakieties darbam (~ stundas): Google ā€œPython jobsā€ un skatiet, kādi darbi ir pieejami LinkedIn un vietējās darba vietnēs. Izvēlieties 3 darbus, kuriem pieteiksieties. Pielāgojiet savu CV katram. PrasÄ«bu sarakstos atrodiet 2ā€“3 lietas, kuras jÅ«s nezināt. Pavadiet nākamās 3ā€“4 dienas, lai tās sakārtotu.
  • 7. diena: mācieties no neveiksmēm (~ stundas): Katru reizi, kad saņemat atteikumu, norādiet 2 lietas, kas jums jāzina, lai iegÅ«tu darbu. Pēc tam veltiet 4-5 dienas, lai pilnveidotu savas prasmes Å”ajās jomās. Tādā veidā pēc katra noraidÄ«juma jÅ«s kļūsit par labāku izstrādātāju.

Gatavs darbam:

PatiesÄ«ba ir tāda, ka jÅ«s nekad nebÅ«sit 100% gatavs darbam. Viss, kas jums nepiecieÅ”ams, ir ļoti labi iemācÄ«ties 1-2 lietas. Un iepazÄ«stieties ar citiem jautājumiem, lai pārvarētu intervijas barjeru. Kad iegÅ«si darbu, no tā daudz iemācÄ«sies.

Izbaudiet procesu:

MācīŔanās ir process. Jūsu ceļā noteikti būs grūtības. Jo vairāk to, jo labāk jūs esat kā izstrādātājs.

Ja varat pabeigt sarakstu 28 dienu laikā, jums klājas lieliski. Bet pat aizpildot 60-70% no saraksta, attÄ«stÄ«siet nepiecieÅ”amās Ä«paŔības un prasmes. Viņi palÄ«dzēs jums kļūt par programmētāju.

Kur mācīties:

Ja joprojām nezināt, ar ko sākt,

Es novēlu jums aizraujoÅ”u ceļojumu. Nākotne ir jÅ«su rokās.

Tulkojums: Diāna Šeremjeva

Avots: www.habr.com

Pievieno komentāru