Tipy na programovanie

50 najčastejších otázok a odpovedí na otázky týkajúce sa rubínov

50 najčastejších otázok a odpovedí na otázky týkajúce sa rubínov

Ruby je moderný programovací jazyk vyvinutý v Japonsku okolo 90. rokov. Tento jazyk na vysokej úrovni je určený na vývoj softvéru na všeobecné účely. Ruby si získala nesmiernu popularitu pri prechode webových stránok na webové aplikácie. Podporuje prvú generáciu týchto aplikácií vďaka svojej vysoko škálovateľnosti a robustnej množine funkcií. Aj po rozmachu JS sa Ruby stále teší rastúcemu dopytu. Spoločnosti často hľadajú vývojárov ovládajúcich Ruby and Rails, vlajkový webový rámec Ruby pre údržbu ich existujúcich produktov a pridávanie nových funkcií. Je preto nevyhnutné poznať bežné otázky týkajúce sa rozhovoru s rubínmi, ak sa chcete uchádzať o prácu s rubínmi.

Často kladené otázky týkajúce sa rozhovorov s rubínmi


Spoločnosti môžu na pracovnom pohovore so spoločnosťou Ruby klásť najrôznejšie otázky. Podniky s veľkými tímami zvyčajne chcú počas týchto rozhovorov poznať hĺbku vývojára. Na druhej strane startupy všeobecne hľadajú skúsenejších vývojárov schopných rýchlo vytvárať obchodné produkty. Je dôležité poznať Rubyho použitie pri vývoji produktu popri základných znalostiach.

1. Čo je to Ruby?


Ruby je univerzálny jazyk používaný na vývoj všetkých typov technologických produktov. Vytváranie webových aplikácií pomocou Ruby je ľahké vďaka populárnej vývojovej platforme na strane servera Rails. Ruby ponúka vývojárom výnimočnú všestrannosť vďaka svojim robustným abstrakčným vrstvám. Programy typu Ruby však nie sú najrýchlejšie z rovnakého dôvodu. Programátorom navyše pripadá Ruby veľmi flexibilný pri navrhovaní rozhraní.

2. Kto vyvinul Ruby?


Japonský programátor Yukihiro „Matz“ Matsumoto vyvinul Ruby. Implementoval ho pomocou programovacieho jazyka C. Taktiež vyvíja referenčnú implementáciu Ruby, známu ako MRI (Matz's Ruby Interpreter).

3. Aké sú najlepšie vlastnosti Ruby?


Ruby je objektovo orientovaný programovací jazyk, ktorý umožňuje kačacie, dynamické a silné písanie. Mixiny umožňujú vývojárom Ruby implementovať flexibilné jednotlivé dedičstvá. Ponúka veľké množstvo štandardných knižníc, natívne rozhrania API, centralizovanú správu balíkov, viacúrovňový variabilný rozsah, prvotriedne pokračovania a okrem iného aj robustný zberač odpadu.

4. Aká je najlepšia alternatíva k Ruby?


Python je jednou z najlepších alternatív k Ruby. Obaja sú tlmočenými jazykmi a poskytujú podporu hlavným štandardným knižniciam. Oba sú vhodnými kandidátmi na tvorbu moderných webových aplikácií. Webový rámec Ruby on Rails je veľmi schopný, rovnako ako rámec Django a Flask pre python. Ruby a Python navyše umožňujú vývojárom vytvárať ďalší zovšeobecnený softvér, ako sú systémové nástroje, komunikačné nástroje a aplikácie pre rôzne platformy.

5. Prečo vyvíjať webové aplikácie pomocou Ruby?


Spomedzi množstva otázok týkajúcich sa rozhovorov s rubínmi sa uchádzačom o prácu často kladie dôvod, prečo používať program Ruby na vytváranie webových aplikácií. Zjavným dôvodom je rámec Ruby on Rails. Rails je známy pre svoje vynikajúce prototypové schopnosti. Vývojári môžu rýchlo prototypovať nápady na nové produkty pomocou už existujúcich štruktúr a komponentov. Výrobky je teda možné vizualizovať s čo najmenším počtom riadkov kódov. Je to jedna z najpredávanejších stránok spoločnosti Ruby.

6. Ako overiť číslo verzie Ruby?


Je veľmi ľahké overiť, či je v systéme nainštalovaný rubín, a ak áno, tak ktorá verzia. Jednoducho použite nasledujúci príkaz na overenie čísla rubínovej verzie v distribúciách založených na systémoch Linux a Unix.

$ ruby ​​-v $ ruby ​​--verzia

Na výstup bude uvedené číslo verzie, pretože rubín je už nainštalovaný. V opačnom prípade sa vráti príkaz, ktorý sa nenašiel.

7. Aké knižnice tried sú k dispozícii v Ruby?


Knižnice tried sú vstavané knižnice pre rôzne domény, ako sú vlákna, komunikácia a dátové typy. Ruby sa dodáva s niektorými z nasledujúcich knižníc tried-

Toto je niekoľko úloh, pre ktoré už Ruby poskytuje niektoré vopred pripravené funkcie. Vývojári môžu pomocou aplikácie Ruby vytvárať ľubovoľné typy prispôsobených knižníc, ktoré požadujú.

8. Čo sú bežne používané operátory v Ruby?


Rovnako ako v prípade pozoruhodných programovacích jazykov, Ruby ponúka aj množstvo primitívnych operátorov na výpočet. Operátori definujú operáciu potrebnú na vykonanie pomocou vášho kódu. Základné operátory sú uvedené nižšie -

9. Ktorý z nasledujúcich výrazov vracia nepravdivé?


pravda ? "True": "False" false ? „True“: „False“ nula ? „True“: „False“ 1 ? "True": "False" 0 ? "Pravda lož" [] ? "Pravda lož"

Anketári často testujú základy uchádzačov o zamestnanie pomocou jedného alebo viacerých z vyššie uvedených výrazov. Aj skúsení programátori so znalosťou jazykov ako Python a JavaScript na ne môžu odpovedať. Rubín vyhodnotí ako nepravdivé iba falošné a nulové hodnoty. Konštrukty ako 0 a [] sa vyhodnotia ako pravdivé.

10. Čo sú hodnoty pod premennými po vykonaní??


number1 = true and false number2 = true && false

Je to ďalší príklad často kladených otázok týkajúcich sa rubínových rozhovorov. Aj keď sú na prvý pohľad zdanlivo rovnocenné, ich hodnotenie vás môže prekvapiť. Ak ich vytlačíte, dostanete číslo 1 ako pravdivé a číslo 2 ako nepravdivé. Stáva sa to preto, lebo = (priradiť operátor) má v Ruby vyššiu prioritu ako logický a operátor.

Prvý výraz teda iba hovorí tlmočníkovi, aby vykonal (číslo1 = pravda) a nepravda, čo má za následok, že číslo 1 bude pravdivé. Operátor && má však vyššiu prioritu ako =, a preto sa druhý výraz vyhodnotí podľa očakávania.

11. Môžete vysvetliť rôzne typy premenných v Ruby?


Rovnako ako v iných programovacích jazykoch, Ruby využíva premenné na uchovávanie rôznych programových údajov. Premenné v Ruby fungujú podobne ako Python. Ruby má štyri predvolené typy premenných. Oni sú -

12. Aké sú rozdiely medzi nulou a falošnosťou?


Už sme vám povedali o nulových a falošných konštruktoch, ktoré sú k dispozícii v Ruby. Aj keď sa obidva pri použití vo vnútri výrazov vyhodnotia ako nepravdivé, sú medzi nimi jemné rozdiely. Pre jedného môže byť nulová hodnota, ale nesprávna. Programy Ruby sa zvyčajne vrátia nula, keď neexistuje predikát, a v prípade predikátov sa vráti buď true, alebo false. False je tiež boolovský dátový typ, zatiaľ čo nula nepredstavuje žiadny typ.

13. Diskutujte o základných dátových typoch používaných v Ruby.


Uchádzači sú často požiadaní o vedomosti o dátových typoch v rubrikových otázkach týkajúcich sa rozhovorov. Ako univerzálny programovací jazyk podporuje Ruby viac dátových typov, ktoré uľahčujú rôzne aspekty našich projektov. Základné dátové typy dostupné v Ruby sú -

14. Rozlišujte medzi zaťažením a požiadavkou


Ruby ponúka dva odlišné spôsoby, ako zahrnúť do svojej kódovej základne útržky externého kódu, a to načítať a vyžadovať. Aj keď sú zdanlivo podobné, existujú medzi nimi jemné rozdiely. Zaťaženie by sa malo použiť v prípadoch, keď sa pri každej zmene udalosti vyžaduje externý kód. Na druhej strane, require funguje ako automatické načítanie a malo by sa použiť na automatické zahrnutie úryvkov kódu.

15. Ako sa vysporiadať s podmienkami v Ruby?


Podmienené konštrukcie sú v strede moderných programovacích jazykov. Kontrolujú tok a vykonávanie vášho programu. Väčšina jazykov dnes ponúka na tento účel nejaký druh konštrukcie (ak - potom - akcia). Ruby zvládne podmienené použitie rôznych variácií klasiky, ak je postavené.

16. Ako fungujú slučky v Ruby?


Smyčky sú preferovaným spôsobom vykonávania iterácií pre väčšinu programátorov. Ruby ponúka niekoľko rôznych slučkových konštrukcií, ktoré to uľahčujú. Nižšie sa na ne krátko pozrieme.

17. Ako fungujú prestávky v Ruby?


Konštrukcia zlomu je spoločná pre hlavné programovacie jazyky. Rovnako to funguje aj v Ruby. Pomocou príkazu break sa môžete doslova vymaniť z rozsahu. Programátori to často používajú na spätné sledovanie zvnútra slučiek a rekurzívnych funkcií. Ďalej ukážeme, ako sa v Ruby vymaniť zo slučky for.

#!/ usr / bin / ruby ​​pre i v [1, 2, 3, 4, 5] urobí i, ak i == 3 koniec konca konca

Tento kód sa vytlačí až 3 a potom sa ukončí. Stáva sa to, pretože sme použili „break“, akonáhle „i je tri“.

18. Prečo používať ďalšie vyhlásenie?


Nasledujúci príkaz v Ruby je doplnkom príkazu break. Používa sa na preskočenie konkrétnej iterácie slučky a pokračovanie na ďalšiu. Je ekvivalentom príkazu continue v jazyku C a ďalšieho v jazyku Perl. Nasledujúci príkaz preskočí druhú iteráciu, ale prejde k tretej.

#!/ usr / bin / ruby ​​pre i v 1… 6, ak i == 2, potom ďalší koniec znamená koniec

Pretože otázky týkajúce sa iterácií slučiek sú pri otázkach týkajúcich sa rubínových rozhovorov bežné, buďte pri odpovedaní opatrní.

19. Ako fungujú opakované príkazy?


Opakované príkazy možno použiť na prehodnotenie určitej iterácie vo vašej slučke. Podmienka slučky sa v prípade príkazu redo nevykoná. Fragment uvedený nižšie poskytuje jednoduchý príklad.

pre i v 1… 6 kladie i i + = 1 a opakuje, ak i == 2 končí

Ak zvýšite počítadlo po opakovanom príkaze, nikdy sa nespustí. Váš program teda spadne do nekonečnej slučky. Toto je častá chyba nových programátorov Ruby.

20. Ako fungujú opakované výpisy?


Príkaz opakovania je užitočný spôsob, ako opakovať iterácie slučiek v Ruby. Použitie vyhlásenia o opakovaní sa často ukazuje ako trochu náročné pre mnohých sezónnych programátorov.

#!/ usr / bin / ruby ​​pre i v 0… 5 začiatku kladie „i = # i“ zdvih, ak i> = 3 koniec záchrany opakovať koniec

Tento útržok kódu bude spadať do nekonečnej slučky. Stáva sa to od podmienky, že ak je vždy vyhodnotená ako pravdivá. A potom iterácia opakuje pokus o iteráciu.

21. Ako používať poznámky v Ruby?


Komentáre sú nevyhnutné pre čitateľnosť a dokumentáciu. Ruby podporuje jednoriadkový komentár podobný Pythonu. Jednoducho pripojte # pred časť kódu, ktorú chcete komentovať.

# comment = 1 vloží komentár

Mali by ste dostať NameError pretože váš program nemá predstavu o premennej, ktorú ste komentovali. Viacriadkové komentáre sú k dispozícii aj v aplikácii Ruby.

= začiatok kladie "ahoj" = koniec

Tento kód nebude vyhodnotený a teda nebude nič tlačiť.

22. Je nasledujúce vyhlásenie o Ruby platné?


-> (a) p a [„Hello Universe“]

Vyššie uvedené vyhlásenie o rubíne je úplne platné. Jednoducho vytvorí proc pomocou skratkovej (->) notácie. Tento proc je tiež lambda. Berie ako parameter, vytlačí ho, aktivuje tento proc a odovzdá parameter „Hello Universe“. Výsledok by mal byť teda jednoducho „Hello Universe“.

23. Ako vytvárať objekty v Ruby?


Mnoho zamestnávateľov sa rád pýta na predmety a triedy počas otázok týkajúcich sa rubínových pohovorov. Našťastie je veľmi ľahké vytvárať objekty triedy v Ruby. Budete jednoducho vyžadovať názov triedy objektu a môžete ho ukladať ako premenné.

object1 = className.Nový

Teraz bude objekt1 obsahovať novú inštanciu triedy className.

24. Ako vytvárať triedy v Ruby?


Triedy sú prototypy vašich objektov. Definuje tiež povolené metódy. Pred vytvorením inštancie objektu je potrebné vytvoriť triedu. Fragment kódu nižšie ukazuje, ako vytvoriť jednoduchú triedu v Ruby.

trieda className # kódy tu končia

Teraz môžete ľahko vytvoriť objekt pomocou metódy uvedenej v predchádzajúcej otázke.

25. Ako vytvárať metódy?


Ruby metódy sú ekvivalentné s funkciami v iných jazykoch, ako sú C a Python. Bráni programátorom písať rovnaké bloky kódu vo svojom programe. Po definovaní metódy ju môžete zavolať z ľubovoľného miesta v programe. Pozrite sa na nasledujúci príklad.

def Loop pre i v 0 ... 10 kladie end end Loop ()

Teraz môžete zavolať túto metódu, ako je uvedené v poslednom riadku, a vytlačiť čísla 0 až 9 odkiaľkoľvek vo vašom zdrojovom kóde.

26. Môžete vysvetliť rôznych rovnocenných operátorov Ruby?


Ruby poskytuje niekoľko rovnakých operátorov na kontrolu rovnosti číslic a objektov. Každý operátor má mierne odlišné prípady použitia, ktoré nových programátorov dosť často mätú. Nižšie sa pozrieme na štyri rôzne rovnocenné operátory v Ruby.

27. Rozlišujte medzi super a super () v Ruby


Aj keď sú na prvý pohľad podobné, super a super () majú dosť rozdiely. Super volanie vyvolá nadradenú metódu odovzdaním rovnakých argumentov odovzdaných podradenej metóde. Často to môže viesť k neočakávanému správaniu v dôsledku možného nesúladu parametrov rodičovskej metódy. Volanie super () však vyvolá rodičovskú metódu priamo bez zadania akýchkoľvek parametrov.

28. Ako odovzdať referenciu v Ruby?


Ruby neponúka ukazovatele a súvisiace dereferencie. Stále však umožňuje programátorom odovzdávať odkazy namiesto miestnych premenných. To možno vykonať pomocou symbolu ampersand (&). Pozrite sa na nasledujúci kód, aby ste pochopili, ako to funguje v ruby.

#! Metóda / usr / bin / ruby ​​def (& blok) vloží blok „Toto je metóda“.metóda ukončenia hovoru vloží „Toto je odkaz na blok“

Ak sa vyskytnú chyby, nezabudnite skontrolovať odsadenie a medzery.

29. Ako fungujú moduly v Ruby?


Moduly v Ruby sú kolekciami konštánt a metód. Sú definované ako triedy a zdieľajú mnoho podobných spoločných znakov, ako sú definície tried, konštanty a ďalšie moduly. Ruby však neumožňuje vytváranie objektov pomocou modulov. Neexistuje ani podpora dedenia.

Účelom modulu je poskytnúť menné priestory na zabránenie konfliktom pomenovaní. Ďalej umožňujú mixínom zdieľať spoločné funkcie medzi triedami.

30. Ako Mixiny fungujú v Ruby?


Pretože Ruby neponúka viac dedičstiev objektom triedy, programátori to potrebujú inak. Na vyriešenie tohto problému sa teda používajú moduly. Aj keď moduly nie je možné vytvoriť inštanciami, je možné ich ľahko zahrnúť do rôznych tried. Stále teda môžete mať prístup k metódam definovaným v module tak, že ich zaradíte do triedy. Mixiny dostávajú svoje meno podľa „mixov“ modulov vo vnútri triedy.

31. Je možné zavolať súkromnú metódu mimo triedy Ruby?


Áno, v Ruby je to možné. Budeme musieť použiť objekt triedy na volanie metódy, ktorá je pre ňu súkromná. To je možné vykonať pomocou metódy odoslania. Nasledujúci kód to demonštruje v praxi.

trieda ClassName private def metóda p "Toto je súkromná metóda" koniec

Túto súkromnú metódu teraz môžeme nazvať od interpreta Ruby pomocou nižšie uvedeného riadku.

>> ClassName.Nový.poslať (: metóda)

32. Vysvetlite rozdiely medzi zahrnutím a rozšírením


Svoje moduly môžete používať pomocou príkazov include aj extend. Sú však dosť odlišné a používajú sa na konkrétne účely. Stručne povedané, include pridáva metódy modulu k objektu triedy, zatiaľ čo extend pridáva metódy triedy.

33. Ako získať prístup k reťazcovým prvkom v Ruby?


Reťazce sú jedným z hlavných typov údajov, ktoré ponúka Ruby. Čokoľvek obklopené „“ je reťazec v Ruby. Prvky reťazca Ruby môžete ľahko získať pomocou hranatých zátvoriek []. Nasledujúci úryvok kódu to demonštruje.

#! / usr / bin / ruby ​​foo = "niečo spoločné s reťazcami" length = foo.dĺžka pre i v 0… foo.dĺžka p foo [i] koniec

Tento blok kódu vytlačí postupne všetky znaky daného reťazca v štandardnom výstupe.

34. Je možné napísať viacriadkové reťazce do Ruby?


Počas mnohých otázok týkajúcich sa pohovoru cez rubín sa uchádzači o zamestnanie pýtajú, či je možné do Ruby napísať viacriadkové reťazce. Aj keď to možno nepoznáte, je to možné a ľahké. Ďalej uvádzame tri rôzne spôsoby, ako to urobiť v aplikácii Ruby.

dáva "R Ru Rub Ruby" dáva% / R Ru Rub Ruby / dáva< 

35. Aký je rozdiel medzi klonom a dup?


Ruby poskytuje dve robustné metódy na klonovanie / duplikovanie objektov vo vašom programe. Aj keď by sa mohlo zdať, že robia to isté, je tu dosť veľký rozdiel - výzva na klonovanie skopíruje celý objekt vrátane kombinácií modulov. Dup však vytvára plytkú kópiu Object a nekopíruje žiadne mixiny.

36. Ako odstrániť nulové hodnoty z Ruby Arrays?


Pretože nula je platný typ v Ruby, často ho nájdete v celom svojom programe. Programátori sa musia ubezpečiť, že počas svojej kódovej základne odstránia čo najviac takýchto výskytov. Je celkom jednoduché nájsť a odstrániť tieto nulové hodnoty z polí v Ruby. Nasledujúci úryvok kódu poskytne ukážku.

arr = [nil, "test", nil, "test", nil, "test"].kompaktné kladie arr

Aj keď konštrukcia arr otvorí šesť hodnotových objektov, vytlačí iba tri z nich, všetky sú nulové hodnoty. Umožňuje nám to kompaktná metóda.

37. Napíšte program Ruby na generovanie Fibonacciho čísel


Mnoho zamestnávateľov sa rád pýta otázky spojené s klasickou teóriou čísel počas otázok s rubínovým pohovorom. Séria Fibonacci je určite jedným z najobľúbenejších medzi anketármi. Každé číslo v tejto sérii je súčtom jeho predchádzajúcich dvoch čísel. Fragonacciho séria môže generovať nasledujúci úryvok.

first_number = 0 second_number = 1 next_term = 0 vloží „Koľko výrazov: -“ n = získa.žuť.to_i vloží „Prvý # n výraz Fibonacciho série: -" i = 1 while (i<=n+1) if(i<=1) next_term=i else puts next_term next_term=first_number+second_number first_number=second_number second_number=next_term end i+=1 end

38. Môžete rozlíšiť medzi Procs a lambdas?


Procs aj lambdas sú súčasťou uzáverov, lexikálneho rozsahu funkčného alebo kódového bloku. Používajú sa na balenie alebo blokovanie skupinových kódov na zvýšenie čitateľnosti. Bloky sú tiež uzávery, ale nie sú to predmety ako procs alebo lambda. Procs a lambdas je možné vrátiť aj z funkcií. Sú však celkom odlišné. Stručne povedané, všetky lambdy sú proky, ale nie všetky proky sú lambdy. Lambdy sú prísne pri kontrole čísel parametrov, ale proc nie. Lambdas vráti jednoducho hodnoty, zatiaľ čo procs vráti hodnoty z aktuálneho rozsahu.

39. Ako riadiť úrovne prístupu pre metódy Ruby?


Program Ruby umožňuje programátorom ľahko ovládať úrovne prístupu svojich metód. Svoje metódy môžete nastaviť ako verejné, súkromné ​​alebo chránené. Týmto spôsobom môžete určiť, ktoré objekty majú prístup k akým metódam v celom vašom programe. Ako naznačuje názov, k verejným metódam má prístup ktokoľvek. Súkromné ​​metódy sú prístupné iba pre objekty tejto triedy, ktorým tieto metódy patria. Chránené metódy sú naopak prístupné iba pre triedu, v ktorej je definovaná, a pre jej podtriedy.

40. Čo sú drahokamy v Ruby?


Drahokamy sa stali populárnym konceptom od jeho počiatkov. Ruby drahokamy sú rubínové programy distribuované ako balíčky. Boli zásadným faktorom úspechu Ruby. Je veľmi ľahké zbaliť aplikáciu a zdieľať ju / nasadiť pomocou drahokamov. Jednoduché, ale produktívne rozhranie CLI tohto správcu balíkov je veľmi flexibilné a umožňuje vývojárom bez námahy zabaliť program. Správca balíkov drahokamov Ruby je teraz zabudovaný do štandardného runtime Ruby.

41. Čo je to Rails Engine?


Potenciálni kandidáti sa na otázky týkajúce sa motorov koľajníc často pýtajú počas otázok pri pohovoroch s programom ruby ​​on rails. Rails Engine je mechanizmus, ktorý umožňuje programátorom zabaliť ich aplikáciu rails alebo niektoré špecifické funkcie do iných aplikácií alebo do časti väčších distribuovateľných balíkov. Rails Engines si môžete predstaviť ako miniaplikácie. Prístup k týmto motorom závisí od smerovacej politiky vášho servera. Motor jednoducho namontujete a smerovače ho môžu používať.

42. Ako zmraziť objekty v Ruby?


Program Ruby umožňuje programátorom zmraziť objekty počas vykonávania svojich programov. To sa môže hodiť v mnohých situáciách. Nasledujúce úryvky kódu demonštrujú zmrazenie objektov Ruby v akcii.

foo = "niečo" foo.zmraziť, ak (foo.zmrazené? ) kladie „foo je zamrznutý objekt“, iné dáva „foo je bežný objekt“

Takže metóda zmrazenia sa používa na zmrazenie objektu a zmrazenie? skontrolovať jeho stav. Ak komentujete druhý riadok, získate výstup bloku else.

43. Diskutujte o slovesách CRUD dostupných v koľajniciach


CRUD je základným stavebným prvkom rozhraní RESTful API. Rámec Rails umožňuje všetky hlavné operácie CRUD. Nižšie diskutujeme o webových slovesách Rails.

  • GET - toto sloveso sa používa na načítanie zdrojov stránky
  • POST - vytváranie a odosielanie nových zdrojov
  • PATCH / PUT - aktualizácia existujúcich zdrojov
  • DELETE - odstránenie určených zdrojov

44. Aký je vzťah medzi združovaním vlákien a životným cyklom vlákna?


Životné cykly jednotlivých vlákien v Ruby sa spúšťajú automaticky, akonáhle má váš procesor k dispozícii zdroje. Aj keď sú vlákna náročné na zdroje, môžete výrazne zvýšiť rýchlosť svojej aplikácie Ruby on Rails použitím viacerých vlákien súčasne. Technika združovania vlákien sa široko používa na uľahčenie práce viacerých vlákien bez prerušenia. V tejto technike sa v pohotovostnom režime očakáva viac už existujúcich opätovne použiteľných vlákien. Kedykoľvek sú k dispozícii nové zdroje, nové vlákna sa spustia automaticky.

45. Aké sú najlepšie nástroje na testovanie aplikácií Rails?


Jednou z najbežnejších otázok týkajúcich sa rubínových pohovorov, ktorým čelia uchádzači o zamestnanie, je testovacie nástroje. Pretože sa Ruby on Rails vo veľkej miere používa na tvorbu rozsiahlych webových aplikácií, je testovanie mimoriadne dôležitou súčasťou. Našťastie existuje značné množstvo vopred pripravených nástrojov na zvýšenie rýchlosti a výsledku testovania pre nových vývojárov Ruby. Niektoré populárne a užitočné testovacie nástroje pre Rails sú -

  • rspec - nástroj špecifický pre doménu na testovanie rubínového kódu
  • minitest - plnohodnotná testovacia sada, ktorá podporuje TDD, BDD, testovanie a rýchle prototypovanie.
  • test-unit - robustný testovací rámec pre Ruby založený na princípoch xUnit.
  • uhorka - flexibilný nástroj Ruby na vykonávanie automatizovaných testov na Ruby.

46. Koľko spôsobov môžete pridať do polí Ruby Array?


Ako už bolo spomenuté, polia sú dôležitou dátovou štruktúrou v Ruby. Existuje niekoľko spôsobov, ako pridať nové položky do už existujúceho poľa. Niektoré z nich sú uvedené nižšie.

foo = ["niečo", "ufo", "čo?"] stavia foo foo.push („bar“) dáva foo foo.unshift ("newItem") dá foo foo.insert (1, "anotherNewItem") places foo

Metóda push pridáva nové prvky na koniec poľa, na začiatku ruší posun a vložením pridáva položky na ľubovoľnej určenej pozícii.

47. Koľko spôsobov môžete odstrániť položky z rubínových polí?


Odstránenie položiek z polí tiež nie je v Ruby žiadnym veľkým problémom. Programátori môžu na tento účel použiť rôzne metódy. Nižšie uvádzame jednoduchú ukážku. Je to súčasť ďalších bežných otázok týkajúcich sa rubínových rozhovorov, ktorým môžete čeliť.

foo = ["niečo", "ufo", "čo?"," anotherNewItem "," newItem "," bar "] foo.pop dáva foo foo.shift dáva foo foo.delete ("ufo") dá foo foo.uniq kladie foo

Takže, pop vymaže poslednú položku poľa, posunie prvú a vymaže konkrétne položky. Metóda uniq odstráni duplicitné položky z poľa.

48. Ako ukladať zabezpečené údaje v koľajniciach?


Aplikácie Rails sa často zaoberajú citlivými informáciami, ako sú heslá, používateľské mená, adresy IP. Je veľmi zlý nápad ukladať tieto údaje ako holý text. Na zaistenie bezpečnosti údajov by ste mali vždy robiť správne merania. Údaje tretích strán, ako sú platby a základné informácie, by sa mali uchovávať prostredníctvom špecializovaných služieb, ako je Stripe. Pred uložením zašifrujte údaje z databázy. Uistite sa, že údaje o sieti sa odosielajú a prijímajú pomocou zabezpečených pripojení, aby sa zabránilo odpočúvaniu.

49. Ako zvládnuť operácie so súbormi v Ruby?


Rovnako ako iné programovacie jazyky, aj súbory a manipulácia s nimi pozostáva z veľkej časti v programovaní v Ruby. Vďaka robustným knižniciam Ruby a vstavaným metódam je manipulácia so súbormi v Ruby celkom ľahká. Niektoré fragmenty súborov nájdete v nasledujúcom úryvku.

new_file = Súbor.otvorené ("test.txt ") file_data = nový_súbor.prečítať nový_súbor.zavrieť file_data = Súbor.prečítať ("test.TXT").rozdeliť Súbor.otvorené ("test.txt "," w ") | f | f.napíš „# Čas.now - Nový zapísaný súbor \ n ".napísať ("test.txt "," dáta ... ", režim:" a ")

50. Ako spracovať výnimky pomocou funkcie Catch v Ruby?


Pri mnohých otázkach týkajúcich sa rozhovorov s rubínmi sa anketári pýtajú kandidátov, ako by mali zaobchádzať s výnimkami v programoch typu Ruby. Rovnako ako iné moderné jazyky, aj Ruby umožňuje programátorom zachytiť chyby za behu a zvládnuť ich bez toho, aby došlo k pádu celej aplikácie. Syntax sa však trochu líši od príkazov try-catch, ktoré sa nachádzajú v iných jazykoch.

throw: Label_Name # ... kód nebude vykonaný catch: Label_Name do # ... vykoná zodpovedajúci catch, ak dôjde k hodu. koniec

Končiace myšlienky


Keďže otázky týkajúce sa pohovoru s Ruby sa môžu líšiť v závislosti od pozície, o ktorú ste sa uchádzali, a od spoločnosti, je ťažké zahrnúť všetky možné otázky do jedného sprievodcu. Naši redaktori sa však pokúsili čo najlepšie načrtnúť najčastejšie kladené otázky týkajúce sa rozhovorov s Ruby on Rails, ktoré vám pomôžu pri príprave práce. Ak ste v Ruby nováčikom, odporúčame vám nepreskočiť priamo na zložité otázky alebo techniky. Namiesto toho by ste sa mali vždy pokúsiť osvojiť si základy a vytvárať jednoduché projekty v reálnom živote. To vám pomôže zvládnuť pohovory oveľa ľahšie. Zostaňte s nami a získate ďalších sprievodcov o náročných úlohách CS.

Hry Výukový program Shadow of the Tomb Raider pre Linux
Výukový program Shadow of the Tomb Raider pre Linux
Shadow of the Tomb Raider je dvanásty prírastok do série Tomb Raider - franšíza akčných adventúr vytvorená Eidosom Montrealom. Túto hru prijali kritic...
Hry Ako zvýšiť rýchlosť FPS v systéme Linux?
Ako zvýšiť rýchlosť FPS v systéme Linux?
FPS znamená Počet snímok za sekundu. Úlohou FPS je merať snímkovú frekvenciu pri prehrávaní videa alebo herných výkonoch. Jednoducho povedané, počet n...
Hry Najlepšie hry Oculus App Lab
Najlepšie hry Oculus App Lab
Ak ste vlastníkom náhlavnej súpravy Oculus, musíte byť informovaní o bočnom nakladaní. Sideloading je proces inštalácie neuloženého obsahu do náhlavne...