Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Informatyka
Tok studiów:
2019/2020
Kod:
RAIR-1-203-n
Wydział:
Inżynierii Mechanicznej i Robotyki
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Automatyka i Robotyka
Semestr:
2
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Niestacjonarne
Strona www:
 
Prowadzący moduł:
dr hab. inż. Banaś Marian (mbanas@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

Zapoznanie studenta z programowaniem obiektowym na przykładzie języka C++.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Zna podstawowe paradygmaty programowania (strukturalny, obiektowy i funkcyjny). Zna możliwości jakie dają programiście języki wspierające poszczególne paradygmaty. AIR1A_W12 Udział w dyskusji,
Aktywność na zajęciach
M_W002 Zna składnię języka C++ jest świadomy, które elementy języka są dziedziczone z ANSI C. Zna model projektowania struktury programu oraz programowania obiektowego (klasy, dziedziczenie i polimorfizm). Zna mechanizm strumieni, referencji oraz zarządzania pamięcią w C++, przeładowania funkcji i operatorów, szablonów funkcji oraz mechanizm zgłaszania i obsługi wyjątków. AIR1A_W12 Udział w dyskusji,
Aktywność na zajęciach
M_W003 Zna różnice pomiędzy poszczególnymi standardami języka (do C++17). AIR1A_W12 Udział w dyskusji,
Aktywność na zajęciach
M_W004 Zna podstawowe funkcje z bibliotek standardowych (w tym STL) oraz ważniejszych rozwiązań firm trzecich, dedykowanych dla języka C++. AIR1A_W12 Udział w dyskusji,
Aktywność na zajęciach
M_W005 Wie jakie są inne ważniejsze języki programowana, zna zakres ich stosowania i podstawową charakterystykę. Orientuje się w bieżących kierunkach rozwoju metod programowania. AIR1A_W12 Udział w dyskusji,
Aktywność na zajęciach
Umiejętności: potrafi
M_U001 Umie posługiwać się elementami języka C++: strumieniami (konsola, pliki, łańcuchy tekstowe), zmiennymi dynamicznymi, referencjami, adresami do funkcji, tablicami wielowymiarowymi, szablonami funkcji i funkcjami przeładowanymi. AIR1A_U04 Wykonanie ćwiczeń laboratoryjnych,
Projekt
M_U002 Umie zbudować klasę, potrafi posłużyć się mechanizmami dziedziczenia i polimorfizmu. Umie zdefiniować operatory użytkownika i posłużyć się szablonami STL. AIR1A_U04 Wykonanie ćwiczeń laboratoryjnych,
Projekt
M_U003 Umie zgłaszać i obsługiwać wyjątki. Potrafi posłużyć się bibliotekami standardowymi oraz firm trzecich, potrafi stworzyć własną bibliotekę. AIR1A_U04 Wykonanie ćwiczeń laboratoryjnych,
Projekt
M_U004 Umie zaprojektować, napisać, skompilować program w języku C++ z uwzględnieniem wymagań systemowych oraz użytkowników. AIR1A_U04 Wykonanie ćwiczeń laboratoryjnych,
Projekt
Kompetencje społeczne: jest gotów do
M_K001 Ma świadomość szybkiego postępu w technikach informacyjnych i rozumie potrzebę stałego dokształcania się w dziedzinie informatyki. AIR1A_K03, AIR1A_K02, AIR1A_K01 Aktywność na zajęciach,
Udział w dyskusji,
Zaangażowanie w pracę zespołu
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
20 12 0 8 0 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Zna podstawowe paradygmaty programowania (strukturalny, obiektowy i funkcyjny). Zna możliwości jakie dają programiście języki wspierające poszczególne paradygmaty. + - - - - - - - - - -
M_W002 Zna składnię języka C++ jest świadomy, które elementy języka są dziedziczone z ANSI C. Zna model projektowania struktury programu oraz programowania obiektowego (klasy, dziedziczenie i polimorfizm). Zna mechanizm strumieni, referencji oraz zarządzania pamięcią w C++, przeładowania funkcji i operatorów, szablonów funkcji oraz mechanizm zgłaszania i obsługi wyjątków. + - - - - - - - - - -
M_W003 Zna różnice pomiędzy poszczególnymi standardami języka (do C++17). + - - - - - - - - - -
M_W004 Zna podstawowe funkcje z bibliotek standardowych (w tym STL) oraz ważniejszych rozwiązań firm trzecich, dedykowanych dla języka C++. + - - - - - - - - - -
M_W005 Wie jakie są inne ważniejsze języki programowana, zna zakres ich stosowania i podstawową charakterystykę. Orientuje się w bieżących kierunkach rozwoju metod programowania. + - - - - - - - - - -
Umiejętności
M_U001 Umie posługiwać się elementami języka C++: strumieniami (konsola, pliki, łańcuchy tekstowe), zmiennymi dynamicznymi, referencjami, adresami do funkcji, tablicami wielowymiarowymi, szablonami funkcji i funkcjami przeładowanymi. - - + - - - - - - - -
M_U002 Umie zbudować klasę, potrafi posłużyć się mechanizmami dziedziczenia i polimorfizmu. Umie zdefiniować operatory użytkownika i posłużyć się szablonami STL. - - + - - - - - - - -
M_U003 Umie zgłaszać i obsługiwać wyjątki. Potrafi posłużyć się bibliotekami standardowymi oraz firm trzecich, potrafi stworzyć własną bibliotekę. - - + - - - - - - - -
M_U004 Umie zaprojektować, napisać, skompilować program w języku C++ z uwzględnieniem wymagań systemowych oraz użytkowników. - - + - - - - - - - -
Kompetencje społeczne
M_K001 Ma świadomość szybkiego postępu w technikach informacyjnych i rozumie potrzebę stałego dokształcania się w dziedzinie informatyki. - - + - - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 60 godz
Punkty ECTS za moduł 2 ECTS
Udział w zajęciach dydaktycznych/praktyka 20 godz
Przygotowanie do zajęć 20 godz
Samodzielne studiowanie tematyki zajęć 20 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (12h):

Wstęp do języka C++
Strumieniowa biblioteka WE/WY
Przeciążenie funkcji, referencje, zmienne dynamiczne,
Projektowanie obiektowe: klasy, obiekty
Dziedziczenie i polimorfizm
Struktury danych – kontenery STL
Mechanizm wyjątków

Ćwiczenia laboratoryjne (8h):

Tworzenie, kompilacja i debugowanie programów w języku C++
Strumieniowa biblioteka WE/WY
Referencje, przeładowanie funkcji, tablice
Programowanie obiektowe – klasy
Techniki dziedziczenia i polimorfizmu
Zagadnienia struktur danych – kontenery STL
Zgłaszanie i obsługa wyjątków
Korzystanie z bibliotek – tworzenie bibliotek użytkownika

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia laboratoryjne: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Zaliczenie wszystkich zadań z ćwiczeń laboratoryjnych.

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia laboratoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Sposób obliczania oceny końcowej:

Średnia z zaliczenia laboratoriów i kolokwium.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Rozwiązanie zadań z ćwiczeń laboratoryjnych, na których student był nieobecny na następnych zajęciach lub w innym terminie w porozumieniu z prowadzącym zajęcia.

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Znajomość języka C (np. na podstawie przedmiotu z 1 sem. : "Techniki Informatyczne")

Zalecana literatura i pomoce naukowe:

Grębosz J.: Pasja C++ : szablony, pojemniki i obsługa sytuacji wyjątkowych w języku C++. Oficyna Kallimach, Kraków 2016.
Grębosz J.: Opus magnum C++11. Programowanie w języku C++. Helion. Gliwice 2018
Banaś M.: Informatyka. Przewodnik do ćwiczeń, Kraków 2016 i późn. (cykliczne materiały dla studentów WIMiR).
Kubiak M.: C++ : zadania z programowania z przykładowymi rozwiązaniami. Helion. Gliwice 2018.
Rao S.: C++ dla każdego. Helion, Gliwice 2014.

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Banaś M.: Informatyka. Przewodnik do ćwiczeń, Kraków 2016 i późn. (cykliczne materiały dla studentów WIMiR).
Banaś M., Marczakowski P.: Oprogramowanie komputerowe do projektowania zbiorników niskociśnieniowych na podstawie normy API 620. Studencka Sesja Naukowa, AGH, Kraków 1997
Banaś M., Migdalski J.: Automatyzacja procesu badań potencjometrycznych z użyciem wielokanałowego, skompu-teryzowanego zestawu pomiarowego. Zeszyty Naukowe AGH, s. Mechanika, Kraków 2000, tom 19, 271-284.
Banaś M. Obtaining parameters of granulometric characteristics of suspension with usage computer controlled sedimentation balance. Vìsnik Nacìonal’nogo unìversitetu “L’vìvs`ka polìtehnìka” . ISSN 0321-0499. Komp’ûternì sistemi proektuvannâ. 2004 no. 501, s. 62–68
Banaś M. Computer simulations of the sedimentation process. Vidavnictvo Nacìonal’nogo unìversitetu “L’vìvs’ka polìtehnìka”. 2004. Pp. 244–247. Lviv.
Banaś M. Theoretical analysis and investigations of properties on non-grain suspensions used in design and exploitation of lamella sedimentation tanks. AGH. Kraków 2013.

Informacje dodatkowe:

Możliwość wcześniejszego zaliczenia laboratoriów na podstawie wyniku realizacji
indywidualnego zadania oraz przedstawieniu własnych osiągnięć.