Politechnika Rzeszowska im. Ignacego Łukasiewicza - Centralny System Uwierzytelniania
Strona główna

Metodyki i techniki programowania

Informacje ogólne

Kod przedmiotu: ET0-DI>MiTP
Kod Erasmus / ISCED: (brak danych) / (brak danych)
Nazwa przedmiotu: Metodyki i techniki programowania
Jednostka: Katedra Podstaw Elektroniki
Grupy: Przedmioty 2 sem. - elektronika i telekom. st. inż.
Punkty ECTS i inne: 6.00 LUB 7.00 (zmienne w czasie) Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: polski
Pełny opis:

Moduł zakłada zapoznanie studenta z zagadnieniami algorytmizacji problemów, implementacji algorytmów w wybranym języku programowania i środowisku programistycznym, tworzeniem programów strukturalnych i obiektowych, konstruowaniem dynamicznych struktur danych, wykonywaniem obliczeń numerycznych i przetwarzania danych oraz projektowaniem aplikacji opartych na interfejsie z użytkownikiem.

Treści kształcenia

- Wprowadzenie podstawowych pojęć: Algorytm i sposoby jego przedstawiania, podstawowe konstrukcje języków algorytmicznych. Przykłady algorytmów.

- Wprowadzenie do języka C. Typy danych. Modyfikatory typów. Operatory, priorytet operatorów. Instrukcje sterujące i pętle. Typy pochodne i złożone. Formatowanie wejścia i wyjścia. Wykorzystanie rekurencji. Reprezentacje liczb.

- Język C: tablice, wskaźniki, deklaracja i definicja funkcji, wywołanie funkcji, argumenty funkcji, zmienne lokalne i globalne

- Język C: dynamiczny przydział pamięci dla łańcuchów znakowych, typy złożone (struktury, unie), strumienie w pracy z plikami, zapis i odczyt z pliku

- Wprowadzenie do języka C#. Środowisko .NET. Typy proste (wartościowe, skalarne). Stałe, wyliczenia i łańcuchy znaków. Instrukcje warunkowe, pętle i operatory.

- Klasy, obiekty, cechy programowania obiektowego. Modyfikatory dostępu. Tworzenie obiektów. Konstruktor. Przekazywanie argumentów do metody. Parametry z modyfikatorem out. Słowo kluczowe this. Używanie składowych statycznych. Hermetyzacja za pomocą właściwości. Struktury.

- Tablice, mechanizm indeksowania.

- Kolekcje i typy generyczne. Struktury danych.

- Dziedziczenie i polimorfizm. Pojęcie specjalizacji i uogólniania. Używanie dziedziczenia. Wywołanie metod klasy podstawowej. Rzutowanie w dziedziczeniu; Implementacja polimorfizmu (virtual, override). Przesłanianie metod (new). Klasa abstrakcji. Klasa Object.

- Pojęcie interfejsu. Definiowanie i implementowanie interfejsu. Obsługa kilku interfejsów. Łączenie i rozszerzanie interfejsów Dostęp do metod interfejsu. Rzutowanie na interfejs. Operator is i operator as. Interfejs kontra klasy abstrakcyjne. Przesłanianie implementacji interfejsu. Jawna implementacja interfejsu.

- Obsługa wyjątków. Pojęcie wyjątku i sytuacji wyjątkowej. Strukturalna obsługa wyjątków. Zgłaszanie wyjątków. Przechwytywanie wyjątków. Własne niestandardowe wyjątki.

- Strumienie. Serializacja. Praca na plikach w technologii .NET.

- Przeciążanie operatorów: cel, zasady, które operatory można przeciążać. Przykłady metod operatorowych.

- Delegaty.

- Praktyczne wykorzystanie technologii .NET.

Literatura:

Literatura wykorzystywana podczas zajęć wykładowych

Cormen T. H., Leiserson Ch. E., Rivest R. L., Stein C. - Wprowadzenie do algorytmów - WNT, Warszawa. - 2004

Gurbiel E., Hardt-Olejniczak G., Kołczyk E., Krupicka H., Sysło M. M. - Informatyka. Podręcznik dla liceum ogólnokształcącego, cz. 1, cz.2 - WSIP, Warszawa. - 2002

Kernighan B. W., Ritchie D. M. - Język ANSI C - WNT, Warszawa. - 1994

Liberty J. - C#. Programowanie - O’REILLY®, Helion. - 2006

Lis M. - C#. Praktyczny kurs - Helion. - 2007

Perry S.C. - C# i .NET - Prentice Hall, Helion. - 2006

Hejlsberg A., Torgersen M., Wiltamuth S., Golde P. - Język C#. Programowanie - Wydawnictwo Helion. - 2010

Powers L., Snell M. - Microsoft Visual Studio 2008 – KSIĘGA EKSPERTA - Helion. - 2009

Troelsen A. - Język C# 2008 i platforma .NET 3.5 - Wydawnictwo naukowe PWN SA. - 2009

Literatura wykorzystywana podczas zajęć ćwiczeniowych/laboratoryjnych/innych

Cormen T. H., Leiserson Ch. E., Rivest R. L., Stein C. - Wprowadzenie do algorytmów - WNT, Warszawa. - 2004

Gurbiel E., Hardt-Olejniczak G., Kołczyk E., Krupicka H., Sysło M. M. - Informatyka. Podręcznik dla liceum ogólnokształcącego, cz. 1, cz.2 - WSIP, Warszawa. - 2002

Kernighan B. W., Ritchie D. M. - Język ANSI C - WNT, Warszawa. - 1994

Kusy M. - Metodyki i techniki programowania. Laboratorium - Oficyna Wydawnicza Politechniki Rzeszowskiej. - 2009

Chłosta P. - Aplikacje Windows Forms .Net w C# - Wydawnictwo naukowe PWN. - 2006

Powers L., Snell M. - Microsoft Visual Studio 2008 – KSIĘGA EKSPERTA - Helion. - 2009

Literatura do samodzielnego studiowania

Matulewski J. - C#3.0 i .NET 3.5. Technologia LINQ - Helion. - 2008

Grębosz J. - Symfonia C++ standard. Programowanie w języku C++ orientowane obiektowo - EDITION 2000, Kraków. - 2005

Grębosz J. - Pasja C++ - Oficyna Kalimach, Kraków. - 1997

Literatura uzupełniająca

Troelsen A. - Język C# 2008 i platforma .NET 3.5 - Wydawnictwo naukowe PWN SA. - 2009

Gamma E., Heml R., Johnson R., Vlissides J. - Design Patterns. Elements of Reusable Object-Oriented Software - Addison Wesley. - 2000

Efekty uczenia się:

Student, który zaliczył modułFormy zajęć/metody dydaktyczne prowadzące do osiągnięcia danego efektu kształceniaSposoby weryfikacji każdego z wymienionych efektów kształcenia
Potrafi przedstawić specyfikację algorytmu i wyszczególnić elementy schematu blokowego dla danego problemu algorytmicznego.wykład, ćwiczenia rachunkowe, laboratoriumegzamin cz. pisemna, zaliczenie cz. pisemna, obserwacja wykonawstwa
Zna i używa podstawowe typy, instrukcje sterujące, operatory i operacje formatowania wejścia/wyjścia w języku C.wykład, ćwiczenia rachunkowe, laboratoriumegzamin cz. pisemna, zaliczenie cz. pisemna
Zna i potrafi krótko opisać wybrane struktury danych (stos, kolejka, lista).wykład, ćwiczenia rachunkowe, laboratoriumegzamin cz. pisemna, obserwacja wykonawstwa
Opracowuje na podstawie specyfikacji proste aplikacje wykorzystujące techniki programowania obiektowego.laboratoriumobserwacja wykonawstwa

Metody i kryteria oceniania:

na ocenę 3na ocenę 4na ocenę 5
Potrafi przedstawić specyfikację algorytmu i wyszczególnić elementy schematu blokowego dla danego problemu algorytmicznego.nie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 3, ale również potrafi zaprojektować schemat blokowy dla prostego problemu algorytmicznegonie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 4, ale również potrafi zaprojektować schemat blokowy dla złożonego problemu algorytmicznego.
Zna i używa podstawowe typy, instrukcje sterujące, operatory i operacje formatowania wejścia/wyjścia w języku C.nie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 3, ale również potrafi zaimplementować zaprojektowany (prosty) schemat blokowy w języku Cnie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 4, ale również potrafi zaimplementować zaprojektowany (złożony) schemat blokowy w języku C.
Zna i potrafi krótko opisać wybrane struktury danych (stos, kolejka, lista).nie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 3, ale również dobrze rozumie i potrafi wytłumaczyć zasadę działania omawianych struktur danychnie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 4, ale również implementuje omawiane struktury danych w obiektowym języku programowania.
Opracowuje na podstawie specyfikacji proste aplikacje wykorzystujące techniki programowania obiektowego.nie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 3, ale również na podstawie specyfikacji tworzy rozbudowane aplikacje wykorzystujące techniki programowania obiektowegonie tylko osiągnął poziom wiedzy i umiejętności wymagany na ocenę 4, ale również na podstawie specyfikacji tworzy złożone (bazujące na graficznym interfejsie) aplikacje wykorzystujące techniki programowania obiektowego.

Zajęcia w cyklu "Semestr letni 2019/20" (zakończony)

Okres: 2020-02-29 - 2020-06-24
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Maciej Kusy
Prowadzący grup: Grzegorz Hałdaś, Maciej Kusy, Mariusz Mączka
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin

Zajęcia w cyklu "Semestr letni 2020/21" (zakończony)

Okres: 2021-02-27 - 2021-06-23
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Maciej Kusy
Prowadzący grup: Grzegorz Hałdaś, Maciej Kusy, Mariusz Mączka
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin

Zajęcia w cyklu "Semestr letni 2021/22" (zakończony)

Okres: 2022-02-26 - 2022-06-21
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Maciej Kusy
Prowadzący grup: Grzegorz Hałdaś, Maciej Kusy, Mariusz Mączka
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin

Zajęcia w cyklu "Semestr letni 2022/23" (zakończony)

Okres: 2023-02-25 - 2023-06-21
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Maciej Kusy
Prowadzący grup: Grzegorz Hałdaś, Maciej Kusy, Marcin Makowiec
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin

Zajęcia w cyklu "Semestr letni 2023/24" (zakończony)

Okres: 2024-02-24 - 2024-06-21
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Maciej Kusy
Prowadzący grup: Grzegorz Hałdaś, Maciej Kusy, Marcin Makowiec, Mariusz Mączka
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin

Zajęcia w cyklu "Semestr letni 2024/25" (jeszcze nie rozpoczęty)

Okres: 2025-02-27 - 2025-06-22
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Maciej Kusy
Prowadzący grup: Grzegorz Hałdaś, Maciej Kusy, Marcin Makowiec, Mariusz Mączka
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Politechnika Rzeszowska im. Ignacego Łukasiewicza.
al. Powstańców Warszawy 12
35-959 Rzeszów
tel: +48 17 865 11 00 https://prz.edu.pl
kontakt deklaracja dostępności mapa serwisu USOSweb 7.1.0.0-2 (2024-08-21)