REKLAMA

Programista 2/2021 (96) – kwiecień/maj 2021 – Programowanie interfejsów C++

API (Application Programming Interface) to zagadnienie, z którym spotykamy się na co dzień. Czy jednak potrafimy dobrze zaprojektować interfejsy w języku C++? W jaki sposób C++ różni się od innych języków pod względem projektowania API? Czy rozumiemy semantykę różnych struktur tego języka? Lektura tego artykułu pozwoli czytelnikowi ugruntować wiedzę z zakresu tworzenia interfejsów w języku C++, a także zrozumieć, dlaczego biblioteka standardowa oraz boost w tak dużym stopniu korzystają z szablonów i tzw. metaprogramowania...

Zagadnienia poruszane w tym artykule:

  • C++ a inne języki;
  • Semantyka struktur języka;
  • Funkcje zwykłe (freestanding functions);
  • Funkcje statyczne;
  • Metody – funkcje jako niestatyczne pola klasy;
  • Typy klasowe;
  • Interfejsy dynamiczne;
  • Destruktor;
  • Publiczność funkcji wirtualnych;
  • Interfejsy statyczne;
  • Przeładowanie funkcji;
  • ADL (Argument Dependent Lookup);
  • Konwersja interfejsów statycznych na dynamiczne;
  • Tagi;
  • Type traits;
  • Projektowanie klas i interfejsów;
  • Obsługa błędów;
  • Konstruktory, destruktory, operatory przypisania;
  • Parametry funkcji;
  • Kopia/wartość;
  • Referencja na const obiekt;
  • Referencje na nieconst obiekty a zwracany typ funkcji;
  • Wskaźniki;
  • Typy jako zbiory wartości wejściowych i wyjściowych funkcji;
  • Przekazywanie argumentów do metod i konstruktorów;
  • noexcept;
  • Hidden friends, czyli jak definiować operatory.

Artukuł pochodzi z magazynu Programista nr 96 (2/2021). Jest to wydanie kwiecień/maj 2021 r.

Szczegółowy spis treści wydania nr 96: https://programistamag.pl/programista-2-2021-96/

Autorem artykułu jest Dawid Pilarski. Z wykształcenia automatyk robotyk, a z zawodu i pasji programista. Obecnie pracuje jako Senior Software Developer w TomTom. Wolny czas przeznacza na przeglądanie nowych propozycji do C++ i uczestnictwie w procesach standaryzacyjnych tego języka. Prowadzi również swój techniczny blog pod adresem blog.panicsoftware.com oraz publikuje artykuły na cpp-polska (https://cpp-polska.pl/).

>>POBIERZ FRAGMENT TEGO ARTYKUŁU<<