Ladění se Pry: Začátečník'Průvodce

Při práci přes pre-bootcamp kurzu poskytována Flatiron School, neustále jsem se potýkal zkontrolovat a ladění návratové hodnoty v rámci iterací a vnořené datové struktury. V Learn.co curriculum představil nástroj s názvem Pry, ale měl jsem problém pochopit, jak jej implementovat do svého kódu. Až v těžké laboratoři jménem Haškovec to konečně klaplo. Poté, co bojuje přes laboratoře až příliš dlouho, konečně jsem se přinutil přečíst Pry dokumentaci a schopnost psát a ladit hash iterací okamžitě zlepšila.

pokud někdy zjistíte, že se snažíte vybudovat program Ruby, Pry by se mohl ukázat jako neocenitelný nástroj ve vašem arzenálu. Pry je mocný nástroj, který Ruby vývojáři mohou použít k ladění programů a tlačit kolem překážek. Stejně jako ostatní Ruby drahokamy, Pry gem musí být vyžadována v nastavení prostředí nebo konkrétní ruby souboru s cílem získat přístup k jeho funkčnosti. Kromě toho existuje několik pluginů Pry, včetně pry-doc a pry-byebug, které rozšiřují funkce a možnosti drahokamu. Tyto pluginy můžete považovat za samostatné drahokamy, které musí být vyžadovány ve vašem gemfile.

Jednou jste nakonfigurovali programu se Pry gem, je čas otevřít svůj kód a zažít radost, která je ladění s Pry. Pry je plný funkcí, ale následující příklady zdůrazňují to, co považuji za nejužitečnější.

REPL (Read, Evaluate, Print, Loop)

Pry může nahradit Ruby integrovaný IRB shell a staví na funkčnosti IRB REPL s některými dalšími funkcemi. IRB i Pry vám umožňují provádět příkazy Ruby v terminálu a přijímat okamžité výsledky v terminálu. Funkce REPL ve vašem terminálu je velmi užitečný nástroj, který vám umožní rychle otestovat Ruby kód bez spuštění celého programu. Řekněme například, že chcete iterovat přes pole a zjistit, jaké hodnoty jsou vráceny. Můžete jednoduše zadat pole, použít iterátor na tomto poli, a zkontrolujte, zda vaše výsledky:

Všimněte si, že zatímco oba IRB a Pry se vrátil na stejné hodnoty pro toto jednoduché iterace, jak Pry vytiskne na terminál vypadá trochu jinak. Jednou z výhod Pry oproti standardnímu IRB je jeho použití zvýraznění syntaxe. Mezi další funkce, které dávají výhodu nad IRB, patří:

  1. Tab dokončení

  2. Ladění nástroje

  3. Možnost zobrazení dokumentace

Runtime vyvolání

Možná nejvíce užitečné, rys Pry je jeho schopnost zastavit programu runtime v jeho stopách. Programátor Ruby může vyvolat konzolu pry během běhu vložením vazby řádku.vypáčit všude, kde by chtěli zastavit program. Když tlumočník narazí na vazbu.pry, Pry otevře relaci REPL v konzole, která vám umožní testovat proměnné, návratové hodnoty, iterace a další.

níže je uveden příklad užitečnosti Pry, pokud jde o disekci vnořených datových struktur ve vašich programech. Nedávno jsem přispěl k vývoji Dev job search CLI, který se spoléhal na databázi volných pracovních míst nasazených z rozhraní GitHub Jobs API. Data API byla strukturována v JSON hash a naše databázové tabulky byly naočkovány hodnotami z těchto vnořených hashů. Následující obrázek ukazuje, jak jsme vyplnili tabulku společností pro tento projekt:

Při vyplnění tabulky databáze, je důležité, že se záznamy dostanou do tabulky jsou vytvořeny s správná data! Jak bychom mohli zkontrolovat naše iterační hodnoty, abychom zajistili, že vše funguje podle očekávání? Odpověď je Pry. Vložení vazby.pry u konce „vyplnění společností“ blok nám umožňuje vyšetřovat návratové hodnoty zastavením běhu a zadání REPL zasedání:

Jakmile závazné.pry je vložen do bloku, kód musí být znovu proveden, aby se otevřela konzola Pry. Když Pry konzole se otevře v našem terminálu, jsme v bloku, který je vyplnění společností databázové tabulky a nyní jsme schopni otestovat proměnné a návratové hodnoty:

Teď máme vypáčil „naplnit společnosti“ bloku, je čas zkontrolovat některé hodnoty! Když je “ job “ vložen do konzoly pry, na obrazovku se vytiskne hash pro jedno otevření úlohy. Hash úlohy má několik klíčů včetně typu, adresy url, společnosti, company_url, umístění, názvu atd. Ujistěte se, že správné hodnoty jsou odesílány do databáze, můžeme zadat následující příkazy do Vypáčit terminálu:

Jakmile jsme zjistili, že naše iterace funguje, jak se očekávalo, závazné.pry lze odstranit a naše tabulka se naplní při příštím spuštění programu!

procházení dokumentace a zdrojového kódu

Přiznejme si to, být vývojářem znamená, že se budete silně spoléhat na Google. Často se obracím na web, abych prozkoumal Ruby metody a prohledal dokumentaci, abych se ujistil, že správně strukturuji syntaxi. Co kdybych vám řekl, že Pry nabízí plugin, který vám umožní procházet dokumentaci přímo ve vaší konzoli? Vítejte v pry-doc gem. Pry-doc umožňuje číst dokumentaci Ruby v rámci vaší aktuální relace Pry console. Nyní pro příklad. Řekněme, že si nepamatuji, jak .najít metoda funguje na hash. Mohu zadat následující příkaz do konzoly a voilà! Konzola Pry vytiskne dokumentaci k této metodě v terminálu:

Hurá! Nyní máte přístup k užitečné dokumentaci ve svém terminálu, aniž byste se spoléhali na Google!

Užitečné Slídit Příkazy

  1. pry -Otevře Pry konzoli v terminálu

  2. závazné.pry -runtime Zastaví a otevře Pry konzole

  3. exit-Ukončí aktuální smyčky

  4. východ! -Východy Pry konzole

  5. whereami -Vytiskne aktuální umístění v rámci programu

  6. show-doc-Zobrazí dokumentaci pro třídu nebo metodu třídy(s)

  7. historie-vypíše historii Pry příkazy do terminálu

  8. ls-vypíše proměnné a metody ve stávající oblast působnosti programu

  9. help-vypíše aktuální seznam k dispozici Pry příkazy

Pry výrazně zlepšila moje schopnost ladění Ruby programů, a je nástroj, který jsem vždy obrátit, když jsem se zasekla. Doufám, že vám tyto tipy a triky budou užitečné, a pamatujte si, že kdykoli jste v plevelu, vložte vazbu.vypáčit!



+