od Podstaw
5 godz. 10 min · Ruby · Full-stack i Programowanie
Małgorzata ŁyczywekSoftware engineerW pierwszych lekcjach Kursu przejdziemy do omówienia konfiguracji środowiska, by następnie poznać tryb interaktywny Rubiego. Stworzymy pierwsze programy oraz poznamy składnię języka. Dowiesz się między innymi tego, czym są zmienne, jakie istnieją typy danych, jak przekazywać własne dane do programu i jak na nich operować.
Programy oraz instrukcje potrafią w znaczny sposób przyspieszyć i ułatwić pracę w Ruby. Mogą wykonywać za nas powtarzające się czynności i podejmować decyzje. Dlatego też kolejnym, naturalnym krokiem nauki języka Ruby jest poznanie struktur sterujących kodem, takich jak instrukcje warunkowe if, case, pętle while, until, for, each czy inne iteratory.
W kolejnych lekcjach poznasz następne, bardziej rozbudowane zagadnienia. Będziemy korzystać z zaawansowanych struktur danych i metod, jakie możemy na nich wykonywać. Są to metody wbudowane, a więc dostępne domyślnie w Ruby. Przejdziemy do pisania własnych metod dbając, by nasz kod był zgodny z regułą DRY. Poznamy zagadnienia związane ze strukturami specyficznymi dla języka Ruby a także praktykami, jakie są w tym języku stosowane.
Dane do programów najczęściej dotaczane są z zewnętrznego źródła, jak na przykład pobierane z pliku. Przekonasz się jak wykonywać operację na plikach w Ruby - odczytywać, zapisywać, a także w jaki sposób radzić sobie z dużymi plikami w wydajny sposób. Dowiemy się również co zrobić, gdy nasz program spotka niespodziewany błąd. Zajmiemy się przewidywaniem i zapobieganiem błędów w kodzie.
Kolejna, najbardziej obszerna część kursu to dokładne omówienie podstaw paradygmatu programowania obiektowego. Nawet jeżeli wydaje Ci się to bardzo skomplikowane - niedługo wszystko stanie się jasne. Programowanie obiektowe pozwala nam na lepsze odwzorowanie rzeczywistości, czyli tworzenie bardziej praktycznego kodu. Przyjrzymy się jak obiektowość jest realizowana w Ruby oraz jak tworzyć obiekty, klasy i jakich zasad warto przestrzegać. Na koniec dowiemy się jak rozszerzać funkcjonalność istniejących klas za pomocą modułów.
Ten kurs został przygotowany z myślą o wszystkich, którzy chcą zacząć naukę programowania Ruby od podstaw. Stworzono go szczególnie dla osób, które z pisaniem kodu nie miały jeszcze styczności. Nie jest wymagana żadna wcześniejsza wiedza na temat programowania. Jeśli chcesz szybko nauczyć się programowania i myślisz, że twoim kierunkiem jest tworzenie aplikacji webowych, to Ruby jest świetnym wyborem na start.
2.6+
W ruby najpopularniejszą pętlą będzie pętla
each zobaczmy sobie jak ona wygląda zadam jakiś zakres
od 1 do 5 kropka each nasze
słowo kluczowe czyli dla każdego elementu i podajemy tutaj
jaki będzie nasz krok czyli tu by był ten step a
następnie oczywiście musi być end żeby zamknąć a w środku możemy
podać co ma się wykonać czyli w naszym wypadku puts step chciałam
sobie po prostu wyświetlić każdy krok czyli wyświetlimy sobie od
1 do 5 ten sam kod możemy
zapisać w sposób dużo dużo prostszy czyli zrobię sobie
od 1 do 5 each i
zamiast do użyję nawias klamrowy podam blok
tutaj step naszą zmienną sterującą i puts
step żeby było widać że to jest już to drugie wykonanie
dodam sobie jakieś tam kreski i zobaczymy
że obie te instrukcje wykonały dokładnie to samo możemy
powiedzieć że nasza klamra tutaj zastępuje nam
informację tu zaczynamy a druga tu kończymy
taki zapis za pomocą tych nawiasów klamrowych
pozwala nam stworzyć log który jest
jednolinijkowy czyli dla takiego wykonanie jest jak najbardziej prawidłowe
jeśli jednak byłaby tu większa grupa instrukcji kolejne puts bla
bla bla tutaj coś dodamy 4 plus 5 wyświetlimy
jakiś wynik to musimy zostać przy wersji dla
wielolinijkowego bloku czyli przy wersji do end ale przy jednolinijkowych
blokach jak najbardziej ten zapis jest prawidłowy to krótszy
przyjemniejszy dla oka jasno pokazuje gdzie jest początek gdzie jest koniec naszego
bloku zobaczmy więc też to samo dla jakiejś tablicy
zrobię sobie tablicę z imionami dam sobie ada
julia i ruby
imiona jednocześnie nazwy też języków programowania teraz dla
każdego imienia mogę sprawdzić czy mogę wyświetlić
jakiś komunikat czyli dla każdego może
tak tu to nazwę names a tu będę wykonywała dla każdego
imienia osobno liczba mnoga nam się przyda czyli
teraz dla każdego imienia z imion wyświetlę puts hello
interpolacja name i wykrzyknik zapisuję
wykonam sobie i widzę hello ada hello julia
hello ruby i oczywiście to również
możemy zapisać w jednej linii czyli ćwiczeniowo od razu zobaczmy
jak to by wyglądało each otwieram klamrę może
zamiast name nawet krucej dam sobie n puts n
i znowu each
names bo zmieniłam nazwę naszej tablicy czyli znowu widzimy
to samo że wykonało się wyświetliło kolejne imiona jak
bym chciała żeby też powitało no to oczywiście hello interpolacja
n bo zmieniliśmy nazwę tej zmiennej sterującej
i zobaczymy dwa
razy dokładnie takie samo wyświetlanie tych imion możemy
też sobie zobaczyć taki blok w którym trochę więcej się wykonuje czyli na przykład chciałabym
zrobić sobie tablicę w której mam różne wyrażenia powiedzmy
abc tu sobie zrobię i
załóżmy że dla każdego elementu tutaj
each oczywiście do nasz
element item i dla każdego elementu wyświetlę
na przykład jego rozmiar czyli zrobię sobie puts i niech
będzie size of item i tutaj w
interpolacji wezmę item size czyli
dla każdego elementu z tablicy każdego zdania czy każdego wyrażenia sprawdzę
jaką ma długość ten string i zwrócę ile ma liter ile ma właściwie znaków bo mamy
też spację mogę to oczywiście zapisać
i wykonać czyli pierwszy ma 3 kolejny
ma 13 kmkolejny ma 21 bardzo podobnie
to też już ćwiczeniowo po prostu zapiszemy sobie jednolinijkowo each
niech będzie po prostu i
sobie zrobię dokładnie to sobie przekopiuję tylko
muszę zmienić teraz zmienną sterującą bo zamiast item użyłam i i
znowu mamy dokładnie to samo widzimy dwa razy tam
żebyście to poćwiczyli żebyście się opatrzyli z zapisem który posiada te klamry
jest bardzo charakterystyczne dla języka ruby i jeszcze ostatnia
rzecz którą chcę pokazać przy okazji pętli each jest wiele pętli które zaczynają się
each coś tam to możecie sprawdzić w każdej chwili w dokumentacji jedną
z takich pętli jest each with index each
with index i
teraz ona przyjmuje dwa parametry ten kod może
powyżej zakomentuje żeby było widać możemy
tutaj podać po pierwsze element czy nasz item a drugie to
będzie index index i teraz
możemy sobie wyświetlić puts na przykład
item id dwukropek i podamy
mu tutaj index i może
tutaj jeszcze no i oczywiście musi być zakończenie czyli teraz będziemy
dla każdego elementu naszej tablicy po pierwsze wyświetlać ten element a po
drugie wyświetlać jaki on ma indeks tu się zastanawiam czy to nie będzie za długie
przy ostatnim zdaniu więc może sobie zrobię item przecinek
i to będzie id dzięki temu pojawi nam się znak nowej linii czyli
po wykonaniu widzimy po pierwsze abc ma index 0 w naszej
tablicy co się zgadza kolejne zdanie ma indeks 1 i
ostatnie ma indeks 2 czyli możemy jednocześnie
wykonać i iterację i zwróci nam pod którymi wartościami
w tablicy a nasze zdania się znajdują
each_with_index · 3 min
arr = ["ABC", "Easy as 1,2,3", "As simple as do re mi"]
arr.each_with_index do |item, index|
puts item, "id: #{index}"
endeach_arr · 2 min
arr = ["ABC", "Easy as 1,2,3", "As simple as do re mi"]
arr.each do |item|
puts "size of item: #{item.size}"
end
arr.each { |i| puts "size of item: #{i.size}" }each_names · 1 min
names = ['Ada', 'Julia', 'Ruby']
names.each do |name|
puts "Hello #{name}!"
end
names.each { |n| puts "Hello #{n}!" }each
(1..5).each do |step|
puts step
end
puts "--------"
(1..5).each { |step| puts step }