Aplicare în rubin pe șine. Scrierea unui blog în Ruby on Rails

Mi-am dorit de mult să învăț Ruby on Rails la un nivel de bază. Nici un scop anume. Mai degrabă, doar pentru mine, pentru a înțelege mai bine ce este atât de special la el (spre deosebire de alte 100.500 de alte tehnologii și cadre), care vă permite să creați și să scalați rapid proiecte de Internet destul de încărcate. Un motiv secundar a fost dorința de a încerca noi abordări ale învățării. Când studiam să fiu programator, aveam doar cărți și forumuri unde poți cere sfaturi. Acum există manuale interactive și școli de programare online, un număr imens de screencast-uri (aproape un vis: să urmărești cum codează gurus), baze de cunoștințe precum stackoverflow.com și tone de coduri sursă pe GitHub, unde poți petrece ore întregi studiind codurile sursă. de profesioniști adevărați. Am decis să dedic următoarele nopți (și nu există timp în timpul zilei) încercării de noi modalități de a învăța în acțiune.

noaptea unu

Ar fi ciudat să începi să înveți Ruby on Rails fără a avea cel puțin cunoștințe minime despre Ruby direct. Am luat înainte ghidul interactiv ruby-lang.org. Dar când am trecut de ea, am uitat imediat totul. Creatorii săi promit că va dura cincisprezece minute pentru a parcurge și a stăpâni sintaxa Ruby. Mi-a luat treizeci. Adevărat, cu distragere constantă pe Twitter. Procesul arată cam așa. Ei vă spun: „Matricele în Ruby sunt declarate astfel, iar datele sunt preluate din matrice astfel. Acum să încercăm să facem o matrice și să extragem N elemente din ea. Și vom verifica.” Citiți cum este aranjat totul și încercați imediat. Ruby tu, desigur, nu vei învăța. Este mai bine să ne gândim la el ca la un curs super-express care funcționează. Totuși, Ruby în sine este foarte departe de cadrul Ruby on Rails. Am vrut să stăpânesc șinele. Din articolul nostru despre educația online, mi-am amintit cu siguranță cursul senzațional Zombie for Rails railsforzombies.org. Este la fel ca Try Ruby, un tutorial interactiv care te pornește de la început pentru a te învăța cum să pregătești aplicații feroviare. În primul rând, vă oferă o mini-lectur (în engleză, dar totul este foarte clar - activați subtitrarea) despre structura fișierelor unei aplicații feroviare, abordarea CRUD pentru lucrul cu date, explică cum este implementat modelul MVC în șine. , si asa mai departe. După fiecare videoclip, vi se oferă să finalizați sarcini pentru a consolida materialul. Totul pare simplu și de înțeles, cursul zboară neobservat într-o oră sau două (este mic). Dar! Am simțit după curs că pot scrie o aplicație feroviară? Din pacate, nu!

Noaptea a doua

Unul dintre motivele pentru care după Rails for Zombies există niște cunoștințe de bază, dar fără încredere, este mediul virtual în care are loc antrenamentul. Pe de o parte, reduce pragul de intrare la limită: nu trebuie să vă faceți griji pentru mediu. Pe de altă parte, nu creați nimic real pe parcurs - nici un „Hello World” pentru tine la sfârșit. Și cel mai important, din ce parte să abordăm creația sa, nu este clar. Din acel moment, am vrut să încerc Ruby on Rails în acțiune, instalându-l efectiv pe sistem (înainte de asta, nici nu trebuia să încerc) și să creez o aplicație simplă de la zero. Nu-mi amintesc cum, dar din întâmplare am dat peste un curs foarte reușit de screencast-uri în rusă rails.hasbrains.org. Mulțumiri autorului pentru o prezentare competentă: explică metodic în detaliu principiile aplicației feroviare, cufundându-vă în toate subtilitățile necesare pe parcurs. Pe scurt, toată a doua noapte a experimentului, am urmărit prima jumătate a celor peste treizeci de episoade ale acestor ecranizări. Imaginea mi-a rămas în sfârșit în cap, cum este generată aplicația, cum să lucrez cu consola șină, cum să creez modele și migrații, cum să actualizez modele și cum să validez datele din ele, controlere RESTful și așa mai departe. Vizionand fiecare dintre episoade, am încercat imediat totul în acțiune, construind o aplicație feroviară complet funcțională. A devenit clar cum sunt aranjate șinele în principiu.

Noaptea trei

În a treia seară au rămas ultimele episoade de screencast-uri pe care am reușit să le urmăresc dintr-o singură ședință: lucrul cu șine nu mai părea atât de sălbatic. În acest moment, cineva mi-a spus că cursul Rails for Zombies are o continuare sensibilă și mult mai profundă. Adevărat, cursul este deja plătit și este găzduit în cadrul școlii de programare Code School www.codeschool.com. Să plătești 25 de dolari pentru a avea acces la toate cursurile școlii nu a fost păcat. Acesta este costul pe lună, așa că dacă nu vă place, nu uitați să anulați abonamentul. Cursul Rails for Zombies 2 a fost cu adevărat de succes. Adevărat, multe au fost o repetare a ceea ce am văzut în screencast-uri - dar a fost chiar cam drăguț. Cinci nivele și cinci blocuri de exerciții pe care le faci chiar în consola interactivă. Până în acest moment, șinele păreau deja logice, de înțeles și utilizabile. În Code School, puteți programa direct în browser completând temele de curs

Ce urmeaza?

Am învățat să fac proiecte complexe? Nu. Dar cu siguranță mi-am dat seama de abordările folosite în șine și am înțeles confortul lor. Am învățat cum să creezi rapid aplicatii simpleși într-un timp super-scurt să-și mărească funcționalitatea cu ajutorul pietrelor prețioase scrise de comunitate. Am prins curaj și continui să studiez cu plăcere cele mai bune practici din programele Code School (acum urmăresc cursul pe teste unitare). Și sunt al naibii de încântat că tehnologia de învățare a devenit atât de ușoară.

Unul dintre primele și cele mai cuprinzătoare tutoriale Rails de pe web. Principalul avantaj este o acoperire detaliată a celor mai necesare probleme, actualizări regulate și conținut gratuit.

Adevărat, resursa este complet în engleză. Și este important să înțelegeți că acest lucru este construit sub forma unei cărți - trebuie să vă dați seama singuri de toate problemele. Din această cauză, durata și complexitatea antrenamentului nu pot fi prezise.

2. Transmisii feroviare

O altă resursă de instruire binecunoscută pe Internet. Pe el au crescut mai mult de o generație de dezvoltatori Rails. Tot în engleză.

Nu este construit ca un curs de formare holistic, ci ca o serie de screencast-uri - lecții scurte pe o anumită temă. Sunt o mulțime de lecții, poți găsi aproape orice subiect.

Din păcate, proiectul a încetat să fie actualizat în 2013.

3. Sine pentru zombi

O introducere grozavă la șine pentru începători într-un joc în stil quest, cu o atmosferă zombie. Este foarte popular printre începătorii completi.

Este convenabil că nu trebuie să instalați nimic pe computer. Toate puzzle-urile sunt rezolvate în browser. Pas cu pas, parcurgeți jocul și începeți să înțelegeți elementele de bază ale Ruby on Rails.

Dacă nu înțelegi deloc programarea, aceasta este alegerea ta. Nu există subiecte complexe în curs, nimic nu distrage atenția de la elementele de bază. În limba engleză.

3. Udemy

Colecție mare de cursuri video. Printre acestea sunt multe pe rubin și rubin pe șine. Nu are sens să dați link-uri specifice - alegeți după gustul dvs. după preț sau popularitate.

Formatul Udemy implică cursuri destul de scurte, cu accent pe lecții video. Nu vă așteptați la teme serioase sau suport operațional profesori.

4. Ruby Bursa

Un curs scurt puternic despre elementele de bază ale dezvoltării șinelor. Profesori cu experiență, program bun.

Pe curs, prezența personală a studentului este de dorit și are loc numai în marile orașe ucrainene.

5. Dezvoltare pe Ruby on Rails de la Evil Martians

O cursă intensivă de trei zile de la una dintre cele mai experimentate echipe Ruby on Rails din Rusia.

Se face rar. Este scump (judecând după recenzii, merită). Necesită prezență personală. Potrivit doar pentru programatori avansați, nu este nimic de făcut pentru începători acolo.

6. Ruby on Rails Online Intensiv de la Good Programmer

Un proiect proaspăt de la o echipă cunoscută pe Youtube pentru cursurile Ruby pentru începători.

Programul intensiv de 3 luni este conceput pentru începători completi și promite să vă facă un programator junior cu un portofoliu de nimic mai mult de 12 aplicații inteligente.

Cursul constă în lecții video, sarcini practice, sprijin profesor, webinarii regulate.

Judecând după Canalul canalului YouTubeși comentariile utilizatorilor - acești tipi știu ce fac și nu se vor plictisi de ei.

Crea aplicații reale folosind Ruby on Rails. Poate că ați încercat Ruby on Rails, dar vi s-a părut prea complicat și simțiți că aveți nevoie de o introducere mai completă. Poate că șeful sau clientul tău te-a aruncat la capăt cu un proiect Ruby on Rails și trebuie să înveți rapid despre Rails? Sau poate ați decis că doriți să adăugați dezvoltare web și Ruby on Rails la CV-ul dvs. Dacă da, ești la locul potrivit. Acest curs vă va învăța cum să construiți aplicații web cu Ruby on Rails.


De ce Ruby on Rails?

Ruby on Rails este rapid și metoda eficienta dezvoltare de aplicatii web. Simplifica sarcinile repetitive obișnuite care durează mult timp pentru a fi create în alte limbi. Este mult mai ușor să obțineți un produs de înaltă calitate finalizat în Ruby on Rails decât în ​​alte limbi.

Deoarece cadrul este matur, există o mulțime de proiecte/coduri open source pe care le puteți folosi, care sunt extrem de puternice și vă oferă cu adevărat un avantaj în construirea de aplicații web robuste.

În plus, folosește limbajul de programare Ruby. Codul Ruby se citește ca în limba engleză, ceea ce face mult mai ușor de înțeles dacă abia începeți să codificați. Cât de dinamic limbaj dactilografiat, Ruby nu are toate acele reguli stricte și rapide pe care le au alte limbi și este similar cu o limbă vorbită în multe privințe. Acest lucru vă oferă flexibilitatea de a rezolva probleme într-un mod mai uman decât alte limbaje de programare.

Ce este acoperit?

Unele dintre caracteristicile acoperite de curs includ...

Noțiuni de bază Git, „7 metode” de bază pentru șine și modul în care acestea efectuează „CRUD”, rutare șine, parametri puternici, apeluri personalizate, validare personalizată, parțiale,

Bootstrap 4, generatoare de șine, autorizare utilizator, autentificare utilizator, management de conținut, implementare, încărcare baze de date, trimitere/primire E-mail folosirea unei aplicații Rails, configurarea Sidekiq, configurarea Redis pe Heroku și un server privat, instalarea de șabloane, mesajele de validare personalizate, adăugarea de active la Rails Pipeline, încărcarea imaginilor pe dvs. propriul server, încărcarea în AWS, adăugarea WYSIWYG - ceea ce vedeți este ceea ce obțineți de la editor și multe altele!

De ce să te înscrii la acest curs - Cea mai bună decizie pe care o poți face.

Aceste cursuri folosesc exemple complexe pentru executare sarcini provocatoare. Scopul este să te facă să înțelegi exact ce faci și motivele pentru care, mai degrabă decât să tastezi codul pe care nu îl înțelegi. Niciun cod nu este ascuns deoarece este important să înțelegeți ce face fiecare linie.

După finalizarea acestui curs, veți avea abilitățile necesare pentru a vă crea propriile aplicații web folosind Ruby on Rails.

Cu cât te înscrii mai repede la acest curs, cu atât mai repede vei avea abilitățile și cunoștințele de care ai nevoie pentru a-ți crește experiența. Dezvoltatorii Ruby on Rails sunt la mare căutare! De ce să nu începeți să lucrați la Ruby on Rails astăzi?

Ruby este un limbaj de programare puternic și popular. Pe lângă popularitatea sa, se bazează un cadru binecunoscut, care vă permite să creați site-uri web cool și dinamice cu diferite subiecte. Dacă te uiți la clasamentul TIOBE, atunci limba este printre cele mai populare douăzeci de limbi din lume.

Limba a apărut în 1995 și este considerată o limbă tânără în comparație cu C sau C++, care au apărut în 1972 și, respectiv, 1983. Limbajul are o serie de avantaje și caracteristici specifice care sunt implementate exclusiv în el, dacă comparăm alte limbaje de programare populare.

Planul cursului

În timpul cursului video, veți învăța limba Ruby fără a utiliza cadre suplimentare. Cursuri suplimentare pe rubin puteti gasi pe .

În timpul cursului, vom învăța cum să instalăm și să lucrăm cu limbajul, să învățăm sintaxa Rubin(variabile, bucle, instrucțiuni condiționale), precum și lucruri mai complexe: POO, lucrul cu fișiere, excepții, metode și multe alte subiecte.


Instalarea Ruby pe Windows

Pentru a instala Ruby pe Windows, utilizați RubyInstaller, care poate fi descărcat de pe site-ul oficial la acest link. Descarca ultima versiuneși instalați-l ca pe un program normal. După finalizarea instalării, veți vedea o fereastră similară:

În această fereastră, asigurați-vă că caseta de selectare este bifată, apoi se va deschide o altă aplicație pentru instalare rubinîn sistem.

În fereastra care se deschide, introduceți pe rând 1 și apăsați Enter, după ce așteptați terminarea instalării apăsați 2 și Enter și la final executați a treia comandă apăsând 3 și Enter.

Instalarea Ruby pe un Mac

Pe un Mac, Ruby este instalat implicit, deci nu trebuie să faceți nimic în plus. Puteți verifica versiunea limbii în terminal cu următoarea comandă:

Dacă versiunea este învechită, puteți descărca una nouă. Mai întâi trebuie să descărcați managerul de versiuni Ruby. Acest lucru se face prin terminal cu comanda:

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

După instalarea managerului, reporniți terminalul. Rulați următoarea comandă:

Lista Rvm cunoscută

După repornire, puteți instala orice versiune doriți. În cazul nostru, versiunea 2.4.2 a fost instalată:

rvm install ruby-2.4.2

La sfârșit, puteți verifica din nou versiunea și dacă este încă veche, atunci setați versiunea implicită la noua versiune.

Principalul avantaj al oricărui web designer este să poată înțelege – și chiar să organizeze – ceea ce se întâmplă „în culise”.

Cel puțin, ar trebui să luați câteva lecții de programare. Nu vorbesc despre limbaje front-end precum HTML și CSS - probabil că știți deja multe din aceste lucruri. Vorbesc despre chestii din spate.

Dacă știți cum să puneți fundația, atunci puteți înțelege mai bine cum să proiectați restul site-ului. Faptul este că învățarea codificării te va face un designer mai erudit. În plus, cine nu și-ar dori să angajeze un designer care știe totul, de la design până la dezvoltarea site-ului web?

Trucul este să alegi un loc de unde începe. Învățarea programării poate fi un proces dificil, mai ales dacă alegeți unul dintre cele mai dificile limbaje precum C++ sau PHP.

Deci, care este cel mai bun loc pentru a începe? Răspuns unu: Ruby on Rails este unul dintre cele mai bune limbi programare și cadru pentru învățarea elementelor de bază ale designului.

De ce este Ruby cea mai bună alegere?

Pentru începători, Ruby este una dintre cele mai ușor de învățat limbi, mai ales dacă aveți o experiență HTML sau CSS pe care o au majoritatea designerilor.

Unul dintre primele programe pe care le vei face atunci când începi să înveți o limbă este infamul „Hello World!”, care presupune tipărirea acelor cuvinte pe ecran.

Cu limbaje precum C++, poate fi de la cinci la șapte linii de cod doar pentru a afișa acele două cuvinte. Dar dacă utilizați Ruby, va exista o singură linie și o singură comandă.

Pune „bună, lume!”

Asta e tot! Asta este tot ce ai nevoie pentru a tipări cuvintele „Bună lume!” pe ecran. Destul de ușor, nu?

Ruby on Rails este, de asemenea, un limbaj foarte uscat. Fiind unul dintre principiile dezvoltării, DRY (uscat) înseamnă „Don’t Repeat Yourself” (Nu te repeta!) – adică nu mai programa un element când poți folosi unul pe care l-ai creat deja. Acest lucru face ca Ruby să fie un limbaj de programare foarte ușor și utilizat în mod obișnuit pentru dezvoltare, deoarece își propune să realizeze un proiect rapid și eficient.

Ruby sau Rails?

Ruby este un limbaj de programare. Rails este un cadru care folosește Ruby pentru a face treaba. Cadrul Ruby on Rails este o colecție de cod prefabricat sau pre-scris care ajută la accelerarea procesului de creare a proiectelor noi. Inițial, a fost creat pentru a dezvolta instrumentul de management al proiectelor Basecamp. Pe lângă Basecamp, există și alte aplicații web populare construite cu Rails, cum ar fi 500px, ThemeForest și MyFitnessPal.

Odată ce ați înțeles cum să lucrați cu limbajul Ruby și cum să lucrați în cadrul Ruby On Rails, puteți începe să construiți aplicații web.

Ruby - în vârful popularității!

Datorită exploziei de popularitate dispozitive mobileși tehnologie care este mereu în contact, Ruby este incredibil de popular în acest moment. Și probabil așa va fi în continuare. Indexul TIOBE îl clasează pe Ruby drept al 13-lea cel mai popular limbaj de programare. În conformitate cu noile tendințe, potrivit Indeed.com, Ruby se confruntă și cu o cerere surprinzător de mare.

Index TIOBE

Oricum, indiferent dacă alegeți cererea sau popularitatea, Ruby este destul de popular. Acest lucru îl face unul dintre cele mai bune locuri pentru început, pentru că odată ce înveți limba, poți obține un loc de muncă destul de repede. Și asta înainte de a începe să înveți o altă limbă pentru a-ți extinde abilitățile.

Ruby are un punct de sprijin puternic!

Unele dintre celelalte limbi au fost mai mult alături de noi, este adevărat, dar chiar și așa, suportul și documentația palidează în comparație cu ceea ce este disponibil pentru Ruby. Alte limbi, de asemenea, nu au coeziunea comunității în jurul unui cadru puternic susținut.

Datorită cadrului Ruby On Rails, există deja o mulțime de coduri preexistente pe care le puteți folosi în propriile proiecte. Ruby Gems, biblioteca cadru Ruby, are peste 600.000 de biblioteci din care să aleagă.

De fiecare dată când înveți ceva nou, ai nevoie de multă documentație și suport. Există o mulțime de locuri de găsit materiale educaționale, tutoriale, ghiduri și chiar forumuri de întrebări și răspunsuri. Dacă întâmpinați o problemă specifică, o simplă căutare pe web o va rezolva probabil. Este important.

Documentația simplă și accesul ușor la asistență sunt esențiale atunci când învățați Limba noua; limbaj nou- când înveți de fapt ceva nou.

Ruby „permite” mai mult control asupra designului

Dacă sunteți doar un web designer, crearea unui site web poate fi un proces lung și complicat. Când vă așezați să lucrați cu un programator și să discutați despre back-end-ul necesar pentru site-ul dvs., de multe ori trebuie să sacrificeți front-end-ul pentru ca totul să funcționeze corect.

În cele din urmă, acest lucru poate duce la un produs care arată complet diferit de viziunea ta inițială. S-ar putea să nu-i pese programatorului, dar probabil că va fi problematic pentru tine.

Nu vei avea probleme de acest gen dacă te programezi singur. Nu trebuie să depindeți de alții pentru a obține un proiect finalizat și veți avea o înțelegere mult mai bună a ceea ce se poate realiza în termeni de dezvoltare. Cu siguranță a existat o perioadă sau două când obiectivele proiectului au fost prea mari pentru un programator sau o echipă de dezvoltare? Când înveți o limbă precum Ruby, te poți bucura de ușurința de a înțelege nevoile și posibilitățile, pe de altă parte.

În esență, Ruby este conceput pentru a fi utilizat în aplicații web și dezvoltare web, așa că este locul perfect pentru designeri web aspiranți. Odată ce înțelegi limba și înveți cum să folosești cadrul Ruby on Rails, vei avea mult mai mult control asupra proiectelor tale.

Unde să înveți Ruby?

Cel mai Cel mai bun mod a învăța o limbă înseamnă a te cufunda în ea și a lucra cu ea. Există multe ghiduri și tutoriale la care puteți consulta, de asemenea. Dacă aveți o memorie vizuală dezvoltată și înțelegeți mai bine prin prezentări vizuale, atunci accesați YouTube - există alegere mare videoclipuri educaționale.

Dacă doriți o experiență tradițională de învățare asemănătoare sălii de clasă, puteți învăța din site-urile web de programare. Nu trebuie să mergi la universitate sau la facultate pentru a obține o educație profesională.

Una dintre resursele mele preferate - și complet gratuită - pentru a învăța Rails este Tutorialul Rails al lui Michael Hartle. Vă va duce de la un proiect simplu la un proiect complex în ritmul dvs. și puteți începe de la început fără a avea absolut nicio cunoștință despre Ruby on Rails.

Indiferent de calea de învățare pe care o alegeți, amintiți-vă că doar practica este perfectă. Stabiliți obiective personale pentru a petrece o anumită perioadă de timp în fiecare zi lucrând cu Ruby. Rămâneți la acele obiective și fiți perseverenți. Înainte să cunoști această limbă până la sfârșit, vei fi deja un expert care poate crea niște proiecte fantastice.