5 dæmi um bestu notkun Ruby
Hefurðu einhvern tíma velt því fyrir þér hvað við getum gert með Ruby? Jæja, loftið er líklega takmörkin, en við erum fús til að segja frá nokkrum meira eða minna þekktum dæmum...
Fyrir nokkrum árum var ég að grilla með nokkrum vinum mínum, allir Java-forritarar. Ekki veit ég hvernig það kom upp, en við byrjuðum að tala um forritunarumhverfi okkar. Ég sagði þeim að ég geri alla þróun mína með Vim og í textatengjum. Það leiddi til nokkurra brandara og fyndinna spurninga, eins og hvort ég sé ennþá að nota púnskort 🙂
Hér er tómt.Síðan þá hef ég prófað nokkur “alvöru” IDE-um en alltaf snúið aftur til Vilji og skjálínur þar sem þetta er mjög hraðvirk aðferð, hefur öll þau verkfæri sem ég þarf og mér finnst einfaldlega gaman að vinna í textaham.
Hér eru nokkur smáatriði um vinnuflæði mitt. Það er þess virði að nefna að ég vinn á Linux, en þú getur sett það upp á Mac eða Windows án vandamála.
Ég byrja vinnudaginn minn á því að opna skjá, skipta í ~/Projects/XYZ og keyra tmux, svo skulum við byrja þar.
Hvað er TMUX? Eins og höfundarnir segja:
TMUX er fjölrása tæki fyrir skjáumhverfi. Það gerir þér kleift að skipta auðveldlega á milli nokkurra forrita í einum skjá, losa þau (þau halda áfram að keyra í bakgrunni) og tengja þau aftur við annan skjá.
Ég nota það til að skipta á milli margra hluta í einum skjá. Svo, í einum TMUX gluggi, ég hef Relsar þjónn í gangi, í öðru sekúndunni hef ég minn Vilji opnað, og í hvert skipti sem ég þarf að gera eitthvað í skelinni, eins og að athuga leiðir, keyra flutninga eða prófanir, opna ég bara nýtt glugga með Stýri-A C og gera hlutinn.
Ég nota ekki TMUX gluggaspjöld, bara gluggar, og skipta mikið (ég nota CTRL + tvöfaldan A til að skipta á milli síðustu glugga).
Annað mjög þægilegt einkenni af TMUX Það gerir mér kleift að finna og afrita texta úr skjáborði án þess að nota mús.
Þetta er meginhluti vinnuflæðis míns. Ég mun ekki fara nánar út í hvað VIM er og hvernig það er öðruvísi en aðrir ritstjórar. Það eru margir frábærir greinar og myndbönd um það. Í fáeinum orðum, Vilji er modalur ritill. Hann hefur tvö ham: innsláttarham og venjulegan ham. Innsláttarhamurinn er til að slá inn texta í skjal en venjulegi hamurinn er til að framkvæma ýmsar aðgerðir á skjalinu, eins og að færa bendilinn, eyða brotum af texta, breyta honum og svo framvegis. Það hljómar skrýtið en eftir smá tíma finnst það mjög eðlilegt og það er mjög erfitt að snúa aftur í venjulega ritilinn þinn.
Það sem ég vil sýna þér er hvernig ég sameini Vilji með öðrum verkfærum til að fá allt sem ég þarf sem vefur þróunaraðili.
Ég er ekki hrifinn af þungum viðbótum. Vilji configs, svo ég er að nota aðeins nokkrar. Hér er listinn:
Nördtré – þetta er skráarvafri. Hann gerir þér kleift að framkvæma auðveldlega nokkrar grunn aðgerðir í skráarkerfinu, eins og að færa skrár, endurnefna, búa til nýjar skrár og margt fleira,
vim-endwise – Ég er Rúbín þróunaraðili, svo ég nota það til að bæta við enda eftir ef, gerðu, skilgreina, og nokkur önnur lykilorð,
vim-rails – það er Relsar aflviðbót. Hún þekkir uppbyggingu á Rails-forrit. Viltu athuga hlutann undir bendlinum? Smelltu bara á stelpunvini og það opnar það í núverandi glugga þínum. Það hefur marga aðra valkosti en það er sá sem ég nota oftast,
vim-surround – frábær viðbót sem gerir vinnu með umhverfi mjög auðvelda. Með henni geturðu breytt umhverfi texta úr () í [] með nokkrum lyklabrotum,
endurtekur í vim – viðbót við Vim-surround. Leyfir endurtekna umlykjandi breytingu með . (endurtekur síðustu breytingu í Vim),
vimwiki– minn háttur til að taka niðurstöður,
fzf.vim+ fzf – kjarni hluti míns vefþróun vinnsflæði.

Þetta eru verkfærin sem skilgreina hvernig ég kóða. Ég áttaði mig á því að þegar ég er að vinna að forritunarverkefnum eyði ég mestum tíma mínum í að komast að því hvernig hlutirnir virka. Til þess þarf ég að skoða fljótt mismunandi hluta kóðagrunnsins, aðferðadefinisjónir, klasa og annað slíkt.
Fzf er gagnvirkt Unix-síuvélarforrit fyrir skipanalínu sem hægt er að nota með hvaða lista sem er (skrár, skipanalínusaga, git-breytingar, ferlalistar); með öðrum orðum, það er óljós leitaraðili.
Ripgrep er valkostur við grep, en hann er gífurlega hraður.
Þegar þau eru sameinuð leyfa mér þessi tvö að finna fljótt allt sem ég vil í mínu verkefni.
Ég á tvær stillingar í mínu Vilji Stillingarskrá til að hjálpa mér við þetta:
nnoremap :Files
nnoremap :Rg
Sá fyrsti gerði mér kleift að finna réttu skrárnar hratt með óskýrri leit í skráarleiðum (CTRL-P). Sá annar keyrir óskýrða leit á öllum leiðum og innihaldi skráa í verkefni mínu með Ripgrep (CTRL-F).
Svo, segjum að ég vilji finna flutninginn þar sem ég bætti við dálki í notendur Tafla. Ég ýti á CTRL-F og skrifa eitthvað eins og aðstoðarnöfn og það mun passa bæta_við_súlu :notendur, :nafn, :string.
Þegar ég leita að aðferðarskilgreiningu, nota ég oft CTRL-F. skilgreina aðferðarnafnið.
Það er mjög gagnlegt þar sem það leitar í skráarbraut og innihaldi. Það er sérstaklega þægilegt þegar ég veit að efnið sem ég er að leita að er á tilteknum stað í verkefninu. Til dæmis vil ég finna hvar við uppfærðum notendanafn og ég man að það var einhvers staðar í stjórnendunum. Ég ýti á Stýri-F nafn uppfærslu til að passa við línu app/controllers/users_controller: @user.update(name: new_name).
Ef þú þekkir verkefnið þitt og uppbyggingu kóðagrunnsins, geturðu auðveldlega búið til fuzzy-leitarspurningar til að finna nánast hvað sem er sem þú vilt.
Smelltu hér til að sjá stutta upptöku af mér að fikta í `discourse` kóðagrunninum (440 þúsund línur af kóða á i5-tölvunni minni með 16 GB vinnsluminni) og sýna hvernig ég hreyfi mig venjulega um verkefnið.
Ég vona að þú hafir orðið forvitinn um uppsetningu mína og ákveðið að gefa Fzf tilraun í forritunarátökum þínum. Það breytti í raun því hvernig ég nota Vilji sem kóði ritstjóri.