Python pÄ en mÄnad

En guide för absoluta nybörjare.
(Anm. frÄn översÀttaren: dessa Àr rÄd frÄn en indisk författare, men verkar vara anvÀndbara. LÀgg gÀrna till i kommentarerna.)

Python pÄ en mÄnad

En mÄnad Àr mycket tid. Om man lÀgger 6-7 timmar pÄ lÀrande varje dag, kan man Ästadkomma mycket.

MÄl för mÄnaden:

  • Bekanta dig med grundlĂ€ggande begrepp (variabel, villkor, lista, loop, funktion)
  • FĂ„ praktisk erfarenhet av mer Ă€n 30 programmeringsproblem
  • Skapa tvĂ„ projekt för att tillĂ€mpa dina nya kunskaper
  • Bekanta dig med minst tvĂ„ ramverk
  • Börja arbeta med en IDE (integrerad utvecklingsmiljö), Github, webhosting, tjĂ€nster osv.

SĂ„ blir du junior Python-utvecklare.

Nu Àr planen veckovis.

Python pÄ en mÄnad

Artikeln Àr översatt med stöd av företaget EDISON Software, som ger anvÀndbara rÄd till juniorer, samt designar mjukvara och skriver kravspecifikationer pÄ ryska och engelska.

Första veckan: bekanta dig med Python

Ta reda pÄ hur allt fungerar i Python. Testa sÄ mycket som möjligt.

  • Dag 1: 4 grundlĂ€ggande koncept (4 timmar): indata, utdata, variabel, villkor
  • Dag 2: 4 grundlĂ€ggande koncept (5 timmar): lista, for-loop, while-loop, funktion, importera moduler
  • Dag 3: Enkla programmeringsproblem (5 timmar): byta plats pĂ„ tvĂ„ variabler, konvertera grader Celsius till grader Fahrenheit, berĂ€kna summan av siffrorna i ett tal, kontrollera om ett tal Ă€r ett primtal, generera ett slumpmĂ€ssigt tal, ta bort dubbletter frĂ„n en lista
  • Dag 4: Programmeringsproblem av medelsvĂ„r svĂ„righetsgrad (6 timmar): vĂ€nda en strĂ€ng (kontrollera om den Ă€r en palindrom), berĂ€kna största gemensamma delare, kombinera tvĂ„ sorterade arrayer, skriva ett gissningsspel, berĂ€kna Ă„lder osv.
  • Dag 5: Datastrukturer (6 timmar): stack, kö, ordbok, tuples, lĂ€nkad lista
  • Dag 6: OOP — Objektorienterad programmering (6 timmar): objekt, klass, metod och konstruktor, OOP-arv
  • Dag 7: Algoritm (6 timmar): sökning (linjĂ€r och binĂ€r), sortering (bubbelmetod, urval), rekursiv funktion (faktoriell, Fibonacci-serie), tidskomplexitet för algoritmer (linjĂ€ra, kvadratiska, konstanter)

Installera inte Python:

Jag förstÄr, det lÄter motsÀgelsefullt. Men lita pÄ mig. Jag kÀnner mÄnga mÀnniskor som tappade all lust att lÀra sig nÄgot efter att de inte lyckats installera en utvecklingsmiljö eller programvara. Jag rekommenderar att du direkt gÄr in i en Android-app som Programming Hero eller pÄ webbsidan Repl och börjar utforska sprÄket. SÀtt inte som mÄl att först installera Python om du inte Àr sÀrskilt teknisk kunnig.

Vecka tvÄ: börja med mjukvaruutveckling (skapa ett projekt)

FÄ erfarenhet av mjukvaruutveckling. Försök anvÀnda allt du har lÀrt dig för att skapa ett riktigt projekt.

  • Dag 1: Bekanta dig med utvecklingsmiljön (5 timmar): En utvecklingsmiljö Ă€r en interaktiv miljö dĂ€r du kommer att skriva kod för de största projekten. Du bör vara bekant med minst en utvecklingsmiljö. Jag rekommenderar att börja med VS code installera Python-tillĂ€gget eller Jupyter notebook
  • Dag 2: Github (6 timmar): LĂ€r dig om Github, skapa ett repository. Försök att committa, pusha koden, berĂ€kna skillnaden mellan tvĂ„ valfria Git-trĂ€d. LĂ€r dig ocksĂ„ om branching, merging och pull requests.
  • Dag 3: Första projektet: En enkel kalkylator (4 timmar): Bekanta dig med Tkinter. Skapa en enkel kalkylator.
  • Dag 4, 5, 6: Personligt projekt (5 timmar varje dag): VĂ€lj ett av projekten och börja arbeta pĂ„ det. Om du inte har nĂ„gra projektidĂ©er, kolla in denna lista: nĂ„gra bra projekt pĂ„ Python
  • Dag 7: Hosting (5 timmar): SĂ€tt dig in i servrar och hosting sĂ„ att du kan hosta ditt projekt. StĂ€ll in Heroku och distribuera din applikationsbygge.

Varför projektet:

Bara genom att blint följa stegen i en lektion eller video kommer du inte att utveckla förmÄgan att tÀnka. Du mÄste tillÀmpa dina kunskaper i ett projekt. SÄ snart du har lagt all din energi pÄ att söka efter svar, kommer du att minnas det.

Vecka tre: bli bekvÀm som programmerare

Ditt mÄl under vecka 3 Àr att fÄ en allmÀn förstÄelse för mjukvaruutvecklingsprocessen. Du behöver inte finslipa dina fÀrdigheter. Men du bör kÀnna till vissa grunder, eftersom de kommer att pÄverka ditt dagliga arbete.

  • Dag 1: Grunderna i databaser (6 timmar): GrundlĂ€ggande SQL-frĂ„ga (Create Table, Select, Where, Update), SQL-funktioner (Avg, Max, Count), relationsdatabas (Normalisering), Inre förening, Yttre förening etc.
  • Dag 2: AnvĂ€nd databaser i Python (5 timmar): AnvĂ€nd databasenramverket (SQLite eller Pandas), anslut till databasen, skapa och lĂ€gg till data i flera tabeller, lĂ€s data frĂ„n tabellerna
  • Dag 3: API (5 timmar): LĂ€r dig att anropa API, Ă„terfĂ„ JSON, mikrotjĂ€nster, REST API
  • Dag 4: Numpy (4 timmar): Bekanta dig med Numpy och trĂ€na pĂ„ att anvĂ€nda det i de första 30 övningarna
  • Dag 5, 6: Webbportfölj (5 timmar varje dag): LĂ€r dig Django, skapa en webbportfölj med Django, ta ocksĂ„ en titt pĂ„ Flask-ramverket
  • Dag 7: Enhetstester, loggar, felsökning (4 timmar): SĂ€tt dig in i enhetstester (PyTest), lĂ€r dig hantera loggar och kontrollera dem, och anvĂ€nd brytpunkter

Verklig tidsram (Hemlighet):

Om du Àr passionerad för detta Àmne och tillÀgnar det all din tid kan du fÄ allt gjort pÄ en mÄnad.

  • LĂ€r dig Python kontinuerligt. Börja kl. 08.00 och hĂ„ll pĂ„ till 17.00. Ta en paus för lunch och snacks (totalt en timme)
  • Vid 08.00 gör en lista över de saker du ska studera idag. DĂ€refter avsĂ€tt en timme för att repetera och praktisera allt du lĂ€rde dig igĂ„r.
  • FrĂ„n 09.00 till 12.00 lĂ€r och praktiserar du mindre. Efter lunch fĂ„r du upp hastigheten. Om du fastnar pĂ„ ett problem, sök efter en lösning online.
  • Ägna 4-5 timmar varje dag Ă„t att lĂ€ra dig och 2-3 timmar Ă„t praktik. (Max kan du ge dig sjĂ€lv en ledig dag i veckan)
  • Dina vĂ€nner kommer att tycka att du Ă€r galen. Besvikta dem inte – hĂ„ll dig till bilden.

Om du arbetar heltid eller studerar pÄ universitetet, kommer du att behöva mer tid. Som student tog det mig 8 mÄnader att göra allt som anges i listan. Nu arbetar jag som seniorutvecklare. Min fru, som arbetar pÄ den amerikanska centralbanken, tog sex mÄnader att slutföra alla uppgifter pÄ listan. Oavsett hur lÄng tid det tar. Slutför listan.

Vecka fyra: Ta det pÄ allvar att fÄ en anstÀllning (praktikant)

Ditt mĂ„l för den fjĂ€rde veckan Ă€r att seriöst tĂ€nka pĂ„ att fĂ„ ett arbete. Även om du inte vill ha ett jobb just nu, kommer du att lĂ€ra dig mycket i rekryteringsprocessen.

  • Dag 1: CV (5 timmar): Skapa ett en-sides CV. Placera en kort sammanfattning av dina fĂ€rdigheter högst upp pĂ„ CV:t. Glöm inte att inkludera en lista över dina projekt med lĂ€nkar till Github.
  • Dag 2: Portfolio för webbplats (6 timmar): Skriv nĂ„gra bloggar. LĂ€gg till dem i den tidigare webbplatsportföljen som du skapade.
  • Dag 3: LinkedIn-profil (4 timmar): Skapa en profil pĂ„ LinkedIn. Överför allt frĂ„n ditt CV till LinkedIn.
  • Dag 4: Förberedelse för intervju (7 timmar): Sök efter de vanligaste intervjufrĂ„gorna. Öva pĂ„ att lösa 10 programmeringsproblem som kan stĂ€llas under intervjuer. Gör detta pĂ„ papper. Du kan hitta intervjufrĂ„gor pĂ„ sidor som Glassdoor, Careercup.
  • Dag 5: NĂ€tverkande (~ timmar): Kom ut ur skĂ„pet. Börja gĂ„ pĂ„ meetups och karriĂ€rmĂ€ssor. Möt rekryterare och andra utvecklare.
  • Dag 6: Svara pĂ„ jobbannonser (~ timmar): Sök efter “Python-jobb”, kolla vilka jobb som finns pĂ„ LinkedIn och lokala jobbsajter. VĂ€lj 3 jobb att ansöka till. Anpassa ditt CV för varje jobb. Hitta 2-3 saker i kravlistorna som du inte vet. Tillbringa de kommande 3-4 dagarna med att sĂ€tta dig in i dem.
  • Dag 7: LĂ€r dig av avslag (~ timmar): Varje gĂ„ng du fĂ„r ett avslag, identifiera 2 saker som du mĂ„ste veta för att fĂ„ jobbet. Tillbringa sedan 4-5 dagar med att förbĂ€ttra dina kunskaper inom dessa omrĂ„den. PĂ„ sĂ„ sĂ€tt kommer du att bli bĂ€ttre som utvecklare efter varje avslag.

Beredd för arbete:

Sanningen Àr att du aldrig kommer att vara 100% redo för jobbet. Det enda du behöver Àr att riktigt bra pÄ 1-2 saker. Och att bekanta dig med andra frÄgor för att övervinna intervjubarriÀren. NÀr du vÀl fÄtt jobbet kommer du att lÀra dig mycket.

Njut av processen:

LÀrande Àr en process. PÄ din vÀg kommer det utan tvekan att finnas svÄrigheter. Ju fler de Àr, desto bÀttre blir du som utvecklare.

Om du lyckas avsluta listan pÄ 28 dagar Àr du riktigt duktig. Men Àven om du uppnÄr 60-70% av listan, kommer du att utveckla de nödvÀndiga egenskaperna och fÀrdigheterna. De kommer att hjÀlpa dig att bli programmerare.

Var du kan lÀra dig:

Om du fortfarande inte vet vart du ska börja,

Jag önskar dig en spÀnnande resa. Framtiden ligger i dina hÀnder.

ÖversĂ€ttning: Diana Sheremyeva

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster