Programming in D
General data
Course ID: | 1000-I1PJD |
Erasmus code / ISCED: |
(unknown)
/
(0613) Software and applications development and analysis
|
Course title: | Programming in D |
Name in Polish: | Język D |
Organizational unit: | Faculty of Mathematics and Computer Science |
Course groups: |
(in Polish) Inf., I st., stacjonarne, 2 rok, przedmioty do wyboru (in Polish) Inf., I st., stacjonarne, 3 rok, przedmioty do wyboru (in Polish) Inf., II st, stacjonarne, przedmioty do wyboru |
ECTS credit allocation (and other scores): |
6.00
|
Language: | Polish |
Prerequisites: | (in Polish) Zaliczenie przedmiotu Podstawy programowania. |
Total student workload: | (in Polish) Godziny realizowane z udziałem nauczycieli - 60 godzin, w tym * wykład - 30 godzin * laboratorium - 30 godzin 2. Czas potrzebny na pracę indywidualną studenta - 50 godzin, w tym * 30 godzin na przygotowanie i przetestowanie indywidualnych projektów. * 10 godzin na przygotowanie się do laboratorium (wykonywanie zadań). * 10 godzin na powtórzenie materiału z wykładu. 3. Czas potrzebny na przygotowanie się do zaliczenia oraz przygotowanie projektu - 35 godzin, w tym * 25 godzin na powtórzenie materiału do egzaminu. * 10 godzin na przygotowanie się do zaliczenia laboratorium. |
Learning outcomes - knowledge: | (in Polish) 1. Zna specyfikację oraz techniki programistyczne języka D, wie jak definiować podstawowe struktury danych, wykonywać na nich operacje, implementować algorytmy (K_W05, K_W06 na studiach I stopnia, K_W10 na studiach II stopnia). 2. Wymienia charakterystyczne cechy języka D wyróżniające go spośród innych języków programowania takich jak C, C++ i Java (K_W10 na studiach I stopnia). 3. Wie jakie technologie sieciowe mają swoją implementację w bibliotekach Tango i Phobos (K_W12 na studiach I stopnia). |
Learning outcomes - skills: | (in Polish) 1. Pisze programy w języku D wykorzystujące biblioteki Phobos i Tango (K_U05 na studiach I stopnia, K_U09 na studiach II stopnia). 2. Dobiera mechanizmy i klasy zalecane do konkretnych, podanych zastosowań i pisze programy z ich użyciem (K_U22 na studiach I stopnia, K_U13 na studiach II stopnia). 3. Tworzy w języku D projekty różnych typów, w szczególności aplikacje konsolowe, aplikacje graficzne, biblioteki, moduły (K_U24 na studiach I stopnia). 4. Tworzy oprogramowanie wykorzystujące biblioteki skompilowane w języku C (K_U07 na studiach II stopnia). 5. Analizuje działanie otrzymanych programów i fragmentów kodów oraz przewiduje ich zachowanie (K_U06 na studiach I stopnia). |
Learning outcomes - social competencies: | (in Polish) 1. Jest nastawiony na nieustanne zdobywanie nowej wiedzy, umiejętności i doświadczeń, rozumie potrzebę ciągłego doskonalenia się i podnoszenia kompetencji zawodowych (K_K06 na obu stopniach). 2. Potrafi w zrozumiały sposób komunikować się z innymi osobami znającymi język D (K_K05 na obu stopniach). 3. Potrafi nawiązać współpracę z innymi programistami języka D oraz tworzyć wspólnie z nimi złożone projekty informatyczne (K_K01 na obu stopniach). |
Teaching methods: | (in Polish) * Wykład. * Laboratorium. * Samodzielne zdobywanie informacji (studiowanie literatury). * Opcjonalne dodatkowe zadania programistyczne. * Indywidualny projekt programistyczny. * Praktyczny sprawdzian umiejętności programowania. * Ustny egzamin teoretyczny. |
Short description: |
(in Polish) Przedmiot Język D przeznaczony jest dla studentów, którzy we wcześniejszych latach poznali podstawy programowania obiektowego. Język D jest obiektowo zorientowanym językiem programowania stworzonym przez Waltera Brighta, ma on być obiektowym następcą języka ANSI C, jednak w przeciwieństwie do języka C++ nie jest w pełni zgodny składniowo z poprzednikiem. Możliwe jest jednak używanie skompilowanych modułów napisanych w języku C. W stosunku do C++, język D wprowadza kilka nowych cech takich jak programowanie kontraktowe, automatyczne zarządzanie pamięcią, zintegrowany z kompilatorem system dokumentacji, możliwe jest zagnieżdżanie funkcji, zmieniony jest system szablonów. Język D utrzymuje możliwość pisania niskopoziomowego dodając wstawki asemblerowe. Odchodzi natomiast od wielokrotnego dziedziczenia z C++ w zamian oferując możliwość implementacji wielu interfejsów. |
Full description: |
(in Polish) Ponieważ przewiduje się, że większość słuchaczy miała wcześniej styczność z językami C, C++ i Java, więc nauka składni języka D będzie opierać się na znajomości składni języków C, C++ i Java. Ponadto, podawane podczas wykładu przykłady będą porównywać składnię znanych języków programowania takich jak C, C++ i Java ze składnią języka D. Tym niemniej wykład jest skonstruowany w ten sposób, aby również osoby nie mające wcześniej do czynienia z językami C, C++ i Java były w stanie opanować składnię języka D. Główne treści programowe
|
Bibliography: |
(in Polish) Literatura podstawowa:
|
Assessment methods and assessment criteria: |
(in Polish)
|
Classes in period "Summer semester 2021/22" (past)
Time span: | 2022-02-21 - 2022-09-30 |
Navigate to timetable
MO TU W WYK
TH LAB
LAB
FR |
Type of class: |
Laboratory, 30 hours, 16 places
Lecture, 30 hours, 32 places
|
|
Coordinators: | Rafał Bocian | |
Group instructors: | Rafał Bocian | |
Students list: | (inaccessible to you) | |
Examination: |
Course -
Examination
Laboratory - Grading Lecture - Examination |
Copyright by Nicolaus Copernicus University in Torun.