ma véget ér a szoftverfejlesztés magával ragadó tanfolyamom második hete a Flatiron iskolában. A tanterv nagy hangsúlyt fektetett a Ruby alapvető alapjainak megragadására, beleértve az objektumorientációt, az osztálymódszereket, az osztálypéldányokat, a számlálókkal, tömbökkel, kivonatokkal és objektumkapcsolatokkal való együttműködést.
a legtöbb, ha nem az összes ruby nyelv, amelyet írtam, a Test Driven Development (TDD) környezetben található. Kódot írok az Rspec tesztek átadásához, amelyeket valaki más vagy én írtam. A valóság, amely a második hét végére közeledett, az, hogy az Rspec és az informatív hibaüzenetek rendelkezésre állása nem feltételezhető. Ezért találtam mélyebb élvezetet írásban és a sikeres saját tesztek Pry, mint az én segédje.
ez a gem of all gems (igen, gem install szükséges, szójáték is szánt) egy alapvető eszköz a hibakeresés, tesztelés és csak miután egy jó öreg snoop be a kódot.
Szóval, mi a Pry?
csakúgy, mint az IRB (interaktív Ruby), a Pry is egyfajta REPL (olvasás, Értékelés, nyomtatás, hurok). Fantasztikus, mert az IRB-n keresztüli kódolás helyett közvetlenül a programba kódolhat, és beilleszthet egy ‘ kötést.pry ‘ bárhol a kódot, hogy értékelje a programot.
‘kötés beszúrása.pry ‘ be a kódot befagyasztja a program azon a ponton, a Beszúrás. Amikor a program eléri a pry-t, a program megnyit egy REPL-t, és lehetőséget kapunk arra, hogy behatoljunk a kódunkba, és megnézzük, mi folyik a motorháztető alatt.
használatához először telepítse a Pry gem
futtassa a “gem install pry” parancsot a parancssorban.
a Pry
használatával létrehoztam egy példát egy félosztályra, amely osztály-és példány metódusokat tartalmaz.
én személy szerint a ” kötelező.pry ” két gyakori esetben, természetesen, sok más olyan helyzet is van, amelyet Pry-t használna.
első példány: egy metódusba átadott argumentum értékének kíváncsisága.
tetszik, kíváncsi vagyok, mi az “alkalom”a 19. sorban?
tettem egy ” kötelező.pry ” az alján, hogy bele tudjak nyúlni ebbe a módszerbe. Megjegyzés: “kötelező.a” pry ” nem működik, ha az if/else utasításba helyezem, így a pry az állapotnyilatkozat befejezése után került elhelyezésre.
Most, amikor felhívom a” zene ” módszert a programomban, és futtatom a fájlt a terminálon, megnyílik a Pry REPL. Most tesztelhetem, hogy mi az ” alkalom “értéke a 19.sorból, ha beírom az” alkalom ” szót a terminálomba.
Hé, ez egy “születésnap”! Mivel tudjuk, hogy Születésnap van, biztosak lehetünk abban, hogy ha egyszer fut, ez a módszer visszatér “Boldog születésnapot neked, Boldog születésnapot neked”. Cuki!
második példány: a felsorolható metódusokba való betekintés
az alábbi példában az “all_party_types” osztály metódus összegyűjti az összes párt alkalomtípust, és visszaadja a párt osztályban valaha létrehozott összes alkalom tömbjét.
mivel a pry egy fantasztikus hibakereső eszköz, lehetővé teszi számunkra, hogy szinte bármit megvizsgáljunk, amit akarunk. Például, mi van benne ” párt.Minden “(31. sor), vagy” fél “(31.sor) vagy ” fél.alkalom” (32. sor)? Megadja nekünk azokat az adatokat, amelyekre számítunk?
ha azt írjuk be, amit bele akarunk fúrni, a REPL pontosan kinyomtatja, mi az. Lát,, lent. Vegye figyelembe, hogy az “elem” és az “elem”.az “alkalom” csak egy “fél” példányt jelenít meg nekünk, de ha az “exit”-et a parancssorba nyomjuk, és újra futtatjuk ezeket a parancsokat, a REPL kinyomtatja a ciklus következő példányát, és megmutatja a tömb következő értékét.
Pry Tips
mivel a csapatmunka teszi az álommunkát, itt van a négy legfontosabb tippem a Pry használatával kapcsolatban.
- igényelje, majd hívja fel a módszert, mielőtt megpróbálná feszíteni
a fájl tetején meg kell követelnie a “feszítést””, majd a “kötés” előtt először hívja fel a módszert.pry ” működni fog.
2. Kíváncsiskodó egy hurok (“exit”)
használhatja a” exit ” feszítse be a visszatérési értéke a következő hurok.
például, ha ” fél.minden “tartalmaz egy tömb 3 példánya “fél”, gépelés” exit ” a parancssorba mozog rá a következő példány a hurok. A hurok minden példányához hozzáférhet a” party ” értékhez. Varázslat!
3. Erő kilépés a hurokból (“!!!”/”kilépés!”)
ha kész az összes, hogy szaglászik körül, akkor nyomja”!!!”vagy” kilépés!”ahhoz, hogy ki pry teljesen. “kilépés ” nélkül”!”is egy lehetőség, ha nem kíváncsiskodó egy módszer egy hurok.
4. Pry alaphelyzetbe állítása (“reload-code”)
mi értelme a hibakeresésnek, ha nem tudja megváltoztatni a kódot és tesztelni útközben?
miután befejezte a kód frissítését, beírhatja a “reload-code” parancsot a parancssorba. Ez visszaállítja a pry munkamenetet az új programmal anélkül, hogy manuálisan ki kellene lépnie a pry-ből, majd újra be kell lépnie a pry-be, miután módosította a programot.
szóval, ez mind tőlem. Boldog hibakeresést!