~~NOCACHE~~ ~~REVEAL theme=simple&disableLayout=0&transition=none&controls=1&show_progress_bar=1&build_all_lists=0&show_image_borders=0&horizontal_slide_level=2&enlarge_vertical_slide_headers=0&show_slide_details=1&open_in_new_window=1&size=1024x768~~ ====== Programowanie obiektowe dla AiR ====== ===== Zaliczenie zajęć ===== * zaliczenie 50% zadań realizowanych w trakcie laboratoriów * zaliczenie 2 kolokwiów, każde z wynikiem minimum 50% ===== ===== Rozwiązania zadań z laboratorium należy umieszczać w Moodle ([[https://moodle.umk.pl/course/view.php?id=9632|strona kursu]]) w czasie trwania zajęć. Jeżeli nie jest możliwe ukończenie zadania na zajęciach, rozwiązanie należy umieścić w Moodle najpóźniej w ciągu 7 dni (do następnych zajęć). Rozwiązania musza być realizowane w 100% samodzielnie. Zabronione jest korzystanie z rozwiązań innych osób, z pomocy sztucznej inteligenci, itp. W przypadku wątpliwości co do samodzielności rozwiązania, prowadzący może poprosić o ustne wyjaśnienie rozwiązania. ===== Literatura ===== * Jerzy Grębosz, //Opus magnum C%%++%% 11//, Tom I-III, 2017 \\ (lub wcześniejsze: //Symfonia C%%++%%// i //Pasja C%%++%%//") * Bjarne Stroustrup, //Język C%%++%%//, WNT 2002 * Stanley B. Lippman, Josee Lajoie, //Podstawy języka C%%++%%//, WNT 2001 * (prawie) wszystkie książki na temat języka C%%++%% i programowania obiektowego ===== Laboratoria - plan ===== - [[01_hello_cpp|Od C do C++]] - pierwszy program w C%%++%%, wprowadzenie do środowiska Visual Studio - [[02_klasy|Klasy, konstruktory, destruktory]] - Funkcje zaprzyjaźnione - Przeciążanie operatorów - Kolokwium 1 - Dziedziczenie - Funkcje wirtualne, klasy abstrakcyjne, polimorfizm - Szablony - Iteratory. Obsługa wyjątków - Kolekcje i algorytmy (STL) - Kolokwium 2 ===== Kilka przydatnych odnośników ===== * [[https://moodle.umk.pl/course/view.php?id=9632|Moodle]] - strona kursu z w Moodle, oddawanie zadań i kolokwia * [[http://en.wikibooks.org/wiki/Subject:C%2B%2B_programming_language| WikiBook - C++ programming language]] ( [[http://pl.wikibooks.org/wiki/C%2B%2B| Wersja polska]]) * [[http://www.cplusplus.com/|cplusplus.com - The C++ Resources Network]] * [[http://en.cppreference.com/|C++ Reference]] ([[http://pl.cppreference.com| Polskie tłumaczenie (niekompletne!!)]]) * [[http://www.cprogramming.com/tutorial.html|Programming Tutorials - C, C++, OpenGL, STL]] * [[https://www.tutorialspoint.com/cplusplus/index.htm|C++ tutorial]] ===== Narzędzia ===== * [[https://visualstudio.microsoft.com/pl/|Visual Studio]] Community/Professional/Enterprice 2022 (Windows) * [[https://code.visualstudio.com/|Visual Studio Code]] (GNU Linux, Windows, Mac OS) \\ wraz z rozszerzeniem [[https://code.visualstudio.com/docs/languages/cpp|C/C++ for Visual Studio Code]] * kompilator GCC, polecenie (GNU Linux, Windows, Mac OS) \\ ''g%%++%% program.cpp -o program'' * inne: [[http://www.codeblocks.org/|Code::Blocks]], [[https://dev-cpp.com/Dev-Cpp-5/|Dev-C++]], [[http://www.kdevelop.org/|Kdevelop]], ... ===== Projekty zaliczeniowe ===== Osoby, które potrafią programować obiektowo w C%%++%% mogą zaliczyć laboratoria na podstawie projektu bez uczęszczania na zajęcia. \\ * chęć zaliczenia zajęć w ten sposób wraz z tematem projektu należy zgłosić najpóźniej w ciągu 2 pierwszych tygodni zajęć (do 9 marca 2026 r.) * termin oddania projektu zaliczeniowego: 12 kwietnia 2026 r. [[.:wymagania|Wymagania dotyczące projektu zaliczeniowego]]