Kiedy uzywac klas

0

Ostatnio pisząc cosik, ubzdurałem sobie, że nadużywam klas. Miałem w każdym osobnym pliku klase, każda robiła coś innego, ale tak naprawde wywoływałem każdą z nich tylko raz. Wiec zaczołem używać przestrzeni nazw namespace, i teraz, mam wrażenie ze nadużywam przestrzeni nazw :) Wiec oto moje pytanie: Kiedy czego używać? Czy klasa którą wywołujemy tylko raz ma sens? Kiedy używać przestrzeni nazw, kiedy klass?

0

Kiedy w swoim kodzie widzisz coś takiego:

std::string user1;
std::string user2;
std::string ...;
std::string user99; 

Czasami coś można zastąpić zwykłą funkcją.

0

Przestrzeni nazw nie da się nadużywać. Na dobrą sprawę, w żadnym większym programie nie powinieneś dodawać nic do globalnej. Ja sobie robię dla wygody typedefy u32, u16 itd, ale to w sumie też praktyka, którą można kwestionować.

Co do klasy: jeśli coś zachowuje się jak obiekt, czyli jest zamkniętą jednością niezależną od jakiegoś stanu globalnego, posiadającą cechy/funkcje (np. string ma wiekość, możesz w nim wyszukać, każda instancja niezależna od innych) to jest to dobry kandydat na klasę. Nawet jeśli użyjesz jej raz - pamiętaj, że założenia projektu mogą się zmienić. Np. kiedyś nie do pomyślenia było posiadanie kilku ekranów. Teraz to codzienność.

1 użytkowników online, w tym zalogowanych: 0, gości: 1