Module also offered within study programmes:
General information:
Name:
Programowanie obiektowe w języku C#
Course of study:
2019/2020
Code:
RAIR-1-305-s
Faculty of:
Mechanical Engineering and Robotics
Study level:
First-cycle studies
Specialty:
-
Field of study:
Automatics and Robotics
Semester:
3
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr hab. inż. Banaś Marian (mbanas@agh.edu.pl)
Module summary

Zapoznanie studentów z programowaniem w obiektowym języku C#.

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence: is able to
M_K001 Potrafi twórczo wykorzystywać aktualnie dostępne techniki tworzenia oprogramowania do własnych potrzeb w pracy zawodowej. AIR1A_K03, AIR1A_K02, AIR1A_K01 Activity during classes,
Participation in a discussion
M_K002 Potrafi poszukiwać i dokształcać się w zakresie nowych sposobów tworzenia przyjaznego użytkownikowi oprogramowania. AIR1A_K03, AIR1A_K02, AIR1A_K01 Activity during classes,
Participation in a discussion
Skills: he can
M_U001 Potrafi wybrać właściwe dla siebie środowisko programowania obiektowego. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
M_U002 Potrafi w rozwiązywaniu własnego problemu informatycznego posłużyć się językiem C#: wykonać analizę problemu, zakodować, uruchomić i przeprowadzić proces debugowania programu konsolowego. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
M_U003 Umie posłużyć się elementami oferowanymi przez system operacyjny oraz środowisko programowania dla uzyskania przyjaznego dla użytkownika interfejsu programu. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
M_U004 Umie wybrać właściwe dla działania własnego programu środowisko uruchomieniowe. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
M_U005 Umie tworzyć programy z przejrzystym i intuicyjnym interfejsem użytkownika. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
M_U006 Umie tworzyć proste aplikacje dla urządzeń mobilnych. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
M_U007 Umie wybrać właściwe dla specyficznych w danym miejscu pracy wymagań środowisko programowania obiektowego i potrafi się nim sprawnie posłużyć dla tworzenia i konserwacji oprogramowania użytkowego. AIR1A_U04, AIR1A_U05 Project,
Execution of laboratory classes
Knowledge: he knows and understands
M_W001 Zna zasady programowania obiektowego. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W002 Zna zasady tworzenia i korzystania z klas, dziedziczenia i polimorfizmu. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W003 Wie jak stworzyć własny program w języku C#, kodując w języku C# rozwiązanie własnego problemu informatycznego. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W004 Zna podstawowe funkcjonalności frameworku .NET AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W005 Zna rozszerzone możliwości programowania obiektowego, umie korzystać i tworzyć klasy generyczne, korzystać z wyrażeń Lambda, zna i korzysta z LINQ. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W006 Zna podstawowe biblioteki C# na wybranej platformie systemowej i wie jak rozszerzyć ich możliwości. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W007 Zna zagadnienia i specyfikę programowania urządzeń telekomunikacyjnych oraz mobilnych. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
M_W008 Ma świadomość i orientację, w jakim kierunku rozwijane są obiektowe języki (i systemy) programowania. AIR1A_W10, AIR1A_W12 Activity during classes,
Participation in a discussion
Number of hours for each form of classes:
Sum (hours)
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
28 14 0 14 0 0 0 0 0 0 0 0
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Social competence
M_K001 Potrafi twórczo wykorzystywać aktualnie dostępne techniki tworzenia oprogramowania do własnych potrzeb w pracy zawodowej. + - + - - - - - - - -
M_K002 Potrafi poszukiwać i dokształcać się w zakresie nowych sposobów tworzenia przyjaznego użytkownikowi oprogramowania. + - + - - - - - - - -
Skills
M_U001 Potrafi wybrać właściwe dla siebie środowisko programowania obiektowego. - - + - - - - - - - -
M_U002 Potrafi w rozwiązywaniu własnego problemu informatycznego posłużyć się językiem C#: wykonać analizę problemu, zakodować, uruchomić i przeprowadzić proces debugowania programu konsolowego. - - + - - - - - - - -
M_U003 Umie posłużyć się elementami oferowanymi przez system operacyjny oraz środowisko programowania dla uzyskania przyjaznego dla użytkownika interfejsu programu. - - + - - - - - - - -
M_U004 Umie wybrać właściwe dla działania własnego programu środowisko uruchomieniowe. - - + - - - - - - - -
M_U005 Umie tworzyć programy z przejrzystym i intuicyjnym interfejsem użytkownika. - - + - - - - - - - -
M_U006 Umie tworzyć proste aplikacje dla urządzeń mobilnych. - - + - - - - - - - -
M_U007 Umie wybrać właściwe dla specyficznych w danym miejscu pracy wymagań środowisko programowania obiektowego i potrafi się nim sprawnie posłużyć dla tworzenia i konserwacji oprogramowania użytkowego. - - + - - - - - - - -
Knowledge
M_W001 Zna zasady programowania obiektowego. + - - - - - - - - - -
M_W002 Zna zasady tworzenia i korzystania z klas, dziedziczenia i polimorfizmu. + - - - - - - - - - -
M_W003 Wie jak stworzyć własny program w języku C#, kodując w języku C# rozwiązanie własnego problemu informatycznego. + - - - - - - - - - -
M_W004 Zna podstawowe funkcjonalności frameworku .NET + - - - - - - - - - -
M_W005 Zna rozszerzone możliwości programowania obiektowego, umie korzystać i tworzyć klasy generyczne, korzystać z wyrażeń Lambda, zna i korzysta z LINQ. + - - - - - - - - - -
M_W006 Zna podstawowe biblioteki C# na wybranej platformie systemowej i wie jak rozszerzyć ich możliwości. + - - - - - - - - - -
M_W007 Zna zagadnienia i specyfikę programowania urządzeń telekomunikacyjnych oraz mobilnych. + - - - - - - - - - -
M_W008 Ma świadomość i orientację, w jakim kierunku rozwijane są obiektowe języki (i systemy) programowania. + - - - - - - - - - -
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 75 h
Module ECTS credits 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 28 h
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 12 h
Realization of independently performed tasks 30 h
Contact hours 5 h
Module content
Lectures (14h):

Obiektowy paradygmat programowania. Powstanie języka C#, podstawy jego składni i semantyki. Klasy, elementy składowe klas, przeciążenie, polimorfizm, dziedziczenie. Operacje WE/WY biblioteki standardowej oraz interfejsu graficznego. Interferuj przyjazny użytkownikowi.
Framework .NET, Biblioteka klas WinForms. LINQ.
Kierunki rozwoju języków i systemów programowania obiektowego.

Laboratory classes (14h):

Środowisko MS Visual C#. Elementy składni języka. Framework .NET. Biblioteka kontrolek WinForms.
Przegląd standardowych kontrolek. Interfejs użytkownika – formy komunikacji.
Pobieranie danych od użytkownika, biblioteki numeryczne, prezentowanie danych użytkownikowi.
Siatki, wykresy i grafika statyczna oraz animacje. Wprowadzenie do baz danych.

Additional information
Teaching methods and techniques:
  • Lectures: 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ń.
  • Laboratory classes: 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.

Participation rules in classes:
  • Lectures:
    – Attendance is mandatory: Yes
    – Participation rules in classes: 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.
  • Laboratory classes:
    – Attendance is mandatory: Yes
    – Participation rules in classes: 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.
Method of calculating the final grade:

Ocena z indywidualnego projektu

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.

Prerequisites and additional requirements:

Wskazana znajomość języka C++

Recommended literature and teaching resources:

Grebosz J.: Opus Magnum C++ 11. 2017
Albahari J, Albahari B: C# 7.0 w pigułce. Helion. 2018
Hilyard J. c# Księga przepisów. Helion 2016
Greene J. C# Rusz głową. 2014

Scientific publications of module course instructors related to the topic of the module:

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.

Additional information:

-