Python en monato

Gvidilo por absolutaj teaj komencantoj.
(Noto de la leno: ĉi tiuj estas konsiloj de hinda aŭtoro, sed ili ŝajnas esti praktikaj. Bonvolu aldoni en la komentoj.)

Python en monato

Monato estas longa tempo. Se vi pasigas 6-7 horojn studante ĉiutage, vi povas fari multon.

Celo por la monato:

  • Familiariĝu kun la bazaj konceptoj (variablo, kondiĉo, listo, buklo, funkcio)
  • Majstri pli ol 30 programajn problemojn praktike
  • Kunmeti du projektojn por efektivigi novajn sciojn
  • Familiariĝu kun almenaŭ du kadroj
  • Komencu kun IDE (evolua medio), Github, gastigado, servoj ktp.

Ĉi tio faros vin juna programisto de Python.

Nun la plano estas semajno post semajno.

Python en monato

La artikolo estis tradukita kun la subteno de EDISON Software, kiu donas praktikajn konsilojn al junulojKaj desegnas programaron kaj verkas teknikajn specifojn en la rusa kaj la angla.

Semajno XNUMX: Konu Python

Komprenu kiel ĉio funkcias en Python. Kontrolu kiel eble plej multajn aferojn.

  • Tago 1: 4 ĉefaj konceptoj (4 horoj): enigo, eligo, variablo, kondiĉoj
  • Tago 2: 4 ĉefaj konceptoj (5 horoj): listo, for buklo, while loop, funkcio, importado de modulo
  • Tago 3: Simplaj programaj problemoj (5 horoj): interŝanĝu du variablojn, konvertu celsiajn gradojn al Fahrenheit-gradoj, kalkulu la sumon de ĉiuj ciferoj en nombro, kontrolu nombron por ĉefeco, generi hazardan nombron, forigi duplikaton el listo
  • Tago 4: Moderaj programaj problemoj (6 horoj): inversigi ŝnuron (kontrolu palindromon), kalkuli la plej grandan komunan dividon, kombini du ordigitajn tabelojn, verki nombrodivenludon, kalkuli aĝon ktp.
  • Tago 5: Datumaj Strukturoj (6 horoj): stako, vosto, vortaro, opoj, ligita listo
  • Tago 6: OOP - Objekt-Orientita Programado (6 horoj): objekto, klaso, metodo kaj konstrukciisto, OOP-heredaĵo
  • Tago 7: Algoritmo (6 horoj): serĉo (linia kaj binara), ordigo (vezika metodo, elekto), rekursiva funkcio (faktora, serio de Fibonacci), tempokomplekseco de algoritmoj (linia, kvadrata, konstanta)

Ne instalu Python:

Mi scias, ke ĉi tio sonas kontraŭdira. Sed fidu min. Mi konas multajn homojn, kiuj perdis ĉian deziron lerni ion ajn post kiam ili ne povis instali evoluan medion aŭ programaron. Mi konsilas vin tuj eniri Android-aplikaĵon kiel Programanta Heroo aŭ al la retejo Repl kaj komencu esplori la lingvon. Ne zorgu unue instali Python krom se vi estas precipe teknika.

Semajno XNUMX: Komencu Programaron (Konstruu Projekton)

Akiru sperton pri programaro. Provu uzi ĉion, kion vi lernis, por krei veran projekton.

  • Tago 1: Familiariĝu kun la evolumedio (5 horoj): La evolumedio estas interaga medio kie vi skribos kodon por la plej grandaj projektoj. Vi devas koni almenaŭ unu evolumedion. Mi rekomendas komenci per VS-kodo instalu Python-etendon aŭ Jupyter kajero
  • Tago 2: Github (6 horoj): Esplori GitHub, kreu deponejon. Provu fari, puŝi la kodon kaj kalkuli la diferencon inter iuj du Git-arboj. Ankaŭ komprenu disbranĉigi, kunfandiĝi kaj tiri petojn.
  • Tago 3: Unua Projekto: Simpla Kalkulilo (4 horoj): Rigardu Tkinter. Kreu simplan kalkulilon.
  • Tago 4, 5, 6: Persona Projekto (5 horoj ĉiutage): Elektu unu el la projektoj kaj eklaboru pri ĝi. Se vi ne havas ideojn por projekto, kontrolu ĉi tiun liston: pluraj bonaj Python-projektoj
  • Tago 7: Gastigado (5 horoj): Komprenu la servilon kaj gastigadon tiel ke gastigu vian projekton. Agordu Heroku kaj deploji vian aplikaĵon.

Kial la projekto:

Nur blinde sekvi la paŝojn en leciono aŭ video ne disvolvos viajn pensajn kapablojn. Vi devas apliki viajn sciojn al la projekto. Post kiam vi elspezis vian tutan energion serĉante la respondon, vi memoros ĝin.

Semajno tri: komfortiĝu kiel programisto

Via celo en la 3-a semajno estas akiri ĝeneralan komprenon pri la programaro-procezo. Vi ne bezonos plibonigi viajn kapablojn. Sed vi devus scii kelkajn bazaĵojn, ĉar ili influos vian ĉiutagan laboron.

  • Tago 1: Bazaj Bazoj (6 horoj): Baza SQL-Demando (Krei Tabelo, Elektu, Kie, Ĝisdatigi), SQL-Funkcio (Memo, Maksimumo, Kalkulo), Rilata Datumbazo (Normaligo), Interna Kuniĝo, Ekstera Kuniĝo, ktp.
  • Tago 2: Uzu datumbazojn en Python (5 horoj): Uzu datumbazan kadron (SQLite aŭ Pandas), konektu al la datumbazo, kreu kaj aldonu datumojn al pluraj tabeloj, legu datumojn de tabeloj
  • Tago 3: API (5 horoj): Lernu voki APIojn, lernu JSON, mikroservojn, REST API
  • Tago 4: Numpy (4 horoj): Rigardu Numpy kaj praktiku uzi ĝin unuaj 30 ekzercoj
  • Tago 5, 6: Reteja Portfolio (5 horoj ĉiutage): Lernu Djangon, krei biletujon retejo uzante Django, ankaŭ rigardu la kadron Flask
  • Tago 7: Unuaj provoj, protokoloj, senararigado (4 horoj): Komprenu unutestojn (PyTest), lernu kiel labori kun protokoloj kaj kontroli ilin, kaj uzi rompopunktojn

Reala Tempo (Sekreto):

Se vi estas pasia pri ĉi tiu temo kaj dediĉas vin mem al ĝi, vi povas fari ĉion en unu monato.

  • Lernu Python konstante. Komencu je la 8-a kaj faru ĝin ĝis la 5-a. Prenu paŭzon por tagmanĝo kaj manĝetoj (horo entute)
  • Je la 8-a matene, faru liston de la aferoj, kiujn vi studos hodiaŭ. Poste, prenu horon por memori kaj praktiki ĉion, kion vi lernis hieraŭ.
  • De la 9-a ĝis la 12-a tagmezo, studu kaj praktiku malpli. Post tagmanĝo, akiru la ritmon. Se vi estas blokita pri problemo, serĉu solvon interrete.
  • Ĉiutage, pasigu 4-5 horojn studante kaj 2-3 horojn praktikante. (vi povas preni maksimume unu tagon liberan semajne)
  • Viaj amikoj pensos, ke vi estas freneza. Ne seniluziigu ilin - vivu laŭ la bildo.

Se vi laboras plentempe aŭ studas en universitato, vi bezonos pli da tempo. Kiel studento, mi prenis 8 monatojn por fari ĉion en la listo. Nun mi laboras kiel altranga programisto (senior). Mia edzino, kiu laboras ĉe la usona centra banko, bezonis ses monatojn por plenumi ĉiujn taskojn en la listo. Ne gravas kiom longe ĝi daŭras. Kompletigu la liston.

Kvar Semajno: Graviĝu Pri Akiro de Laborposteno (Internaĝanto)

Via celo en la kvara semajno estas serioze pensi pri akiri laboron. Eĉ se vi ne volas la laboron nun, vi lernos multon dum la intervjua procezo.

  • Tago 1: Resumo (5 horoj): Kreu unu-paĝan resumon. Ĉe la supro de via vivresumo, inkluzivu resumon de viaj kapabloj. Nepre aldonu liston de viaj projektoj kun ligiloj al Github.
  • Tago 2: Reteja Portfolio (6 horoj): Skribu kelkajn blogojn. Aldonu ilin al la antaŭa retpaĝaro, kiun vi faris.
  • Tago 3: LinkedIn Profilo (4 horoj): Kreu profilon de LinkedIn. Alportu ĉion en via vivresumo al LinkedIn.
  • Tago 4: Preparado por la intervjuo (7 horoj): Guglo la plej oftaj intervjuaj demandoj. Praktiku solvi 10 programajn problemojn pri demanditaj en intervjuoj. Faru ĝin sur papero. Intervjuaj demandoj troveblas en retejoj kiel Glassdoor, Careercup
  • Tago 5: Reto (~ horoj): Eliru el la ŝranko. Komencu iri al renkontiĝoj kaj laborfoiroj. Renkontu rekrutintojn kaj aliajn programistojn.
  • Tago 6: Simple petu por laboroj (~horoj): Guglo "Python-laborpostenoj" kaj vidu kiajn laborlokojn disponeblas en LinkedIn kaj lokaj laborlokoj. Elektu 3 laborpostenojn al kiuj vi kandidatiĝos. Adaptu vian vivresumon al ĉiu. Trovu 2-3 aferojn en la postlistoj, kiujn vi ne konas. Pasigu la sekvajn 3-4 tagojn por ordigi ilin.
  • Tago 7: Lernu pri malsukceso (~horoj): Ĉiufoje kiam vi estas malakceptita, identigu 2 aferojn, kiujn vi bezonas scii por akiri la laboron. Poste pasigu 4-5 tagojn perfektigi viajn kapablojn en ĉi tiuj areoj. Tiel, post ĉiu malakcepto, vi fariĝos pli bona programisto.

Preta por labori:

La vero estas, ke vi neniam estos 100% preta por laboro. Vi nur bezonas lerni 1-2 aferojn tre bone. Kaj familiariĝu kun aliaj demandoj por venki la intervjuan baron. Post kiam vi ricevos laboron, vi lernos multon de ĝi.

Ĝuu la procezon:

Lernado estas procezo. Certe estos malfacilaĵoj laŭ via vojo. Ju pli da ili, des pli bona vi estas kiel programisto.

Se vi povas fini la liston en 28 tagoj, vi fartas bonege. Sed eĉ se vi kompletigas 60-70% de la listo, vi disvolvos la necesajn kvalitojn kaj kapablojn. Ili helpos vin fariĝi programisto.

Kie studi:

Se vi ankoraŭ ne scias kie komenci,

Mi deziras al vi ekscitan vojaĝon. La estonteco estas en viaj manoj.

Traduko: Diana Ŝeremieva

fonto: www.habr.com

Aldoni komenton