Ruby i Rails 

od podstaw

Krzysztof Kempiński

@k_kempinski

Historia Ruby i Rails

Rozdział 1

1

HISTORIA RUBY I RAILS

Historia Ruby

HISTORIA RUBY

  • powstaje w 1995 roku
  • Yukihiro "Matz" Matsumoto
  • MINASWAN (ang. Matz is nice and so we are nice)
  • inspirowany przez Perl, Smalltalk, Eiffel, Ada i Lisp
  • dynamiczny
  • wieloparadygmatowy
  • wieloplatformowy
  • wielorakie zastosowania

HISTORIA RUBY

  • od 2003 roku zyskuje na popularności dzięki Rails
  • wiele implementacji (Matz’s Ruby Interpreter)
  • aktualnie wersja 2.6.0
  • 18. miejsce w Tiobe Index
  • przyszłość to Ruby 3x3

2

HISTORIA RUBY I RAILS

Historia Rails

HISTORIA RAILS

  • Ruby on Rails to framework aplikacji webowych działających po stronie serwera
  • skrótowo Rails
  • David Heinemeier Hansson
  • grudzień 2005 roku
  • na bazie kodu Basecamp

HISTORIA RAILS

  • sierpień 2006 r. Apple ogłasza, że będzie dostarczany wraz z Mac OS X 10.5
  • wersja 2.3 wydana w 2009 roku przynosi istotne elementy: templates, Rack, engines
  • Rails 3.0 - połączenie z Merb (2008)
  • sierpień 2011 - wersja 3.1 (assets pipeline i CoffeeScript, Saas i jQuery)
  • 2013 - wersja 4.0 (ulepszenie w cachowaniu i turbolinks)

HISTORIA RAILS

  • 2016 - wersja 5.0, Action Cable i API mode
  • kwiecień 2018 - wersja 5.2 - ActiveStorage
  • najnowsza wersja to 5.2.2
  • wersja 6.0 planowana na kwiecień 2019
  • rozwój kontrolowany przez DHH

3

HISTORIA RUBY I RAILS

Nauka Ruby i  Rails

NAUKA RUBY I RAILS

PRAKTYKA

POSZERZANIE  WIEDZY

PROJEKTY OPEN SOURCE

PYTAJ

Instalacja

Rozdział 2

1

INSTALACJA

Instalacja Ruby

Instalacja RUBY z plików źródłowych

https://www.ruby-lang.org/pl/downloads/

$ ./configure
$ make
$ sudo make install

Instalacja RUBY poprzez systemy zarządzania pakietami

apt (Debian lub Ubuntu)

$ sudo apt-get install ruby

Homebrew (macOS)

$ brew install ruby

Instalacja RUBY poprzez narzędzia wspomagające

RVM (Ruby Version Manager, Linux i macOS)

$ curl -sSL https://get.rvm.io | bash -s stable

RubyInstaller (Windows)

https://rubyinstaller.org/downloads/

rvm.io

2

INSTALACJA

Instalacja Rails

Instalacja RAILS

macOS i Linux

$ gem install rails --no-ri --no-rdoc
$ rails --version

Rails 5.2.2

Instalacja RAILS

Windows i macOS

http://railsinstaller.org/en

Instalacja RAILS - dodatkowe pakiety

  • NodeJS
  • baza danych - MySQL lub PostgreSQL

Ekosystem

Rozdział 3

1

EKOSYSTEM

Konsola Ruby

2

EKOSYSTEM

Gems i bundler

3

EKOSYSTEM

Testowanie kodu

EKOSYSTEM - TESTOWANIE

Zapewnienie jakości

Testy manualne

Testy automatyczne

Testy akceptacyjne
(ang. acceptance test)

Testy jednostkowe
(ang. unit test)

rspec

cucumber

Typy danych

Rozdział 4

1

TYPY DANYCH

Liczby, stringi, symbole, stałe

2

TYPY DANYCH

Tablice i hashe

3

TYPY DANYCH

Obiekty, zmienne i wyrażenia

OBIEKTY, ZMIENNE, WYRAŻENIA

  • klasa to wzorzec, stempel
  • obiekt to odbitka, konkretny egzemplarz
  • w Ruby wszystko jest obiektem
  • Object > Kernel > BasicObject
  • #is_a?

4

TYPY DANYCH

Przedziały, wyrażenia regularne

PRZEDZIAŁY

  • reprezentują ciąg wartości
  • tworzone z wykorzystaniem X..Y lub X...Y
  • jako sekwencje
  • w konstrukcjach warunkowych
  • jako interwały

WYRAŻENIA REGULARNE

  • mini język do opisywania wzorca tekstu
  • służą wyszukiwaniu lub dopasowywaniu
  • /WZORZEC/modyfikatory

Sterowanie przebiegiem

Rozdział 5

1

EKOSYSTEM

Instrukcja "if"

INSTRUKCJA "IF"

if conditional_1
   code...
[elsif conditional_2
   code...]...
[else
   code...]
end

INSTRUKCJA "UNLESS"

unless conditional
   code
[else
   code ]
end

INSTRUKCJA "IF"

code if condition

code unless conditional

4

STEROWANIE PRZEBIEGIEM

Wyjątki

WYJĄTKI

  • ang. exceptions
  • coś poszło nie tak
  • ale gdzie i która linia kodu to spowodowała?

WYJĄTKI

  • własna klasa wyjątku
  • gdzie i jak stosować?

Copy of Kurs Ruby i Rails od podstaw

By eduweb

Copy of Kurs Ruby i Rails od podstaw

  • 335