Logo Obozu Naukowego

Programowanie obiektowe

Prowadzący

Czas Trwania Warsztatów

20 godzin - 25 jednostek lekcyjnych w ciągu 5 dni zajęć

Programowanie obiektowe

Wstęp do programowania obiektowego (OOP – Object-Oriented Programming)

W obecnym świecie technologia otacza nas na każdym kroku. Mało kto nie miał w choć najmniejszym stopniu styczności z komputerem. Sam komputer bez programów jest jednak zbitką plastiku, metalu i innych materiałów. To właśnie one sprawiają, że te „zaawansowane kalkulatory” ułatwiają nam życie. 

Tak jak komputery ułatwiają życie ludziom, tak koncept programowania obiektowego, powstały w połowie poprzedniego wieku (ale spopularyzowany pod jego koniec) pod wieloma względami upraszcza pracę programistów. Myślenie to opiera się o pomysł przeniesienia obiektów życia realnego (np. zwierzę i kot oraz relacji między nimi – kot to rodzaj zwierzęcia) do kodu. Celem warsztatu jest wprowadzenie w ten sposób myślenia o programowaniu, który odbiega w dużym stopniu od uczonego najczęściej w szkołach programowania strukturalnego. 

Do kogo kierowany jest ten warsztat?

Warsztat skierowany jest do licealistów chcących rozpocząć przygodę z programowaniem obiektowym, którego znajomość jest obecnie wymagana na rynku pracy od praktycznie każdego programisty. 

Do uczestnictwa w warsztatach wymagana jest znajomość programowania strukturalnego (pętle, ify, typy zmiennych, tablice itp.). Preferowana znajomość języków rodziny C, ale nie jest to konieczne (będzie wprowadzanie do składni strukturalnej części Javy). W celu sprawdzenia gotowości do udziału w warsztacie, załączamy w linku test (oraz odpowiedzi), który sprawdzi wymagane umiejętności.  

Test

Liczby

Niezbędny sprzęt i oprogramowanie

Do uczestnictwa w warsztatach wymagany jest własny laptop o minimalnych parametrach:

  • System Windows 11, 10, 8, 7 (SP1, 64 bitowy), Linux (64 bitowy) lub MacOS
  • 4 GB RAM
  • 10 GB wolnego miejsca na dysku (na środowisko programistyczne)
  • Uprawnienia administratora (do instalowania wymaganych na zajęciach pakietów)

Wymagane programy (wszystkie są darmowe oraz dostępne na prawie każdy system operacyjny):

1. IntelliJ Community: https://www.jetbrains.com/idea/download/#section=windows 

2. AdoptOpenJDK (lub inny JDK najlepiej w wersji 11): https://adoptopenjdk.net/  

Dlaczego warto wziąć udział w tym warsztacie?

Uczestnicy warsztatu:

  • poznają język Java,
  • nauczą się pojęć oraz idei programowania obiektowego,
  • poznają najpopularniejsze środowisko wykorzystywane przy pracy programisty Javy,
  • napiszą pierwszy program obiektowy,
  • nauczą się tworzyć hierarchię klas,
  • rozwiną umiejętność rozwiązywania problemów.

Program warsztatu

Dzień pierwszy

Składnia Javy, klasy, dziedziczenie

Pierwszy dzień warsztatów rozpoczniemy wstępem do Javy – zobaczymy jak w tym języku programuje się strukturalnie – jak działają ify, pętle, tablice itp. Następnie zajmiemy się podstawowymi założeniami programowania obiektowego – co to klasa, a co to obiekt? Jak zbudowana jest klasa? Co to znaczy, że klasa dziedziczy po innej klasie? Dowiemy się również, jak zapisać to wszystko w Javie oraz zapoznamy się ze środowiskiem programistycznym. 

Dzień drugi

Hermetyzacja, interfejsy

Ten dzień rozpoczniemy hermetyzacją. Dowiemy się, jak działają różne modyfikatory pól. Czym różni się pole private od protected? Zapoznamy się także z pojęciem interfejsu – pewnego rodzaju szkieletu metod klasy. Powiemy także kilka słów o typie wyliczeniowym. 

Dzień trzeci

Wyjątki

Wyjątki. Czym są i jak działają, a w ogóle po co one? Poznamy podstawowe typy wyjątków, które najczęściej możemy spotkać programując w Javie. Dowiemy się, co to znaczy obsłużyć wyjątek oraz jak to zrobić. Napiszemy również własny wyjątek oraz zastosujemy zdobytą wiedzę w praktyce. 

Dzień czwarty

GUI + początek projektu

Do tej pory wszelkie pisane przez nas programy były tekstowe. Dla programisty nie jest to nic strasznego. Widok terminala nie powinien go przerażać. Inaczej jednak zapatrują się na to osoby niezwiązane z informatyką. Tego dnia zapoznamy się z podstawami GUI (graficznego interfejsu użytkownika) w Javie. Dowiemy się jak tworzyć proste w obsłudze aplikacje okienkowe, co to Listener oraz jak go używać. Rozpoczniemy również projekty (grupowe bądź samodzielne) na dowolny temat wybrany przez uczestników.

Dzień piąty

Finalizacja projektu 

Cały ostatni dzień warsztatów poświęcimy na finalizację rozpoczętych poprzedniego dnia projektów. Na sam koniec uczestnicy zaprezentują efekty zdobytej przez nich wiedzy oraz wykonanej pracy.


Prostota jest warunkiem niezawodności.

Edsger Dijkstra