Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Biotechnologii i Hodowli Zwierząt - Bioinformatyka (S1)
specjalność: Biologia systemów i metody informatyczne

Sylabus przedmiotu Języki i paradygmaty oprogramowania:

Informacje podstawowe

Kierunek studiów Bioinformatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów nauk przyrodniczych, nauk technicznych, studiów inżynierskich
Profil ogólnoakademicki
Moduł
Przedmiot Języki i paradygmaty oprogramowania
Specjalność Systemy informatyczne w biologii
Jednostka prowadząca Katedra Inżynierii Oprogramowania
Nauczyciel odpowiedzialny Dariusz Burak <Dariusz.Burak@zut.edu.pl>
Inni nauczyciele Krzysztof Siedlecki <Krzysztof.Siedlecki@zut.edu.pl>
ECTS (planowane) 2,0 ECTS (formy) 2,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL5 15 1,00,41zaliczenie
wykładyW5 15 1,00,59zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Ukończony kurs Podstawy informatyki.
W-2Ukończony kurs Podstawy programowania komputerów.
W-3Ukończony kurs Systemy operacyjne.
W-4Ukończony kurs Grafika komputerowa i wizualizacja.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z najważniejszymi paradygmatami programowania.
C-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
C-3Zapoznanie studenta z procesem tworzenia oprogramowania oraz środowiskiem programistycznym.
C-4Zapoznanie studentów ze specyfiką języków programowania: C, C++, C#, Java z uwypukleniem różnic między nimi.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.2
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.2
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.2
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.2
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.2
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.3
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,2
15
wykłady
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.2
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.4
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.4
T-W-4Specyfika języków skryptowych. Komponentowy paradygmat programowania. Aspektowy paradygmat programowania. Przykłady kodu z języków C++, Java, Ruby.2
T-W-5Funkcyjny paradygmat programowania. Logiczny paradygmat programowania. Przykłady kodów z języka F#, Clojure, Prolog.3
15

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Udział w zajęciach laboratoryjnych.15
A-L-2Przygotowanie się do zajęć laboratoryjnych.10
A-L-3Wykonanie programów poza zajęciami.5
30
wykłady
A-W-1Udział w wykładach.15
A-W-2Samodzielne studiowanie tematyki wykładów7
A-W-3Przygotowanie się do zaliczenia.6
A-W-4Zaliczenie przedmiotu.2
30

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
S-2Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego poza zajęciami laboratoryjnymi.
S-3Ocena podsumowująca: Test zaliczeniowy z wykładów.

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
BI_1A_BII-S-D19_W01
Student posiada wiedzę umożliwiającą zaimplementowanie algorytmu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania w oparciu o wybrany język programowania (C, C++, C#).
BI_1A_W20, BI_1A_W09, BI_1A_W10, BI_1A_W11P1A_W04, P1A_W07, P1A_W10, T1A_W02, T1A_W03, T1A_W04, T1A_W05, T1A_W06, T1A_W07, T1A_W10InzA_W01, InzA_W02, InzA_W05C-1, C-2T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-W-1, T-W-2, T-W-3M-1, M-2S-1, S-2, S-3
BI_1A_BII-S-D19_W02
Student posiada wiedzę umożliwiającą przekształcenie prostego programu zapisanego zgodnie z paradygmatym imperatywnym (w języku C) do postaci obiektowej (w językach C++, C#) oraz na odwrót.
BI_1A_W20, BI_1A_W09, BI_1A_W10, BI_1A_W11P1A_W04, P1A_W07, P1A_W10, T1A_W02, T1A_W03, T1A_W04, T1A_W05, T1A_W06, T1A_W07, T1A_W10InzA_W01, InzA_W02, InzA_W05C-1, C-2, C-3T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-W-1, T-W-2, T-W-3M-2S-1
BI_1A_BII-S-D19_W03
Student posiada wiedzę umożliwiającą przekształcenie prostego programu zapisanego w języku C++ do równorzędnej postaci zapisanej w języku C#
BI_1A_W20, BI_1A_W09, BI_1A_W10, BI_1A_W11P1A_W04, P1A_W07, P1A_W10, T1A_W02, T1A_W03, T1A_W04, T1A_W05, T1A_W06, T1A_W07, T1A_W10InzA_W01, InzA_W02, InzA_W05C-2, C-3T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-W-1, T-W-2, T-W-3M-1, M-2S-1, S-2
BI_1A_BII-S-D19_W04
Student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego.
BI_1A_W20, BI_1A_W09, BI_1A_W10, BI_1A_W11P1A_W04, P1A_W07, P1A_W10, T1A_W02, T1A_W03, T1A_W04, T1A_W05, T1A_W06, T1A_W07, T1A_W10InzA_W01, InzA_W02, InzA_W05C-1, C-2T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-W-2, T-W-3, T-W-5M-1, M-2S-1, S-2, S-3

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
BI_1A_BII-S-D19_U01
Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia oprogramowania.
BI_1A_U09P1A_U01, P1A_U03, P1A_U04, T1A_U02, T1A_U05, T1A_U07, T1A_U09, T1A_U15InzA_U01, InzA_U07, InzA_U08C-1, C-2, C-3T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-W-1, T-W-2, T-W-3M-1, M-2S-1, S-2

Zamierzone efekty kształcenia - inne kompetencje społeczne i personalne

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
BI_1A_BII-S-D19_K01
Student umie korzystać z dokumentacji projektu informatycznego
BI_1A_K01, BI_1A_K03, BI_1A_K04, BI_1A_K05P1A_K01, P1A_K02, P1A_K03, P1A_K04, P1A_K05, P1A_K06, P1A_K07, P1A_K08, T1A_K01, T1A_K02, T1A_K03, T1A_K04, T1A_K05, T1A_K06, T1A_K07InzA_K01, InzA_K02C-1, C-2, C-3T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-W-1, T-W-2, T-W-3, T-W-5, T-W-4M-1, M-2S-1, S-2, S-3

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
BI_1A_BII-S-D19_W01
Student posiada wiedzę umożliwiającą zaimplementowanie algorytmu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania w oparciu o wybrany język programowania (C, C++, C#).
2,0student nie zna podstawowych konstrukcji języków programowania umożliwiających implementację programu zgodnie z imperatywnym oraz biektowym paradygmatem programowania
3,0student zna jedynie podstawowe konstrukcje języków programowania umożliwiające implementację programu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania
3,5student zna podstawowe konstrukcje języków programowania umożliwiające implementację programu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania; ponadto student zna zaawansowane mechanizmy programowania proceduralnego
4,0student zna podstawowe konstrukcje języków programowania umożliwiające implementację programu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania; ponadto student zna zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego
4,5student zna zaawansowane mechanizmy programowania imperatywnego, proceduralnego oraz strukturalnego w języku C oraz C++ oraz obiektowego w języku C++
5,0student zna zaawansowane mechanizmy programowania imperatywnego, proceduralnego oraz strukturalnego w języku C oraz C++ oraz obiektowego w języku C++ oraz C#
BI_1A_BII-S-D19_W02
Student posiada wiedzę umożliwiającą przekształcenie prostego programu zapisanego zgodnie z paradygmatym imperatywnym (w języku C) do postaci obiektowej (w językach C++, C#) oraz na odwrót.
2,0student nie zna podstawowych konstrukcji języków programowania umożliwiających przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++).
3,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++).
3,5student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++) oraz na odwrót.
4,0student zna zaawansowane konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++) oraz na podstawowe konstrukcje umozliwiające przekształcenie programu zapisanego zgodnie z paradygmatem obiektowym (w języku C++) do postaci imperatywnej (w języku C lub C++)
4,5student zna zaawansowane konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++) oraz na odwrót.
5,0student zna zaawansowane konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++ oraz C#) oraz na odwrót.
BI_1A_BII-S-D19_W03
Student posiada wiedzę umożliwiającą przekształcenie prostego programu zapisanego w języku C++ do równorzędnej postaci zapisanej w języku C#
2,0student nie zna podstawowych konstrukcji języków programowania umożliwiających przekształcenie programu zapisanego w języku C++ do postaci zapisanej w języku C#
3,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na jednej klasie do postaci zapisanej w języku C#
3,5student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na jednej klasie z mechanizmem enkapsulacji do postaci zapisanej w języku C#
4,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na klasie bazowej oraz klasie dziedziczącej po niej z mechanizmem enkapsulacji do postaci zapisanej w języku C#
4,5student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na klasie bazowej oraz klasach dziedziczących po niej z mechanizmem enkapsulacji do postaci zapisanej w języku C#
5,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na klasie abstrakcyjnej z mechanizmem enkapsulacji oraz polimorfizmu obiektowego do postaci zapisanej w języku C#
BI_1A_BII-S-D19_W04
Student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego.
2,0student nie zna podstawowych mechanizmów paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego
3,0student zna podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego
3,5student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego; student zna podstawowe mechanizmy paradygmatu obiektowego, funkcyjnego oraz logicznego
4,0student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego oraz obiektowego; student zna podstawowe mechanizmy paradygmatu funkcyjnego oraz logicznego
4,5student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego oraz funkcyjnego; student zna podstawowe mechanizmy paradygmatu logicznego
5,0student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
BI_1A_BII-S-D19_U01
Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia oprogramowania.
2,0Student nie potrafi wykorzystać wiedzy z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia prostego programu
3,0Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) oraz obiektowego (język C++)
3,5Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego i zaawansowanych mechanizmów programowania proceduralnego (język C oraz C++) oraz obiektowego (język C++)
4,0Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego, strukturalnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) i obiektowego (język C++) i zaawansowanych mechanizmów programowania proceduralnego i strukturalnego (język C oraz C++)
4,5Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego, strukturalnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) i zaawansowanych mechanizmów programowania proceduralnego i strukturalnego (język C oraz C++) i obiektowego (język C++)
5,0Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego, strukturalnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) i zaawansowanych mechanizmów programowania proceduralnego i strukturalnego (język C oraz C++) i obiektowego (język C++ oraz C#)

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt kształceniaOcenaKryterium oceny
BI_1A_BII-S-D19_K01
Student umie korzystać z dokumentacji projektu informatycznego
2,0Student nie umie kreatywnie tworzyć programów oraz korzystać z dokumentacji projektu informatycznego
3,0Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego oraz obiektowego
3,5Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz obiektowego (język C++)oraz zaawansowane mechanizmy programowania proceduralnego (język C oraz C++)
4,0Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz obiektowego (język C++)oraz zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego (język C oraz C++)
4,5Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego (język C oraz C++) i obiektowego (język C++). Student umie korzystać z dokumentacji projektu informatycznego
5,0Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego (język C oraz C++) i obiektowego (język C++ oraz C#). Student umie korzystać z dokumentacji projektu informatycznego

Literatura podstawowa

  1. P.Van Roy, S.Haridi, Programowanie. Koncepcje techniki i modele., Helion, Gliwice, 2005

Literatura dodatkowa

  1. B.Kernighan, D.Ritchie, Język ANSI C, Wydawnictwa Naukowo Techniczne, Warszawa, 2007
  2. B.Eckel, Thinking in C++, Helion, Gliwice, 2002, Tom 1
  3. B.Eckel, Thinking in JAVA, Helion, Gliwice, 2006, IV
  4. C.Petzold, Programowanie Windows w języku C#, RM, Warszawa, 2002

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.2
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.2
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.2
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.2
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.2
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.3
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,2
15

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.2
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.4
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.4
T-W-4Specyfika języków skryptowych. Komponentowy paradygmat programowania. Aspektowy paradygmat programowania. Przykłady kodu z języków C++, Java, Ruby.2
T-W-5Funkcyjny paradygmat programowania. Logiczny paradygmat programowania. Przykłady kodów z języka F#, Clojure, Prolog.3
15

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Udział w zajęciach laboratoryjnych.15
A-L-2Przygotowanie się do zajęć laboratoryjnych.10
A-L-3Wykonanie programów poza zajęciami.5
30
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Udział w wykładach.15
A-W-2Samodzielne studiowanie tematyki wykładów7
A-W-3Przygotowanie się do zaliczenia.6
A-W-4Zaliczenie przedmiotu.2
30
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaBI_1A_BII-S-D19_W01Student posiada wiedzę umożliwiającą zaimplementowanie algorytmu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania w oparciu o wybrany język programowania (C, C++, C#).
Odniesienie do efektów kształcenia dla kierunku studiówBI_1A_W20zna sposoby pozyskiwania informacji naukowych z poszanowaniem praw autorskich, a także sposoby optymalizacji uczenia się i prezentowania wiedzy w języku polskim i obcym
BI_1A_W09zna wybrane języki oraz techniki programowania i wytwarzania aplikacji
BI_1A_W10ma wiedzę z zakresu inżynierii systemów informacyjnych ze szczególnym uwzględnieniem systemów informatycznych oraz zna podstawowe metody gromadzenia i przetwarzania danych i informacji
BI_1A_W11ma wiedzę z zakresu architektury systemów komputerowych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaP1A_W04ma wiedzę w zakresie najważniejszych problemów z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów oraz zna ich powiązania z innymi dyscyplinami przyrodniczymi
P1A_W07ma wiedzę w zakresie podstawowych technik i narzędzi badawczych stosowanych w zakresie dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
P1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; potrafi korzystać z zasobów informacji patentowej
T1A_W02ma podstawową wiedzę w zakresie kierunków studiów powiązanych ze studiowanym kierunkiem studiów
T1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W04ma szczegółową wiedzę związaną z wybranymi zagadnieniami z zakresu studiowanego kierunku studiów
T1A_W05ma podstawową wiedzę o trendach rozwojowych z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
T1A_W06ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
T1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; umie korzystać z zasobów informacji patentowej
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W01ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
InzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
InzA_W05zna typowe technologie inżynierskie w zakresie studiowanego kierunku studiów
Cel przedmiotuC-1Zapoznanie studentów z najważniejszymi paradygmatami programowania.
C-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
Treści programoweT-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
S-2Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego poza zajęciami laboratoryjnymi.
S-3Ocena podsumowująca: Test zaliczeniowy z wykładów.
Kryteria ocenyOcenaKryterium oceny
2,0student nie zna podstawowych konstrukcji języków programowania umożliwiających implementację programu zgodnie z imperatywnym oraz biektowym paradygmatem programowania
3,0student zna jedynie podstawowe konstrukcje języków programowania umożliwiające implementację programu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania
3,5student zna podstawowe konstrukcje języków programowania umożliwiające implementację programu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania; ponadto student zna zaawansowane mechanizmy programowania proceduralnego
4,0student zna podstawowe konstrukcje języków programowania umożliwiające implementację programu zgodnie z imperatywnym oraz obiektowym paradygmatem programowania; ponadto student zna zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego
4,5student zna zaawansowane mechanizmy programowania imperatywnego, proceduralnego oraz strukturalnego w języku C oraz C++ oraz obiektowego w języku C++
5,0student zna zaawansowane mechanizmy programowania imperatywnego, proceduralnego oraz strukturalnego w języku C oraz C++ oraz obiektowego w języku C++ oraz C#
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaBI_1A_BII-S-D19_W02Student posiada wiedzę umożliwiającą przekształcenie prostego programu zapisanego zgodnie z paradygmatym imperatywnym (w języku C) do postaci obiektowej (w językach C++, C#) oraz na odwrót.
Odniesienie do efektów kształcenia dla kierunku studiówBI_1A_W20zna sposoby pozyskiwania informacji naukowych z poszanowaniem praw autorskich, a także sposoby optymalizacji uczenia się i prezentowania wiedzy w języku polskim i obcym
BI_1A_W09zna wybrane języki oraz techniki programowania i wytwarzania aplikacji
BI_1A_W10ma wiedzę z zakresu inżynierii systemów informacyjnych ze szczególnym uwzględnieniem systemów informatycznych oraz zna podstawowe metody gromadzenia i przetwarzania danych i informacji
BI_1A_W11ma wiedzę z zakresu architektury systemów komputerowych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaP1A_W04ma wiedzę w zakresie najważniejszych problemów z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów oraz zna ich powiązania z innymi dyscyplinami przyrodniczymi
P1A_W07ma wiedzę w zakresie podstawowych technik i narzędzi badawczych stosowanych w zakresie dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
P1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; potrafi korzystać z zasobów informacji patentowej
T1A_W02ma podstawową wiedzę w zakresie kierunków studiów powiązanych ze studiowanym kierunkiem studiów
T1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W04ma szczegółową wiedzę związaną z wybranymi zagadnieniami z zakresu studiowanego kierunku studiów
T1A_W05ma podstawową wiedzę o trendach rozwojowych z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
T1A_W06ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
T1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; umie korzystać z zasobów informacji patentowej
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W01ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
InzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
InzA_W05zna typowe technologie inżynierskie w zakresie studiowanego kierunku studiów
Cel przedmiotuC-1Zapoznanie studentów z najważniejszymi paradygmatami programowania.
C-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
C-3Zapoznanie studenta z procesem tworzenia oprogramowania oraz środowiskiem programistycznym.
Treści programoweT-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.
Metody nauczaniaM-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
Kryteria ocenyOcenaKryterium oceny
2,0student nie zna podstawowych konstrukcji języków programowania umożliwiających przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++).
3,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++).
3,5student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++) oraz na odwrót.
4,0student zna zaawansowane konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++) oraz na podstawowe konstrukcje umozliwiające przekształcenie programu zapisanego zgodnie z paradygmatem obiektowym (w języku C++) do postaci imperatywnej (w języku C lub C++)
4,5student zna zaawansowane konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++) oraz na odwrót.
5,0student zna zaawansowane konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego zgodnie z paradygmatem imperatywnym (w języku C lub C++) do postaci obiektowej (w języku C++ oraz C#) oraz na odwrót.
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaBI_1A_BII-S-D19_W03Student posiada wiedzę umożliwiającą przekształcenie prostego programu zapisanego w języku C++ do równorzędnej postaci zapisanej w języku C#
Odniesienie do efektów kształcenia dla kierunku studiówBI_1A_W20zna sposoby pozyskiwania informacji naukowych z poszanowaniem praw autorskich, a także sposoby optymalizacji uczenia się i prezentowania wiedzy w języku polskim i obcym
BI_1A_W09zna wybrane języki oraz techniki programowania i wytwarzania aplikacji
BI_1A_W10ma wiedzę z zakresu inżynierii systemów informacyjnych ze szczególnym uwzględnieniem systemów informatycznych oraz zna podstawowe metody gromadzenia i przetwarzania danych i informacji
BI_1A_W11ma wiedzę z zakresu architektury systemów komputerowych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaP1A_W04ma wiedzę w zakresie najważniejszych problemów z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów oraz zna ich powiązania z innymi dyscyplinami przyrodniczymi
P1A_W07ma wiedzę w zakresie podstawowych technik i narzędzi badawczych stosowanych w zakresie dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
P1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; potrafi korzystać z zasobów informacji patentowej
T1A_W02ma podstawową wiedzę w zakresie kierunków studiów powiązanych ze studiowanym kierunkiem studiów
T1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W04ma szczegółową wiedzę związaną z wybranymi zagadnieniami z zakresu studiowanego kierunku studiów
T1A_W05ma podstawową wiedzę o trendach rozwojowych z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
T1A_W06ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
T1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; umie korzystać z zasobów informacji patentowej
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W01ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
InzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
InzA_W05zna typowe technologie inżynierskie w zakresie studiowanego kierunku studiów
Cel przedmiotuC-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
C-3Zapoznanie studenta z procesem tworzenia oprogramowania oraz środowiskiem programistycznym.
Treści programoweT-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
S-2Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego poza zajęciami laboratoryjnymi.
Kryteria ocenyOcenaKryterium oceny
2,0student nie zna podstawowych konstrukcji języków programowania umożliwiających przekształcenie programu zapisanego w języku C++ do postaci zapisanej w języku C#
3,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na jednej klasie do postaci zapisanej w języku C#
3,5student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na jednej klasie z mechanizmem enkapsulacji do postaci zapisanej w języku C#
4,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na klasie bazowej oraz klasie dziedziczącej po niej z mechanizmem enkapsulacji do postaci zapisanej w języku C#
4,5student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na klasie bazowej oraz klasach dziedziczących po niej z mechanizmem enkapsulacji do postaci zapisanej w języku C#
5,0student zna podstawowe konstrukcje języków programowania umożliwiające przekształcenie programu zapisanego w języku C++ opartego na klasie abstrakcyjnej z mechanizmem enkapsulacji oraz polimorfizmu obiektowego do postaci zapisanej w języku C#
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaBI_1A_BII-S-D19_W04Student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego.
Odniesienie do efektów kształcenia dla kierunku studiówBI_1A_W20zna sposoby pozyskiwania informacji naukowych z poszanowaniem praw autorskich, a także sposoby optymalizacji uczenia się i prezentowania wiedzy w języku polskim i obcym
BI_1A_W09zna wybrane języki oraz techniki programowania i wytwarzania aplikacji
BI_1A_W10ma wiedzę z zakresu inżynierii systemów informacyjnych ze szczególnym uwzględnieniem systemów informatycznych oraz zna podstawowe metody gromadzenia i przetwarzania danych i informacji
BI_1A_W11ma wiedzę z zakresu architektury systemów komputerowych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaP1A_W04ma wiedzę w zakresie najważniejszych problemów z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów oraz zna ich powiązania z innymi dyscyplinami przyrodniczymi
P1A_W07ma wiedzę w zakresie podstawowych technik i narzędzi badawczych stosowanych w zakresie dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
P1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; potrafi korzystać z zasobów informacji patentowej
T1A_W02ma podstawową wiedzę w zakresie kierunków studiów powiązanych ze studiowanym kierunkiem studiów
T1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W04ma szczegółową wiedzę związaną z wybranymi zagadnieniami z zakresu studiowanego kierunku studiów
T1A_W05ma podstawową wiedzę o trendach rozwojowych z zakresu dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
T1A_W06ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
T1A_W10zna i rozumie podstawowe pojęcia i zasady z zakresu ochrony własności przemysłowej i prawa autorskiego; umie korzystać z zasobów informacji patentowej
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W01ma podstawową wiedzę o cyklu życia urządzeń, obiektów i systemów technicznych
InzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
InzA_W05zna typowe technologie inżynierskie w zakresie studiowanego kierunku studiów
Cel przedmiotuC-1Zapoznanie studentów z najważniejszymi paradygmatami programowania.
C-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
Treści programoweT-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.
T-W-5Funkcyjny paradygmat programowania. Logiczny paradygmat programowania. Przykłady kodów z języka F#, Clojure, Prolog.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
S-2Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego poza zajęciami laboratoryjnymi.
S-3Ocena podsumowująca: Test zaliczeniowy z wykładów.
Kryteria ocenyOcenaKryterium oceny
2,0student nie zna podstawowych mechanizmów paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego
3,0student zna podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego
3,5student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego; student zna podstawowe mechanizmy paradygmatu obiektowego, funkcyjnego oraz logicznego
4,0student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego oraz obiektowego; student zna podstawowe mechanizmy paradygmatu funkcyjnego oraz logicznego
4,5student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego oraz funkcyjnego; student zna podstawowe mechanizmy paradygmatu logicznego
5,0student zna i rozumie podstawowe mechanizmy paradygmatu imperatywnego, obiektowego, funkcyjnego oraz logicznego
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaBI_1A_BII-S-D19_U01Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia oprogramowania.
Odniesienie do efektów kształcenia dla kierunku studiówBI_1A_U09stosuje techniki programowania i języki odpowiednio do przedstawionego problemu, korzysta z wiedzy o różnicach w możliwościach zastosowań środowiska programistycznego, potrafi pod nadzorem opiekuna wykonać aplikację służącą do analizy danych biologicznych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaP1A_U01stosuje podstawowe techniki i narzędzia badawcze w zakresie dziedzin nauki i dyscyplin naukowych, właściwych dla studiowanego kierunku studiów
P1A_U03wykorzystuje dostępne źródła informacji, w tym źródła elektroniczne
P1A_U04wykonuje zlecone proste zadania badawcze lub ekspertyzy pod kierunkiem opiekuna naukowego
T1A_U02potrafi porozumiewać się przy użyciu różnych technik w środowisku zawodowym oraz w innych środowiskach
T1A_U05ma umiejętność samokształcenia się
T1A_U07potrafi posługiwać się technikami informacyjno-komunikacyjnymi właściwymi do realizacji zadań typowych dla działalności inżynierskiej
T1A_U09potrafi wykorzystać do formułowania i rozwiązywania zadań inżynierskich metody analityczne, symulacyjne oraz eksperymentalne
T1A_U15potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_U01potrafi planować i przeprowadzać eksperymenty, w tym pomiary i symulacje komputerowe, interpretować uzyskane wyniki i wyciągać wnioski
InzA_U07potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
InzA_U08potrafi - zgodnie z zadaną specyfikacją - zaprojektować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Cel przedmiotuC-1Zapoznanie studentów z najważniejszymi paradygmatami programowania.
C-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
C-3Zapoznanie studenta z procesem tworzenia oprogramowania oraz środowiskiem programistycznym.
Treści programoweT-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
S-2Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego poza zajęciami laboratoryjnymi.
Kryteria ocenyOcenaKryterium oceny
2,0Student nie potrafi wykorzystać wiedzy z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia prostego programu
3,0Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) oraz obiektowego (język C++)
3,5Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego i zaawansowanych mechanizmów programowania proceduralnego (język C oraz C++) oraz obiektowego (język C++)
4,0Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego, strukturalnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) i obiektowego (język C++) i zaawansowanych mechanizmów programowania proceduralnego i strukturalnego (język C oraz C++)
4,5Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego, strukturalnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) i zaawansowanych mechanizmów programowania proceduralnego i strukturalnego (język C oraz C++) i obiektowego (język C++)
5,0Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania Student potrafi wykorzystać wiedzę z zakresu mechanizmów programowania imperatywnego, proceduralnego, strukturalnego i obiektowego do utworzenia prostego programu z zastosowaniem podstawowych mechanizmów programowania imperatywnego (język C oraz C++) i zaawansowanych mechanizmów programowania proceduralnego i strukturalnego (język C oraz C++) i obiektowego (język C++ oraz C#)
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaBI_1A_BII-S-D19_K01Student umie korzystać z dokumentacji projektu informatycznego
Odniesienie do efektów kształcenia dla kierunku studiówBI_1A_K01świadomie stosuje przepisy prawa i przestrzega zasad etyki zawodowej oraz szanuje różnorodność poglądów i kultur
BI_1A_K03rozumie potrzebę i zna możliwości ciągłego dokształcania się (studia drugiego i trzeciego stopnia, studia podyplomowe, kursy), pogłębiania własnej wiedzy w oparciu o naukowe źródła informacji oraz wykazuje chęć dzielenia się zdobytą wiedzą z innymi
BI_1A_K04jest zdolny do efektywnej pracy samodzielnej i zespołowej, wykazuje odpowiedzialność za pracę własną, wspólnie realizowane zadania oraz powierzany sprzęt
BI_1A_K05rozumie społeczny i zawodowy kontekst bioinformatyki
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaP1A_K01rozumie potrzebę uczenia się przez całe życie
P1A_K02potrafi współdziałać i pracować w grupie, przyjmując w niej różne role
P1A_K03potrafi odpowiednio określić priorytety służące realizacji określonego przez siebie lub innych zadania
P1A_K04prawidłowo identyfikuje i rozstrzyga dylematy związane z wykonywaniem zawodu
P1A_K05rozumie potrzebę podnoszenia kompetencji zawodowych i osobistych
P1A_K06jest odpowiedzialny za bezpieczeństwo pracy własnej i innych; umie postępować w stanach zagrożenia
P1A_K07wykazuje potrzebę stałego aktualizowania wiedzy kierunkowej
P1A_K08potrafi myśleć i działać w sposób przedsiębiorczy
T1A_K01rozumie potrzebę uczenia się przez całe życie; potrafi inspirować i organizować proces uczenia się innych osób
T1A_K02ma świadomość ważności i zrozumienie pozatechnicznych aspektów i skutków działalności inżynierskiej, w tym jej wpływu na środowisko, i związanej z tym odpowiedzialności za podejmowane decyzje
T1A_K03potrafi współdziałać i pracować w grupie, przyjmując w niej różne role
T1A_K04potrafi odpowiednio określić priorytety służące realizacji określonego przez siebie lub innych zadania
T1A_K05prawidłowo identyfikuje i rozstrzyga dylematy związane z wykonywaniem zawodu
T1A_K06potrafi myśleć i działać w sposób przedsiębiorczy
T1A_K07ma świadomość roli społecznej absolwenta uczelni technicznej, a zwłaszcza rozumie potrzebę formułowania i przekazywania społeczeństwu, w szczególności poprzez środki masowego przekazu, informacji i opinii dotyczących osiągnięć techniki i innych aspektów działalności inżynierskiej; podejmuje starania, aby przekazać takie informacje i opinie w sposób powszechnie zrozumiały
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_K01ma świadomość ważności i rozumie pozatechniczne aspekty i skutki działalności inżynierskiej, w tym jej wpływu na środowisko, i związanej z tym odpowiedzialności za podejmowane decyzje
InzA_K02potrafi myśleć i działać w sposób przedsiębiorczy
Cel przedmiotuC-1Zapoznanie studentów z najważniejszymi paradygmatami programowania.
C-2Ukształtowanie umiejętności z zakresu programowania bazującego na wiedzy z zakresu specyfiki podstawowych paradygmatów programowania.
C-3Zapoznanie studenta z procesem tworzenia oprogramowania oraz środowiskiem programistycznym.
Treści programoweT-L-1Paradygmat programowania imperatywnego. Języki programowania: C, C++.
T-L-2Paradygmat programowania proceduralnego. Języki programowania C, C++.
T-L-3Paradygmat programowania strukturalnego. Języki programowania C, C++.
T-L-4Paradygmat programowania obiektowego. Programowanie z z zastosowaniem obiektów. Język C++.
T-L-5Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm, szablony. Język C++.
T-L-6Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm. Język C#.
T-L-7Obiektowy paradygmat programowania. Zaawansowane programowanie obiektowe: dziedziczenie, polimorfizm: język Java,
T-W-1Wyjaśnienie podstawowych pojęć związanych z paradygmatami programowania oraz językami programowania. Podstawowe cechy języków programowania. Notacja EBNF. Ewolucja języków programowania. Podział paradygmatów programowania. Ogólna charakterystyka pozostałych głównych paradygmatow programowania.
T-W-2Imperatywny paradygmat programowania. Proceduralny paradygmat programowania. Strukturalny paradygmat programowania. Zmienne. Podprogramy. Wiązanie statyczne. Wiązanie dynamiczne. Przydział pamięci. Przykłady kodu z języków C, Fortran, Pascal.
T-W-3Obiektowy paradygmat programowania. Abstrakcje. Klasy. Obiekty. Dziedziczenie. Enkapsulacja. Polimorfizm. Szablony. Wzorce projektowe. Przykłady kodu z języków C++, Java, C#.
T-W-5Funkcyjny paradygmat programowania. Logiczny paradygmat programowania. Przykłady kodów z języka F#, Clojure, Prolog.
T-W-4Specyfika języków skryptowych. Komponentowy paradygmat programowania. Aspektowy paradygmat programowania. Przykłady kodu z języków C++, Java, Ruby.
Metody nauczaniaM-1Wykład informacyjny.
M-2Ćwiczenia laboratoryjne.
Sposób ocenyS-1Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego na zajęciach laboratoryjnych.
S-2Ocena formująca: Ocena poprawności wykonania zadania programistycznego realizowanego poza zajęciami laboratoryjnymi.
S-3Ocena podsumowująca: Test zaliczeniowy z wykładów.
Kryteria ocenyOcenaKryterium oceny
2,0Student nie umie kreatywnie tworzyć programów oraz korzystać z dokumentacji projektu informatycznego
3,0Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego oraz obiektowego
3,5Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz obiektowego (język C++)oraz zaawansowane mechanizmy programowania proceduralnego (język C oraz C++)
4,0Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz obiektowego (język C++)oraz zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego (język C oraz C++)
4,5Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego (język C oraz C++) i obiektowego (język C++). Student umie korzystać z dokumentacji projektu informatycznego
5,0Student umie kreatywnie tworzyć programy w oparciu o podstawowe mechanizmy programowania imperatywnego (język C oraz C++) oraz zaawansowane mechanizmy programowania proceduralnego oraz strukturalnego (język C oraz C++) i obiektowego (język C++ oraz C#). Student umie korzystać z dokumentacji projektu informatycznego