Tak długo, jak myślisz o tym, zacznę od przeczytania tego artykułu QtQuarterly od początku do końca.
Designing Qt-Style C++ APIs
Powiedział, że jedna rzecz, że możemy zrobić, to umieścić „użytkowania” na przykład jako części pierwszej i ostatniej pełnej słowo klasy jako ostatniej części.
więc swoją "nazwę użytkownika" QTextEdit jest
QTextEdit * userNameEdit = new QTextEdit(this);
Jeśli istnieje niejasność, jak QListView i QTreeView, wybierz ostatnią sekcję unabiguous.
QListView * userListView;
można dowiedzieć się skróty, jak chcesz (takie jak „LBL” dla QLabel), ale generalnie cały wyraz pracował i był łatwy do odczytania.
Z drugiej strony nie jesteśmy zbyt rygorystyczni i może być ważniejsze nazwać intencję zmiennej instancji bez nazwy klasy, ponieważ jeśli w przyszłości chcesz zmienić klasę, otrzymasz zmienić nazwę, która przy braku dobrych narzędzi do refaktoryzacji jest bolesna.
Może wymyślić ogólne widgety, których używasz najbardziej, i wybrać konwencję nazewnictwa dla najbardziej ogólnych super-klas i niech wszystko inne pójdzie.
Przykładowa lista rzeczy, które przystąpią do konwencji:
- układ = wszystkie klasy, które kończą się „Układ” i dziedziczą QLayout
- przycisk = Wszystkie klasy, które kończą się „Buttona” i dziedziczą QAbstractButton
The QAbstract ClassName klas są dobrym miejscem, aby myśleć o tym, co powinno być w tym wykazie.
Zmniejszenie zakresu tego pytania. Odpowiadałbym, ale zajmie strony i strony. Czy odnosisz się do poziomu klasy? Poziom funkcji? Widżety generowane przez interfejs użytkownika? – mxcl
Twój przykład usunięcia samogłosek wewnętrznych ze słów jako schematu nazewnictwa jest obrzydliwy. Czytanie kodu z tym stylem doprowadziłoby mnie do szału. – mxcl