Gibas11 Temat założony przez niniejszego użytkownika |
Styl programowania » 2015-07-24 18:51:06 Witam wszystkich, chciałbym się zapytać o kilka spraw związanych z programowaniem samym w sobie:
1.)Czy macie jakieś wskazówki dotyczące stylu programowania (poza dodawaniem komentarzy), by kod był bardziej przejrzysty? 2.)Jak sprawnie uniknąć używania zmiennych globalnych? 3.)Czy podczas tworzenia klas przejmować się "private:" i "public:", czy może wystarczy ostrożnie obchodzić się z obiektami?
Z góry dziękuję za wszystkie odpowiedzi i pozdrawiam! :) |
|
pekfos |
» 2015-07-24 18:56:41 1. Robić wcięcia, dobrze nazywać zmienne. Tu masz przykład (trochę ścisłych, ale jednak) wytycznych http://geosoft.no/development/cppstyle.html2. Nie używać ich w ogóle. 3. Po to to jest, by tego używać. Jeśli potrzebujesz, by wszystko było publiczne, to już się nie obchodzisz ostrożnie. |
|
C-Objective |
» 2015-08-05 10:31:00 Ex 1 Stałe i #define - Wielką literą. Wskaźniki - Zacznij od p lub lp. Zmienne - Każdy człon z wielkiej litery nie licząc pierwszego (ex. int dIleLiczbPierwszych = 0; ). Nazwy metod - tak samo jak zmienne. Nazwy klas i plików źródłowych [.c] - Z wielkiej litery. (ex. class Singer {...}; nazwy plików nagłówkowych [.h, brak ex. iostream ] z małej. Zmienna long int - Zacznij od małego l. Zmienna long long int - Zacznij od ll. Zmienna int - Zacznij od i lub d. Zmienna void - Zacznij od n. Zmienna unsigned int - zacznij od u. Zmienna float/double - zacznij od f. Znak - Zacznij od c. Ciąg znaków - Zacznij od s. Tyle. Dokładniej zobacz sobie w 1 i 5 tabeli na tej stronce: http://www.cplusplus.com/reference/cstdio/printf/Ex 2. Przekazywanie przez return/argumenty. Ex 3. Ma znaczenie. Pisz tak jak powinno się pisać. Możesz sobie obciąć tylko słowo private, ale public musisz już pisać. |
|
pekfos |
» 2015-08-05 10:38:39 Pierwsze słyszę, by robić notację po printfie. Nie chodziło o to..? https://pl.wikipedia.org/wiki/Notacja_w%C4%99gierskaPoza tym, taka notacja jest uciążliwa, więc jestem daleki od polecania jej. By zmienić typ, trzeba zmienić nazwę zmiennej, inaczej notacja będzie wprowadzać w błąd, a wtedy lepsza jest żadna notacja niż taka. Do tego, jakie prefiksy zaproponowałbyś, jeśli typ został utworzony przez typedef? To bardzo częsty przypadek i sprawia, że zmienna np typu int nie jest oznaczona jako takiego typu. Oznaczenie jest pomysłem jeszcze gorszym, bo albo ta informacja będzie ogólna i nic nie będzie znaczyć, albo będzie konkretna i z czasem może wprowadzać w błąd. IDE podpowiadają typy, więc wprowadzanie sobie kolejnej rzeczy do utrzymania traci sens. Już istotniejszy od typu jest zasięg, a ten nie zawsze jest widoczny, a bardzo często potrzeba go znać. Można więc wymyślić trywialną i prostą w utrzymaniu notację: int m_zmienna; int s_zmienna; int g_zmienna; int cokolwiek;
Zmienna void - Zacznij od n. |
Co to jest zmienna void..? Jeśli dobierasz typy po argumentach printf(), to n jest wskaźnikiem na int, a nie void. |
|
MrPoxipol |
» 2015-08-05 10:39:51 @C-Objective Notacja węgierska..worst idea ever. |
|
C-Objective |
» 2015-08-05 10:41:06 Tak? n Nothing printed. Pisze że przyjmuje uint ale to chyba bez znaczenia. @up Można w ten sposób zapisać wiele zmiennych o podobnej nazwie ;) char * sZmienna; int dZmienna;
|
|
MrPoxipol |
» 2015-08-05 10:47:01 |
|
pekfos |
» 2015-08-05 11:01:45 @up Można w ten sposób zapisać wiele zmiennych o podobnej nazwie ;)
char * sZmienna; int dZmienna; |
int a, aa, aaa, aaaa, aaaaa; int b1, b2, b3, b4, b5; int e, f, g, h, i; Wiele zmiennych o podobnej nazwie. Tak? n Nothing printed. Pisze że przyjmuje uint ale to chyba bez znaczenia. |
Ma znaczenie. Nothing printed. The corresponding argument must be a pointer to a signed int. The number of characters written so far is stored in the pointed location. |
Jeśli nie po argumentach ta notacja, to po wypisywanych informacjach..? Wtedy chcesz nazywać zmienne od sposobu ich wyświetlania..? Prefiksy f, F, e, E, g, G, a, A dla jednego typu..? A czym będzie twoje 'nothing printed'? Nie ma zmiennych typu void. |
|
« 1 » 2 3 |