Ukusuka kwiirobhothi ukuya kwiirobhothi kwaye iPython inento yokwenza nayo. Ibali leGeekBrains Alumni

Ukusuka kwiirobhothi ukuya kwiirobhothi kwaye iPython inento yokwenza nayo. Ibali leGeekBrains Alumni
Namhlanje sipapasha ibali lenguqu ka-Andrey Vukolov kwi-IT. Ukuthanda kwakhe indawo ebuntwaneni kwamkhokelela ekubeni afunde isayensi ye-rocket kwi-MSTU. Inyaniso ebuhlungu yandenza ndalibala ngephupha, kodwa yonke into yaba nomdla ngakumbi. Ukufunda iC ++ kunye nePython kundivumele ukuba ndenze umsebenzi onomdla ngokulinganayo: ukucwangcisa ingqiqo yeenkqubo zokulawula irobhothi.

Ukuqala

Ndibe nethamsanqa lokudlala ngesithuba bonke ubuntwana bam. Ke ngoko, ukuphuma kwesikolo, andizange ndithandabuze umzuzu wokuba ndifanele ukuya kufunda phi, ndaza ndangena kwiMSTU. Bauman, kwiSebe lobuNjineli beRocket Propulsion. Nangona kunjalo, isebe lekhosi ngokwayo - i-powder okanye i-injini ye-liquid ye-rockets-ayizange ikhethwe konke konke: kwi-2001, ikhomishini ekhethekileyo ye-faculty isasasaza amaqela ekujoliswe kuwo abafaki-zicelo. Ndibanjwe kwingxowa yerhuluwa.

Ngelo xesha, "i-rocket boom" yayikhona kuphela kwizicwangciso; Iinjineli zafumana imivuzo emincinci kwaye zasebenza kwiindawo ezikhethekileyo zoyilo ezivaliweyo kunye namaziko ophando angenawo amathemba omsebenzi kunye nokukhula kobuchwephesha. Nangona kunjalo, iirokethi zomgubo eRashiya ziimveliso zomkhosi kuphela.

Ngoku le ndawo ifunwa, kodwa ngexesha lezifundo zam ndiye ndafumanisa ukuba kwisayensi yerokethi nawuphi na umsebenzi owenziwe ngowakhe uyinto engenakwenzeka. Enyanisweni, le yinkonzo yasemkhosini. Ngokomzekelo, ukusebenza kwishishini le-rocket, ndiya kuvinjwa ngokupheleleyo ithuba lokuphuhlisa isofthiwe ngokuzimeleyo, nakum, kuba lo msebenzi ulawulwa ngokungqongqo.

Zonke iimveliso zesoftware ziphuhliswa ngokukodwa ngomyalelo okhethekileyo kunye nokuvunywa kwekhomishini yokufihlakala (ngoku icandelo leFSTEC). Umphuhlisi apho kufuneka abhalise kwaye anike ilayisenisi ngokoqobo yonke ikhowudi yekhowudi. Yonke isoftware iyimfihlo ekuqaleni kwinqanaba lomsebenzi. Oku kucacisa ngokuyinxenye ukuba kutheni isoftware ngoku esetyenziswayo ukuqeqesha abafundi besayensi yerokethi yaphuhliswa ngeminyaka yoo-90 ngoku.

Ngethuba ndiphumelele kwiziko, ndakwazi ukusebenza kwisebe lethiyori ye-mechanical kwaye ndaqala ukuphuhlisa inkqubo yemfundo simulator kwi-C ++, ngoko ke ndibe nomzekelo wokuthelekisa kwaye ndinokulinganisa i-pros and cons. Ukhetho lwalucacile, kwaye ngokuthe ngcembe ndaqala ukutyibilika ndaya kwi-IT kunye neerobhothi. Ubuchwephesha obusetyenzisiweyo babuyonwabisa ngakumbi kunesayensi yerokethi: iingxaki ezininzi ezingasonjululwanga, indawo evulekileyo, ukungabikho koshishino lophuhliso, imfuno engxamisekileyo yesoftware yokulinganisa. Kwi-robotics, kukho i-architecture engazinzanga ye-software eqhelekileyo kunye nesidingo sokuphindaphinda ukuphumeza i-algorithms enzima, kubandakanywa nengqondo engaqondakaliyo kunye nokuqala kwe-AI. Ke ngoko, emva kweenkqubo zam zokuqala zokusetyenzwa kwedatha yovavanyo, phantse andizange ndibuyele kwiirokethi (ngaphandle kweprojekthi yam yokuphumelela).

Ngenxa yoko, ndafumana ithuba lokusebenza kwi-specialty yam iinyanga ezine kuphela ngaphambi kokuba ndiphumelele kumzi-mveliso okufuphi neMoscow kwizakhiwo ezidibeneyo kwishishini le-aerospace. Emva kokugqiba izifundo zam, akuzange kufuneke ndifune umsebenziβ€”ngoko nangoko ndaya kufundisa ubuchwephesha kwisebe leerobhothi.

Ukusuka ekufundiseni ukuya kwiprogramu

Ukusuka kwiirobhothi ukuya kwiirobhothi kwaye iPython inento yokwenza nayo. Ibali leGeekBrains Alumni
KwiNkongolo yeHlabathi ye-IFTOMM kunye namalungu abafundi beqela lophando (mna ngasekunene)

Ndisebenze kwi-MSTU kwisebe lesampulu iminyaka eyi-10, ndifundisa ikhosi yethiyori yeendlela. Wapapasha imisebenzi yesayensi (jonga isiphelo senqaku), ngokuthe ngcembe wasuka kwi-mechanics ukuya kwi-CAD kunye neerobhothi. Kwaye ekugqibeleni wagqiba ekubeni ayeke ukufundisa. Ukubonisa ngokucacileyo izizathu zesi sigqibo, ndiya kuthi kwiminyaka elishumi ikhosi yokufunda endiyifundisileyo ayitshintshanga indawo enye. Nangona kusetyenziswe oomatshini, ngokujonga iimpapasho, baqhubela phambili kakhulu, ngempumelelo kakhulu.

Ukongezelela, umsebenzi ufana nomsebenzi we-bureaucratic - iingxelo, iinkqubo, imigangatho kunye neetoni zephepha. Kwiimeko ezilolo hlobo, ulonwabo lokufundisa lwathatyathelw’ indawo yingxelo ngokufumana olu lonwabo, yaye oku kungaphezu kokungathandekiyo kwingcali eqeqeshelwa umsebenzi.

Kwaye ekugqibeleni ndafika kwi-robotics efana nale: kwi-2007-2009, kunye noprofesa A. Golovin kunye no-N. Umnov, saqala ukulungiselela imisebenzi yokuqala yesayensi. Apho kuye kwafuneka ndisebenzise i-algorithms ukumisela iindlela zezinto ezivela kwi-strobe photography. Ukusuka kwesi sihloko inyathelo elinye ukuya kumbono womatshini, i-OpenCV kunye neRobotic Operating System (nangona ngelo xesha andizange ndicinge malunga nesikali esinjalo). Emva koko, ekugqibeleni ndagxila ekusebenziseni ubuchwephesha kunye nerobhothi kuphando, kwaye uphuhliso lwaba ngumsebenzi oxhasayo.

Nangona kunjalo, ukufumana umsebenzi omtsha kwiirobhothi, bekuyimfuneko ukuphucula kunye nokongeza ulwazi lwam lwenkqubo. Emva koko, andizange ndifunde i-IT ngokuthe ngqo, ngaphandle kwekhosi yeyunivesithi yonyaka (ObjectPascal kunye ne-Borland VCL kwi-C ++), kwaye ndithembele kwimathematika kwimiba yethiyori yophuhliso.

Ekuqaleni ndiye ndaqwalasela iinketho zezifundo zexesha elizeleyo kwiziko lam lokuzalwa. Enyanisweni, ngokukhawuleza kwacaca ukuba kuya kuba nzima ukudibanisa izifundo ezinjalo kunye nomsebenzi kwisebe ngenxa yeshedyuli engaqhelekanga kunye nomsebenzi oqhelekileyo ngaphandle kweshedyuli yomntu (ukutshintsha, njl.). Ke ndiye ndafikelela kumbono wokugqiba izifundo ezihlawulelwayo ndikude. Ndafika kwi-GeekBrains ngengcebiso yeeprofesa ezivela kwiziko loqeqesho lwe-Mail.ru Technopark, elise-Baumanka, kwaye ndabhalisa kwikhosi yePython Programmer.

Izifundo azizange zibangele nabuphi na ubunzima, ingxaki kuphela kukuba ndihlala ndidibanisa nomsebenzi kwisebe, imisebenzi yesayensi kunye neziganeko. Ixesha laliqinile kangangokuba uninzi lonxibelelwano lwentlalontle ngaphandle kwekhaya kwafuneka lubingelelwe (ngethamsanqa, okwethutyana).

Le yindlela endahlangabezana ngayo nomthwalo womsebenzi: Ndizisombulule iingxaki endleleni. Obu buchule, buphuhliswe ngohambo oluninzi lweshishini, luye lwaba luncedo kakhulu, kuba ngaphandle kwalo ngekhe ndikwazi ukuwugqiba wonke umsebenzi wam wesikolo (kwaye ikwathatha indawo yokucamngca ...). Ndifunde ukwenza ikhowudi ekuhambeni ndisebenzisa ilaptop yam, i-smartphone, kunye neekhibhodi ze-smartphone ezingenazingcingo.

Ilaptop yam yiDell Latitude 3470, kwaye nayiphi na i-smartphone enediagonal yee-intshi ezi-5.5 okanye ngaphezulu idityaniswe nekhibhodi ye-Logitech K 810 BT iya kwenza. Ngokubanzi, ndincoma iimveliso zeLogitech kuye wonke umntu; zithembeke kakhulu kwaye ziyakwazi ukumelana neemeko eziqatha zokusetyenziswa (kwaye oku akusontengiso).

Ukusuka kwiirobhothi ukuya kwiirobhothi kwaye iPython inento yokwenza nayo. Ibali leGeekBrains Alumni
Ikhibhodi yeLogitech K810

I-Python inceda kakhulu kumsebenzi onjalo - ukuba unomhleli olungileyo. Olunye uqheliso lwenkqubo: sebenzisa uqhagamshelo olukude kwidesktop okanye kwindawo yexesha lokusebenza. Ndigqibe imisebenzi emininzi ndisebenzisa iseva yewebhu ekhuselekileyo esebenzisa i-Django kwikhompyuter yam yasekhaya. Ndisebenze kuloliwe, ndisebenzisa isoftware yePyDroid, iDroidEdit, iMaxima.

Kutheni iPython?

Akuzange kube kudala ngaphambi kokuba ndizame ukusebenzisa i-PHP njengolwimi lokubhalwa kwenkqubo. Ndiqale ndafundela iPython ndedwa kwaye kancinci kancinci "ndizenzela". Ndigqibe ekubeni ndifunde nzulu emva kokuba ndifunde malunga nobukho bonxibelelwano olusebenzayo phakathi kwePython kunye neC ++ kwinqanaba lemodyuli - kubonakala kunomdla ukwabelana nge-algorithms kunye neenkqubo zokulungiselela idatha ngaphakathi kolwimi olufanayo.

Umzekelo olula: kukho inkqubo yokulawula i-drive enamandla engekho-standard, ephunyezwe kumatshini odibeneyo kunye ne-RISC processor, kwi-C ++. Ulawulo lwenzeka nge-API yangaphandle exhomekeke kumatshini, exhasa, umzekelo, unxibelelwano phakathi kwe-subsystems phezu kwenethiwekhi. Kwinqanaba eliphezulu, i-algorithm yokusebenza kwe-drive ayilungiswanga okanye ayitshintshi (kuyafuneka ukulayisha i-algorithms eyahlukeneyo ngokuxhomekeke kwinkqubo yomsebenzi).

Enye yeendlela ezilungileyo zokufezekisa inkqubo enjalo kukusebenzisa i-API ye-subsystem ye-C ++ yomatshini njengesiseko seseti yeeklasi zePython ezisebenza kwitoliki ye-cross-platform. Ke, umphuhlisi okwinqanaba eliphezulu akayi kuthathela ingqalelo iimpawu zomatshini odibeneyo kunye ne-OS yawo; uya kusebenza ngokulula kunye neeklasi zePython ezisebenza njenge "wrappers" yenqanaba elisezantsi le-API.

Kwafuneka ndifunde iC ++ kunye nePython ebopha phantse ukusuka ekuqaleni. Kwakhawuleza kwacaca ukuba izakhono ezijoliswe kwizinto ezikumgangatho ophezulu zazibaluleke kakhulu kunezinga eliphantsi. Ngenxa yoko, kwafuneka sitshintshe ngokupheleleyo indlela yokuyila nokuphumeza i-API, ukukhetha iiklasi kwinqanaba lePython kunye nokwabelana ngedatha yehlabathi kwiC / C ++. Ziqhelanise nokuveliswa kwekhowudi: umzekelo, isakhelo seROS ngokwaso sivelisa amagama kunye nezinto kwiPython, ngoko kufuneka uthathele ingqalelo ukungafani kolwimi, ngakumbi ekuchwethezeni, xa uyila ujongano lwakho.

Ukusebenza ngoku: I-Python kunye neRobhothi yoLawulo lweNgqiqo

Ngoku ndisebenza njengePython kunye neC ++ umdwelisi kwiRobhothi yoPhando kunye neZiko leMfundo kwiYunivesithi yaseMoscow State Technical. Sisebenzisa iiprojekthi zophando kunye nezixhobo zesoftware ezigunyaziswe ngamasebe karhulumente: siphuhlisa iimanipulators ezineenkqubo zombono zobugcisa ezakhelwe ngaphakathi kunye nenqanaba eliphezulu lealgorithms yolawulo oluzenzekelayo oluzimeleyo kwiinkqubo.

Okwangoku, ndicwangcisa inqanaba eliphezulu lokuqiqa kweenkqubo zokulawula irobhothi kwiPython; olu lwimi lunxibelelanisa kunye iimodyuli eziphuculwe kakhulu ezibhalwe kwiC ++, iassembler, kunye neGo.

Kwinkqubo yokulawula i-algorithms, amaqela amabini amakhulu e-algorithms asetyenziswa. Eyokuqala kubo iphunyezwa ngokuthe ngqo kwisixhobo, kwinqanaba eliphantsi - le yi-software eyakhelwe ngaphakathi yabalawuli be-drive, i-concentrators ye-concentrators yonxibelelwano, kunye ne-subsystems interaction interaction.

Ii-algorithms apha zenzelwe ukulawulwa kwesantya kunye nokuthembeka okudlula ukusebenza kwerobhothi iyonke. Okokugqibela kunyanzelekile, ekubeni ukhuseleko lwenkqubo yonke luxhomekeke kwisoftware yolawulo oluphantsi.

Iqela lesibini le-algorithms linquma ukusebenza kwerobhothi ngokubanzi. Ezi ziinkqubo ezikumgangatho ophezulu, ugxininiso ekuphuhlisweni kwalo kukucaca kunye nesantya sokuphunyezwa kwe-algorithm, ehlala inzima kakhulu. Ukongeza, isoftware ekwinqanaba eliphezulu kwirobhothi ihlala iphantsi kokutshintsha ngexesha lokuseta kunye nenkqubo yovavanyo. Kuphuhliso olunjalo, iilwimi ezitolikwe ngenjongo ngokubanzi ziyimfuneko.

Luluphi ulwazi olufunekayo kumsebenzi onjalo?

Kuya kuba yimfuneko ukufunda ulwimi lwetemplate yeC ++ kunye nobuchule obujoliswe kwinto yePython. Isakhono esiphantse singenakuphinda sithathelwe indawo kukukwazi ukuyila nokubhala ii-APIs. Iya kuba licebo elilungileyo ukuphonononga ubunakho bamathala eencwadi akhethekileyo njengeBoost::Python. Abo basebenza ngesoftware ephantsi ngokuqinisekileyo baya kujongana ne-multithreading (kwinqanaba le-kernel) kunye neefowuni ze-Linux / UNIX / QNX. Ukuphucula ukuqonda kwakho imigaqo yerobhothi, kuluncedo kakhulu ukuziqhelanisa nesakhelo seNkqubo yokuSebenza yeRobhothi.

Ndizama ukuba nolwimi olunye oluhlanganisiweyo nolutolikwayo lwenkqubo oluphuhlayo nolufunwayo. Esi sisicwangciso esiphumeleleyo sokusebenza kubunjineli, apho kukho imfuneko eqhubekayo yokuphuhlisa i-specialized (funda: engaqhelekanga) i-algorithms kwaye iphunyezwe ekuhlanganiseni iilwimi. Umsebenzi wokulungiselela idatha yesoftware enjalo kumnandi kakhulu ukusombulula usebenzisa iilwimi ezitolikiweyo. Ekuqaleni, isethi yam yayiquka i-C ++, i-Pascal kunye ne-BASIC, kamva i-PHP kunye ne-BASH zongezwa.

Indlela izixhobo zophuhliso ezinokuba luncedo ngayo ekufundiseni abafundi

Esona sicwangciso siphambili sophuhliso lobungcali ngoku kukuzama ukunika isiseko senzululwazi sokusetyenziswa kwezixhobo zophuhliso lwesoftware yobungcali kwezokufundisa, ukuphuhlisa nokuvavanya iindlela zokufundisa.

Ukusukela ngo-2016, ndiqale umfuniselo omkhulu wokwazisa izixhobo zophuhliso-iilwimi zokuprograma, ii-IDE, iijenereyitha zamaxwebhu, iinkqubo zolawulo loguqulelo - kwindlela yokufundisa kwimfundo ephakamileyo. Ngoku siphumelele ekufumaneni iziphumo ezinokuthi zenziwe ngokubanzi ngokomgangatho.

Ngokomzekelo, ukuqaliswa kokuguqulwa kwezinto kwinkqubo yemfundo kuphucula kakhulu umgangatho womsebenzi wabafundi, nangona kunjalo, kuphela phantsi komqathango onyanzelekileyo: abafundi abasebenza kunye kwiiprojekthi ekwabelwana ngazo. Ukuphuhliswa kweendlela zokufundisa iinkalo zobugcisa kusetyenziswa izixhobo zophuhliso lwesoftware yobungcali ngoku ngokukhutheleyo kuqhutywa liqela lam lophando, elibandakanya abafundi, abafaki-zicelo kunye nabafundi beenkqubo zemfundo eyongezelelweyo kwi-MSTU.

Phofu ke, andizange ndilushiye uqheliselo lwam lokufundisa-ndiye ndaphuhlisa eyam ikhosi epheleleyo yexesha elizeleyo kuyilo nolawulo lweLinux yeZiko leziFundo eziPhakamileyo eMSTU, kwaye ndiyazifundisa ngokwam.

Umsebenzi wesayensi

Imisebenzi yokuqala
Imiba yokucwangcisa ukuhamba xa kuyilwa iinkqubo zokuhamba ezinemilenze emine usebenzisa umzekelo wokuphunyezwa kokuhamba kwehashe (2010)

Kumba we-kinematics kunye nokulayishwa kwezinto ezixhasayo zomlenze wangaphambili wehashe kwinqanaba lokusondela kwinkxaso njengamacandelo omjikelo wokusebenza womshukumisi onemilenze emine. (2012)

Ukususela ekugqibeleni
Isicelo sokulinganisa izixhobo ze-3D zokwenziwa kwesixhobo sokufundisa kunye nethiyori yomatshini (2019)

Indlela yokuqaphela imiqobo yesakhiwo kunye nokusetyenziswa kwayo ekufuneni izinto zokunceda (2018)

Eminye imisebenzi eboniswe ngoovimba beenkcukacha zocaphulo lwenzululwazi inokubonwa kwiprofayile yam Uphando. Uninzi lwamanqaku lunikelwe ekuhambeni koomatshini, kukho imisebenzi yobunjineli bokufundisa kunye nesoftware yemfundo.

umthombo: www.habr.com

Yongeza izimvo