Podstawy programowania
Informacje ogólne
Kod przedmiotu: | WMTXXCSI-PPr |
Kod Erasmus / ISCED: | (brak danych) / (brak danych) |
Nazwa przedmiotu: | Podstawy programowania |
Jednostka: | Wydział Mechatroniki, Uzbrojenia i Lotnictwa |
Grupy: | |
Punkty ECTS i inne: |
5.00
|
Język prowadzenia: | polski |
Forma studiów: | stacjonarne |
Rodzaj studiów: | I stopnia |
Rodzaj przedmiotu: | obowiązkowy |
Forma zajęć liczba godzin/rygor: | semestr V: W 28/+; C 32/+, razem: 60 godz., 5 pkt ECTS |
Przedmioty wprowadzające: | nazwa przedmiotu / wymagania wstępne: matematyka I / wymagania wstępne: znajomość rachunku macierzowego, umiejętność wykonywania działań na zbiorze liczb rzeczywistych i zespolonych, umiejętność rozwiązywania układów równań. matematyka II / wymagania wstępne: znajomość ciągów i szeregów liczbowych, znajomość rachunku różniczkowego i całkowego. informatyka / wymagania wstępne: znajomość podstawowych pojęć, architektury systemów komputerowych oraz sieci komputerowych, umiejętność algorytmizacji zadań oraz podstawowa wiedza o programowaniu proceduralnym i obiektowym. układy cyfrowe i mikroprocesorowe / wymagania wstępne: znajomość kodu binarnego i arytmetyki zmienno- i stałopozycyjnej, znajomość architektury mikroprocesorów, mikrokontrolerów oraz klasyfikacji i organizacji pamięci. |
Programy: | semestr piąty / inżynieria systemów bezzałogowych / wszystkie specjalności |
Autor: | dr inż. Zdzisław ROCHALA, prof. WAT ppłk dr inż. Konrad WOJTOWICZ |
Bilans ECTS: | aktywność / obciążenie studenta w godz. 1. Udział w wykładach / 28 godz. 2. Udział w laboratoriach / 0 godz. 3. Udział w ćwiczeniach / 32 godz. 4. Udział w seminariach / 0 godz. 5. Samodzielne studiowanie tematyki wykładów / 6 godz. 6. Samodzielne przygotowanie do laboratoriów / 0 godz. 7. Samodzielne przygotowanie do ćwiczeń / 64 godz. 8. Samodzielne przygotowanie do seminarium / 0 godz. 9. Realizacja projektu / 0 godz. 10. Udział w konsultacjach / 8 godz. 11. Przygotowanie do egzaminu / 0 godz. 12. Przygotowanie do zaliczenia / 10 godz. 13. Udział w egzaminie / 0 godz. 14. Udział w zaliczeniu / 2 godz. Sumaryczne obciążenie pracą studenta: 150 godz. / 5 ECTS Zajęcia z udziałem nauczycieli (1+3+10+14): 70 godz. / 2,5 ECTS Zajęcia powiązane z działalnością naukową: 90 godz. / 3 ECTS |
Skrócony opis: |
Podstawowe pojęcia dotyczące programowania. Składnia programu w języku C. Deklaracja zmiennych i stałych. Działania na operatorach arytmetycznych. Działania na operatorach logicznych. Wykorzystanie wskaźników i tablic zmiennych. Standardowe funkcje wejścia/wyjścia, formatowanie wejścia/wyjścia. Obsługa systemu przerwań. Obsługa układów wejścia/wyjścia i interfejsów szeregowych. Obsługa wbudowanych układów pery-feryjnych i urządzeń zewnętrznych systemów mikroprocesorowych. Charakterystyka wizualnych języków wysokiego poziomu. Wprowadzenie w zintegrowane środowiska programistyczne. Podstawowe typy danych. Instrukcje i funkcje wewnętrzne języka. Definicja i wywołanie funkcji użytkownika. Metody zwracania wartości przez argument funkcji. Podstawowe cechy programowania obiektowego: zakres dostępności argumentów i metod, dziedziczenie, klasy. Budowanie interfejsu graficznego aplikacji. Wykorzystanie systemu przerwań w aplikacji. Obsługa zasobów sprzętowych komputera. |
Pełny opis: |
Wykład / metoda werbalno-wizualna z wykorzystaniem nowoczesnych technik multimedialnych 1. Cykl tworzenia oprogramowania dla systemów mikroprocesorowych /liczba godzin - 2/ Podstawowe pojęcia, definicja cyklu tworzenia oprogramowania dla systemów mikroprocesorowych, środowiska programowe wspomagające programowanie i uruchomianie modułów mikro-procesorowych struktura programu, identyfikatory i słowa kluczowe. 2. Podstawowe typy danych i instrukcje warunkowe /liczba godzin - 2/ Deklarowanie zmiennych i stałych. Operacje na zmiennych. Zasięg widoczności zmiennej. Konwersja i rzutowanie zmiennych. Wyrażenia i instrukcje warunkowe. 3. Podstawowe instrukcje repetycyjne i operatory /liczba godzin - 2/ Instrukcje pętli i operatory: porównania, arytmetyczne, bitowe, unarne, selekcji i logiczne. 4. Kolekcje danych /liczba godzin - 2/ Deklaracja i operacje na tablicach, wskaźnikach i strukturach. 5. Funkcje /liczba godzin - 2/ Definicja, deklaracja i wywołanie funkcji. Przekazywanie parametrów i zwracanie wartości. Standardowe funkcje wejścia-wyjścia, zasady korzystania z bibliotek. 6. Programowanie zasobów mikrokontrolera /liczba godzin - 2/ Obsługa programowa wbudowanych układów peryferyjnych mikrokontrolerów. 7. Programowanie zasobów mikrokontrolera /liczba godzin - 2/ Obsługa wbudowanych układów peryferyjnych mikrokontrolerów z wykorzystaniem przerwań. 8. Przegląd języków programowania obiektowego /liczba godzin - 2/ Podstawowe informacje o platformach uruchomieniowych JAVA i .NET. Prezentacja języka C#. 9. Programowanie obiektowe /liczba godzin - 2/ Podstawowe zagadnienia programowania obiektowego. Pojęcia klasy i obiektu. 10. Dziedziczenie i polimorfizm /liczba godzin - 2/ Funkcjonalne ujednolicenie kodu za pomocą dziedziczenia i polimorfizmu. 11. Obsługa wyjątków /liczba godzin - 2/ Reakcja na niespodziewane zdarzenia z wykorzystaniem obsługi wyjątków. 12. Agregaty danych /liczba godzin - 2/ Tablice, listy i mechanizmy indeksowania 13. Windows Presentation Foundation /liczba godzin - 2/ Wprowadzenie do WPF. 14. Podstawowe kontrolki /liczba godzin - 2/ Wprowadzenie podstawowych kontrolek, panele i wiązanie danych. Ćwiczenia / metoda werbalno-praktyczna 1. Pierwszy projekt /liczba godzin - 2/ Tworzenie projektu w środowisku uruchomieniowym, dołączanie plików źródłowych w języku C, kompilowanie projektu i symulacja pracy programu. 2. Podstawowe instrukcje /liczba godzin - 2/ Deklaracja stałych i zmiennych. Stosowanie instrukcji warunkowych oraz operacji porównania i arytmetycznych. 3. Instrukcje repetycyjne /liczba godzin - 2/ Stosowanie instrukcji repetycyjnych oraz operatorów binarnych, logicznych i unarnych. 4. Rzutowanie danych /liczba godzin - 2/ Przekształcenia typów zmiennych, rzuty typów zmiennych. 5. Kolekcje danych /liczba godzin - 2/ Deklaracje tablic, dostęp do elementów tablicy, operacje na tablicach. Deklarowanie wskaźników i operacje na wskaźnikach. 6. Budowanie funkcji /liczba godzin - 2/ Przekazywanie wartości przez argument. Wykorzystanie standardowych funkcji obsługi wejść/wyjść. 7. Wbudowane układy peryferyjne /liczba godzin - 2/ Obsługa programowa układów czasowo-licznikowych i sterownika UART 8. Obsługa przerwań /liczba godzin - 2/ Obsługa programowa sterownika UART z wykorzystaniem przerwań 9. Podstawowe cechy środowiska programistycznego /liczba godzin - 2/ Wprowadzenie do środowiska Visual Studio, definiowanie typów, zmiennych i stałych, wyrażeń, instrukcji, operatorów. 10. Klasy i obiekty /liczba godzin - 2/ Definiowanie klas, tworzenie obiektów, przekazywanie parametrów w konstruktorze. 11. Dziedziczenie /liczba godzin - 2/ Specjalizacja i uogólnianie, wykorzystanie dziedziczenia przy rozbudowie aplikacji. 12. Polimorfizm /liczba godzin - 2/ Wykorzystanie polimorfizmu w celu ujednolicenia funkcjonalnie tożsamych elementów kodu 13. Projekt aplikacji w języku obiektowym /liczba godzin - 2/ Projekt i budowa aplikacji z wykorzystaniem poznanych technik programowania obiektowego 14. Rozwój aplikacji w języku obiektowym /liczba godzin - 2/ Rozwój aplikacji z wykorzystaniem poznanych technik programowania obiektowego 15. Pierwsza aplikacja WPF /liczba godzin - 2/ Wprowadzenie do techno-logii WPF z wyodrębnieniem warstwy prezentacji i kodu logiki aplikacji. 16. Kontrolki WPF /liczba godzin - 2/ Wykorzystanie podstawowych kontrolek w aplikacjach WPF. |
Literatura: |
Podstawowa: 1. Kernighan B. W.: Język ANSII C, WNT, Warszawa 1988-2004, 2. Tondo C. L., Gimpel S. E.: Język ANSI C programowanie, ćwiczenia, Wydawnictwo HELION, Gliwice 2010 3. Majewski J., Kardach K.: Programowanie mikrokontrolerów z serii 8x51 w języku C, OWPW, Wrocław 2002, 4. Bogusz J.: Programowanie mikrokontrolerów 8051 w języku C w praktyce, WBTC, Warszawa 2005. 5. Kardaś M.: Mikrokontrolery AVR język C podstawy programowania, Wydawnictwo ATNEL, Szczecin 2011 6. Albahari J., B.: C#. 6.0 w pigułce, Helion, Gliwice 2016, Uzupełniająca: 1. Gałka P., Gałka P.: Podstawy programowania mikrokontrolera 8051, MIKOM, Warszawa 1995, 2. Pełka R.: Mikrokontrolery: architektura, programowanie, zastosowania, WKŁ, Warszawa1999, 3. Doliński J.: Mikrokontrolery AVR w praktyce, WBTC, Warszawa 2004, 4. Witkowski A.: Mikrokontrolery AVR programowanie w języku C przykłady zastosowań, Wydawnictwo Pracowni Komputerowej Jacka Skalmierskiego, Gliwice 2006 5. Wiązania M.: Programowanie mikrokontrolerów AVR w języku BASCOM, WBTC, Warszawa 2004, 6. https://learn.microsoft.com/en-us/dotnet/csharp/ 7. Kempa A. Wprowadzenie do WPF, Helion, Gliwice, 2017 |
Efekty uczenia się: |
Symbol i nr efektu przedmiotu / efekt uczenia się / odniesienie do efektu kierunkowego W1 / Ma wiedzę w zakresie architektury komputerów, algorytmizacji wybranych zagadnień matematycznych wykorzystywanych do opisu zagadnień lub zjawisk będących przedmiotem projektowanego oprogramowania oraz uporządkowaną wiedzę w zakresie programowania systemów mikroprocesorowych i metodyki tworzenia oprogramowania systemów komputerowych / K_W05 U1 / Potrafi opracować algorytm, posłużyć się językami programowania z rodziny C oraz odpowiednimi narzędziami informatycznymi do opracowania oprogramowania użytkowego / K_U13 |
Metody i kryteria oceniania: |
Przedmiot zaliczany jest na podstawie: zaliczenia z oceną. Ćwiczenia zaliczane są na podstawie: zaliczenia z oceną. Zaliczenie na ocenę jest przeprowadzane w formie pisemnego testu sprawdzającego z pytaniami zamkniętymi. Każde pytanie testowe ma cztery różne odpowiedzi, z których tylko jedna jest poprawna. Warunkiem dopuszczenia do zaliczenia jest uzyskanie pozytywnej oceny z zaliczenia ćwiczeń oraz pozytywne oceny za wszystkie efekty kształcenia. Zaliczenie ćwiczeń na ocenę odbywa się na podstawie średniej z pozytywnych ocen uzyskanych z odpowiedzi na pytania kontrolne i z zadań związanych z projektowaniem aplikacji realizowanych w trakcie zajęć. Efekt W1 sprawdzany w trakcie ćwiczeń rachunkowych i na kolokwium pisemnym, przy okazji sprawdzania umiejętności U1. Sprawdzana jest wiedza w zakresie algorytmicznego opisu zjawisk na wstępnym etapie przygotowania projektu programistycznego. Efekt U1 sprawdzany jest w trakcie ćwiczeń rachunkowych. Sprawdzana jest umiejętność samodzielnego projektowania i budowy aplikacji uwzględniającej specyfikę sprzętową modułu sterowania i wykorzystującą wbudowane interfejsy i peryferia oraz umiejętność jej implementacji w docelowym środowisku. Ocenę bardzo dobrą z przedmiotu otrzymuje student, który z pisemnego testu sprawdzającego wiedzę z pytaniami zamkniętymi udzielił poprawnych odpowiedzi na poziomie 93-100%. Ocenę dobrą plus z przedmiotu otrzymuje student, który z pisemnego testu sprawdzającego wiedzę z pytaniami zamkniętymi udzielił poprawnych odpowiedzi na poziomie 85-92%. Ocenę dobrą z przedmiotu otrzymuje student, który z pisemnego testu sprawdzającego wiedzę z pytaniami zamkniętymi udzielił poprawnych odpowiedzi na poziomie 77-84%. Ocenę dostateczną plus z przedmiotu otrzymuje student, który z pisemnego testu sprawdzającego wiedzę z pytaniami zamkniętymi udzielił poprawnych odpowiedzi na poziomie 69-76%. Ocenę dostateczną z przedmiotu otrzymuje student, który z pisemnego testu sprawdzającego wiedzę z pytaniami zamkniętymi udzielił poprawnych odpowiedzi na poziomie 60-68%. Ocenę niedostateczną z przedmiotu otrzymuje student, który z pisemnego testu sprawdzającego wiedzę z pytaniami zamkniętymi udzielił poprawnych odpowiedzi na poziomie poniżej 60%. |
Zajęcia w cyklu "Semestr zimowy 2024/2025" (zakończony)
Okres: | 2024-10-01 - 2025-02-28 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Ćwiczenia, 32 godzin
Wykład, 28 godzin
|
|
Koordynatorzy: | Zdzisław Rochala | |
Prowadzący grup: | Zdzisław Rochala, Konrad Wojtowicz | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Egzamin
Ćwiczenia - Zaliczenie na ocenę Wykład - Egzamin |
Właścicielem praw autorskich jest Wojskowa Akademia Techniczna.