Ruby on Rails Pop Alexandru Pavel Razvan Calculatoare 4

Documente similare
Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Test

Slide 1

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 3. Achizitionarea domeniilor web si a

Proiectarea Sistemelor Software Complexe

Laborator 3

Laborator 5 - Paradigme de Programare

Microsoft Word - Ansamblul software CRONIS

AdVision este un software de narrowcasting, destinat tuturor celor care administrează conţinut pe o reţea de monitoare. Fie că este vo

Inserarea culorilor in tabele

SIVECO standard template for large documents

PowerPoint Presentation

Platforma 5. 1 Introducere in MSSQL Introducere Pe parcursul ultimilor ani, se poate observa o cuplare a limbajelor de programare majore cu tipuri de

Utilizare Internet

Microsoft Word - Fisa disciplinei BD_I_IE doc

FONDUL SOCIAL EUROPEAN

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Creational design patterns

Programe derulate în ediția a treia Junior IT Fun Factory *În cadrul Junior IT Fun Factory fiecare înscriere se face pentru un program individual în f

Microsoft Word - Fisa disciplinei_BD2_DM_ doc

CABINET MINISTRU

Creational design patterns

Introducere în limbajul JavaScript

Ghid de utilizare Moodle Pentru cadre didactice

Settlement participant system

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De

Raportarea serviciilor de dializă la nivel CNAS

Entrepreneurship and Technological Management

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Biomedical Wi-Fi data transmissons

Raport tehnic şi ştiinţific final privind implementarea proiectului PN-III-P2-2.1-PED Acronim: ForVer Răzvan Diaconescu Decembrie Rez

Prezentarea calculatorului

manual_ARACIS_evaluare_experti_v5

Spitale CJAS

SEM 12 - Crearea conținutului Web (HTML, CSS, WordPress)

Paradigme de Programare


COMISIA EUROPEANĂ DIRECȚIA GENERALĂ INFORMATICĂ Componenta de aplicare a politicii WiFi4EU Ghid de implementare v1.0 Cuprins 1. Introducere Br

manual_ARACIS_evaluare_experti_v4

Gestiunea serviciilor de recuperare a sănătăţii în sanatorii şi preventorii

tehnologii web

PHP (II)

Ghid de conectare la web MFC-J825DW MFC-J835DW DCP-J925DW Versiunea 0 ROM

Curs 10 - Automatizarea scalabila a sistemelor

Procesarea documentelor XML in Linux


Lucrarea 10

Gestiunea serviciilor de recuperare a sănătăţii în sanatorii şi preventorii

Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (ve

Facultatea de Științe Politice, Administrative și ale Comunicării Str. Traian Moșoiu nr. 71 Cluj-Napoca, RO Tel.: Fax:

Microsoft Word - barcan.doc

PowerPoint Presentation

PROGRAMARE ORIENTATA PE OBIECTE

Packet Tracer - Configurarea ACL-urilor extinse - Scenariul 1 Topologie Tabela de Adresare R1 Echipament Interfață Adresă IP Masca de subreţea Default

Web Social FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 2. Dezvoltarea blogurilor prin intermediul WordPress.com PREZE

Paradigme de Programare

Microsoft PowerPoint - Prezentarea_programelor_de_studii_de_licenta_2019

AcadNet Etapa Naţională Secțiunea calculatoare, clasele Citiți cu atenție toate subiectele înainte de a începe rezolvarea. Aveți 15 minut

Gestionarea I/E

Instructiuni pt. depunerea declaratiei A4200 Declaratia A4200 se construieste pornind de la o colectie de fisiere XML, reprezentand fiecare o zi fisca

E_d_Informatica_sp_SN_2014_bar_10_LRO

Lucrarea nr. 2 Aplicaţii de tip client Mihai IVANOVICI 6 martie 2006 Scopul acestei lucrări este de a vă familiariza cu modulul Python socket şi cu mo

proiectarea bazelor de date

Microsoft Word - Catalin Vrabie_Elemente de IT paginat VOL. II.doc

Laborator - Configurarea Rutelor IPv4 Statice și Implicite Topologie Tabela de Adresare Echipame nt Interfață Adresă IP Masca de subreţea Default Gate

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 4. Dezvoltarea site-urilor si blog-uri

GHID PENTRU RESETAREA PAROLEI Informații Generale Din dorința de a facilita procesul de autentificare, chiar dacă nu mai cunoașteti datele necesare, a

Termeni de utilizare specifici produselor

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

Sisteme de calcul în timp real

CURS

Ghid Web connect DCP-J4120DW MFC-J4420DW MFC-J4620DW MFC-J5320DW MFC-J5620DW MFC-J5720DW

Информационная система персонализации, печати и учета документов об образовании

1. Depistarea setarilor de retea necesare Primul pas pentru introducerea in retea a DVR-ului este determinarea setarilor de retea cu care lucreaza ret

A.E.F. - suport laborator nr.5 sem.ii Analiza suprafețelor prin utilizarea elementelor 2D În acest laborator sunt atinse următoarele aspecte: realizar

Addendum Syllabus 6 Microsoft Word 2016 REF Syllabus 6.0 Crearea unui document nou pe baza unor șabloane disponibile local sau online Microsoft

Ghid utilizare aplicație PARKING BUCUREȘTI Aplicație PARKING BUCUREȘTI 1

Asupra optimizării procesării cererilor MYSQL pentru creşterea calităţii

Modulul 1 M1-2.3 Protocoale şi servicii în reţea În acest capitol ne propunem să abordăm următoarele: Protocoalele şi aplicaţiile folosite în reţelele

WorkCentre M123/M128, WorkCentre Pro 123/128, CopyCentre C123/128 Ghid de Configurare Rapidă pentru Reţea

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 1. Google Drive, Google Calendar, WeTr

Programarea candidatilor la Examenul de Diploma Tehnologia Informatiei - Craiova 3-4 iulie 2014

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ Universitatea Babeş-Bolyai Cluj-Napoca superior 1.2 Facultatea Matematică şi Info

Sisteme de operare

PowerPoint Presentation

Ghid pre-inregistrare a Agentilor Economici si a Unitatilor in sistemul de trasabilitate pentru produsele din tutun. Se acceseaza platforma web:

Laborator02

Microsoft Word _POO_Lab_1_Modificari_v01.htm

HONEYWELL AWARD

Unitatea: Școala Gimnazială Disciplina: Informatică și TIC Programa școlară aprobată cu OMEN nr.3393 din Profesor: prof. Clasa: a V-a A, B

LABORATOR 1. Stocarea si partajarea fisierelor online cu ajutorul Dropbox, WeTransfer.com PREZENTAREA LUCRĂRII DE LABORATOR Lucrarea de laborator îşi

PowerPoint-Präsentation

Utilizare Internet

PROIECT BIG DATA PENTRU EXPLORAREA POTENȚIALULUI DE UTILIZARE A UNOR SURSE DE DATE ALTERNATIVE ÎN DEZVOLTAREA DE STATISTICI EXPERIMENTALE ABSTRACT Exp

Laborator Activities În sistemul Android activitățile reprezintă echivalentul ferestrelor din Windows, fiind clase care extind clasa Activity. Spre de

Limbaje de Programare Curs 8 – Fisiere

Microsoft PowerPoint - TDS5-RO.ppt

PowerPoint Presentation

Top

Facultatea de Științe Politice, Administrative și ale Comunicării Str. Traian Moșoiu nr. 71 Cluj-Napoca, RO Tel.: Fax:

Transcriere:

Ruby on Rails Pop Alexandru Pavel Razvan Calculatoare 4

Ruby Rails Aparut in 1995 Limbaj de programare Este gratuit si open source Foloseste librarii numite gem -uri Foloseste doar programarea orientata pe obiecte Ver 2.2.2 (13 aprilie 2015) Ruby VS Rails Aparut in 2004 Framework web bazat pe ruby Este gratuit si open source Este defapt un gem pentru creearea unui server Foloseste arhitectura ModelView-Controller Ver 4.2.1 (19 martie 2015)

Sintaxa este foarte similara cu python si perl, ajutand la scrierea codului rapid si eficient Contine un garbage collector Contine by default un irb(interactive Ruby Shell) in care se poate scrie cod ruby si se porneste simplu, tastand irb in consola/terminal Fiindca orice variabila sau constanta e un obiect, ruby permite diferite apeluri direct pe numere care au clasa Integer(de exemplu 2.to_f ) Variabilele care incep cu @ sunt variabile de instanta, iar cele cu @@ sunt variabile de clasa Nu exista notiunea de caracter, deci ex si ex sunt aproape identice Nu este srongly-typed deci nu avem nevoie sa instantiem variabile cu o anumita clasa Introducere Ruby

Aplicatia este apelata prin intermediul browserului cu un url Web Serverul(Webrick, Unicorn, Thin, Passenger, Puma, Mongrel) primeste apelul si verifica daca exista ruta valida care are atasat un controller si o metoda din controller Controllerul aduce informatii de la baza de date(mysql, MongoDB, PostgreSQL) si le pune in variabile de instanta Introduce datele in fisierul din view(html, haml care poate contine cod javascript, coffescript, css, scss, sass) si le trimite browserului, care randeaza pe ecran htmlul final Introducere Rails

Assets: fisiere media, javascript si css care sunt inserate in html Controllers: fisiere care contin clase si metode pentru controller(application_controller.rb este principalul controller de la care vor fi mostenite celelalte controllere); acestea pot fi raspunde cu mai multe tipuri de formate: html, json, xml, pdf, xls Helpers: clase si metode care sunt folosite in view pentru a reduce repetitiile si a face codul cat mai mic si concis Mailers: clase si metode care mostenesc modulul ActionMailer(este un gem instalat implicit) si contin logica trimiterii emailurilor Structura directoarelor

Models: clase si metode care mostenesc deobicei modulul ActiveRecord(este un gem instalat implicit pentru MySQL si PostgreSQL) si contin logica accesarii bazei de date si manipulare a datelor Views: fisiere html.erb(extensia prin care putem introduce cod ruby in html), haml Views/layouts: fisiere template pentru a ingloba alte fisiere html, folosite cel mai des pentru header si footer; astfel celelalte fisiere din view vor contine doar date referitoare la logica controllerului in care se afla, evitand repetitia tagurior de <head></head>, <body></body>, header si footer. Config: fisiere rb, yaml sau yml care contin diferite configurari precum date de autentificare si conectare la baza de date, la servicii externe, configurarea diferielor medii de dezvoltare(development, staging, test, production), constante, configurari pentru gemuri Db: fisiere ruby care permit modificarea structurii bazei de date si care sunt executate cu comanda rake db:migrate

Assets: fisiere media, javascript si css care sunt inserate in html Controllers: fisiere care contin clase si metode pentru controller(application_controller.rb este principalul controller de la care vor fi mostenite celelalte controllere); acestea pot fi raspunde cu mai multe tipuri de formate: html, json, xml, pdf, xls Helpers: clase si metode care sunt folosite in view pentru a reduce repetitiile si a face codul cat mai mic si concis Mailers: clase si metode care mostenesc modulul ActionMailer(este un gem instalat implicit) si contin logica trimiterii emailurilor Structura directoarelor

Doc: fisiere pentru documentatia aplicatiei Gemfile si Gemfile.lock: contin gemurile importate in aplicatie si instalate pe sistemul de calcul(folosind comanda bundle install ) deobicei din surse externe(cele mai des intalnite sunt rubygems.org si github.com) Lib, script: librarii, scripturi interne Public: fisiere statice care pot fi accesate fara arhitectura MVC si care nu au nevoie de rute predefinite(fisierul de eroare 404.html) Test: fisiere ruby pentru testarea tuturor metodelor folosite in aplicatie care folosesc mediul testing si o alta baza de date, care nu contine date, doar structura celei originale Log: fisiere cu extensia log, care contin date de logare Tmp: fisiere temporare precum cele cu extensia pid, care contin date referitoare la procesele pornite in aplicatie

Crearea unei aplicatii rails

Generare resurse

Generare structura baza de date

Fisierul schema.rb contine structura bazei de date

Rularea testelor cu rspec Si Crearea unui controller

Fisierul routes.rb

Fisierul database.yml

Fisierul Gemfile

Un controller care returneaza diferite tipuri de date in functie de formatul cerut

Un fisier din views care randeaza un form ce contine variabile calculate in controller. Acesta este va fi submis catre urlul mapat de catre rute (comada rake routes ne afiseaza toate maparile la care se adauga terminatia _path )

Un model