Handleiding voor absolute beginners.
(Opmerking: dit zijn tips van de auteur, maar ze lijken nuttig. Vul aan in de opmerkingen.)

Een maand is veel tijd. Als je elke dag 6-7 uur aan leren besteedt, kun je veel bereiken.
Doel voor de maand:
- Vertraagd met de basisconcepten (variabele, voorwaarde, lijst, lus, functie)
- Meer dan 30 programmeerproblemen in de praktijk beheersen
- Twee projecten verzamelen om de nieuwe kennis in de praktijk toe te passen
- Ten minste twee frameworks leren kennen
- Begin met werken met een IDE, Github, hosting, services, enz.
Zo word je junior Python-ontwikkelaar.
Nu een plan per week.
Dit artikel is vertaald met de ondersteuning van EDISON Software, dat , evenals .
Eerste week: maak kennis met Python
Begrijp hoe alles in Python werkt. Controleer zoveel mogelijk zaken.
- Dag 1: 4 basisconcepten (4 uur): invoer, uitvoer, variabele, voorwaarden
- Dag 2: 4 basisconcepten (5 uur): lijst, for-lus, while-lus, functie, modules importeren
- Dag 3: Eenvoudige programmeerproblemen (5 uur): verwissel twee variabelen, zet graden Celsius om in graden Fahrenheit, tel de cijfers in een getal, controleer of een getal een priemgetal is, genereer een willekeurig getal, verwijder duplicaten uit een lijst
- Dag 4: Programmeerproblemen van gemiddelde moeilijkheid (6 uur): keer een string om (controleer op een palindroom), bereken de grootste gemene deler, combineer twee gesorteerde arrays, schrijf een raadspel, bereken een leeftijd, enz.
- Dag 5: Gegevensstructuren (6 uur): stapel, wachtrij, woordenboek, tuples, verbonden lijst
- Dag 6: OOP ā ObjectgeoriĆ«nteerd programmeren (6 uur): object, klasse, methode en constructor, OOP-erfelijkheid
- Dag 7: Algoritme (6 uur): zoeken (lineair en binair), sorteren (met de bellenmethode, selectie), recursieve functie (factorieel, Fibonacci-reeks), tijdcomplexiteit van algoritmen (lineaire, kwadratische, constante)
Installeer Python niet:
Ik begrijp het, het klinkt tegenstrijdig. Maar geloof me. Ik ken veel mensen die hun interesse verloren in het leren van iets nadat ze er niet in slaagden de ontwikkelomgeving of software te installeren. Ik raad aan meteen te gaan voor een Android-app zoals of bezoek onze website en begin de taal te verkennen. Stel jezelf niet als eerste de taak om Python te installeren als je niet bijzonder technisch bent onderlegd.
Tweede week: begin met het ontwikkelen van software (verzamel het project)
Verkrijg ervaring met softwareontwikkeling. Probeer alles wat je geleerd hebt toe te passen om een echt project te creƫren.
- Dag 1: Maak kennis met de ontwikkelomgeving (5 uur): De ontwikkelomgeving is een interactieve omgeving waarin je code schrijft voor de grootste projecten. Je moet ten minste ƩƩn ontwikkelomgeving goed kennen. Ik raad aan te beginnen met of Jupyter Notebook
- Dag 2: Github (6 uur): Leer , maak een repository. Probeer code te commiten, te pushen, en het verschil tussen twee Git-bomen te berekenen. Maak je ook vertrouwd met branching, merging en pull requests.
- Dag 3: Eerste project: Eenvoudige Rekenen (4 uur): Maak kennis met Tkinter. .
- Dag 4, 5, 6: Persoonlijk project (5 uur elke dag): Kies een project en begin eraan te werken. Als je geen idee voor een project hebt, kijk dan eens naar deze lijst:
- Dag 7: Hosting (5 uur): Begrijp de server en hosting zodat . Stel Heroku in en deploy je applicatie.
Waarom dit project:
Door simpelweg blindelings de stappen in de les of video te volgen, ontwikkel je geen denkvermogen. Je moet je kennis toepassen in een project. Zodra je al je tijd besteedt aan het zoeken naar een antwoord, zul je het onthouden.
Derde week: word vertrouwd met programmeren
Je doel in de derde week is om een algemeen inzicht te krijgen in het softwareontwikkelingsproces. Je hoeft je vaardigheden niet te verfijnen. Maar je moet wel enkele basisprincipes kennen, omdat deze invloed hebben op je dagelijkse werkzaamheden.
- Dag 1: Basisprincipes van databases (6 uur): Basis SQL-query (Create Table, Select, Where, Update), SQL-functie (Avg, Max, Count), relationele database (Normalisatie), Inner Join, Outer Join, enz.
- Dag 2: Gebruik databases in Python (5 uur): Gebruik een databaseframework (SQLite of Pandas), maak verbinding met de database, creƫer en voeg gegevens toe aan meerdere tabellen, lees gegevens uit de tabellen
- Dag 3: API (5 uur): Leer hoe je API's aanroept, verdiep je in JSON, microservices, REST API
- Dag 4: Numpy (4 uur): en oefen met het gebruik hiervan.
- Dag 5, 6: Websiteportfolio (5 uur per dag): Leer Django, , kijk ook naar het Flask-framework
- Dag 7: Unittests, logs, debugging (4 uur): Begrijp unittests (PyTest), leer met logs te werken en deze te controleren, en gebruik breakpoints
Echte tijdschaal (Geheim):
Als je deze materie serieus neemt en je ervoor inzet, kun je alles binnen een maand doen.
- Leer Python continu. Begin om 8 uur 's ochtends en studeer tot 5 uur 's avonds. Neem een lunchpauze en wat snacks (in totaal een uur)
- Stel om 8 uur 's ochtends een lijst op van zaken die je vandaag gaat leren. Neem daarna een uur de tijd om alles wat je gisteren hebt geleerd op te frissen en in de praktijk te brengen.
- Leer en oefen van 9 uur 's ochtends tot 12 uur 's middags in een rustig tempo. Verhoog het tempo na de lunch. Als je vastloopt op een probleem, zoek dan naar de oplossing online.
- Breng elke dag 4-5 uur door met leren en 2-3 uur met oefenen. (maximaal kun je jezelf ƩƩn vrije dag per week geven)
- Je vrienden zullen denken dat je gek bent. Teleurstel ze niet - houd je aan het imago.
Als je fulltime werkt of naar de universiteit gaat, heb je meer tijd nodig. Toen ik student was, had ik 8 maanden nodig om alles op de lijst te doen. Nu werk ik als senior ontwikkelaar. Mijn vrouw, die bij de centrale bank van de Verenigde Staten werkt, had 6 maanden nodig om alle taken op de lijst te voltooien. Het maakt niet uit hoeveel tijd het kost. Maak de lijst af.
Vierde week: neem het serieus om een baan (stage) te krijgen
Je doel voor de vierde week is serieus na te denken over het krijgen van een baan. Zelfs als je nu geen baan wilt, leer je veel tijdens het sollicitatieproces.
- Dag 1: CV (5 uur): Maak een eenpagina CV. Plaats bovenaan je CV een korte samenvatting van je vaardigheden. Vergeet niet je projecten met links naar Github op te nemen.
- Dag 2: Websiteportfolio (6 uur): Schrijf een paar blogs. Voeg deze toe aan het eerder gemaakte websiteportfolio.
- Dag 3: LinkedIn-profiel (4 uur): Maak een profiel aan op LinkedIn. Zet alles wat je in je CV hebt staan over naar LinkedIn.
- Dag 4: Voorbereiding op het sollicitatiegesprek (7 uur): Zoek naar de meest gestelde vragen tijdens sollicitatiegesprekken. Oefen met het oplossen van 10 programmeerproblemen die vaak in sollicitaties aan bod komen. Doe dit op papier. Je kunt interviewvragen vinden op sites zoals Glassdoor, Careercup.
- Dag 5: Netwerken (~ uren): Kom uit de kast. Begin met het bezoeken van meetups, banenbeurzen. Maak kennis met recruiters en andere ontwikkelaars.
- Dag 6: Reageer gewoon op vacatures (~ uren): Zoek op 'Python werk', kijk welke vacatures er zijn op LinkedIn en lokale vacaturesites. Kies 3 vacatures waar je op wilt solliciteren. Pas je cv aan voor elk van hen. Zoek 2-3 dingen in de vereisten die je niet weet. Besteed de komende 3-4 dagen aan het leren van deze zaken.
- Dag 7: Leer van afwijzingen (~ uren): Elke keer dat je een afwijzing ontvangt, identificeer 2 zaken die je moet weten om de baan te krijgen. Besteed vervolgens 4-5 dagen aan het verbeteren van je vaardigheden in deze onderwerpen. Zo word je na elke afwijzing een betere ontwikkelaar.
Klaar voor werk:
De waarheid is dat je nooit 100% klaar zult zijn voor werk. Alles wat je nodig hebt is om 1-2 dingen heel goed te leren. En om vertrouwd te raken met andere onderwerpen om de sollicitatiebarriĆØre te overwinnen. Zodra je een baan hebt, zul je er veel van leren.
Geniet van het proces:
Leren is een proces. Je zult ongetwijfeld moeilijkheden tegenkomen op je weg. Hoe meer je tegenkomt, des te beter word je als ontwikkelaar.
Als je de lijst in 28 dagen kunt afmaken, ben je geweldig. Maar zelfs als je 60-70% van de lijst voltooit, ontwikkel je de nodige kwaliteiten en vaardigheden. Deze zullen je helpen om een programmeur te worden.
Waar te leren:
Als je nog steeds niet weet waar te beginnen,
- (een boeiende Android-app voor het leren van Python)
- (gratis bronnen voor leren in de webversie)
- (kijk videoās en leer)
Ik wens je een boeiende reis. De toekomst ligt in jouw handen.
Vertaling: Diana Sheremyeva
Bron: habr.com
