Wydział Biotechnologii i Hodowli Zwierząt - Bioinformatyka (S1)
specjalność: Systemy informatyczne w biologii
Sylabus przedmiotu Programowanie w języku Java:
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 | Programowanie w języku Java | ||
Specjalność | przedmiot wspólny | ||
Jednostka prowadząca | Katedra Inżynierii Oprogramowania | ||
Nauczyciel odpowiedzialny | Sławomir Wernikowski <Slawomir.Wernikowski@zut.edu.pl> | ||
Inni nauczyciele | |||
ECTS (planowane) | 2,0 | ECTS (formy) | 2,0 |
Forma zaliczenia | zaliczenie | Język | polski |
Blok obieralny | 7 | Grupa obieralna | 2 |
Formy dydaktyczne
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | znajomość aparatu pojęciowego związanego z programowaniem proceduralnym |
W-2 | podstawowa umiejętność programowania w dowolnym języku proceduralnym |
W-3 | umiejętność syntezy i analizy algorytmów |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | znajomość podstawowego aparatu pojęciowego swoistego dla środowiska Java |
C-2 | umiejętność pisania i czytania programów w języku Java na poziomie podstawowym |
C-3 | obeznanie z mechanizmem wyjątków w Javie |
C-4 | wiedza na temat problemów programowania wielowątkowego w środowisku JVM |
C-5 | uzyskanie podstawy do ewentualnego kształcenia zaawansowanych technik programowania w Javie |
C-6 | umiejętność samodzielnego rozwiązywania problemów implementacyjnych w oparciu o dostępne źródła dokumentacyjne |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Zapoznanie ze środowiskiem NetBeans, implementacja prostych zadań o charakterze proceduralnym | 2 |
T-L-2 | Wykorzystanie możliwości klasy String, obróbka łańcuchów | 2 |
T-L-3 | Projekt i implementacja prostej klasy do obróbki dat | 2 |
T-L-4 | Projekt i implementacja hierarchii klas wyjątków dla klasy Data | 2 |
T-L-5 | Wykorzystanie możliwości klasy File – przeszukiwanie systemu plików | 2 |
T-L-6 | Wątki – różne mutacje problemu Producenta i Konsumenta | 2 |
T-L-7 | Sprawdzian praktyczny (konkurs programistyczny z wykorzystaniem środowiska SPOJ) | 3 |
15 | ||
wykłady | ||
T-W-1 | Wprowadzenie podstawowych pojęć programowania obiektowego (enkapsulacja, dziedziczenie, polimorfizm), klasa i obiekt, przykładowa obiektowa implementacja stosu, pierwszy program w Javie, wprowadzenie do składni (alfabet, słowa kluczowe, identyfikatory, typy podstawowe, operatory, struktury sterowania, skalary, tablice, podstawowe operacje we/wy, klasa Scanner, klasa String) | 3 |
T-W-2 | Struktury sterowania, skalary, tablice, podstawowe operacje we/wy, klasa Math, podstawy deklarowania klas, fabrykowanie obiektów, deklarowanie i dostęp do własności, własności statyczne, deklarowanie i dostęp do metod, odnośnik this, metody statyczne, prototyp prostej klasy, własności prywatne | 2 |
T-W-3 | deklarowanie i dostęp do metod, metody statyczne, prototyp prostej klasy, własności prywatne, klasa StringBuffer, inicjowanie obiektu, konstruktory, przeciążanie konstruktorów, konstruktor domyślny | 2 |
T-W-4 | Klasa File, podstawy dziedziczenia w Javie, składnia i semantyka dziedziczenia, konsekwencje braku wielodziedziczenia, zasady dziedziczenia własności i metod, dziedziczenie i przesłanianie konstruktorów, odnośnik super, polimorfizm w Javie, klasy dostępu | 2 |
T-W-5 | Dziedziczenie a zgodność typów, rzutowanie, ograniczenia dopuszczalności rzutowania, wprowadzenie do wyjątków, instrukcja catch – składnia i semantyka, klasy wyjątków, klasa Throwable i jej podklasy, wybrane wyjątki predefiniowane, asercje, definiowanie własnych wyjątków, instrukcja throw, propagowanie i weryfikowanie wyjątków | 3 |
T-W-6 | Bbyty ustalone w Javie (zmienne typów prostych i obiektowych, metody, klasy), klasy abstrakcyjne, metody abstrakcyjne, interfejsy, implementowanie interfejsu, wieloimplementacja, wstęp do wątków w Javie, interfejs Runnable, metody synchronizowane, synchronizacja na obiekcie, stany wątków, operacje na wątkach, priorytety wątków | 3 |
15 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | uczestnictwo w zajęciach | 15 |
A-L-2 | implementacja zadań laboratoryjnych (praca off-site) | 7 |
A-L-3 | przygotowanie do sprawdzianów otwierajacych zajęcia laboratoryjne | 7 |
A-L-4 | konsultacje osobiste | 1 |
30 | ||
wykłady | ||
A-W-1 | uczestnictwo w zajęciach | 15 |
A-W-2 | samodzielne studiowanie problematyki przedstawionej na wykładzie | 15 |
30 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | wykład informacyjny |
M-2 | wykład problemowy |
M-3 | ćwiczenia laboratoryjne (praca on-site) |
M-4 | ćwiczenia laboratoryjne (praca off-site) |
Sposoby oceny
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: ocena zgodności wykonanych zadań laboratoryjnych ze specyfikacją wymagań |
S-2 | Ocena formująca: ocena poprawności implementacji na podstawie wyników testów akceptacyjnych |
S-3 | Ocena podsumowująca: kolokwium zaliczeniowe (test wielokrotnego wyboru) |
S-4 | Ocena podsumowująca: ranking konkursu programistycznego w środowisku SPOJ |
Zamierzone efekty kształcenia - wiedza
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
BI_1A_BI-S-O4.2_W01 Student potrafi definiować podstawowe pojęcia opisujące strukturę programu w języku Java oraz odnosić je do pojęc z obszaru modelowania obiektowego | BI_1A_W10 | P1A_W04, P1A_W07, T1A_W02, T1A_W03, T1A_W04, T1A_W05, T1A_W07 | InzA_W01, InzA_W02 | C-1 | T-W-1, T-W-2, T-W-3, T-W-6 | M-1, M-2 | S-3 |
BI_1A_BI-S-O4.2_W02 Student potrafi opisać funkcjonowanie mechanizmów realizacji obiektowości oraz wytłumaczyć zależności i różnice pomiędzy nimi. | BI_1A_W09 | P1A_W04, P1A_W07, T1A_W02, T1A_W03, T1A_W05, T1A_W06, T1A_W07 | InzA_W01, InzA_W02, InzA_W05 | C-2, C-3 | T-W-4, T-W-5, T-W-6 | M-1, M-2 | S-3 |
BI_1A_BI-S-O4.2_W03 Student potrafi wskazać środki programistyczne adekwatne do postawionego problemu implementacyjnego. | BI_1A_W09 | P1A_W04, P1A_W07, T1A_W02, T1A_W03, T1A_W05, T1A_W06, T1A_W07 | InzA_W01, InzA_W02, InzA_W05 | C-4, C-5 | T-W-1, T-W-2, T-W-3, T-W-4, T-W-5, T-W-6 | M-1, M-2 | S-3 |
Zamierzone efekty kształcenia - umiejętności
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
BI_1A_BI-S-O4.2_U01 Student potrafi rozwiązywać praktyczne problemy implementacyjne z użyciem języka Java i wybranego reprezentatywnego środowiska IDE | BI_1A_U09, BI_1A_U11, BI_1A_U22 | P1A_U01, P1A_U03, P1A_U04, P1A_U05, P1A_U09, T1A_U01, T1A_U02, T1A_U05, T1A_U07, T1A_U09, T1A_U11, T1A_U13, T1A_U15, T1A_U16 | InzA_U01, InzA_U03, InzA_U05, InzA_U07, InzA_U08 | C-2, C-4 | T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7 | M-3, M-4 | S-1, S-2, S-4 |
BI_1A_BI-S-O4.2_U02 Student potrafi wykorzystywać dokumentację firmową w celu podnoszenia własnych kwalifikacji i jakości wytwarzanego oprogramowania | BI_1A_U20 | P1A_U04, P1A_U06, P1A_U08, P1A_U09, P1A_U10, P1A_U12, T1A_U03, T1A_U06, T1A_U11, T1A_U12 | InzA_U04, InzA_U07 | C-5, C-6 | T-L-7 | M-3, M-4 | S-1, S-2 |
Zamierzone efekty kształcenia - inne kompetencje społeczne i personalne
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
BI_1A_BI-S-O4.2_K01 Student nabywa zdolności do samodzielnego zdobywania, zgłębiania i interpretowania wiedzy oraz do rozwijania i aktualizowania własnych umiejętności | BI_1A_K03 | P1A_K01, P1A_K02, P1A_K05, P1A_K07, P1A_K08, T1A_K01, T1A_K06, T1A_K07 | InzA_K02 | C-4 | T-L-7 | M-3, M-4 | S-4 |
Kryterium oceny - wiedza
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
BI_1A_BI-S-O4.2_W01 Student potrafi definiować podstawowe pojęcia opisujące strukturę programu w języku Java oraz odnosić je do pojęc z obszaru modelowania obiektowego | 2,0 | niespełnienie wymagań warunkujących uzyskanie oceny pozytywnej |
3,0 | potrafi nazwać elementy używane w modelowaniu obiektowym i przenieść je na grunt aparatu syntaktycznego języka Java | |
3,5 | potrafi biegle nazwać elementy używane w modelowaniu obiektowym i przenieść je na grunt aparatu syntaktycznego języka Java | |
4,0 | jak 3.0 + potrafi przenieść elementy modelowania obiektowego na aparat semantyczny języka Java | |
4,5 | ak 3.0 + potrafi biegle przenieść elementy modelowania obiektowego na aparat semantyczny języka Java | |
5,0 | jak 4.0 + potrafi tworzyć proste modele obiektowe zjawisk świata rzeczywistego oraz konstruować adekwatne byty języka Java | |
BI_1A_BI-S-O4.2_W02 Student potrafi opisać funkcjonowanie mechanizmów realizacji obiektowości oraz wytłumaczyć zależności i różnice pomiędzy nimi. | 2,0 | niespełnienie wymagań warunkujących uzyskanie oceny pozytywnej |
3,0 | umie nazwać mechanizmy obiektowe na gruncie terminologii pozainformatycznej | |
3,5 | umie biegle nazywać mechanizmy obiektowe na gruncie terminologii pozainformatycznej | |
4,0 | jak 3.0 + umie wskazać sposoby implementacji typowych mechanizmów obiektowych w imperatywnych językach programowania | |
4,5 | jak 3.0 + biegle umie wskazać sposoby implementacji typowych mechanizmów obiektowych w imperatywnych językach programowania | |
5,0 | jak 4.0 + umie kodować typowe mechanizmy obiektowe w języka Java | |
BI_1A_BI-S-O4.2_W03 Student potrafi wskazać środki programistyczne adekwatne do postawionego problemu implementacyjnego. | 2,0 | niespełnienie wymagań warunkujących uzyskanie oceny pozytywnej |
3,0 | umie nazwać składniki środowiska pracy programisty oraz wskazać ich przeznaczenie | |
3,5 | umie biegle nazwać składniki środowiska pracy programisty oraz wskazać ich przeznaczenie | |
4,0 | jak 3.0 + umie wykorzystać środowisko pracy programisty do modyfikacji i wdrożenia gotowego kodu źródłowego języka Java | |
4,5 | jak 3.0 + umie biegle wykorzystać środowisko pracy programisty do modyfikacji i wdrożenia gotowego kodu źródłowego języka Java | |
5,0 | jak 4.0 + umie wykorzystać środowisko pracy programisty do wytworzenia i wdrożenia oryginalnego kodu źródłowego języka Java |
Kryterium oceny - umiejętności
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
BI_1A_BI-S-O4.2_U01 Student potrafi rozwiązywać praktyczne problemy implementacyjne z użyciem języka Java i wybranego reprezentatywnego środowiska IDE | 2,0 | niespełnienie wymagań warunkujących uzyskanie oceny pozytywnej |
3,0 | umie czytać i interpretowac gotowy kod źródlowy języka Java oraz modyfikować go do własnych potrzeb | |
3,5 | umie biegle czytać i interpretowac gotowy kod źródlowy języka Java oraz wydajnie modyfikować go do własnych potrzeb | |
4,0 | jak 3.0 + potrafi kodować własne implementacje wskazanych algorytmów z wykorzystaniem języka Java | |
4,5 | jak 3.0 + potrafi biegle kodować własne implementacje wskazanych algorytmów z wykorzystaniem języka Java | |
5,0 | jak 4.0 + potrafi oceniać poprawnośc uzyskanego rozwiązania pod kątem precyzji wyników oraz możliwości występowania anomalii numerycznych | |
BI_1A_BI-S-O4.2_U02 Student potrafi wykorzystywać dokumentację firmową w celu podnoszenia własnych kwalifikacji i jakości wytwarzanego oprogramowania | 2,0 | niespełnienie wymagań warunkujących uzyskanie oceny pozytywnej |
3,0 | zna sposób w jaki zorganizowana jest dokumentacja firmowa udostępniana wraz z Java SDK; potrafi wykorzystać ją do celów rozstrzygania wątpliwości implementacyjnych | |
3,5 | zna sposób w jaki zorganizowana jest dokumentacja firmowa udostępniana wraz z Java SDK; potrafi biegle wykorzystać ją do celów rozstrzygania wątpliwości implementacyjnych | |
4,0 | jak 3.0 + potrafi uzupełniać swoją wiedzę we wskazanej sferze w oparciu o dokumentację firmową | |
4,5 | jak 3.0 + potrafi uzupełniać swoją wiedzę we wskazanej sferze w oparciu o dokumentację firmową oraz inne dostępne źródła (repozytoria kodów źródłowych, itp) | |
5,0 | jak 4.0 + wykorzystuje dokumentację firmową przy badaniu nowych cech języka Java |
Kryterium oceny - inne kompetencje społeczne i personalne
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
BI_1A_BI-S-O4.2_K01 Student nabywa zdolności do samodzielnego zdobywania, zgłębiania i interpretowania wiedzy oraz do rozwijania i aktualizowania własnych umiejętności | 2,0 | niespełnienie wymagań warunkujących uzyskanie oceny pozytywnej |
3,0 | potrafi terminowo i rzetelnie wypełniać postawione zadania na podstawie wiedzy zaprezentowanej w trakcie zajęć | |
3,5 | potrafi terminowo i rzetelnie wypełniać postawione zadania na podstawie wiedzy zaprezentowanej w trakcie zajęć oraz wykazuje aktywną postawę przy rozwiązywaniu nietypowych zadań | |
4,0 | jak 3.0 + podejmuje się wykonania zadań wykraczających poza zakres wiedzy prezentowanej na zajęciach i wymagających samokształcenia | |
4,5 | ak 3.0 + szczególnie aktywnie podejmuje się wykonania zadań wykraczających poza zakres wiedzy prezentowanej na zajęciach i wymagających samokształcenia | |
5,0 | jak 4.0 + podejmuje się wykonania kompletnego zadania implementacyjnego wykorzystujące interfejs graficzny |
Literatura podstawowa
- Kathy Sierra, Bert Bates, First Head Java – edycja polska, Helion, Warszawa, 2004
- Bruce Eckel, Thinking in Java – edycja polska, Helion, Warszawa, 2008
Literatura dodatkowa
- Oracle Corp., Java Platform, Standard Edition 6 API Specification, 2011, publikacja elektroniczna (data dostępu: 2012-04-25), http://docs.oracle.com/javase/6/docs/api/