View
1.611
Download
4
Category
Preview:
DESCRIPTION
Citation preview
Rafał „Świstak” ŁasochaZamCamp, 23 września 2010
Ruby / Rails
Cel prezentacji
● Zachęta do programowania w Ruby● Zalety i wady tego języka● Pobieżne porównanie z innymi językami (pod
żadnym pozorem flame-war!)● Przedstawienie `ficzerów`● Ruby on Rails
Cechy
● Bardzo wysokiego poziomu
● Open source● Interpretowany● Dynamiczny● Prosta składnia● Skalowalność● W pełni obiektowy
● Wygodny w pisaniu i czytaniu
● Przeznaczony dla człowieka, nie robotów : )
● Obsługa dowolnie dużych liczb
● „fun”
Yukihiro „Matz” Matsumoto
Mats w 1993 roku rozpoczyna pracę nad swoim językiem gdyż ma własny koncept na język, połączenie najlepszych cech z Pythona, Lispa, Smalltalka, Perla. W 2003 roku przybywa pogramistów dzięki pierwszym wersjom Ruby on Rails, a na początku 2009 roku została wydana wersja 1.9.1 wprowadzająca m.in. Unicode.
Do czego „Ruby”?
● Codzienne skrypty (coś zrobić a się nie narobić)
● Przetwarzanie tekstu, xmla (regexpy)
● Aplikacje webowe (Ruby on Rails)
● Aplikacje bazodanowe
● Większe projekty (dzięki skalowalności)
Myśli przewodnie
● „Ruby jest prosty z wyglądu, ale bardzo skomplikowany w środku, tak jak ciało ludzkie”
● „Szukałem języka potężniejszego od Perla i bardziej obiektowego od Pythona”
● Reguła KISS (Keep It Simple, Stupid)● Naturalność, swoboda, wygoda programowania
i odwzorowywania swoich myśli w kodzie źródłowym
● Zasada DRY (Don't Repeat Yourself)
Gemy
Co to są gemy? Jest to innowacyjny sposób na zarządzanie korzystanymi przez nas bibliotekami.
Dla przykładu, jeśli tworzymy aplikację i potrzebujemy biblioteki do obsługi SQLite,
wpisujemy:
# gem install sqlite3-ruby
Dodatkową zaletą jest automatyczna instalacja odpowiedniej wersji gemu do naszej wersji Ruby.
RVM – Ruby Version Management
Co to RVM?
RVM pozwala zarządzać wersjami Rubiego oraz gemami. Dzięki niemu możemu utworzyć dowolną
liczbę środowisk, w którego skład wchodzi gotowy do pracy Ruby oraz wybrane przez nas gemy. Pozwala nam to np. utworzyć oddzielne
środowiska dla poszczególnych projektów lub ich typów – aplikacje gtk, webowe, terminalowe etc.
„Wiesz, ja jestem maniakiem jeśli chodzi o piękno mojego kodu. Czasem robię przerwę i patrzę na
niego. Bo jest super : D.”Anonimowy programista
Rails...?
Ruby on Rails – powstały w 2005 roku framework do Rubiego, potem doczekał się portu do PHP. W
jego skład wchodzą 4 gemy – ActiveRecord (modele), ActionPack (widoki&kontrolery), ActiveSupport, ActionMail. Rails zawiera
wbudowany serwer (WEBrick).
Rails, a bezpieczeństwo
● Do railsa wbudowane są odpowiednie metody chroniące przed dużą częścią SQL Injection
● Filtry sprawdzające np. czy użytkownik jest zalogowany, chroniące przed dostępem do strony przez osoby nieautoryzowane lub dowolne inne warunki
● Korzystanie z CRUD
Generatory w Railsie
Dzięki nim jednym poleceniem możemy wygenerować kontrolery, modele, widoki (a nawet wszystko na raz) zainstalować jakiś feature jak autoryzacja. Brzmi niepozornie, jednak jest to potężne narzędzie pozwalające stworzyć całkiem rozbudowanego bloga za pomocą kilku poleceń, praktycznie bez ingerencji w kod źródłowy : )
Przykłady poleceń generatorów
● rails new blog● bundle install● rails server● rails generate scaffold Post name:string
title:string content:text ● rake db: create/migrate● rails generate model Comment
commenter:string body:text post:references
A HTML?
Mam nadzieję, że ktoś po powrocie do domu wklepie ruby-lang.org i powie – muszę tego
spróbować : )
Dziękuję : )
Rafał „Świstak” ŁasochaZamCamp, 23 września 2010
Recommended