Programowanie obiektowe
Informacje ogólne
Kod przedmiotu: | WMTAKCSI-PO |
Kod Erasmus / ISCED: | (brak danych) / (brak danych) |
Nazwa przedmiotu: | Programowanie obiektowe |
Jednostka: | Wydział Mechatroniki, Uzbrojenia i Lotnictwa |
Grupy: | |
Punkty ECTS i inne: |
(brak)
|
Język prowadzenia: | polski |
Forma studiów: | stacjonarne |
Rodzaj studiów: | I stopnia |
Rodzaj przedmiotu: | obowiązkowy |
Forma zajęć liczba godzin/rygor: | W 10/+, C 6/zal, L 10/+, Proj 12/+, razem: 38 godz. |
Przedmioty wprowadzające: | Informatyka I/ zna podstawowe pojęcia z dziedziny informatyki, instrukcje, funkcje, typy danych i operacje na nich w języku wysokiego poziomu; potrafi opracować dokumentację zadania inżynierskiego z wykorzystaniem funkcji edytora tekstu oraz arkusza kalkulacyjnego |
Autor: | mjr dr inż. Robert Paszkowski |
Bilans ECTS: | 1. Udział w wykładach / 16 2. Udział w laboratoriach / 10 3. Udział w ćwiczeniach / 12 4. Samodzielne studiowanie tematyki wykładów i przygotowanie do zaliczenia/ 10 5. Samodzielne przygotowanie do laboratoriów / 30 6. Samodzielne przygotowanie do ćwiczeń / 18 7. Udział w zajęciach projektowych / 12 8. Samodzielna realizacja projektu / 60 9. Udział w konsultacjach / 2 Sumaryczne obciążenie pracą studenta: 170 godz./ 5 ECTS Zajęcia z udziałem nauczycieli (1+2+3+7+9): 52 godz./ 2 ECTS Zajęcia powiązane z działalnością naukową/ 1 ECTS |
Skrócony opis: |
Wprowadzenie do programowania zorientowanego obiektowo, słuchacze pogłębiają wiedzę o językach programowania i algorytmice. Praktycznie zapoznają się z tworzeniem programów w środowisku Visual Studio. Operatory arytmetyczne i logiczne. Obiekty. Zmienne i ich typy oraz zasięg. przekazanie zmiennej przez wartość i referencję. Instrukcje sterujące: pętle i iteracje. Funkcje. Atrybuty obiektów. Tablice - deklarowanie, przechowywanie i przekazywanie do funkcji. Tablice wielowymiarowe. Wskaźniki. Klasy obiektów. Konstruktory. Dziedziczenie i polimorfizm obiektów. |
Pełny opis: |
Wykłady / metoda werbalno-wizualna 1. Wstępne wiadomości o obiektowym języku projektowania. Typy danych. Deklaracje zmiennych i obiektów. /2 Definicje programowania zorientowanego obiektowo, pojęcie obiektu, pola i metody. Przykłady języków obiektowych. Popularne typy danych, sposoby deklarowania i inicjowania danych. Pojęcie zasięgu zmiennych. 2. Pojęcie funkcji: deklaracja i przekazanie parametrów. Instrukcje i wyrażenia. /2 Wprowadzenie pojęcia funkcji. Ciało funkcji i jej prototyp. Przekazanie argumentów poprzez wartość i referencję. Przyjmowanie argumentów domyślnych przez funkcję. 3. Strumienie wejścia – wyjścia, pętle, instrukcje warunkowe w języku C++./2 Omówienia działania obsługi strumieni wejściowych i wyjściowych. Typy pętli i ich zastosowanie: pętle o znanej ilości powtórzeń, pętle iteracyjne o nieznanej wstępnie ilości powtórzeń. Operator trójargumentowy i instrukcja warunkowa w języku C++. Instrukcja wielokrotnego wyboru. 4. Klasy i obiekty w programowaniu obiektowym. Konstruktory. /2 Właściwości obiektu oraz metody. Klasa obiektu, definicja oraz kontrola dostępu do składowych klasy. Konstruktory jawne i domyślne. Destruktory. 5. Tablice statyczne i dynamiczne. Wskaźniki. /2 Tablice jednowymiarowe, indeksowanie tablic. Przeglądanie wartości elementów tablic, pobieranie i nadpisywanie wartości w tablicach. Definiowanie tablicy dynamicznej, odwołanie do jej wartości, zmiana rozmiaru tablicy. Definiowanie tablic wielowymiarowych, praca z wartościami elementów tablic wielowymiarowych. 6. Dziedziczenie i polimorfizm w programowaniu obiektowym./2 Łączenie klas (metod i pól) za pomocą dziedziczenia. Pojęcie klasy bazowej i klasy pochodnej, dziedziczenia wielokrotnego. Omówienie typów dziedziczenia (publiczne, chronione i prywatne). Praktyczne wykorzystanie dziedziczonych metod i wartości. Pojęcie polimorfizmu. 7. Zapis i wymiana danych. Wykorzystanie wskaźników i referencji. /2 Omówienie biblioteki do obsługi strumieni plików. Tryb dostępu, pojęcie kursora i określanie położenia w pliku. Wczytywanie danych z pliku, separacja zmiennych. Przechowywanie adresu innej zmiennej w pamięci - pobieranie a modyfikacja wartości. Operator pobrania adresu i operator wyłuskania wartości zmiennej. 8. Programowanie z wykorzystaniem GUI: kontrolki i komponenty. Interakcja z użytkownikiem./2 Graficzny interfejs użytkownika. Wstawianie kontrolek standardowych w Visual Studio. programowanie zdarzeń i modyfikowanie właściwości. Typowe komponenty, tworzenie formularzy, pobieranie danych i wykorzystanie we własnych programach. Okna modalne i niemodalne, otwieranie dodatkowych okien programu. Wykorzystanie popularnych komponentów (klas) systemu do obsługi programu. Ćwiczenia / metoda werbalno-praktyczna 1. Deklaracje, instrukcje i wyrażenia./2 Deklaracje i definiowanie zmiennych, przypisanie zmiennej do określonych typów. Rzutowanie typów. Pojęcie zasięgu zmiennej i praktyczne zastosowanie przeciążenia nazw. Zmienne łańcuchowe, stałe oraz operatory. 2. Sterowanie wykonaniem programu. Prawda i fałsz. Pętle oraz instrukcje przerwania wykonania. /2 Instrukcja warunkowa a instrukcja wielokrotnego wyboru (wielowariantowego). Pętle for i switch. Zastosowanie instrukcji while oraz do..while. Instrukcje opuszczenia pętli, różnice pomiędzy break a continue w instrukcjach iteracyjnych. 3. Rozwiązanie problemu z wykorzystaniem poznanych typów pętli. /4 Praktyczne zastosowanie poznanych typów pętli do sterowania przebiegiem programu. Licznik przebiegu pętli iteracyjnych. Pętle nieskończone. 4. Wybrane algorytmy w obiektowym języku programowania. Sortowanie. /4 Programowanie z wykorzystaniem algorytmów i metod numerycznych. Algorytmy sortowania danych tablicowych. Sortowanie par liczb. Złożoność obliczeniowa poszczególnych algorytmów sortowania. ………. Laboratoria / metoda werbalno-praktyczna z wykorzystaniem komputerów – samodzielne opracowanie i uruchomienie programów 1. Praca w zintegrowanym środowisku programistycznym. Definicje i typy zmiennych. /2 Konfigurowanie środowiska programistycznego. Projekt aplikacji konsolowej. Definiowanie własnych zmiennych i obsługa strumieni danych wejścia/wyjścia. operowanie na zmiennych użytkownika - poprawne definiowanie zmiennych określonych typów, rzutowanie typów zmiennych. 2. Abstrakcyjne typy danych, pliki nagłówkowe. Opracowanie programu./2 Typy wbudowane, definiowanie własnych struktur danych. Dołączanie zewnętrznych bibliotek. Opracowanie programów wykonujących instrukcje iteracyjne. Obsługa pętli i instrukcji opuszczenia pętli. 3. Przeładowanie operatorów. /2 Wykorzystanie wbudowanych operatorów do wykonania działań na własnych typach użytkownika. 4. Używanie strumieni wejścia – wyjścia. Odczytywanie i zapisywanie plików. Opracowanie programu z wykorzystaniem funkcji. /2 Zapis danych do pliku. Pojęcie kursora w pliku, przeskok na koniec zbioru. Tworzenie powiązania z istniejącym plikiem i tworzenie nowego pliku. Odczytywanie blokowe danych z pliku, wypełnianie tablic. 5. Programowanie z wykorzystaniem Graficznego Interfejsu Użytkownika. Rzutowanie typów, operacje plikowe, zastosowanie komponentów GUI. /2 Opracowanie własnego programu z wykorzystaniem zintegrowanego środowiska programistycznego. Program z graficznym interfejsem użytkownika. Wykorzystanie kontrolek ze środowiska Visual Studio. Obsługa zdarzeń, operowanie na danych wprowadzonych przez użytkownika. Projekt / metoda praktyczna 1. Zadanie problemowe: zaprojektowania i napisanie kodu aplikacji realizującej zadany problem do wykonania w grupie. Opracowanie założeń i wymagań. Prezentacja założeń i wymagań / 4 2. Prezentacja algorytmu działania aplikacji, przedstawienie rozwiązania problemu i podziału ról programistów w grupie projektowej./ 4 3. Praktyczna implementacja opracowanego kodu aplikacji, testy oprogramowania, opracowanie instrukcji obsługi, dokumentacja kodu i prezentacja działania programu / 4 |
Literatura: |
Podstawowa: autor, tytuł, wydawnictwo, rok wydania 1. Jerzy Grębosz, Symfonia C++ Standard. Helion, Gliwice 2010. 2. Stephen Prata, Język C++. Szkoła programowania. Helion, Gliwice 2012 (wyd VI) 3. Anna Struzińska, Krzysztof Walczak, Nauka programowania dla początkujących. C++. W&W, Warszawa 2000 Uzupełniająca: autor, tytuł, wydawnictwo, rok wydania 1. Bruce Eckel, Thinking in C++. Edycja polska, Helion, Gliwice 2002. 2. Adam Drozdek, C++. Algorytmy i struktury danych, Helion, Gliwice 2004. |
Efekty uczenia się: |
Symbol i nr efektu modułu / efekt kształcenia / odniesienie do efektu kierun-kowego W1 / Ma uporządkowaną wiedzę w zakresie architektury komputerów, algorytmizacji, metodyki i techniki programowania oraz budowy baz danych / K_W05 W2 / Ma elementarną wiedzę w zakresie architektury systemów i sieci komputerowych oraz systemów operacyjnych, niezbędną do instalacji, obsługi i utrzymania narzędzi informatycznych służących do projektowania, obliczeń inżynierskich i wytwarzania elementów, układów i systemów mechatronicznych/ K_W07 U1 / Potrafi opracować algorytm, posłużyć się językami programowania wysokiego i niskiego poziomu oraz odpowiednimi narzędziami informatycznymi do opracowania programów komputerowych do symulacji działania urządzeń mechatronicznych lub sterowania tymi urządzeniami/ K_U13 U2 / Potrafi stosować właściwe środowiska programistyczne, symulatory i narzędzia komputerowego wspomagania projektowania, wytwarzania i eksploatacji urządzeń mechatronicznych/ K_U18 U3 / Potrafi zaprojektować układ, urządzenie oraz system mechatroniczny z uwzględnieniem kryteriów użytkowych i ekonomicznych, używając właściwych metod, technik i narzędzi/ K_U19 |
Metody i kryteria oceniania: |
Przedmiot zaliczany jest na podstawie: zaliczenia z oceną; Ćwiczenia laboratoryjne zaliczane są na podstawie: zaliczenia z oceną; Ćwiczenia zaliczane są na podstawie: zaliczenia; Projekt zaliczany jest na podstawie: zaliczenia z oceną; Zaliczenie wykładów jest przeprowadzane w formie pisemnego testu. Ocena z ćwiczeń laboratoryjnych jest wystawiana jako średnia z ocen uzyskanych za rozwiązanie zadań postawionych na zajęciach laboratoryjnych. Warunkiem niezbędnym wystawienia pozytywnej oceny z przedmiotu jest uzyskanie z testu i ćwiczeń laboratoryjnych oraz projektu ocen min 3,00. Ocena końcowa z przedmiotu wystawiana jest jako średnia ważona oceny z testu (W) z wagą 0,4; oceny z ćwiczeń laboratoryjnych (L) z wagą 0,4 oraz oceny z projektu (P) z wagą 0,2. Osiągnięcie efektu W1 i W2 - weryfikowane jest na ćwiczeniach audytoryjnych i laboratoryjnych. Osiągnięcie efektu U1, U2 i U3 - sprawdzane jest na ćwiczeniach audytoryjnych i laboratoryjnych oraz w ramach rozliczenia projektu. Ocenę bardzo dobrą otrzymuje student, którego średnia ważona z ocen wynosi min. 4,75, oraz który posiadł wiedzę i umiejętności przewidziane efektami kształcenia, a ponadto wykazuje zainteresowanie przedmiotem, w sposób twórczy podchodzi do powierzonych zadań i wykazuje się samodzielnością w zdobywaniu wiedzy. Wykazuje się wytrwałością i samodzielnością w pokonywaniu trudności oraz systematycznością pracy. Ocenę dobrą plus otrzymuje student, którego średnia ważona z ocen wynosi min. 4,25, oraz który posiadł wiedzę i umiejętności przewidziane efektami kształcenia, a ponadto wykazuje zainteresowanie przedmiotem, w sposób twórczy podchodzi do powierzonych zadań i wykazuje się samodzielnością w zdobywaniu wiedzy. Wykazuje się wytrwałością i samodzielnością w pokonywaniu trudności oraz systematycznością pracy. Ocenę dobrą otrzymuje student, którego średnia ważona z ocen wynosi min. 3,75, oraz który posiadł wiedzę i umiejętności przewidziane programem nauczania w stopniu dobrym. Potrafi rozwiązywać zadania i problemy o średnim stopniu trudności. Ocenę dostateczną plus otrzymuje student, którego średnia ważona z ocen wynosi min. 3,25, oraz który posiadł wiedzę i umiejętności przewidziane programem nauczania w stopniu dobrym. Potrafi rozwiązywać zadania i problemy o średnim stopniu trudności. Ocenę dostateczną otrzymuje student, którego średnia ważona z ocen wynosi min.3,00, oraz który posiadł wiedzę i umiejętności przewidziane programem nauczania w stopniu dostatecznym. Samodzielnie rozwiązuje zadania i problemy o niskim stopniu trudności. W jego wiedzy i umiejętnościach zauważalne są luki, które potrafi jednak uzupełnić pod kierunkiem nauczyciela. Ocenę niedostateczną otrzymuje student, który nie ma zaliczonego testu lub ćwiczenia lub który nie spełnia przedstawionych powyżej wymogów. |
Właścicielem praw autorskich jest Wojskowa Akademia Techniczna.