Python rau lub vev xaib: dab tsi tus menyuam yaus yuav tsum paub ua haujlwm thiab txhim kho

Peb tau ua cov ntawv luv luv nrog cov kev xav tseem ceeb los ntawm Python Junior Podcast: hauv nws peb tau tham txog qhov twg yuav pib thiab qhov twg yuav mus ua tus pib tsim Python. Tsis ntev los no peb muaj ntau cov ntsiab lus rau nruab nrab thiab cov neeg laus, tab sis qhov ntu no yog qhov tseeb rau cov menyuam yaus.

Python rau lub vev xaib: dab tsi tus menyuam yaus yuav tsum paub ua haujlwm thiab txhim kho

Cov ntsiab lus tseem ceeb:

  • Qhov kev paub dab tsi li novice programmer yuav tsum tau xyaum
    txhim kho lub vev xaib?
  • Cov tswv ntiav xav tau dab tsi los ntawm cov neeg tsim khoom?
  • Yuav ua li cas thiaj nrhiav tau txoj haujlwm tsis muaj kev paub?
  • Yuav ua li cas Python developer tsim?

Python Junior Podcast yog qhov programming podcast rau cov neeg uas xav nkag siab zoo dua Python. Kev tshaj tawm xov xwm yog ua los ntawm cov neeg tshaj xov xwm hauv zej zog Moscow Python thiab cov xibfwb qhia ntawv Kawm Python.

Cov neeg koom nrog hauv kev sib tham:

  • Valentin Dombrovskyco-founder ntawm MoscowPython
  • Zlata Obukhovskaya NVIDIA pab pawg thawj coj
  • Grigory Petrov, evangelist MoscowPython
  • Alexey Shtyrnyaev tus tsim tawm ntawm FinEx, tus kws qhia ntawm Learn cov chav kawm
    Nab hab sej

Vim li cas Python zoo rau kev txhim kho lub vev xaib

Valentin Dombrovsky: XNUMX Lab tus kiv cua tos koj rau Webtalk! Vim li cas Python tsim nyog rau kev txhim kho lub vev xaib? Vim li cas ho tsis PHP lossis JavaScript, piv txwv li?

Grigory Petrov: Yog li tsis muaj kev xaiv ntau. Txawm hais tias muaj tseeb tias nyob rau hauv lub vev xaib niaj hnub no koj tuaj yeem tsim ib daim ntawv thov nplooj ntawv lossis cov ntawv thov hauv lub vev xaib uas tsis muaj qhov rov qab - tsuas yog siv cov thev naus laus zis hauv ntej, siv JavaScript - nws tseem nyuaj heev, tsis zoo indexed thiab xav tau cov neeg tsim khoom txias.

Yog tias peb xav ua lub vev xaib lossis kev pabcuam, peb siv txoj hauv kev ua ke: peb muaj qee qhov backend uas siv cov logic thiab tsim cov nplooj ntawv web, thiab qee qhov frontend uas rub cov nplooj ntawv web hauv browser. Thiab thaum peb xav tau sai sai muab tag nrho ua ke ntawm ib yam dab tsi, peb yeej tsis muaj kev xaiv.

Cia peb saib cov kev xaiv ua tau.

  • C#. Microsoft yog qhov zoo heev, lawv tsim .NET Core thiab txhawb nqa nws hauv txhua txoj hauv kev. Tab sis, ua ntej, qhov no yog kev siv tshuab ntoo khaub lig-platform tshiab, thiab tsis yog txhua yam zoo nyob rau ntawd. Qhov thib ob, nws kim heev, muaj ob peb tus tsim tawm C # - tsuas yog vim nws tsis nrov.
  • Java Nws nyuaj. Ua lub vev xaib ib txwm nyob hauv Java tsis siv 10 kab ntawm cov lej, zoo li hauv Python. Qhov no yog ntau txoj cai, cov no yog lub moj khaum, thiab koj yuav tsum paub qhov tshwj xeeb ntawm kev teeb tsa Java servers. Feem ntau, tsis tu ncua mob thiab kev txom nyem.
  • PHP. Nyob rau hauv qhov tseeb versions nws yog zoo kawg nkaus. Kuv tseem yuav hais qhov no: PHP 7.2 tsis phem dua li Python. Tab sis koj tsis tuaj yeem khaws thiab siv PHP 7.2. Yog hais tias ib qho zoo tib yam, tsis yog tus tsim tawm sab saum toj ua lub vev xaib hauv PHP, nws yuav tsis sau tsuas yog hauv 7.2: nws tseem yuav tau nyeem qee phau ntawv, kev qhia, muaj ntau txoj cai qub txeeg qub teg nyob txhua qhov chaw, thiab qhov no tsis zoo heev.
  • JavaScript thiab Node.js. Nws yog qhov zoo thiab niaj hnub heev thaum muaj ib hom lus ntawm ob sab pem hauv ntej thiab sab nraub qaum. Tsuas yog tsis ruaj khov heev. Node.js yog ib qho zoo, tab sis nws muaj teeb meem rau kev xa tawm hauv kev tsim khoom kom nws tsis sib tsoo thiab ua haujlwm ruaj khov. Ntxiv rau, yog tias peb xav sau cov lej JavaScript zoo, peb tsis xav tau JavaScript, tab sis TypeScript. Tab sis TypeScript tsis xav txog qhov nyuaj, thiab qhov nruab nrab tus tsim tawm lub hlwb npau taws thaum lawv pom nws.

Cia peb tawm ntawm Ruby, Haskell, Erlang thiab lwm yam khoom siv niche, thiab peb sab laug nrog ... Python. Ib hom lus nrog cov syntax zoo ib yam, ib lub tsev qiv ntawv zoo ib yam, cov ntaub ntawv zoo tshaj plaws, lub teeb pom kev zoo nrov, thiab cov mega-nrov Django ua ke.

Nws hloov tawm tias, txawm tias qhov kev xaiv dav tshaj plaws, yog tias peb muaj cov neeg tsim khoom zoo tib yam, tsis yog cov neeg tsim khoom sab saum toj, peb yog cov lag luam zoo tib yam uas xav ua cov vev xaib zoo tib yam, peb tsis muaj kev txhim kho rau 50 tus neeg, ces peb coj Python.

Yuav tsum muaj kev paub dab tsi los nkag rau hauv txoj haujlwm?

Zlata Obukhovskaya: Kuv ntseeg tias koj yuav tsum paub ib lub moj khaum zoo - thiab paub tias lwm tus muaj dab tsi thiab thaum lawv siv. Tornado nyob qhov twg, qhov twg yog Django, qhov twg yog Flask, qhov twg yog aiohttp thiab hais txog.
Nws yuav pab tau kom paub tias muaj xws li ib yam li raws tu qauv. Tshwj xeeb, kev paub txog http raws tu qauv yog lub hauv paus rau kev tsim web applications.

Koj kuj yuav tsum muaj tsawg kawg yog nkag siab tias qhov kawg ua haujlwm li cas hauv cov haujlwm hauv web: HTML, CSS, JS yog dab tsi.

Alexey Shtyrnyaev: Thiab paub tias cov ntaub ntawv nyob qhov twg. Nws yog qhov tseem ceeb tshaj plaws.

Grigory Petrov: Ntawm no peb tab tom taug kev hauv av tshee hnyo. Yog tias peb tsis muaj hmoo thiab peb pib kawm txog qhov niaj hnub frontend, ces nws yuav yog 10 npaug ntau dua li qhov backend hauv Python. Ib tug tshiab tsim tawm yuav tsum txwv nws lub hom phiaj kom nws thiaj li pib kawm HTML, tab sis tsis txhob poob rau hauv tag nrho cov divs, spans, floats, yuav ua li cas txhua yam zoo sib xws thiab lined.

Alexey Shtyrnyaev: Xav tau ib chav kawm Bootstrap yooj yim. Thiab lub hauv paus ntawm HTML.

Thawj xyoo, koj yuav tsum tsis txhob delve rau hauv JS lub moj khaum (yog tias koj tab tom tsom mus rau qhov backend). Cov chav kawm Bootstrap yooj yim twb tau npaj ua qauv: yog tias koj xav tau ib lub slider, ua ib lub slider; yog tias koj xav tau cov ntawv qhia ntab, ua cov ntawv qhia ntab.

Zlata Obukhovskaya: Kuv xav tias thaum kawm cov frontend, koj tuaj yeem raus koj tus kheej, tshwj xeeb, nyob rau hauv yuav ua li cas statics feem ntau muab rau web applications. Txoj kev no, tus tsim tawm smoothly txav mus rau qhov pib kawm txog kev tsim qauv ntawm cov ntawv thov web ua haujlwm li cas thiab lawv nyob li cas hauv kev tsim khoom.

Grigory Petrov: Yog lawm, Kuv yuav pom zoo tam sim ntawd yog tias koj xaiv Python ua cov lus tsim kho backend thiab, piv txwv li, Django ua lub hauv paus: Django muaj cov ntaub ntawv hauv Django Phau ntawv, nws zoo heev, nws muaj txhua yam uas Zlata tau hais, nws tiag tiag. zoo rau ib tug pib.

Alexey Shtyrnyaev: Qee cov Ntxhais Django kuj tsim nyog rau kev pib sai yog tias koj lub hom phiaj yog kawm Django. Qhov no yog ib qho kev qhia uas nyob rau hauv ib hnub koj tuaj yeem hla mus rau sab saum toj, nkag siab txog cov hauv paus ntsiab lus thiab dab tsi lub moj khaum muaj peev xwm.

Valentin Dombrovsky: XNUMX Lab tus kiv cua tos koj rau Webtalk! Hauv kev npaj rau kev sau cov podcast, peb tau sau cov npe ntawm qhov Python programmer xav tau rau kev txhim kho lub vev xaib, uas qhia txog qhov peb tau hais ua ntej.

Dab tsi suav nrog hauv cov hauv paus rau kev txhim kho lub vev xaib hauv Python

  • Web moj khaum Django, Flask, aiohttp, Tornado, thiab lwm yam (thiab paub txog kev muaj nyob ntawm lwm tus).
  • Cov kev cai thiab APIs: feem ntau http, JSON-RPC, raws tu qauv Buffers, gRPC.
  • ORM thiab migrations, relational databases, SQLAlchemy, SQL, PostgreSQL, MySQL.
  • Lub hauv paus ntawm HTML, CSS, Bootstrap, nrog rau JS moj khaum thiab JQuery.
  • Cov ntsiab cai ntawm daim ntawv thov kev lag luam hauv kev tsim khoom, kev sim, kev xeem chav tsev, autotests, version tswj systems, git.

Cov juniors puas xav tau algorithms?

Zlata Obukhovskaya: Thaum xub thawj, koj tsis tas yuav paub cov algorithms; lawv yuav maj mam tshwm sim hauv koj lub taub hau yog tias koj koom nrog kev txhim kho ntev txaus. Kuv paub ib tuj ntawm cov engineers zoo uas tsis tau muaj kev kawm zoo algorithms.

Grigory Petrov: Kuv xav ntxiv roj rau hluav taws. Peb qhov kev ntshaw rau algorithms tuaj qhov twg?

Peb tam sim no tsis muaj kev kawm hauv algorithms, peb tsis paub yuav ua li cas cob qhia programmers, peb tsis muaj lub hauv paus technical.

Lawv tab tom sim ua qhov no, tab sis ntawm no peb muaj zaj dab neeg ntawm Hogwarts: peb tsis tuaj yeem tsim lub tsev kawm ntawv rau wizards thaum peb tsis muaj ib tus wizard. Yog li ntawd, lub tsev kawm ntawv yuav tsum ua li cas thaum lawv tuaj rau lawv thiab nug: "Pib kev cob qhia programmers," tab sis lawv tsis muaj programmers, vim txhua tus ua haujlwm ntawm Mail.ru, Rambler thiab Yandex, lawv puas zoo siab nyob ntawd?

Lub tsev kawm ntawv saib thiab hais tias:
- Okay, programming. Cia peb nrhiav qee qhov kev paub txog kev paub thiab caw cov kws tshaj lij los ntawm qhov ntawd. Cia peb caw cov neeg sau xov xwm uas tuaj yeem sau daim ntawv theej, cov kws tshaj lij hluav taws xob uas tuaj yeem ua hluav taws xob hluav taws xob, thiab cov lej lej uas tuaj yeem siv algorithms.

Thaum kawg, nws hloov tawm tias qhov no yog qhov ua tau zoo raws li kev qhia ib tus neeg tsim khoom particle physics vim tias cib thiab cement yog ua los ntawm cov khoom siv hauv tsev.

Nyob rau tib lub sijhawm, lawv tsis tham txog cov cement thiab cib lawv tus kheej, vim hais tias tus kws kho mob uas tab tom sim cob qhia tus neeg tsim khoom tsis paub yuav ua li cas tsim tsev. Raws li qhov tshwm sim, peb tau txais ib tus neeg tsim khoom uas muaj peev xwm piav qhia tau zoo li cas "cement ua haujlwm", tab sis tsis tau pom nws thiab tsis paub yuav ua li cas los ntawm nws.

Algorithms thiab cov qauv ntaub ntawv yog qhov zoo heev, tab sis qhov no yog qhov chaw me me heev. Lawv yuav tsum tau ceev ceev, piv txwv li, yog tias koj tab tom sau lub cav ua si, compiler, lossis network raws tu qauv.

Feem ntau cov programmers daws teeb meem kev lag luam qhov twg algorithms thiab cov qauv ntaub ntawv tsis xav tau.

Qhov kev ua lej nyuaj tshaj plaws yog ntxiv ob zaug thiab muab faib. Nws yuav tsum muaj kev paub sib txawv kiag li. Kev daws teeb meem kev lag luam yuav tsum tau siv feem ntau es tsis yog kev paub hauv paus.

Nws yog qhov zoo dua rau cov neeg tsim khoom tshiab kom muaj kev nkag siab txog kev lag luam thiab yuav ua li cas kom raug thiab ceev nrooj sib sau ua ke tsim nyog los ntawm cov blocks npaj tau, yuav ua li cas debug lawv, yuav ua li cas kom paub tseeb tias lawv tsis poob, paub vim li cas lawv poob, Yuav ua li cas tshwm sim thaum yuav tsum tau hloov thiab qhov kev pab cuam pib "tso rau hauv lub hauv paus" zoo li lub tsev tom qab los nag.
Cov no yog cov tswv yim thiab kev nkag siab txog kev sau software. Nws yuav tsum paub tias ntxiv rau qhov debugger, nws muaj cov cuab yeej siv uas yuav qhia meej tias qhov kev pab cuam qeeb qeeb.

Valentin Dombrovsky: XNUMX Lab tus kiv cua tos koj rau Webtalk! Qhov kev sib piv no tuaj rau kuv lub siab: qhov no yog kev txhais lus los ntawm cov lus ntawm kev lag luam mus rau ib hom lus uas koj tuaj yeem sib txuas lus nrog lub computer. Ntawd yog, programmer yog hom lus tshwj xeeb.

Grigory Petrov: Kev lag luam xav tau ib tus kws sau ntawv, tsis yog tus kws qhia lus. Tus kws sau ntawv tsis tas yuav paub yog vim li cas ib txhiab xyoo dhau los lo lus no tau hloov mus rau qhov no. Nws yuav tsum muaj peev xwm siv tau cov lus no.

Yam koj xav tau los nrhiav koj thawj txoj haujlwm ua tus tsim tawm

Alexey Shtyrnyaev: Tej zaum tsis muaj daim ntawv qhia universal rau yuav ua li cas ua noj junior.

Yog tias koj tuaj rau qee lub tuam txhab, lawv yuav ntiav koj tsis yog vim koj paub Django, JSON thiab ob peb algorithms. Koj feem ntau yuav raug ntiav rau cov txuj ci uas lub tuam txhab xav tau ntawm no thiab tam sim no.

Muaj ntau lub tuam txhab, thiab lawv txhua tus muaj cov kev cai sib txawv. Tsis muaj ntau qhov kev paub thoob ntiaj teb uas yuav tsum tau txais txhawm rau txhawm rau npaj daim ntawv rov pib dua thiab mus nrhiav haujlwm.

Grigory Petrov: Thaum peb ntawm VoxImplant tab tom nrhiav rau ntau tus kws tshaj lij, peb tus thawj coj ua haujlwm tau tsim cov ntsiab lus hauv qab no: tus neeg yuav tsum muaj peev xwm daws tau cov teeb meem. Nws yog tseeb hais tias ib tug junior yuav tsis ib txwm ua qhov no zoo, tsis yog nyob rau hauv qhov zoo tshaj plaws txoj kev thiab tsis yog ib txwm raug, tab sis lub hom phiaj koj muab ib tug neeg ua hauj lwm, nws strains thiab daws nws. Qhov no yog cov txuj ci uas cov tswv haujlwm feem ntau tab tom nrhiav.

Zlata Obukhovskaya: Cov neeg uas tab tom nrhiav kev ua haujlwm los ntawm lwm qhov chaw muaj qee qhov zoo dua los ntawm kev ua lag luam vim lawv tau dhau mus rau qee txoj kev thiab tuaj yeem daws teeb meem sai. Cov no yog cov txuj ci mos, kuv tseem yuav hu nws ua haujlwm kab lis kev cai. Feem ntau, cov kawm tiav tsev kawm ntawv tseem tsis tau tsim cov kab lis kev cai ua haujlwm no.

Tab sis kuv tseem xav sim muab qee yam ntawm daim ntawv qhia rau cov pib tshiab.

Thawj kauj ruam rau tus tsim tawm tshiab

Zlata Obukhovskaya: Thawj qhov yog tias qhov no tseem yog qee qhov project ntawm koj tus kheej, vim tias koj yuav tsum tau sau ib yam dab tsi hauv koj qhov kev xav tau thiab qhia cov ntaub ntawv tsawg kawg nkaus. Nws yog qhov txias dua thaum cov haujlwm no tsis yog ua rau koj tus kheej, tab sis raws li kev ua haujlwm ywj pheej - rau ib tus neeg.

Tom qab thawj cov haujlwm, koj tuaj yeem ua daim ntawv rov pib dua thiab xa mus rau txhua lub tuam txhab uas muaj lub Rau Hli txoj haujlwm. Kev xam phaj yuav muab kev nkag siab txog yam tuam txhab lag luam xav tau. Tsis ntev los sis tom qab ib tug neeg yuav ntiav koj, tsawg kawg hauv ib lub tuam txhab me. Tom qab ntawd, qhov kev paub ua haujlwm no yuav muab sijhawm rau koj kom nkag mus rau hauv lub tuam txhab loj thiab nthuav ntau dua.

Valentin Dombrovsky: XNUMX Lab tus kiv cua tos koj rau Webtalk! Los ntawm txoj kev, hauv peb cov chav kawm peb npaj cov tub ntxhais kawm kom muaj lawv tus kheej qhov project hauv 10 lub lis piam ntawm kev cob qhia. Ntxiv rau peb cob qhia pab pawg txhim kho txuj ci. Cov no yog cov kev txawj ntse uas Zlata tau hais txog.

Alexey Shtyrnyaev: Kuv tuaj yeem qhia koj los ntawm kev paub tias nws tuaj yeem siv sijhawm ntev heev los nrhiav koj thawj txoj haujlwm. Thaum koj tab tom nrhiav rau ib hlis lossis ob, qhov ntawd yog qhov qub. Yog tias koj xa koj daim ntawv rov qab mus rau txhua lub tuam txhab, mus rau kev xam phaj, hauv peb lub hlis koj yuav pom qee yam.

Valentin Dombrovsky: XNUMX Lab tus kiv cua tos koj rau Webtalk! Koj tuaj yeem txiav koj tus kheej cov haujlwm lossis ua haujlwm ywj pheej yooj yim thiab tib lub sijhawm xa tawm koj daim ntawv qhia ua haujlwm.

Puas muaj kev cia siab li cas Python developer muaj?

Zlata Obukhovskaya: Tus tsim tawm Python tuaj yeem mus nyob qhov twg. Koj tuaj yeem nkag mus rau hauv kev sim thiab txuas ntxiv txhim kho mus rau tus kws kos duab laus. Los yog txawm nyob rau hauv kev tswj. Muaj ntau hom kev tswj hwm kev ua haujlwm, thiab koj tuaj yeem loj hlob mus rau kev tswj hwm sab saum toj. Koj tuaj yeem txhim kho hauv cov ntaub ntawv tshawb fawb, DevOps, nkag mus rau hauv kev xeem tsis siv neeg lossis kev kawm tshuab.

Valentin Dombrovsky: XNUMX Lab tus kiv cua tos koj rau Webtalk! Feem ntau, muaj ntau txoj kev xaiv thiab lub cib fim, nrog rau peb cov chav kawm. Koj tsis xav tau kev paub ntau ntawm qhov nkag, tab sis nws yog ib qho tsim nyog los npog ntau qhov dav, vim tias qhov ntau koj tuaj yeem ua tau, qhov zoo dua rau koj.

***

Qhov no tsuas yog ib feem ntawm kev tso tawm Python Junior. Daim ntawv qhia tag nrho ntawm ntu yog muaj mloog.

Los yog saib:

Ua si video

Podcast RSS

Ua tsaug rau kev nyeem, mloog lossis saib.

Tau qhov twg los: www.hab.com

Ntxiv ib saib