Czy można programować nie znając żadnego języka programowania? Czy zamiast tego JAK programować możemy skupić się na samym pomyśle i na tym CO chcemy stworzyć? Jak zachęcić dzieci do programowania? O tym wszystkim powiemy sobie w dzisiejszym poście.
W poprzednich postach na blogu, pisałem o tym czym jest programowanie oraz jak wygląda program komputerowy. Mówiłem też, że aby programować należy znać języki programowania, dzięki którym porozumiemy się z komputerem. Wspomniałem też o tym, że możemy programować nawet w notatniku, ale najlepiej będzie posiadać odpowiedni program, tak zwane IDE czyli zintegrowane środowisko programistyczne.
Przykład 1 : IDE
Dzięki IDE możliwe jest dużo sprawniejsze tworzenie oprogramowania. Program ten podpowiada nam składnię, odpowiednio koloruje kod i posiada wiele przydatnych funkcji. IDE ułatwia programistom pracę udostępniając gotowe elementy czy automatycznie generując wiele linijek kodu, który zwykle piszemy.
Kolejnym krokiem takiego ułatwiania jest możliwość tworzenia programów okienkowych w środowisku graficznym. Mam na myśli to, że IDE sam generuje kod potrzebny do wyświetlenia okienka a programista tylko oprogramowuje zachowania, na przykład przycisków czyli elementów z których korzysta użytkownik danego programu. Możemy powiedzieć, że tworzymy program z klocków, przeciągając je w odpowiednie miejsca na ekranie i tylko dodając logikę typu: co się stanie po kliknięciu w dany przycisk.
Na obrazku poniżej widać fragment IDE o nazwie Visual Studio (https://visualstudio.microsoft.com). Po lewej jest okienko “Toolbox” (czyli przybornik), które zawiera listę dostępnych klocków, jakich możemy użyć. W środku jest okienko programu, który tworzymy (tam przeciągamy elementy z przybornika). Po prawej widać okienko uruchomionego programu. To faktycznie jest działający program i do jego stworzenia znajomość języka programowania nie jest wymagana. Większość automatycznie jest obsługiwana przez IDE.
Jednak, aby stworzyć poprawnie działający program musimy oprogramować zachowanie czyli na przykład co się stanie, jeśli klikniemy na określony przycisk. Istnieją jednak programy, które umożliwiają programowanie (czyli tworzenie instrukcji dla komputera) z jeszcze mniejszą znajomością języków programowania.
Przykład 2 : Scratch
Jednym z takich przykładów jest program Scratch (https://scratch.mit.edu/). Jest to strona internetowa, na której można tworzyć gry. Program jest prosty i atrakcyjny graficznie, dlatego jest tak lubiany przez dzieci.
Zachęcam do spędzenia paru chwil na tej stronie, niektóre ze stworzonych gierek są całkiem fajne 🙂
Na obrazku poniżej widać przykład takiego programu (stworzonego przez kogoś). Po lewej jest “obszar roboczny”, na którym znajdują się elementy graficzne (oraz animacja). Na środku jest przybornik z dostępnymi elementami. Możemy wybierać elementy z wielu kategorii. Po prawej jest nasz program. Czyli logiczne ułożenie elementów, jeden po drugim, z interakcjami pomiędzy nimi.
Program sprawdza różne warunki i jeżeli jakiś zostanie spełniony, to wykona się to co jest bezpośrednio pod nim. Dzięki odpowiedniemu nazwaniu tych elementów możemy programować używając niemal naszego języka mówionego. Na przykład: “kiedy tło zmieni się na
Przykład 3 : Flow / Zapier
Na podobnych zasadach oparta jest strona Microsoft Flow (https://flow.microsoft.com/). Tam również złożoną logikę możemy budować łącząc ze sobą małe klocki. Służy on do bardziej “profesjonalnych” zastosowań niż Scratch a elementy jakie mamy do dyspozycji pozwalają na korzystanie z takich serwisów jak Twitter czy Gmail.
Na obrazku poniżej widać przykładowy flow aplikacji “Flashcard Tutor” (więcej o niej tutaj: https://creyn.github.io/FlashcardTutor/). Służy ona do automatycznego wysyłania postów na Twittera ze znakami japońskiego alfabetu. Co godzinę osoby śledzące odpowiednie konta na Twitterze dostają nowe literki do nauki / przypomnienia.
Dobrze widać jak po kolei wygląda ten program. Jest bardzo prosty, polega na stopniowym przekształcaniu zmiennych przez każdy z elementów, w pętli dla różnych kursów, tak aby na końcu otrzymać gotową wiadomość do wysłania na Twitter.
Microsoft Flow jest mniej intuicyjny niż Scratch. Umożliwia jednak stworzenie naprawdę ciekawych biznesowych aplikacji. Szczególnie do automatyzacji czynności które codziennie wykonujemy.
Na podobnej zasadzie działa wiele serwisów w internecie. Jednym z nich jest popularny Zapier (https://zapier.com/). On również ma bogatą kolekcję dostępnych elementów, które możemy ze sobą łączyć.
Na koniec
Jak widać nie musimy znać języków programowania, aby tworzyć ciekawe i przydatne programy. Możemy skorzystać z różnych gotowych aplikacji (w tym stron internetowych), które nam to umożliwią. Dobrze, że są one coraz bardziej intuicyjne i atrakcyjne dla dzieci ponieważ już od najmłodszych lat warto rozwijać się w kierunku takiego analitycznego myślenia.
Dzięki takim programom jak np. Scratch uczymy dzieci istoty programowania. Przez zabawę możemy nauczyć, jak analizować dany problem i rozkładać go na czynniki pierwsze. Jak jeden skomplikowany problem rozłożyć na wiele małych i łatwych do rozwiązania problemików.
W programowaniu są różne pojęcia jak na przykład zmienne, pętle, instrukcje warunkowe. Nie jest ich dużo. Nauczenie się programowania polega nie tylko na poznaniu tych pojęć (to można zrobić w parę dni) ale głównie na tym, aby umieć łączyć je ze sobą w coraz to większe elementy.
About
Droga Programisty
Creyn Paweł Kowalik
- Dzięki za ciekawy komentarz. Są różne podejścia...April 7, 2021 - 8:41 am by creyn
- Była taka opcja w gicie by móc zamrażać pliki, gdzieś...April 5, 2021 - 7:35 am by Samu
- […] Gra Szybkie Palce! Wyłonienie zwycięzcy...August 11, 2018 - 1:26 pm by Upiększamy stronę za pomocą CSSa – Droga programisty
- […] Gra Szybkie Palce! Obsługa pojedynku. [̷...August 11, 2018 - 1:26 pm by Upiększamy stronę za pomocą CSSa – Droga programisty
Calendar
M | T | W | T | F | S | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |