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+
Kolejny typ jest bardzo charakterystyczny dla rubiego są to symbole
symbole tworzymy poprzez dwukropek i nazwa symbolu jakaś
nazwa możemy sobie porównać stworzenie zwykłego
stringa w przeciwieństwie do symbolu czyli stworzę sobie jakiś symbol
name i stworzę sobie może puts
tak zrobię najpierw puts i puts po
prostu string name ale też porównam jak
to wygląda naszą metodą p która nas od razu informuje o
typie więc zrobię sobie p i też name przy
pierwszym wykonaniu właściwe te dwie zmienne czy te dwa
typy niczym się nie różnią mamy name mamy name ale kiedy
zobaczymy p widzimy ten dwukropek który nam informuje o innym
typie o typie symbol jest to typ który generalnie
służy do reprezentowania jakichś nazw kiedy chcemy coś pokazać jakieś łańcuch
znaków ale nie będzie on zbyt często wyświetlany ani zbyt często modyfikowany
symbole zawsze są unikalne i możemy to dosyć
w prosty sposób też sprawdzić czyli jak stworzę sobie jakąś zmienną
czy jakiś tam tekst name i sprawdzę jego object id
taką specjalną wartość która pokazuje jaki
indeks ma dany obiekt gdzie go szukamy i stworzę sobie dokładnie
drugą taką samą wartość name i też sprawdzę object
id a następnie stworzę sobie dwa razy nasz
symbol name i też sprawdzę jego object id to zauważymy
ciekawą rzecz object id wykonuje kod o w tym
przypadku dwóch wartości tekstowych ich id możemy
powiedzieć że są dwoma różnymi tak naprawdę wartościami mimo tego że obie te wartości
składały się z takich samych liter i dla nas z naszego punktu widzenia to są dokładnie 2 takie
same stringi name co zresztą możemy łatwo sprawdzić
name równa się name prawda
tak mamy tutaj true to mimo to są zupełnie inaczej przechowywane
w pamięci w przypadku dwóch symboli o takiej samej
nazwie dwóch reprezentowanych przez ten dwukropek symboli one będą zupełnie
wskazywały na ten sam obiekt zawsze są w tym samym obiektem symbole
często są nazywane że są co typem który jest niemutowalny
mutowalny znaczy po prostu niezmienny nie jest to może do końca odpowiednie
technicznie określenie ale to prawda że nie możemy ich raz
stworzonych zmienić stwórzmy sobie tekst taką sobie
zmienną która przechowuje napis deer oczywiście
ten tekst ponieważ jest stringiem możemy mu podmienić na przykład trzeci
element na literkę a i po wyświetleniu tekst
zostanie zaktualizowany czego się spodziewamy trzecia
litera r nam się tutaj podmieniła jest coś czego oczekiwaliśmy
spróbuję zrobić dokładnie to samo ale z symbolem czyli stworzę
sobie jakiś symbol może nawet niech nazywa się dokładnie tak samo czyli
będzie to symbol deer i spróbuję mu podmienić
jedną literkę czyli rzeczywiście spróbuję dać index 3 i podać literę
a kiedy ten kod wykonam nawet
nie muszę wyświetlać bo pojawił mi się błąd nie ma takiej metody dla
symbolu po prostu nie mogę go zmienić warto te symbole
zapamiętać przydają nam się na przykład kiedy próbujemy dostać się do jakichś parametrów
z url wtedy warto użyć w symbolu ponieważ ta
nazwa zawsze będzie stała ale raczej nie twórzmy w ten sposób
stringu który chcemy wyświetlić to nie jest dobra metoda do tego to
jest symbol jest typem do specjalnych zastosowań i warto o tym zapamiętać
symbol
puts :name
puts "name"
p :name
p "name"
p "name".object_id
p "name".object_id
p "name" == "name"
p :name.object_id
p :name.object_id