Warsztat - Programowanie gier

Wrzesień 03, 2010, 03:55:57 *
Witamy, Gość. Zaloguj się, lub zarejestruj proszę.

Zaloguj się podając nazwę użytkownika, hasło i długość sesji
Aktualności: Warsztat, Regulamin forum, #warsztat, Wiki, FAQ, NoPaste, Mapa
 
   Strona główna   Pomoc Szukaj Zaloguj się Rejestracja  
Strony: 1 2 [3] 4
  Drukuj  
Autor Wątek: Kod - po polsku czy po angielsku?  (Przeczytany 11226 razy)
zarius
Full Member
***

wiadomości: 229


Zobacz profil
« Odpowiedz #30 : Lipiec 20, 2006, 03:58:42 »

Ja moge sie pochwalic tym komfortem, ze nie sprawia mi wielkiej roznicy pisanie dokumentacji/komentarzy po polsku czy po angielsku. Moj jezyk ojczysty jest sredni a angola ucze sie hoho takze moge pisac smialo ;p

Dlatego tez wszytstko w kodzie tez mam po angielsku. Zawsze mialem dylemat z komentarzami tylko czy zostawiac po angielsku czy pisac po polsku (no i czesto przeprawialem, raz tak raz tak ;p)

Teraz zdecydowalem ze jednak po angielsku bo to jakos tak... bardziej pasuje x)

Co do stylu to... jako jedyny sie nigdy nie zastanawialem. Po prostu pisalem jako tako, raczej zawsze trzymajac sie jednej konwencji nad ktora sie nie rozwodzilem zbytnio. Teraz jak sie zastanowie to moge powiedziec ze:

w klasach pisze m_ przed zmiennymi bo gdzies tak zobaczylem ^^ (a moj "Intellisense" podpowiada ze to skrot od member no to sobie to zaadoptowalem ;p) tak samo w klasach wykorzystuje zreby tej notacji wegierskiej (iInteger, bBool, sCharArray, strString, pPointer, fFloat i tak dalej). Ze zmiennymi jest problem bo jak widac tutaj pisze je po tym przedrostku z duzej litery ale czasem czytajac jakies arty w ktorych jest inaczej sie mecze z tym :/ i to jest aktualnie glowny problem.

Funkcje raczej z duzej litery np DrawShape();

co jest ciekawe (chyba ;p) wymyslilem sobie tez taki myk, ze dla funkcji prywatnych w klasie uzywam podkreslenia przed nazwa ( np.: _InternalFunction(); ) czytalem gdzies ze niby nie jest zalecane ale ja z tym problemow nie mialem ;p

klamry tylko i wylacznie

Kod:
while(true)
{
    DoSomething();
}

Aktualnie koduje w C# wiec staram sie nauczyc robic ta pelna dokumentacje w postaci komentarzy ;p (ktora potem mozna wygenerowac w formacie XML czy cus takiego ^^)

Fajny patent ze mozna kazdy parametr opisac etc. To mi sie bardzo podoba w C#.

Co mogl bym jeszcze napisac to to iz nie uzywam komentarzy w stylu C ( /* */) w zyciu ich nie uzywalem i raczej nie mam zamiaru ;p Nie wiem czemu, ale kojarza mi sie z tymi trudnymi listingami i mallocami ktorych nie cieprie (to przez to opoznila sie moja przygota z programowaniem, ale kupilem zla ksiazke i bylem za mlody :/

Stosuje tez entery wszedzie gdzie sie da. Jesli zmienna w klasie jakos nie pasuje logicznie do "grupy" innych do oddzielam kolejna sekcje dwoma enterami (ogolnie to lubie patrzec jak moje listingi rosna o nowe linie ale bez przesady Wink )

Nie uzywam tych tematow typu: CMyClass, IShapeInterface SMyVertex etc. Kiedys (z pol roku temu) jak chcialem programowac w C++ i DX to uzywalem tego przejsciowo ale teraz w C# zupelnie z tego zrezygnowalem

Wlasciwie to chyba wszystko...

Zapisane

[Butterfly Project]

Aktualne prace: Net Namespace ;p
Złośliwiec
Member2000
*******

wiadomości: 2887


Zobacz profil WWW
« Odpowiedz #31 : Lipiec 20, 2006, 08:01:18 »

Wlasciwie to chyba wszystko...

Widzę, że masz bardzo podobny styl zapisywania kodu jak ja Smiley. Jedyna różnica jest taka, że nie stosuję przedrostków "m_", ale też się zastanawiam, czy przypadkiem nie jest to trochę głupie z mojej strony. Wiadomo, że często w klasach umieszcza się takie zmienne, jak np. x, y. Jednocześnie, często deklaruje się także zmienne lokalne o takich samych nazwach (bo globalne to raczej nie Smiley ), więc łatwo o pomyłki. Natomiast przedrostek "g_" przed nazwą zmiennej globalnej to rzecz wręcz bezcenna.

Wspomnę jeszcze, iż nie przepadam za nazwami klas w postaci CKlasa. Kojarzy mi się to z MFC, którego nigdy nie lubiłem. Po prostu jakoś nie mogę się zmusić do nadawania takich nazw. Wolę jakieś przedrostki charakterystyczne dla aplikacji, którą aktualnie piszę (takie, jak np. przedrostek wx w bibliotece wxWidgets).
Zapisane

"Jedynym dowodem na istnienie pozaziemskiej inteligencji jest to, że się z nami nie kontaktują" (A. Einstein)

Untitled - nowa wersja:  llllllllllllllllllll 17%
zarius
Full Member
***

wiadomości: 229


Zobacz profil
« Odpowiedz #32 : Lipiec 20, 2006, 13:34:51 »

Wiadomo, że często w klasach umieszcza się takie zmienne, jak np. x, y. Jednocześnie, często deklaruje się także zmienne lokalne o takich samych nazwach (bo globalne to raczej nie Smiley ), więc łatwo o pomyłki. Natomiast przedrostek "g_"

Ja w ogole staram sie unikac zmiennych globalnych (a w C# juz za duzo mozliwosci do deklarowania czegos takiego nie mam ;p)

Co do nazw zawsze mozna napisac this.x i wiadomo o co chodzi Wink

Hehe... styl moze i podobny tylko moja "efektywnosc" w uzywaniu jezyka, jak i tego stylu jest delikatnie mowiac z lekka gorzej opanowana Wink ale moze przyjdzie dzien gdy wkoncu zaczne pracowac nad swoim mega-projektem i bedzie widac chociaz najmniejsze postepy Wink

pozdro
Zapisane

[Butterfly Project]

Aktualne prace: Net Namespace ;p
Złośliwiec
Member2000
*******

wiadomości: 2887


Zobacz profil WWW
« Odpowiedz #33 : Lipiec 20, 2006, 14:45:07 »

Ja w ogole staram sie unikac zmiennych globalnych (a w C# juz za duzo mozliwosci do deklarowania czegos takiego nie mam ;p)

Nie lubię, jak ich jest zbyt wiele, ale czasami nie chce się wprowadzać nowej klasy specjalnie po to, żeby wepchnąć tam zmienne, które nijak do niczego nie pasują. Moim zdaniem lepiej je zostawić jako globalne, niż na siłę szukać między nimi powiązań, tworzyć do nich akcesory czy wprowadzać jakieś dziwne przyjaźnie między klasami tylko po to, by do danej zmiennej był dostęp ze wszystkich miejsc, gdzie to jest potrzebne. Jednak generalnie się z tobą zgadzam, że więcej niż kilka zmiennych globalnych w programie wygląda paskudnie Smiley.

Cytuj
Co do nazw zawsze mozna napisac this.x i wiadomo o co chodzi Wink

Raczej this->x, jeśli już Wink.
Zapisane

"Jedynym dowodem na istnienie pozaziemskiej inteligencji jest to, że się z nami nie kontaktują" (A. Einstein)

Untitled - nowa wersja:  llllllllllllllllllll 17%
matyssek
Full Member
***

wiadomości: 229


Lubie budyn :P


Zobacz profil WWW
« Odpowiedz #34 : Lipiec 20, 2006, 14:48:27 »

Cytuj
Co do nazw zawsze mozna napisac this.x i wiadomo o co chodzi Wink

Raczej this->x, jeśli już Wink.
Zarius kodzi w C# Tongue
Zapisane

Złośliwiec
Member2000
*******

wiadomości: 2887


Zobacz profil WWW
« Odpowiedz #35 : Lipiec 20, 2006, 15:02:23 »

Zarius kodzi w C# Tongue

Ups, nie doczytałem Smiley.
Zapisane

"Jedynym dowodem na istnienie pozaziemskiej inteligencji jest to, że się z nami nie kontaktują" (A. Einstein)

Untitled - nowa wersja:  llllllllllllllllllll 17%
zarius
Full Member
***

wiadomości: 229


Zobacz profil
« Odpowiedz #36 : Lipiec 27, 2006, 11:16:59 »

W C++ tez kodzilem dosyc dlugo ;p nawet dluzej niz w C++.

Ale gdy doszedl DirectX zauwazylem ze MDX jest jakos tak... latwiejszy w obsludze ;p Mimo ze sa ludzaco do siebie podobne. Byl jeszcze drugi powod ;p Sockety... jakos nie chcialo mi sie czytac 500 stron MSPress'a zeby dowiedziec sie czegos o socketach ktore jako takie gole sa banalne ;p (Tamta ksiazka mi utrudniala zrozumienie podstaw ;p)
Zapisane

[Butterfly Project]

Aktualne prace: Net Namespace ;p
Kurak
SuperHero Member
******

wiadomości: 1165


Zobacz profil
« Odpowiedz #37 : Lipiec 27, 2006, 11:19:08 »

W C++ tez kodzilem dosyc dlugo ;p nawet dluzej niz w C++.
Hmm ;p
Co do socketów to ja ich używałem po przeczytaniu "Beej's Guide..." i nie było problemu ;]
Zapisane

^ tam nie ma nic ciekawego
Ayertienna
Newbie
*

wiadomości: 1


Do What Thou Wilt


Zobacz profil
« Odpowiedz #38 : Sierpień 03, 2006, 23:32:26 »

Nazwy zmiennych angielskie, komentarze takoż - wyniesione z jakiegoś odchamiacza na studiach typu programowanie obiektowe w Javie, czego by o nim nie mówić mój kod zaczął być czytelny dla generatora javadoc'a.. 
( gorzej, że przez przejście na stałe w tryb pisania w ten sposób moje programy zaczynają wyglądać jak sen pijanego szakala jeśli piszę je w innym niż Java języku - jako czlowiek stosunkowo prosty nie lubie udziwnień, w związku z czym przestawianie się na klamerki w nowych liniach jest ponad moje siły i wolę, nie wspominając jak wyglądają strzępki Pascala w moim wykonaniu obecnie..)

Podziwiam szczerze tych którzy są tak bardzo elastyczni jeśli chodzi o stosowanie wcięć i nazw zmiennych, może to nabywa się z doświadczeniem, którego mnie niestety na razie trochę brakuje, ale jak dotąd wygląda to tak, że widząc mój kod np. w  c++ czy delphi wykładowca (bo normalnie tych języków poza contestami nie używam) łapie się za głowę i zarzuca mi, że to na pewno ściągnięte z netu, bo wcięcia, bo nazwy zmiennych i komentarze angielskie.. co ja sie przez to natłumaczyłam, że po prostu tak piszę...
« Ostatnia zmiana: Sierpień 04, 2006, 00:11:29 wysłane przez Ayertienna » Zapisane

Through the sorrow all through our splendor...don't take offense at my innuendo
Smetana
Full Member
***

wiadomości: 114

Geek


Zobacz profil
« Odpowiedz #39 : Sierpień 03, 2006, 23:58:11 »

Ja daje nazwy klas i zmiennych po angielsku, a komenty po polsku. Z kolei wcięcia zawsze takie:
Kod:
void X()
{
}
A nie trawię takich:
Kod:
void X(){
}
Zapisane

Kapeczka.
bies
Gość
« Odpowiedz #40 : Sierpień 04, 2006, 00:02:14 »

Ayertienna: Jeśli piszesz programy tak jak tą wiadomość to dziwię się wykładowcom i ich zastrzeżeniom. A może po prostu, wśród tego bełkotu. Gdzie znaków przestankowych i wielkich liter nie ma, a tylko bywają. Zapomniałem jak zgrabne mogą być zdania. ,,Sen pijanego szakala'' - świetne.
Zapisane
bluebat
Newbie
*

wiadomości: 21


Zobacz profil
« Odpowiedz #41 : Styczeń 29, 2007, 20:20:21 »

Ja osobiście piszę calutki kod po angielsku. Jak widze polskie nazwy zmiennych etc. to po prostu nie pasuje mi to do reszty języka Tongue

Kod:

/* Komentarze glownie w stylu standardowym c, tylko po angielsku */

class foo : public foo2 /* nazwy klas, typow itd malymi literami, z podkresleniami */
{ /* nawiasy klamrowe po klasach i funkcjach w nowej linii */
void bar_underscore(int a, int b) /* spacje po przecinkach, brak zbednych spacji */
{
int c, d; /* deklaracje po przecinku sa czytelne i lepsze niz wiele linii */

if(a) { /* ...a nawiasy po ifach, whilach, etc w tej samej linii */
something();
} else if(1) {
return;
}
}
};


Nawiasy klamrowe piszę zgodnie z zaleceniami Linusa Cheesy Czyli funkcje itd. maja nawias w nowej linii, a wewnetrzne konstrukcje w jednej, zeby kod mniej miejsca zajmowal. Nazwy piszę małymi literami, bez przedrostkow iFoo, bBoolean etc. Zawsze tylko taby, zadnych wielokrotnych spacji. Duzo wagi przywiazuje, zeby kod byl jednolity i czytelny, np zawsze jest '}<spacja>else<spacja>if(...)<spacja>{'.
Zapisane

klosio.neostrada.pl
Full Member
***

wiadomości: 175

Zero tolerancji dla lam (alpaki rządzą).


Zobacz profil WWW
« Odpowiedz #42 : Kwiecień 07, 2007, 14:00:23 »

Polski, czy angielski?
To zależy:)
Gy piszę jakieś małe narzędzie, czy prosty program dla siebie, to piszę przynajmniej komentarze po polsku,
ale poza tym stosuję angielski wszędzie, gdzie się da.
Oprócz tego trzymam się zawsze następującej notacji:
-wszystko małą literą
-podkreślnik między słowami
I działa. Taki nawyk z Game Makera. Z resztą wg mnie nie ma sensu dodawać przedrostków/ przyrostków. Zawsze dążę do tego, żeby sensowna nazwa załatwiła sprawę.
Na przykład dla mnie wystarcza, że w nazwach funkcji jest najczęściej czasownik, a w innych obiektach rzeczownik Smiley
Czasami natomiast dodaję pisany wielką literą przedrostek przed własnymi typami obiektów. Zazwyczaj jest związany z
tym, do jakiej (umownej) grupy typów/ do jakiego projektu należy. Czasami są nim moje inicjały Smiley
W złożonych projektach wyszczególniam jakoś zmienne globalne, ale z rozpędu najczęściej nie stosuję np we wszystkich tego samego przedrostka, tylko nazywam je ciekawie, np "ogolna_liczba_kur" Smiley
Zapisane

Im szybsza kura, tym później będzie rosół.
radex
Jr. Member
**

wiadomości: 79



Zobacz profil WWW
« Odpowiedz #43 : Kwiecień 07, 2007, 15:41:04 »

moje nazywki(jeśli chodzi o php, bo do c++ sie nie przyzwyczaiłem i robie raz tak a raz inaczej:

nazwy: styl z dużymi i małymi literami i częste skróty. rozpoczynam z małej a kiedy jest cyfra to nie ma dużej litery bo zmiejsza to czytelność (w php i tak to nie ma znaczenia, ale czytelność Tongue )
np. QArray

pl vs en : komentarze po polsku, a zmienne staram się pisać po angielsku, ale jak nie wiem to po polsku, funkcje zawsze po angielsku(przykład troche głupi bo po co komentarze ale to tylko przykład

np.  $md5pass = md5($pass); // hash MD5 ze zmiennej $_POST

styl klamrów: K&B (czy coś takiego), klamra otwierająca razem z np. if'em, zamykająca w osobnej linii, a jeśli jest np. else to oby dwie  klamry w tej samej linii z tym else przykładowo... Sądze ze ten sposób zaoszczędza niepotrzebnych linii, a wcale nie zmiejsza czytelności ( ja jakoś łatwo widzę kiedy nie otworze klamry, wiec looz)

np. if(TRUE){
     Something();
     }else{
     SomethingOther();
     }

Stałe: zawsze pierwsza duża litera reszta małe oddzielenie podkreślnikiem oraz na początku i dwa podkreślniki

np: __Main_Counter

Większość funkcji piszę liniowo (czy jak to tam) ale takie "poważniejsze" rzeczy (nie wiem jak to określić dokładnie) pisałem obiektowo (pisałem bo zapomniałem ale wystarczy tylko odświerzyć informacje no i ....

Zawsze robię wcięcia i uwielbiam grupować (mam taki zajefajny edytor, w którym można dowolne części kody chować i rozwijać, dzięki czemu zyskuje na czytelności (większość moich plików to ok. 300 linii, więc łatwo się zgubić...)
Zapisane

Zapraszam na radex.i15.eu
vashpan
SuperHero Member
******

wiadomości: 1647


Zobacz profil WWW
« Odpowiedz #44 : Kwiecień 08, 2007, 13:15:31 »

Ja mialem/mam doczynienia z C,C++,C#,Java,D ( ale w 90% C++ ) Czyli wszystkie jezyki wywadzace sie skladniowo od C Wiec stylu zmieniac nie musze Wink

Jak wiekszosc, kod pisze po angielsku - rzeczywiscie dziwnie pasuja polskie nazwy do angielskich slow kluczowych Wink Zreszta.. przewaznie polska nazwa jest dluzsza i to tez ma znaczenie. Za to komentarze pisze sobie po polsku, hmm uwazam ze jest to cos osobistego Wink Pisze w swoim ojczystym jezyku ;p Czasami sie zastanawiam czy to moze niedobrze... ale poki moje projekty czytam tylko ja to problemu nie ma Smiley

Moj styl kodowania to cos co chyba sie nazywa ANSI... Nie lubie stylu Javy, gdzie

Kod:
if(something) {
       doSomething();
}

Jakos do mnie nie przemawia ze kod zajmuje mniej miejsca.. Niech sobie zajmuje Smiley Dysk mam duzy ;p a czytelnosc jest mniejsza...
Funkcje z zaczynam z duzej litery i kazdy wyraz rowniez z duzej litery ( jak w WinAPI )

Zmienne klasowe nazywam zgodnie z notacja wegierska z przedrostkami, ale bez m_, za to zmienne lokalne i argumenty funkcji z malej litery bez przedrostkow - troche to dziwne i glupie ale jakos mi tak zostalo :/ I nie mam motywacji by to zmienic, moze w nowym wiekszym projekcie Smiley

Nazwy klasy to zalezy, czasami literka z przodu, nawet z uzyciem przestrzeni nazw moze byc pomocna. Mam za to zawsze dylemat jak nazywac obiekty gdy nie sa wskaznikiem... Stanelo na tym ze bez przyrostkow, jak funkcje. ( wyjatkiem robie kontenery STL, czyli np: std::vector vecKontener; )

Komentarze roznie...  czasami trzeba zakomentowac na chwile kawalek linijki i wtedy komentarz /* */ jest nieoceniony Wink Zreszta uzywam go takze w dokumentacji ktora staram sie generowac z pomoca doxygena w wiekszych projektach ( w C++, bo narazie malo pisalem w Javie i C# ( no i w D bo tez tam jest dokumentator wbudowany ) zeby pisac az dokumentacje )

No i chyba tyle... ogolnie styl podobny do Zariusa i Zlosliwca Smiley





Zapisane

Strony: 1 2 [3] 4
  Drukuj  
 
Skocz do:  

Hosting: Polska Strefa - Ogłoszenia
Powered by SMF 1.1.7 | SMF © 2006, Simple Machines LLC