Module also offered within study programmes:
General information:
Name:
Techniki programowania
Course of study:
2015/2016
Code:
CIM-1-027-s
Faculty of:
Materials Science and Ceramics
Study level:
First-cycle studies
Specialty:
-
Field of study:
Materials Science
Semester:
0
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr hab. Wierzba Bartłomiej (bwierzba@agh.edu.pl)
Academic teachers:
dr hab. Wierzba Bartłomiej (bwierzba@agh.edu.pl)
Module summary

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Skills
M_U001 Student potrafi napisać oraz skompilować prosty program w języku C++ Activity during classes,
Test
M_U003 Student potrafi wykorzystać wybrane środowisko programistyczne C++ Activity during classes
Knowledge
M_W001 Student ma podstawową wiedzę z zakresu programowania w języku C++ IM1A_W14 Activity during classes,
Test
M_W002 Student ma podstawową wiedzę z zakresu programowania obiektowego IM1A_W14 Activity during classes,
Test
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Others
E-learning
Skills
M_U001 Student potrafi napisać oraz skompilować prosty program w języku C++ - - - - - + - - - - -
M_U003 Student potrafi wykorzystać wybrane środowisko programistyczne C++ - - - - - + - - - - -
Knowledge
M_W001 Student ma podstawową wiedzę z zakresu programowania w języku C++ - - - - - + - - - - -
M_W002 Student ma podstawową wiedzę z zakresu programowania obiektowego - - - - - + - - - - -
Module content
Seminar classes:
  1. Podstawowe pojęcia języka C++

    Podstawy programowania w języku C++: struktura programu, pliki źródłowe, preprocesor, identyfikacja danych; narzędzia wspomagające programowanie: kompilator, linker, debugger; pliki nagłówkowe i zasady ich stosowania; najistotniejsze elementy języka C++;

  2. Słowa kluczowe, typy danych

    Podstawowe słowa kluczowe; typy danych; zmienne tablicowe, tablice jedno- i wielowymiarowe;

  3. Operatory

    operatory: arytmetyczne, relacyjne, logiczne, bitowe; instrukcje przypisania; instrukcje warunkowe proste i złożone; instrukcje wyboru; konstruowanie wyrażeń logicznych;

  4. Instrukcje iteracyjne

    instrukcje iteracyjne: while i do..while, instrukcja for; wskaźniki: arytmetyka wskaźnikowa, wskaźniki a tablice; struktury i unie;

  5. Dynamiczne operacje na pamięci

    dynamiczne przypisywanie i zwalnianie pamięci: operatory new i delete; funkcje: przekazywanie argumentów, referencje, przeciążanie funkcji, wskaźniki;

  6. programowanie strukturalne

    programowanie strukturalne – przykładowe programy (rozwiązanie drugiego prawa Ficka);

  7. programowanie rekurencyjne

    programowanie rekurencyjne – przykładowe programy (metody odwrotne dotyczące znajdowania współczynników dyfuzji).

  8. Wprowadzenie do programowania obiektowego w języku C++

    Wprowadzenie do programowania obiektowego w języku C++: podstawowe pojęcia: klasa, hermetyzacja, dziedziczenie, przeciążanie funkcji i operatorów, polimorfizm, obiekt;

  9. Obiekty

    projektowanie klas, strukturalizacja, hermetyzacja i komunikacja, metody, wewnętrzna struktura obiektów;

  10. konstruktory i destruktory

    konstruktory i destruktory obiektów;

  11. komunikacja z obiektami

    komunikacja z obiektami: funkcje składowe i zaprzyjaźnione, zmienna this;

  12. dziedziczenie

    dziedziczenie: konstruowanie obiektów klasy pochodnej, funkcje wirtualne, klasy abstrakcyjne i fundamentalne;

  13. Programowanie obiektowe a strukturalne

    porównanie programowania strukturalnego z obiektowym, najważniejsze różnice.

Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 55 h
Module ECTS credits 2 ECTS
Participation in laboratory classes 30 h
Realization of independently performed tasks 10 h
Contact hours 5 h
Preparation for classes 10 h
Additional information
Method of calculating the final grade:

Średnia ocen z kolokwiów

Prerequisites and additional requirements:

Wymagania wstępne: Informatyka

Recommended literature and teaching resources:

1. J. Grębosz, Symfonia C++, Oficyna Kallimach, 1996 lub nowsze.
2. Stephen Prata, Język C++. Szkoła programowania. Helion 2006.
3. Ogólnodostępne podręczniki do języka C++.

Scientific publications of module course instructors related to the topic of the module:

Additional scientific publications not specified

Additional information:

Brak