Python mēnesī

Ceļvedis absolūtiem iesācējiem.
(P.S.: tās ir autora-indiāņa padomi, bet Ŕķiet noderÄ«gi. Aizpildiet komentāros.)

Python mēnesī

Mēnesis — tas ir daudz laika. Ja mācÄ«bām veltÄ«si 6-7 stundas katru dienu, var paveikt daudz.

Mērķis uz mēnesi:

  • Iejusties pamatjēdzienos (mainÄ«gais, nosacÄ«jums, saraksts, cikls, funkcija)
  • Praktizēt vairāk nekā 30 programmēŔanas problēmas
  • Sava divu projektu izstrāde, lai pielietotu jauniegÅ«tās zināŔanas
  • Vismaz iepazÄ«ties ar diviem ietvariem
  • Sākt darbu ar IDE (izstrādes vidi), Github, hostingu, pakalpojumiem utt.

Tad tu kļūsi par junior Python izstrādātāju.

Tagad plāns nedēļām.

Python mēnesī

Raksts tulkots ar EDISON Software atbalstu, kas sniedz noderīgas rekomendācijas jaunajiem speciālistiem, kā arī projektē programmatūru un raksta tehniskos specifikācijas krievu un angļu valodā.

Pirmā nedēļa: iepazīstieties ar Python

Izproti, kā visa struktūra darbojas Python. Pārbaudi pēc iespējas vairāk lietas.

  • Diena 1: 4 pamata koncepti (4 stundas): ievade, izejde, mainÄ«gais, nosacÄ«jumi
  • Diena 2: 4 pamata koncepti (5 stundas): saraksts, for cikls, while cikls, funkcija, moduļu imports
  • Diena 3: VienkārÅ”as programmēŔanas problēmas (5 stundas): apmainÄ«t divus mainÄ«gos, pārvērst Celsius grādus Fārenheita grādos, saskaitÄ«t visas ciparu summas skaitlÄ«, pārbaudÄ«t skaitļa primāro statusu, Ä£enerēt nejauÅ”u skaitli, izdzēst dublikātu no saraksta
  • Diena 4: Vidējās sarežģītÄ«bas programmēŔanas problēmas (6 stundas): apgriezt virkni (pārbaudÄ«t uz palindromu), saskaitÄ«t lielāko kopējo dalÄ«tāju, apvienot divus sakārtotus masÄ«vus, uzrakstÄ«t skaitļu minēŔanas spēli, aprēķināt vecumu utt.
  • Diena 5: Datu struktÅ«ras (6 stundas): kaudze, rinda, vārdnÄ«ca, tuples, saistÄ«ts saraksts
  • Diena 6: OOP — Objektorientētā programmēŔana (6 stundas): objekts, klase, metode un konstruktors, OOP mantojums
  • Diena 7: Algoritmi (6 stundas): meklēŔana (lineāra un bināra), ŔķiroÅ”ana (burbuļa metode, izvēle), rekursÄ«vā funkcija (faktoriāls, Fibonaci secÄ«ba), algoritmu laika sarežģītÄ«ba (lineārie, kvadrātiskie, konstanti)

Neinstalējiet Python:

Es saprotu, tas izklausās pretrunÄ«gi. Bet ticiet man. Es pazÄ«stu daudz cilvēku, kuri zaudēja interesi mācÄ«ties pēc tam, kad viņi nespēja uzstādÄ«t izstrādes vidi vai programmatÅ«ru. Es iesaku uzreiz mēģināt Android lietotni, piemēram, Programming Hero vai mājaslapu Repl un sākt izpētÄ«t valodu. Neuzstādiet sev mērÄ·i vispirms instalēt Python, ja jums nav pietiekamu tehnisko zināŔanu.

Otrā nedēļa: uzsāciet programmatūras izstrādi (sagatavojiet projektu)

IegÅ«stiet pieredzi programmatÅ«ras izstrādē. Mēģiniet izmantot visu, ko esat iemācÄ«juÅ”ies, lai izveidotu reālu projektu.

  • 1. diena: IepazÄ«stieties ar izstrādes vidi (5 stundas): Izstrādes vide ir interaktÄ«va vide, kurā jÅ«s rakstÄ«siet kodu lieliem projektiem. Jums jāzina vismaz viena izstrādes vide. Es iesaku sākt ar VS code instalē Python paplaÅ”inājumu vai Jupyter notebook
  • 2. diena: Github (6 stundas): IepazÄ«stieties ar Github, izveidojiet repozitoriju. Mēģiniet apstiprināt, augÅ”upielādēt kodu, aprēķināt atŔķirÄ«bu starp divām jebkurām Git kokiem. Tāpat izpratiet par zarojumiem, sapludināŔanu un pull requestiem.
  • 3. diena: Pirmais projekts: VienkārÅ”s Kalkulators (4 stundas): IepazÄ«stieties ar 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 pie tā strādāt. Ja jums nav ideju projektam, apskatiet Å”o sarakstu: daži labi projekti Python valodā
  • 7. diena: ViesnÄ«ca (5 stundas): IepazÄ«stieties ar serveri un viesnÄ«cu, lai viesotu savu projektu. Iestatiet Heroku un izvietojiet jÅ«su aplikācijas izstrādi.

Kāpēc projekts:

VienkārÅ”i akli sekojot soļiem mācÄ«bu video vai lekcijā, jÅ«s neattÄ«stÄ«siet domāŔanas prasmes. Jums jāpielieto savas zināŔanas projektā. Kad esat iztērējis visus spēkus atbildes meklēŔanai, jÅ«s to atcerēsities.

TreŔā nedēļa: apmācieties kā programmētājs

JÅ«su mērÄ·is treÅ”ajā nedēļā ir iegÅ«t vispārēju priekÅ”statu par programmatÅ«ras izstrādes procesu. Jums nebÅ«s nepiecieÅ”ams pilnveidot savas prasmes. Bet jums jāzina daži pamati, jo tie ietekmēs jÅ«su ikdienas darbu.

  • 1. diena: Datu bāzu pamati (6 stundas): Pamata SQL vaicājums (Create Table, Select, Where, Update), SQL funkcijas (Avg, Max, Count), relāciju datu bāze (Normalizācija), iekŔējā savienoÅ”ana, ārējā savienoÅ”ana utt.
  • 2. diena: Izmantojiet datu bāzes Python valodā (5 stundas): Izmantojiet datu bāzu ietvaru (SQLite vai Pandas), pieslēdzieties datu bāzei, 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, mikroservisus, REST API
  • 4. diena: Numpy (4 stundas): IepazÄ«stieties ar Numpy un praktizējiet tā izmantoÅ”anu uz pirmajās 30 vingrinājumos
  • 5. un 6. diena: Vietnes portfelis (5 stundas katru dienu): ApgÅ«stiet Django, izveidojiet vietnes portfeli uz Django, aplÅ«kojiet arÄ« Flask ietvaru
  • 7. diena: VienÄ«bu testi, žurnāli, atkļūdoÅ”ana (4 stundas): IepazÄ«stieties ar vienÄ«bu testiem (PyTest), apgÅ«stiet darbu ar žurnāliem un to pārbaudi, kā arÄ« izmantojiet pārrāvumus

Reālais laika apjoms (noslēpums):

Ja esat veltÄ«jis sevi Å”ai tēmai un pieŔķirat tai visu savu uzmanÄ«bu, tad spēsiet paveikt visu mēneÅ”a laikā.

  • PastāvÄ«gi mācieties Python. Sāciet plkst. 8 no rÄ«ta un studējiet lÄ«dz 5 pēcpusdienā. Veiciet pusdienu un uzkodu pārtraukumu (kopā vienu stundu)
  • Plkst. 8 no rÄ«ta izstrādājiet sarakstu ar lietām, ko plānojat apgÅ«t Å”odien. Pēc tam veltiet stundu, lai atcerētos un praktiski izmēģinātu visu, ko iemācÄ«jāties pagājuÅ”ajā dienā.
  • No plkst. 9 lÄ«dz 12 mācieties un praktizējieties mazāk. Pēc pusdienām palieliniet intensitāti. Ja esat iestrēdzis kādā problēmā, meklējiet risinājumu internetā.
  • Katru dienu veltiet 4-5 stundas mācÄ«bām un 2-3 stundas praksē. (maksimums — varat atļauties vienu brÄ«vdienu nedēļā)
  • JÅ«su draugi domās, ka esat traks. Nepieviļiet viņus — atbilstiet tēlam.

Ja strādājat pilnu darba laiku vai studējat universitātē, jums vajadzēs vairāk laika. BÅ«dams students, man vajadzēja 8 mēneÅ”us, lai paveiktu visu sarakstā. Tagad es strādāju kā vecākais izstrādātājs. Manai sievai, kas strādā ASV centrālajā bankā, vajadzēja pusgadu, lai pabeigtu visus uzdevumus. Nav svarÄ«gi, cik ilgs laiks tas prasÄ«s. Pabeidziet sarakstu.

Ceturtā nedēļa: ņemiet nopietni, lai iegūtu darbu (praksē)

Ceturtās nedēļas mērÄ·is ir nopietni pārdomāt, kā iegÅ«t darbu. Pat ja Å”obrÄ«d nevēlaties strādāt, jÅ«s daudz iemācÄ«sieties interviju procesā.

  • 1. diena: CV (5 stundas): Izveidojiet vienas lapas CV. AugŔējā daļā norādiet Ä«su informāciju par savām prasmēm. Noteikti pievienojiet savu projektu sarakstu ar saitēm uz Github.
  • 2. diena: Vietnes portfelis (6 stundas): Uzrakstiet dažus blogus. Pievienojiet tos iepriekŔējam vietnes portfelim, ko izveidojāt.
  • 3. diena: LinkedIn profils (4 stundas): Izveidojiet profilu LinkedIn. Pārnesiet LinkedIn visu, kas ir jÅ«su CV.
  • 4. diena: SagatavoÅ”anās intervijai (7 stundas): Ieguglējiet visbiežāk uzdotos jautājumus intervijās. Praktizējiet 10 programmēŔanas problēmu risināŔanu, par kurām jautā intervijās. Veiciet to uz papÄ«ra. Interviju jautājumus var atrast tādās vietnēs kā Glassdoor, Careercup.
  • 5. diena: TÄ«kloÅ”ana (~ stundas): Izejiet no skapja. Sāciet apmeklēt meet-upus, darba gadatirgus. IepazÄ«stieties ar rekrutētājiem un citiem izstrādātājiem.
  • 6. diena: VienkārÅ”i pieteikieties vakancēm (~ stundas): Ieguglējiet "darbs Python", paskatieties, kādas vakances ir LinkedIn un vietējās darba sludinājumu vietnēs. Izvēlieties 3 vakances, uz kurām pieteiksieties. Pielāgojiet savu CV katrai no tām. Atrodiet 2-3 prasÄ«bas, par kurām neko nezināt. Pavadiet nākamās 3-4 dienas, lai tās apgÅ«tu.
  • 7. diena: Mācieties no atteikumiem (~ stundas): Katra reize, kad saņemat atteikumu, nosakiet 2 lietas, kuras jums jāzina, lai iegÅ«tu darbu. Tad pavadiet 4-5 dienas, lai uzlabotu savas prasmes Å”ajās jomās. Tādējādi, pēc katra atteikuma jÅ«s kļūsiet labāks kā izstrādātājs.

Gatavība darbam:

Patiesība ir tāda, ka jūs nekad neesat pilnībā gatavs darbam. Viss, kas jums jādara, ir ļoti labi apgūt 1-2 lietas. Un iepazīties ar citiem jautājumiem, lai pārvarētu interviju barjeras. Tiklīdz iegūsiet darbu, jūs daudz iemācīsieties tajā.

Baudiet procesu:

MācīŔanās ir process. JÅ«su ceļojumā noteikti bÅ«s grÅ«tÄ«bas. Jo vairāk ir grÅ«tÄ«bu — jo labāks jÅ«s kļūsiet kā izstrādātājs.

Ja jums izdodas pabeigt sarakstu 28 dienās, jÅ«s esat liels čalis. Bet pat ja izpildÄ«siet 60-70% saraksta, jÅ«s attÄ«stÄ«siet nepiecieÅ”amās Ä«paŔības un prasmes. Tās palÄ«dzēs jums kļūt par programmētāju.

Kur mācīties:

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

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

Tulkots: Diana Å eremjova

Avots: habr.com

Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem šŸ”„ Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem | ProHoster