Felhordás rubinban a sínen. Blog írása Ruby on Railsben

Régóta szerettem volna megtanulni a Ruby on Rails valamilyen alapszinten. Nincs konkrét cél. Inkább csak magamnak, hogy jobban megértsem, mi olyan különleges benne (ellentétben 100 500 más technológiával és keretrendszerrel), ami lehetővé teszi, hogy gyorsan létrehozzunk és méretezhessünk meglehetősen terhelt internetes projekteket. Másodlagos ok az új tanulási megközelítések kipróbálásának vágya volt. Amikor programozónak tanultam, csak könyveink és fórumaink voltak, ahol tanácsot kérhettek. Jelenleg interaktív tankönyvek és online programozási iskolák, rengeteg képernyőközvetítés (szinte álom: megnézni, hogyan kódolnak a guruk), olyan tudásbázisok, mint a stackoverflow.com és rengeteg forráskód a GitHubon, ahol órákat tölthet a forráskódok tanulmányozásával. igazi profik. Úgy döntöttem, hogy a következő néhány éjszakát (és napközben nincs időm) a tanulás új módjainak kipróbálásának szentelem a gyakorlatban.

éjszaka egy

Furcsa lenne elkezdeni a Ruby on Rails tanulását a Ruby legalább minimális ismerete nélkül. Korábban átvettem a ruby-lang.org interaktív útmutatót. De ahogy átmentem, azonnal elfelejtettem mindent. Alkotói azt ígérik, hogy tizenöt percet vesz igénybe a Ruby szintaxis elsajátítása. Harminc kellett hozzá. Igaz, folyamatos figyelemeltereléssel a Twitteren. A folyamat valahogy így néz ki. Azt mondják: „A Ruby tömbjei így vannak deklarálva, és az adatok az ilyen tömbökből származnak. Most próbáljunk meg egy tömböt készíteni és N elemet kivonni belőle. És ellenőrizzük." Elolvasod, hogyan van elrendezve minden, és azonnal kipróbálod. Ruby, te persze nem fogsz tanulni. Jobb, ha úgy tekintünk rá, mint egy szuper-expressz tanfolyamra, amely működik. Ennek ellenére maga a Ruby nagyon távol áll a Ruby on Rails keretrendszertől. El akartam sajátítani a síneket. Az online oktatásról szóló cikkünkből határozottan eszembe jutott a szenzációs Zombie for Rails railsforzombies.org tanfolyam. Ez olyan, mint a Try Ruby, egy interaktív oktatóanyag, amely elindítja a vasúti alkalmazások előkészítését. Először is tartanak egy mini előadást (angolul, de minden nagyon világos - kapcsold be a feliratokat) egy vasúti alkalmazás fájlstruktúrájáról, az adatokkal való munka CRUD megközelítéséről, elmagyarázzák, hogyan valósul meg az MVC modell sínen. , stb. Minden videó után felajánljuk, hogy végezzen el feladatokat az anyag konszolidálására. Minden egyszerűnek és érthetőnek tűnik, a pálya egy-két óra alatt észrevétlenül elrepül (kicsi). De! Éreztem a tanfolyam után, hogy tudok vasúti jelentkezést írni? Sajnos nincs!

Kettő éjszaka

Az egyik ok, amiért a Rails for Zombies után megvan némi alapismeret, de nincs bizalom, az a virtuális környezet, amelyben az edzés zajlik. Egyrészt a határra csökkenti a belépési küszöböt: nem kell aggódnia a környezet miatt. Másrészt, nem hozol létre semmi igazit az út során – a végén nincs „Hello World” számodra. És ami a legfontosabb, hogy melyik oldalról közelítsük meg létrehozását, nem világos. Ettől a pillanattól kezdve szerettem volna működés közben is kipróbálni a Ruby on Rails-t, tulajdonképpen a rendszerre telepítve (előtte nem is kellett próbálkoznom), és a semmiből létrehozni egy egyszerű alkalmazást. Nem emlékszem, hogyan, de egészen véletlenül akadtam rá egy nagyon sikeres screencast tanfolyamra az orosz rails.hasbrains.org oldalon. Köszönet a szerzőnek a hozzáértő előadásért: módszeresen, részletesen elmagyarázza a vasúti alkalmazás alapelveit, útközben minden szükséges finomságban elmerül. Röviden, a kísérlet teljes második estéjén ezeknek a képernyőközvetítéseknek több mint harminc epizódjának első felét néztem. Végre megakadt a fejemben a kép, hogy hogyan készül az alkalmazás, hogyan kell dolgozni a rail konzollal, hogyan lehet modelleket és migrációkat készíteni, hogyan frissíthetek modelleket és hogyan kell bennük adatokat validálni, RESTful vezérlők stb. Az egyes epizódokat végignézve azonnal mindent kipróbáltam, és egy teljesen működő vasúti alkalmazást készítettem. Világossá vált, hogy elvileg hogyan vannak elrendezve a sínek.

Három éjszaka

A harmadik estére maradtak a screencast utolsó epizódjai, amiket sikerült egy ülve végignéznem: már nem tűnt olyan vadnak a sínekkel való munka. Ezen a ponton valaki azt mondta nekem, hogy a Rails for Zombies tanfolyamnak van egy értelmes és sokkal mélyebb folytatása. Igaz, a tanfolyam már fizetős, és a Code School www.codeschool.com programozóiskola keretein belül zajlik. Nem volt kár 25 dollárt fizetni azért, hogy bejusson az iskola összes kurzusába. Ez a havi költség, tehát ha nem tetszik, ne felejtse el lemondani az előfizetést. A Rails for Zombies 2 tanfolyam igazán sikeres volt. Igaz, sok minden megismétlése volt annak, amit a képernyőközvetítéseken láttam – de ez még kedves is volt. Öt szint és öt gyakorlatblokk, amelyeket közvetlenül az interaktív konzolon végezhet el. Ekkor már logikusnak, érthetőnek és használhatónak tűntek a sínek. A Code Schoolban közvetlenül a böngészőben programozhat tanfolyami feladatok elvégzésével

Mi a következő lépés?

Megtanultam összetett projekteket csinálni? Nem. De határozottan felismertem a sínekben használt megközelítéseket, és megértettem azok kényelmét. Megtanulta gyorsan alkotni egyszerű alkalmazásokés szuperrövid időn belül növelni funkcionalitását a közösség által írt drágakövek segítségével. Elkaptam a bátorságot, és örömmel folytatom a Code School programok legjobb gyakorlatainak tanulmányozását (most az egységtesztekről szóló tanfolyamot nézem). És átkozottul örülök, hogy a tanulási technológia ilyen egyszerűvé vált.

Az egyik első és legátfogóbb Rails oktatóanyag az interneten. A fő előny a legszükségesebb problémák részletes ismertetése, a rendszeres frissítések és az ingyenes tartalom.

Igaz, a forrás teljesen angol nyelvű. És fontos megérteni, hogy ez egy könyv formájában épül fel - minden kérdést magának kell kitalálnia. Emiatt a képzés időtartama és összetettsége nem jelezhető előre.

2. Railcasts

Egy másik jól ismert képzési forrás az interneten. A Rails fejlesztők egynél több generációja nőtt fel rajta. Angolul is.

Nem holisztikus képzésként épül fel, hanem képernyőközvetítések sorozataként - rövid leckékként egy adott témában. Rengeteg lecke van, szinte bármilyen témát találsz.

Sajnos a projekt frissítése 2013-ban leállt.

3. Sínek zombiknak

Kickass bevezetés a sínekbe kezdőknek egy küldetés stílusú játékban zombi hangulattal. Nagyon népszerű a teljesen kezdők körében.

Kényelmes, hogy semmit sem kell telepítenie a számítógépére. Minden rejtvényt a böngészőben oldanak meg. Lépésről lépésre végigmegy a játékon, és elkezdi megérteni a Ruby on Rails alapjait.

Ha egyáltalán nem értesz a programozáshoz, ez a te döntésed. A tanfolyamon nincsenek összetett témák, semmi sem vonja el a figyelmet az alapoktól. Angolul.

3. Udemy

Videó tanfolyamok nagy gyűjteménye. Közülük sok van rubinon és rubinon a sínen. Nincs értelme konkrét linkeket megadni - válasszon ízlése szerint az ár vagy a népszerűség alapján.

Az Udemy formátum meglehetősen rövid kurzusokat foglal magában, különös tekintettel a videóleckékre. Ne számíts komoly házi feladatra ill működési támogatás tanárok.

4. Ruby Bursa

Hatékony rövid tanfolyam a Rails fejlesztés alapjairól. Tapasztalt tanárok, jó program.

A kurzuson a hallgató személyes jelenléte kívánatos és csak Ukrajna nagyvárosaiban valósul meg.

5. Fejlesztés Ruby on Railsen az Evil Marslakóktól

Háromnapos intenzív játék Oroszország egyik legtapasztaltabb Ruby on Rails csapatától.

Ritkán történik. Drága (a vélemények alapján megéri). Személyes jelenlétet igényel. Csak haladó programozók számára alkalmas, kezdőknek nincs mit tenniük.

6. Ruby on Rails Online Intensive a Good Programmertől

Friss projekt a Youtube-on a Ruby kezdőknek szóló tanfolyamairól ismert csapattól.

A 3 hónapig tartó intenzív program teljesen kezdőknek készült, és azt ígéri, hogy junior programozóvá válik, amelynek portfóliója nem több, mint 12 intelligens alkalmazás.

A tanfolyam videó leckékből, gyakorlati feladatokból, tanári támogatásból, rendszeres webináriumokból áll.

Elbírálva általa youtube csatornaés felhasználói megjegyzések - ezek a srácok tudják, mit csinálnak, és nem fognak unatkozni velük.

Teremt valódi alkalmazások Ruby on Rails használatával. Lehet, hogy kipróbáltad a Ruby on Rails-t, de túl bonyolultnak találtad, és úgy érzed, hogy teljesebb bemutatásra van szükséged. Lehet, hogy főnöke vagy ügyfele egy Ruby on Rails projekt mélységébe sodorta, és gyorsan meg kell tanulnia a Railsről? Vagy talán úgy döntött, hogy felveszi a webfejlesztést és a Ruby on Railset az önéletrajzába. Ha igen, akkor jó helyen jár. Ez a kurzus megtanítja Önnek, hogyan készítsen webes alkalmazásokat a Ruby on Rails segítségével.


Miért Ruby on Rails?

A Ruby on Rails gyors és hatékony módszer webalkalmazások fejlesztése. Leegyszerűsíti a gyakran ismétlődő feladatokat, amelyek más nyelveken történő létrehozása hosszú időt vesz igénybe. Sokkal egyszerűbb Ruby on Rails nyelven kiváló minőségű terméket készíteni, mint más nyelveken.

Mivel a keretrendszer kiforrott, rengeteg nyílt forráskódú projekt/kód használható, amelyek rendkívül hatékonyak, és valóban előnyt jelentenek a robusztus webalkalmazások felépítésében.

Ezenkívül a Ruby programozási nyelvet használja. A Ruby kód úgy olvas, mint az angol, ami sokkal könnyebbé teszi a megértést, ha éppen most kezdi el a kódolást. Milyen dinamikus gépelt nyelv, a Ruby nem rendelkezik mindazokkal a szigorú szabályokkal, mint más nyelveken, és sok tekintetben hasonlít a beszélt nyelvhez. Ez rugalmasságot biztosít a problémák emberibb megoldására, mint más programozási nyelvek.

Mire vonatkozik?

A kurzus által lefedett néhány jellemző...

Git Basics, Rails mag "7 metódus" és hogyan teljesítenek "CRUD", Rails Routing, Erős paraméterek, Egyéni visszahívások, Egyéni érvényesítés, Részlegesek,

Bootstrap 4, Rails generátorok, Felhasználó engedélyezése, Felhasználó hitelesítés, Tartalomkezelés, Telepítés, Adatbázis betöltése, Küldés/fogadás Email Rails alkalmazás használata, Sidekiq beállítása, Redis beállítása Heroku-n és egy privát szerveren, sablonok telepítése, egyéni érvényesítő üzenetek, Eszközök hozzáadása a Rails Pipeline-hoz, képek feltöltése saját szerver, feltöltés az AWS-be, WYSIWYG hozzáadása – amit látsz, azt a szerkesztőtől kapod és még sok más!

Miért érdemes beiratkozni erre a tanfolyamra? a legjobb megoldás amit megtehetsz.

Ezek a tanfolyamok használnak összetett példák a végrehajtáshoz kihívást jelentő feladatokat. A cél az, hogy megértse, pontosan mit csinál, és miért, ahelyett, hogy olyan kódot írna be, amelyet nem ért. Egyetlen kód sem marad elfedve, mivel fontos, hogy megértse az egyes sorok működését.

A tanfolyam elvégzése után rendelkezel a szükséges készségekkel, hogy saját webalkalmazásaidat Ruby on Rails segítségével készítsd el.

Minél hamarabb iratkozik fel erre a tanfolyamra, annál hamarabb rendelkezik majd a tapasztalat növeléséhez szükséges készségekkel és ismeretekkel. A Ruby on Rails fejlesztőire nagy a kereslet! Miért nem kezd el dolgozni a Ruby on Railsen még ma?

A Ruby egy erőteljes és népszerű programozási nyelv. A népszerűsége mellett egy jól ismert keretrendszer épül rá, amivel menő és dinamikus weboldalakat készíthet különböző témájú témákban. Ha megnézi a TIOBE rangsorát, akkor a nyelv a világ húsz legnépszerűbb nyelve közé tartozik.

A nyelv 1995-ben jelent meg, és fiatal nyelvnek számít az 1972-ben, illetve 1983-ban megjelent C-hez vagy C++-hoz képest. A nyelvnek számos előnye és sajátossága van, amelyeket kizárólag benne valósítanak meg, ha összehasonlítunk más népszerű programozási nyelvekkel.

Tanfolyamterv

A videó tanfolyam során további keretrendszerek használata nélkül tanulod meg a Ruby nyelvet. További tanfolyamok rubin oldalon találhatod meg.

A tanfolyam során megtanuljuk a nyelv telepítését és kezelését, megtanuljuk a szintaxist Rubin(változók, ciklusok, feltételes utasítások), valamint bonyolultabb dolgok: OOP, fájlokkal való munka, kivételek, metódusok és sok más téma.


A Ruby telepítése Windows rendszeren

A Ruby Windows rendszerre történő telepítéséhez használja a RubyInstaller, amely letölthető a hivatalos webhelyről ezen a linken. Letöltés legújabb verzióés telepítse, mint egy normál programot. A telepítés befejezése után egy hasonló ablakot fog látni:

Ebben az ablakban ellenőrizze, hogy a jelölőnégyzet be van-e jelölve, ekkor egy másik alkalmazás nyílik meg a telepítéshez rubin a rendszerbe.

A megnyíló ablakban írjuk be egymás után az 1-et, majd nyomjuk meg az Entert, miután megvárjuk a telepítés végét, nyomjuk meg a 2-t és az Entert és a végén hajtsuk végre a harmadik parancsot a 3 és az Enter megnyomásával.

A Ruby telepítése Mac-re

Macen a Ruby alapértelmezés szerint telepítve van, így nincs szükség semmi extra tennivalóra. A nyelvi verziót a terminálban a következő paranccsal ellenőrizheti:

Ha a verzió elavult, letölthet egy újat. Először le kell töltenie a Ruby verziókezelőt. Ez a terminálon keresztül történik a következő paranccsal:

Curl -L https://get.rvm.io | bash -s stabil

A menedzser telepítése után indítsa újra a terminált. Futtassa a következő parancsot:

Rvm lista ismert

Újraindítás után tetszőleges verziót telepíthet. Esetünkben a 2.4.2-es verzió került telepítésre:

rvm install ruby-2.4.2

A végén újra ellenőrizheti a verziót, és ha még mindig régi, akkor állítsa be az alapértelmezettet az új verzióra.

Minden webdesigner fő előnye, hogy képes megérteni – sőt rendszerezni –, mi történik a "színfalak mögött".

Legalább néhány programozási leckét kell venned. Nem az olyan front-end nyelvekről beszélek, mint a HTML és a CSS – valószínűleg már sokat ismersz ezekből a dolgokból. A hátsó dolgokról beszélek.

Ha tudja, hogyan kell lefektetni az alapot, akkor jobban megértheti, hogyan kell megtervezni a webhely többi részét. A tény az, hogy a kódolás megtanulásával műveltebb tervező leszel. Különben is, ki ne szeretne olyan tervezőt felvenni, aki a tervezéstől a weboldalfejlesztésig mindent tud?

A trükk az, hogy válasszon egy helyet a kezdéshez. A programozás elsajátítása nehéz folyamat lehet, különösen, ha a nehezebb nyelvek közül választasz, mint például a C++ vagy a PHP.

Tehát mi a legjobb hely a kezdéshez? Az egyik válasz: Ruby on Rails az egyik legjobb nyelvek programozás és keretrendszer a tervezés alapjainak elsajátításához.

Miért a Ruby a legjobb választás?

Kezdők számára a Ruby az egyik legkönnyebben elsajátítható nyelv, különösen akkor, ha rendelkezik a legtöbb tervezőnek megfelelő HTML- vagy CSS-tapasztalattal.

Az egyik első program, amelyet akkor készít, amikor elkezd egy nyelvet tanulni, a hírhedt „Hello World!”, amelynek során ezeket a szavakat ki kell nyomtatni a képernyőre.

Az olyan nyelveknél, mint a C++, öt-hét sornyi kód lehet, csak hogy megjelenítse ezt a két szót. De ha Rubyt használsz, akkor csak egy sor és egy parancs lesz.

A "helló, világ!"

Ez minden! Ennyi kell ahhoz, hogy kinyomtasd a "Hello world!" a képernyőn. Elég könnyű, igaz?

A Ruby on Rails szintén nagyon száraz nyelv. A DRY (dry) a fejlesztés egyik alapelveként azt jelenti, hogy "Ne ismételd magad" (Ne ismételd magad!) - vagyis ne programozzon újra egy elemet, amikor egy már létrehozott elemet használhat. Emiatt a Ruby egy nagyon könnyű és gyakran használt programozási nyelv a fejlesztéshez, mivel célja egy projekt gyors és hatékony végrehajtása.

Ruby vagy Rails?

A Ruby egy programozási nyelv. A Rails egy olyan keretrendszer, amely Rubyt használ a munka elvégzéséhez. A Ruby on Rails keretrendszer előregyártott vagy előre megírt kódok gyűjteménye, amely segít felgyorsítani az új projektek létrehozásának folyamatát. Kezdetben a Basecamp projektmenedzsment eszköz fejlesztésére hozták létre. A Basecamp mellett más népszerű webalkalmazások is léteznek Rails segítségével, mint például az 500px, a ThemeForest és a MyFitnessPal.

Miután megértette, hogyan kell dolgozni a Ruby nyelvvel, és a dolgok a Ruby On Rails keretrendszerben működnek, elkezdheti webalkalmazások építését.

Rubin - a népszerűség csúcsán!

A népszerűség robbanásszerű növekedésének köszönhetően mobil eszközökés a technológia, amely mindig kapcsolatban van, a Ruby most hihetetlenül népszerű. És valószínűleg továbbra is így lesz. A TIOBE Index a Rubyt a 13. legnépszerűbb programozási nyelvnek tartja. Az Indeed.com szerint az új trendeknek megfelelően a Ruby iránt is meglepően nagy kereslet mutatkozik.

TIOBE Index

Akárhogyan is, akár a keresletet, akár a népszerűséget választja, a Ruby nagyon népszerű. Ez teszi őt az egyikévé a legjobb helyek kezdésnek, mert ha egyszer rászoktál a nyelvre, elég gyorsan elhelyezkedhetsz. És ez még azelőtt, hogy elkezdene tanulni egy másik nyelvet, hogy bővítse készségeit.

Rubynak erős a lába!

Az igaz, hogy néhány más nyelv jobban mellettünk volt, de még így is elhalványul a támogatás és a dokumentáció ahhoz képest, ami a Ruby számára elérhető. Más nyelvekből szintén hiányzik a közösségi kohézió egy erősen támogatott keretrendszer körül.

A Ruby On Rails keretrendszernek köszönhetően már rengeteg olyan kód létezik, amelyet felhasználhat saját projektjeiben. A Ruby Gems, a Ruby keretrendszer könyvtár több mint 600 000 könyvtár közül választhat.

Minden alkalommal, amikor valami újat tanul, sok dokumentációra és támogatásra van szüksége. Rengeteg hely található oktatási anyagok, oktatóanyagokat, útmutatókat és még kérdezz-felelek fórumokat is. Ha konkrét problémába ütközik, egy egyszerű internetes keresés valószínűleg megoldja. Fontos.

Az egyszerű dokumentáció és a támogatáshoz való könnyű hozzáférés elengedhetetlen a tanulás során új nyelv- amikor valójában valami újat tanulsz.

A Ruby „lehetővé teszi” a dizájn nagyobb ellenőrzését

Ha Ön csak egy webdesigner, a weboldal létrehozása hosszú és bonyolult folyamat lehet. Amikor leül dolgozni egy programozóval, és megbeszéli a webhelyéhez szükséges háttérrendszert, gyakran fel kell áldoznia az előlapot, hogy minden megfelelően működjön.

Végső soron ez egy olyan termékhez vezethet, amely teljesen máshogy néz ki, mint az eredeti elképzelés. Lehet, hogy a programozót nem érdekli, de valószínűleg problémás lesz az Ön számára.

Nem ütközhet ilyen problémákba, ha programozza magát. Nem kell másokra támaszkodnia egy kész projekt elkészítéséhez, és sokkal jobban megérti, mit lehet elérni a fejlesztés terén. Biztos volt egy-két időszak, amikor a projekt céljai túl magasak voltak egy programozó vagy fejlesztőcsapat számára? Amikor olyan nyelvet tanul, mint a Ruby, élvezheti az igények és a lehetőségek könnyű megértését.

A Rubyt alapvetően webalkalmazásokban és webfejlesztésben való használatra tervezték, így tökéletes hely a törekvő webtervezők számára. Amint megérti a nyelvet, és megtanulja a Ruby on Rails keretrendszer használatát, sokkal jobban irányíthatja projektjeit.

Hol lehet megtanulni Rubyt?

A legtöbb A legjobb mód nyelvet tanulni annyi, mint elmerülni benne és dolgozni vele. Számos útmutató és oktatóanyag is található, amelyekre hivatkozhat. Ha fejlett vizuális memóriája van, és jobban megérti a vizuális prezentációkat, akkor lépjen a YouTube-ra – ott van nagy választék oktatási videók.

Ha hagyományos tantermi tanulási élményt szeretne, tanulhat a programozási tanulási webhelyekről. Nem kell egyetemre vagy főiskolára járnod ahhoz, hogy munkás végzettséget szerezz.

Az egyik kedvenc forrásom – és teljesen ingyenes – a Rails tanulásához Michael Hartle Rails bemutatója. Az egyszerűtől a bonyolult projektig a saját tempójában viszi el Önt, és a Ruby on Rails ismerete nélkül az elejétől kezdheti.

Nem számít, melyik tanulási utat választja, ne feledje, hogy csak a gyakorlat teszi a mestert. Tűzz ki személyes célokat, hogy minden nap egy bizonyos időt tölts Rubyval együtt. Ragaszkodj ezekhez a célokhoz, és légy kitartó. Mielőtt a végére ismerné ezt a nyelvet, már szakértő lesz, aki fantasztikus projekteket hozhat létre.