W języku C++ dobrą praktyką jest definiowanie każdej klasy w dwóch plikach. Jeden z nich zawiera interfejs klasy, drugi jej implementację. Podobną konwencję przyjmuje również język Objective-C. Z kolei języki późniejszej generacji, jak Java, C# i Ruby, całą klasę najczęściej realizują w jednym pliku.
Mając daną klasę o nazwie Instrument, w C++ interfejs przechowujemy w pliku Instrument.h
a implementację w Instrument.cpp
. Sytuację we wszystkich językach podsumowuje poniższa tabela.
Język | Interfejs | Implementacja |
---|---|---|
C++ | Instrument.h |
Instrument.cpp |
Objective-C | Instrument.h |
Instrument.m |
Java | Instrument.class |
wspólny plik |
C# | Instrument.cs |
wspólny plik |
Ruby | Instrument.rb |
wspólny plik |
struct
, union
, enum
, class
),