JavaRush /Java Blog /Random-TL /Coffee break #49. Mga halimbawa ng code na dapat makita n...

Coffee break #49. Mga halimbawa ng code na dapat makita ng bawat developer. Paano maghanda para sa isang pakikipanayam

Nai-publish sa grupo

Mga halimbawa ng code na dapat makita ng bawat developer

Source: Medium Minsan sa aking libreng oras gumagala ako sa mga repositoryo ng GitHub. Kapag nagsimula akong mag-aral ng mga bagong programa, tool o utility, sinusubukan kong makita ang mga ito sa pagkilos. Upang gawin ito, tinitingnan ko ang kanilang code: nakakatulong ito upang maunawaan kung paano gumagana ang lahat, kung anong mga module at panlabas na dependency ang naroroon. Ang paglulubog sa loob ng teknolohiya ay nagbibigay ng hindi kapani-paniwalang mga sensasyon at nagbibigay-daan sa iyong makakuha ng bagong kaalaman. Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang panayam - 1Sa aking artikulo, nais kong ibahagi ang mga pinakakahanga-hangang mga halimbawa ng code na nadatnan ko habang gumagala sa mga repositoryo.

Apollo 11 control program

Ang Apollo 11 ay ang spacecraft na nagdala ng mga tao sa buwan. Kinokontrol ng on-board control computer (AGC) ang operasyon ng paglipad gamit lamang ang 4 na kilobytes ng pisikal na memorya. Ang software ng AGC, na nakasulat sa wika ng pagpupulong, ay naka-imbak sa isang espesyal na memorya ng read-only (memorya ng lubid). Ilang taon na ang nakalilipas, ang mga na-scan na kopya ng papel ng source code na ito ay nai-post sa Internet . Pagkatapos ay may nagsulat ng ilang module sa mga text file at nag-upload ng mga ito sa GitHub repository . Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang panayam - 2Nagsumikap ang Apollo 11 engineering team para makamit ang kamangha-manghang resultang ito. Sumulat sila ng maraming linya ng code sa assembly language, kahit na mas mahirap ang programming noong 1960s kaysa ngayon. Sa oras na iyon, ang mga programming language ay may mas mababang antas ng abstraction. Bilang karagdagan, dahil sa mababang lakas ng hardware, kinailangan ng mga developer na magsulat ng mataas na na-optimize na code.

Lindol III Arena

Ang Quake III Arena ay isang first-person shooter na video game na nilikha ng id Software. Lumitaw ang laro noong 1990s, noong nagsisimula pa lang ang industriya ng 3D gaming. Ginamit ang game engine id Tech 3 para sa pagbuo nito. Tulad ng kaso ng Apollo 11 lunar program, dahil sa mga limitasyon sa mga mapagkukunan ng hardware, ang code para sa pag-render ng mga graphics ay lubos na na-optimize. Maraming mga kalkulasyon sa programming ng laro ang nangangailangan ng konsepto ng vector normalization, na nangangailangan ng pagkalkula ng inverse square root. Dahil kailangan ng mga developer na pumili ng pinakamahuhusay na algorithm para sa mga computer graphics, gumawa ang Quake III Arena ng matalinong diskarte upang mabilis na kalkulahin ang inverse square root gamit ang mga kalkulasyon sa antas ng bit. Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang pakikipanayam - 3Ang antas ng pag-optimize sa ilan sa mga code na nakikita mo, at sa katunayan sa lahat ng code na ginamit upang lumikha ng mga laro noong 1990s, ay sadyang kamangha-mangha. Sa ngayon, ang mga developer ng video game ay karaniwang hindi gumagawa ng computation sa antas na ito dahil maraming mga function ang ginagawa sa level ng game engine.

Koleksyon ng GNU Compiler

Ang C programming language ay maaaring tawaging ama ng modernong programming dahil ito ay napakalapit sa hardware, ngunit sa parehong oras ay nag-aalok ng isang mahusay na antas ng abstraction na naiintindihan ng mga tao. Ang GNU C compiler ay isang bootstrapped compiler. Iyon ay, ito ay nakasulat sa C gamit ang konsepto ng compiler unwinding. Sa GNU Compiler Collection code sa GitHub, nakita ko ang pinakamahabang C source file na nakita ko (maaaring may mas mahabang file, ngunit ito ang nakita ko).Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang pakikipanayam - 4

Chromium

Ang mga sikat na browser gaya ng Google Chrome, Microsoft Edge at Opera ay batay sa open source na proyekto ng Chromium. Ang proyektong ito ay may dalawang pangunahing dependency: ang Blink engine (isang tinidor ng WebCore library mula sa Webkit team) at ang V8 JavaScript engine na binuo ng Chromium project team. Siyempre, medyo malawak ang code ng Chromium at naglalaman ng maraming third-party na module gaya ng gRPC at Skia . Ngunit ang mga developer ng Chromium ay nagawang buuin nang perpekto ang lahat ng mga bahaging ito. Ang codebase ay matalinong naghihiwalay ng internal function logic mula sa user interface logic. Tinitiyak nito ang magandang suporta para sa buong proyekto. Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang pakikipanayam - 5Bilang karagdagan, ang project code ay naglalaman ng source code para sa Chromium Android at iOS application. Ang pag-istruktura ng lubos na nasusukat na mga cross-platform na application ay maaaring maging mahirap. Gayunpaman, ang Chromium ay may tunay na kahanga-hangang paghihiwalay ng code sa Linux, Windows at Mac.

Gitk

Sa ngayon, ang bawat koponan ay gumagamit ng Git upang pamahalaan ang mga bersyon ng code. Ang version control system na ito ay binuo ni Linus Torvalds (tagalikha ng GNU/Linux OS kernel). Kasama sa Git codebase ang Gitk source code. Ang Gitk ay isang GUI application na nagbibigay ng visual navigation sa pamamagitan ng commits. Upang makita kung paano naiiba ang dalawang commit, maaari mong gamitin ang sumusunod na command:
$ git diff <commit hash> <commit hash>
Ngunit dahil ang Gitk ay isang visual na tool, makikita natin ang pagkakaiba nang mas mabilis dito. Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang pakikipanayam - 6Ang lahat ng Gitk source code ay magkasya sa isa . Ang code ay nakasulat sa Tcl scripting language gamit ang Tk UI-toolkit, isang Tcl extension. Ang pagsasama-sama ng isang buong GUI application sa isang file ay isang mahirap na gawain.

Paano makapaghahanda ang isang developer para sa isang panayam?

Source: Hackernoon Naalala ko ang una kong panayam. Katatapos ko lang ng aking degree at nag-a-apply para sa isang internship sa isang financial company sa Madrid. Kinabahan ako nang husto dahil hindi ko alam kung paano pupunta ang panayam at hindi ko alam ang mga kasalukuyang uso sa pagbuo ng software. Pagkatapos ng Pasko ng Pagkabuhay, ako ay 21 taong gulang pa lamang, at mas masaya para sa akin na gumugol ng oras kasama ang mga kaibigan sa dalampasigan. Ngunit sa halip na magsaya, kailangan kong maghanda para sa isang pakikipanayam. Coffee break #49.  Mga halimbawa ng code na dapat makita ng bawat developer.  Paano maghanda para sa isang pakikipanayam - 7Ang unang hakbang bago ang bawat panayam ay ang pagkilala sa isa't isa. Hinihiling nila sa iyo ang iyong pangalan, tirahan, espesyalidad, at iba pa. Pagkatapos nito, sasailalim ka sa isang personal na panayam, maaari itong harapan o sa pamamagitan ng video link. Sa anumang kaso, susubukin ng panayam na ito ang iyong karanasan, kaalaman at kasanayan para sa posisyon na iyong inaaplayan. Malamang na hilingin sa iyo na magsulat ng code kung saan ipapakita mo ang iyong kakayahang lutasin ang mga problema o problema. Bilang karagdagan, maaari mong asahan ang isang pakikipanayam sa isang tagapamahala ng proyekto o direktor ng kumpanya. Depende ito sa posisyon na iyong inaaplayan. Maaaring tumagal ang proseso ng pakikipanayam. Samakatuwid, kailangan mong maging matiyaga at manatiling kalmado. Naghanda ako ng ilang mga tip at trick para sa iyo sa bagay na ito.

Magsaliksik sa posisyon upang matiyak na ito ay angkop para sa iyo.

Minsan kapag naghahanap tayo ng trabaho, sumusulpot lang tayo para sa isang pakikipanayam nang hindi tinitingnan ang lahat ng impormasyon tungkol sa posisyon. Mas mainam na linawin ang listahan ng iyong mga responsibilidad at iskedyul ng trabaho nang maaga. Suriin din kung ang kumpanya at posisyon ay tumutugma sa iyong mga kinakailangan

Subukang manatiling napapanahon sa iyong mga trend sa karera.

Ang isang malaking pagkakamali ay ang hindi pagsunod sa mga uso at mga bagong teknolohiya sa iyong trabaho. Ikaw ay malamang na isang developer o project manager, mayroon kang sariling paraan ng pagtatrabaho sa iyong kasalukuyang tungkulin at ang parehong teknolohiya para sa lahat ng iyong mga proyekto. Ngunit mangyaring subukang gumugol ng kaunting oras araw-araw sa pag-aaral ng mga bagong teknolohiya. Ito ay napakahalaga sa aming karera. Kailangan mong manatiling updated sa mga bagong framework, bagong pamamaraan, at higit pa. Makakagawa ito ng malaking pagkakaiba sa iyong pakikipanayam.

Sa isang in-person na panayam o video call: subukang magmukhang maganda at mag-relax

Ang iyong hitsura ay kasinghalaga ng disenyo ng iyong app. Maaaring mayroon kang perpektong backend, ngunit kung mahina ang frontend ng iyong app, mahihirapan kang ibenta ang iyong produkto. Ang parehong ay totoo sa iyong hitsura: sa isang pakikipanayam dapat kang tumingin, kung hindi pormal, pagkatapos ay hindi bababa sa disente. Ipapakita nito ang iyong pagpayag na sundin ang mga patakaran ng kumpanya. Alam kong iisipin ng ilang tao rito, “Uy, ako ay isang henyo, bakit kailangan kong pakialaman ang aking hitsura?” Well, kung ikaw ay isang henyo at maganda ang hitsura , tiyak na makakagawa ka ng impresyon!

Huwag kang mag-madali

Bago ang panayam, kailangan mong maghanda, mag-aral ng mga paksa, magsanay ng mga algorithm at paglutas ng problema, at maghanda ng talumpati. Ang ilan sa mga prosesong ito ay mahaba at tumatagal. Kaya siguraduhin na mayroon kang isang kalamangan dito.

Magsanay

Depende ito sa iyong karanasan, ngunit ang aking rekomendasyon dito ay kung kailangan mong magsulat ng code sa isang pakikipanayam, mangyaring isulat ito ng tama. Upang gawin ito, kailangan mong matutunan kung paano linisin at suriin ang code. Makakatulong ito sa iyong muling ayusin o pagbutihin ang ilan sa mga function nito.

Ipakita ang iyong karanasan sa isang harapang panayam o sa code

Subukang magpakita ng karanasan. Ang isang pakikipanayam ay ang perpektong lugar upang ipaliwanag sa tagapanayam kung bakit ka dapat kunin ng kumpanya. Bago ang iyong pakikipanayam, gawing pamilyar ang iyong sarili sa mga pangunahing konsepto ng programming, pamamaraan, at pinakamahusay na kasanayan.

Kumuha ng sapat na tulog sa araw bago ang iyong pakikipanayam.

Subukang makakuha ng sapat na tulog. Makakatulong ito sa iyong manatiling nakatutok sa susunod na araw. Kung hindi mo alam ang mga sagot sa anumang mga tanong sa panayam, mangyaring huwag magsinungaling —maging tapat, makakatulong ito na maiwasan ang maraming komplikasyon sa hinaharap. At ito ay makakatulong sa iyo na makita ang iyong mga kahinaan na kailangan mong pagbutihin.

Magtiwala sa iyong mga sagot

Huwag pagdudahan ang iyong sarili. Hindi kailanman.

Sa panahon ng panayam, dapat mong ipakita ang kaligtasan at kumpiyansa sa lahat.

Kung wala kang kasanayang ito, malamang na kailangan mong pagsikapan ito. Ang kumpiyansa ay kapag sumagot ka ng, "Hindi ko alam ang sagot, ngunit maaari ko itong hanapin at sagutin sa ibang pagkakataon." Ang pagpipiliang sagot na ito ay nagpapakita ng seguridad at kumpiyansa.

Pag-aralan ang panayam

Ang bawat panayam ay magkakaiba, ngunit lahat sila ay may katulad na mga katangian. Samakatuwid, pagkatapos ng panayam, dapat mong pag-isipan kung ano ang naging maganda o hindi maganda tungkol dito para sa iyo. Ang isang pakikipanayam ay isang magandang oras upang tingnan ang iyong sarili mula sa labas, sa iyong mga kalakasan at kahinaan.
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION