Cześć!
Przyjrzymy się dzisiaj najważniejszym technikom programowania, które wykorzystywane są wszędzie bez względu na język. Te paradygmaty programowania są spotykane tak często, że grzech ich nie znać! No bo ja inaczej poradzilibyśmy sobie z przesyłaniem danych z backendu na frontend bez obiektów? W jaki sposób zgromadzilibyśmy potrzebny wielokrotnie blok kodu, jeśli nie w funkcji?
Przyjrzyjmy się, zatem najważniejszym składowym:
1.Pętle
Pętle pozwalają nam na wykonywanie określonego kawałka kodu przez wiele razy. Najczęściej używanymi pętlami są pętla for i pętla while. Pętla for jest używana, gdy znamy liczbę iteracji, czyli obiektów, po których musimy pętlą for przejść, a pętla while jest stosowana, gdy warunek musi być spełniony lub fałszywy, np. dopóki warunek, który ma być na true jest na true, to pętla będzie się wykonywać.
Pokażę wam kilka przykładów:
let tablica = [1,2,3] for (let element = 0; element < tablica.length; element++) { log(element+1) } |
let licznik = 0 while(licznik < 5) { log (licznik) licznik++ } |
W pierwszym przykładzie pętla for wykonywać się będzie, dopóki zmienna o nazwie element nie będzie równa długości tablicy, która ma 3 elementy w sobie, więc dopóki zmienna element nie będzie równa 3, to działanie się wykona. Ważnym elementem tutaj jest też inkrementacja: czyli zwiększanie wartości o jeden -> ++ to taki skrót myślowy dla symbolu +1.
W drugim przykładzie pętla while będzie się wykonywać, dopóki nasz counter, czyli licznik nie będzie równy 5. Tutaj również mamy inkrementację.
2. Funkcje
To określone bloki kodu, które mogą się wykonać — chyba, że ich nie wywołamy. Funkcje to takie większe pudełka, w których uporządkowany jest nasz kod. To znaczy: jeśli mamy cały plik, w którym jest kod, który pobierze nam lokalizację GPS, to warto byłoby go rozbić na mniejsze kawałeczki tak, aby nic się nie plątało.
Pokażę wam to na przykładzie:
function pobierzGps() { // pobieranie gps, jakiś kod, który np. bierze z biblioteki gps współrzędne this.wyswietlGps(); } function wyswietlGps() { // wyświetlanie gps, np. przekazanie współrzędnych do zmiennej która osadzona jest w html } pobierzGps(); |
To jest kod, w którym mamy 2 funkcje. Jak zauważyliście, obydwie funkcje mają jakiś tam kod w środku, a potem są wywoływane, co sprawia, że kod się wykona. Ale w tym przypadku mamy 2 rzeczy do zrobienia: pobrać lokalizację gps i ją wyświetlić w html. Żeby to zrobić, posłużyliśmy się dwoma innymi kawałkami kodu, które wykonują się jeden po drugim. Tak właśnie działają funkcje
3. Tablice
Tablice to taki twór, który jest zbiorem jakichś elementów zawartych w nawiasie kwadratowym. To mogą być stringi, liczby, obiekty itp. W tablicach przechowuje się jakąś kolekcję danych, a dane te są indeksowane — to znaczy, że można się dostać do tych danych w tablicy po indeksie. Indeksowanie zazwyczaj zaczyna się od zera, co oznacza, że np. element o indexie 0 będzie pierwszym elementem. Są bardzo przydatne, jeśli chodzi o wszelkie zbiory danych, które są większe i bardziej skomplikowane, takie jak np. współrzędne gps, które zostały wspomniane w poprzednim przykładzie
Tablica może wyglądać np. tak:
let tablica = [ „string1”, „string2”, „string3” ] |
ale również tak:
let tablicaObiektów = [ {key: owoc, value: jabłko}, {key: warzywo, value: marchewka} ] |
4. Obiekty
Są podstawowymi jednostkami programowania obiektowego. To tzw. byty, które przechowują więcej informacji niż taki string czy number. Można się po nich literować za pomocą key i value. Może zawierać zarówno dane, jak i całe metody! Obiekty umożliwiają modelowanie danych tak, jak tego potrzebujemy bez żadnych konkretnych klas. Obiektowy styl programowania zawiera również enkapsulację, dziedziczenie i polimorfizm – to pojęcia, które warto będzie w przyszłości poznać!
Obiekt może wyglądać na przykład tak:
let object = { „imię: „Ewa”, nazwisko: „Iksińska”, wiek: 28 } |
Warto pamiętać, że bez tych pojęć w programowaniu ani rusz. To dzięki takim elementom jak obiekty i tablice łatwiej jest poruszać się w dowolnym języku oraz dzięki temu programowanie staje się bardziej intuicyjne.