Vežbe

Razvoj softvera

Vežbe

Materijali

Snimci sa časa

Literatura

  1. Kreiranje i inicijalizacija promenljivih na stek memoriji i njihov životni vek.
    • Beginning C++ 17
      • Sekcija 2.1. Variables, Data, and Data Types
    • The C++ standard library - A Tutorial and Reference
      • Podsekcija 3.1.3. Uniform Initialization and Initializer Lists
    • C++ Primer
      • Sekcija 2.2. Variables
  2. Šablonska klasa std::vector.
    • The C++ standard library - A Tutorial and Reference
      • Sekcija 7.3. Vectors
    • Mastering the C++17 STL
      • Sekcija 4.3. The workhorse: std::vector<T>
    • Beginning C++ 17
      • Podsekcija 5.19.2. Using std::vector<T> Containers
    • C++ Primer
      • Sekcija 3.3. Library vector Type
  3. Šablonska klasa std::complex.
  4. Ulazni i izlazni tokovi.
    • The C++ standard library - A Tutorial and Reference
      • Sekcija 15.1. Common Background of I/O Streams
    • C++ Primer
      • Sekcija 1.2. A First Look at Input/Output
  5. Uvod u algoritme kroz algoritam accumulate.
  6. Prostori imena. Prostor imena std.
    • Beginning C++ 17
      • Podsekcija 1.3.8. Namespaces
      • Sekcija 10.5. Namespaces
    • The C++ standard library - A Tutorial and Reference
      • Sekcija 4.1. Namespace std
  7. Konstantne vrednosti.
    • Beginning C++ 17
      • Podsekcija 2.1.3. Defining Variables with Fixed Values
    • C++ Primer
      • Sekcija 2.4. const Qualifier
  8. Osnovni rad sa niskama.
    • Beginning C++ 17
      • Sekcija 7.1. A Better Class of String
    • C++ Primer
      • Sekcija 3.2. Library string Type
    • The C++ standard library - A Tutorial and Reference
      • Poglavlje 13. Strings
  9. Reference „umesto“ pokazivača.
    • Beginning C++ 17
      • Sekcija 6.13. Understanding References
    • Fundamentals of C++ programming
      • Sekcija 10.8. Reference Variables
    • C++ Primer
      • Sekcija 2.3. Compound Types
    • Safe C++
      • Poglavlje 6. Invalid Pointers, References, and Iterators
  10. Ključna reč auto.
    • Beginning C++ 17
      • Sekcija 2.15. The auto keyword
    • C++ Primer
      • Podsekcija 2.5.2. The auto Type Specifier
  11. Iteratori.
    • Beginning C++17
      • Podsekcija 19.2.2. Iterators for Standard Library Containers
      • Podsekcija 19.2.2. Iterators for Arrays
    • The C++ standard library - A Tutorial and Reference
      • Sekcija 6.3. Iterators (do podsekcije 6.3.1)
      • Poglavlje 9. STL Iterators (bez sekcija 9.3, 9.5. i 9.6.)
    • Fundamentals of C++ Programming
      • Sekcija 20.2. Iterators
  12. Kolekcije iz standardne biblioteke.

Materijali

Snimci sa časa

Literatura

  1. Pokazivači i dinamička memorija.
    • Beginning C++17
      • Poglavlje 6. Pointers and references (zaključno sa sekcijom 6.11.)
    • Fundamentals of C++ programming
      • Poglavlje 18. Memory management (zaključno sa sekcijom 18.2.)
    • Safe C++
      • Poglavlje 8. Memory Leaks
      • Poglavlje 9. Dereferencing NULL Pointers
  2. Pametni pokazivač std::unique_ptr i funkcija std::make_unique.
    • Beginning C++17
      • Sekcija 6.12. Raw Pointers and Smart Pointers
      • Podsekcija 6.12.1. Using unique_ptr<T> Pointers
    • The C++ Standard library – A tutorial and reference
      • Podsekcija 5.2.5. Class unique_ptr
    • Mastering the C++17 STL
      • Sekcija 6.3. Automatically managing memory with std::unique_ptr<T>
  3. Pametni pokazivač std::shared_ptr i funkcija std::make_shared.
    • Beginning C++17
      • Sekcija 6.12. Raw Pointers and Smart Pointers
      • Podsekcija 6.12.2. Using shared_ptr<T> Pointers
    • The C++ Standard library – A tutorial and reference
      • Podsekcija 5.2.1. Class shared_ptr
    • Mastering the C++17 STL
      • Sekcija 6.4. Reference counting with std::shared_ptr<T>
    • Fundamentals of C++ programming
      • Sekcija 18.6. Smart Pointers
  4. Leve i desne vrednosti. Leve i desne reference.
    • Beginning C++17
      • Sekcija 17.1. Lvalues and Rvalues
    • Fundamentals of C++ programming
      • Sekcija 18.5. Rvalue References
  5. RAII idiom.

Materijali

Snimci sa časa

Literatura

  1. Klase u jeziku C++.
    • Beginning C++17
      • Poglavlje 11. Defining Your Own Data Types
      • Poglavlje 12. Operator Overloading
      • Poglavlje 17. Move Semantics
    • Fundamentals of C++ Programming
      • Poglavlje 14. Custom Objects
      • Poglavlje 15. Fine Tuning Objects
      • Sekcija 18.4. Resource Management
      • Sekcija 18.5. Rvalue references
    • C++ Primer
      • Poglavlje 7. Classes
      • Poglavlje 13. Copy Control
      • Poglavlje 14. Overloaded Operations and Conversions
  2. UML dijagram klasa.
    • UML Classroom
      • Poglavlje 4. The Class Diagram
    • The Elements of UML 2 Style
      • Poglavlje 5. UML Class Diagram

Materijali

Snimci sa časa

Literatura

  1. Nasleđivanje klasa.
    • Beginning C++17
      • Poglavlje 13. Inheritance
      • Poglavlje 14. Polymorphism
    • Fundamentals of C++ Programming
      • Poglavlje 17. Inheritance and Polymorphism
    • C++ Primer
      • Poglavlje 15. Object-Oriented Programming
      • Sekcija 18.3. Multiple and Virtual Inheritance
  2. Problemi pri programiranju aplikacija sa OOP dizajnom.
    • Safe C++
      • Poglavlje 10. Copy Constructors and Assignment Operators
      • Poglavlje 11. Avoid Writing Code in Destructors
      • Poglavlje 12. How to Write Consistent Comparison Operators
  3. UML dijagram klasa.
    • UML Classroom
      • Poglavlje 4. The Class Diagram
    • The Elements of UML 2 Style
      • Poglavlje 5. UML Class Diagram

Materijali

Snimci sa časa

Literatura

  1. Uvod u biblioteku Qt. Podešavanje okruženja za rad. Qt projekti i pokretanje aplikacija.
    • Hands-On GUI Programming with C++ and Qt5
      • Poglavlje 1. Introduction to Qt
    • Game Programming Using QT
      • Poglavlje 1. Introduction to Qt
      • Poglavlje 2. Installation
  2. Qt5 biblioteka za kreiranje grafičkog korisničkog interfejsa. Raspoređivanje elemenata. Elementarne kontrole: dugme i jednolinijsko polje. Mehanizam signala i slotova.
  3. Osnovni elementi programiranja grafickih elemenata u Qt5 biblioteci.

Materijali

Snimci sa časa

Literatura

  1. Šablonske funkcije.
    • Beginning C++17
      • Poglavlje 9. Function Templates
    • Fundamentals of C++ Programming
      • Sekcija 19.1. Function Templates
    • C++ Primer
      • Poglavlje 16. Templates and Generic Programming
  2. Šablonske klase.
    • Beginning C++17
      • Poglavlje 16. Class Templates
    • Fundamentals of C++ Programming
      • Sekcija 19.2. Class Templates
    • C++ Primer
      • Poglavlje 16. Templates and Generic Programming

Materijali

Snimci sa časa

Literatura

  1. Algoritmi: std::equal, std::transform, std::iota, std::accumulate, std::find_if, std::find_if_not, std::stable_partition, std::copy, std::rotate, std::inner_product.
    • Beginning C++17.
      • Sekcija 19.3. Algorithms
    • The C++ standard library - A Tutorial and Reference
      • Poglavlje 11. STL Algorithms
      • Poglavlje 17. Numerics
    • Mastering the C++17 STL
      • Poglavlje 3. The Iterator-Pair Algorithms
    • Fundamentals of C++ Programming
      • Sekcija 20.5. Algorithms in the Standard Library
    • C++ Primer
      • Poglavlje 10. Generic Algorithms
  2. Funkcionalni objekti (funkcionali).
    • Beginning C++17
      • Sekcija 12.10. Function Objects
      • Sekcija 18.2. Function Objects
    • The C++ standard library - A Tutorial and Reference
      • Sekcija 6.10. Function Objects
    • C++ Primer
      • Sekcija 14.8. Function-Call Operator
  3. Lambda funkcije.
    • Beginning C++17
      • Sekcija 18.3. Lambda Expressions
    • The C++ standard library - A Tutorial and Reference
      • Sekcija 6.9. Using Lambdas
    • Fundamentals of C++ Programming
      • Sekcija 20.4. Lambda Functions
    • C++ Primer
      • Podsekcija 10.3.2. Lambda Expressions
      • Podsekcija 10.3.3. Lambda Captures and Returns
  4. Funkcija std::bind.
    • The C++ standard library - A Tutorial and Reference
      • Podsekcija 6.10.3. Binders
    • C++ Primer
      • Podsekcija 10.3.4. Binding Arguments

Materijali

Snimci sa časa

Literatura

  1. Kreiranje Qt5 aplikacija sa podrškom za konkurentno programiranje.

Materijali

Snimci sa časa

Literatura

  1. Serijalizacija i deserijalizacija podataka
    • C++ GUI Programming with Qt4
      • Poglavlje 12. Input/Output (zaključno sa sekcijom Traversing Directories)
    • Game Programming Using QT
      • Poglavlje 4. Qt Core Essentials
    • Mastering Qt 5
      • Poglavlje 11. Having Fun With Serialization

Materijali

Snimci sa časa

Literatura

  1. Model-pogled arhitektura.

Primer ispita

Zadaci za vežbanje

  • Ovde možete pronaći zadatke za vežbanje.
© 2020 Matematički fakultet, Univerzitet u Beogradu