Kak

71 отговора 3168 прегледа
в отговор на edno momiche #21

Мнооого внимателничко...

...го премествам в другия крачол и отивам някъде да пия водка.
Решил съм да не се ядосвам за глупости и да живея до 120 години

Отговор
в отговор на malkia #22

Re: Kak

я раздуй като за един ATL/WTL/STL фен защо темплейтите на Ц++ да са гадно нещо? шаблоните(да използвам родната думичка), според теб, са гадни по принцип или просто твоите колеги ги ползват по особено гаден начин?

комплексиран... като баба ти!!!
Отговор
в отговор на Пaлячo #23

Re: Мнооого внимателничко...

Супер стратегия, ще ми се и аз да можех така.

Я вышел им наперерез!
Отговор
в отговор на Meндeлeeв #24

Re: Kak

За един code reusage фен шаблоните са много хубаво нещо, за един copy-paste фен са нещо лошо.

Я вышел им наперерез!
Отговор
в отговор на Resurrector #25

А какво значи copy-paste фен ?

а?

Аз съм!
Отговор
в отговор на Meндeлeeв #26

Re: Kak

1. Templatite iziskwat po-dobri coding skills i znania - az lichno sum nazad malko s materiala. Sushto i njakoi ot kolegite mi. Znachi li che trjabwa da uchim izlishni neshta za da si wurshim rabotata? Tuka imash tochka obache - rano ili kusno trjabwa da se nauchat po-dobre tezi neshta

2. Skorostta na compilirane pada znachitelno. Njamame wuzmozhnost pod MSVC i CodeWarrior da polzwame njakakwi uskoriteli - koito MSVC-to ima.

3. Razmera na object faila se uvelichawa znachitelno (debug informatziata) - tova znachi po-goljama pamet za debugwane (EXE-to ni za XBOX e 14MB, no za PS2 e kum 50MB poradi fakta che GCC_to ne optimizira dobre neshtata - no tam ima i drugi problemi)

4. Debugwaneto e znachitelno po-trudno (ne debugwame samo sus MSVC ili .NET, no i sus ProDG i Metrowerks - i te chesto sa i nestabilni)

5. Zloupotrebjawa se s tjah - naprimer - chesto koda se postawja wuw HEADER failovete (wizh tochka 2). Templatizirat se i enumove - i chesto se stiga do tam che za danni ot pochti edin i sushti tip (da kazhem int, i njakolko drugi enuma) se generira razlichen kod - ot tam i uvelichenie na faila (pishem za konsoli - 24MB pamet ima GameCube-a da kazhem - "EXE"-to mozhe da e maximum 4MB).

6. Chesto se poluchwa nerazbiraem (ot pruw pogled) kod - C++ sus wuzmozhsnostite si predostawja na programista da napravi nehstata po-mnogo razlichen nachin i chesto se poluchawa konfrontatzia mezhdu programistite. Tipichen primer za raznite tam functori. Njakoi kazwat Scott Myers trjabwa da se chete - obache njakoi kazwat che i drugi hora trjabwat.

7. STL-a ne e tolkova portable, i bez problemi - osven tova BLOATVA dosta koda. Dissasembliraj i wizh. Ot tuka ima i srutwane na L1/L2 cache, uvelichenie na EXE koda i razni drugi raboti.

Moga i oshte da izbroja...

Za toolove e idealen, no za video-game console development - NE!
Chisto moe mnenie obache - njakude kum 75-80% ot ekipa mi smjatat che ne sum prav.

Bih iskal da rabotja w japonska kompania - kato Namco, Capcom ili Konami - kudeto wse oshte pishat dosta dobri (edni ot naj-dobrite) igri - i to samo na chisto C (eh ne chisto - no znaesh kakvo imam predvid) - te prosto sa swiknali da ne se pritesnjawat sus novoizlezlite formi na "programen govor" - predpochitat sus "prosti dumi" da pishat i ottam stabilnost, portabilnost, burza skorost na kompilirane i ne na poslednoto mjasto - takuv kod po-lesno se proverjawa ot programni sredstwa kato LINT - po-lesen za analiz e - sushto i po-lesen za kompilatora da go smeli.

Tova ot moja strana ;)

Da ne propusnem che i ABI-to na C++ wse oshte ne e nanikude,
i ako reshish da pravish biblioteka - to togava trjabwa da e prekompilirash za wseki kompilator kojto shte se izpolzwa. Naprimer za GCC 2.95.3, GCC 2.96, GCC 3.02 - ako e na C - mozhe samo edna biblioteka za wsichkite da izpatkash - sushtata shte se polzwa i bez problem pod Metrowerks....

ta tova ;)

tirulirutatuutuu
Отговор
в отговор на Meндeлeeв #27

Re: Kak

Spored men tryabva. Pyk i az lichno predpochitam da vodya lekcii, otkolkoto da implementiram neshta, koito veche sym si izyasnil v detayli (prosto ne mi e interesno).
V prednata firma obache mi se kachiha na glavata. Ne, che prekalyavaha s vyprosite, no "blagodarnostite" im nyakak si ne mi haresaha... Ta sega vnimavam. Sha vzimam merki, ako/kato se naloji.

> и ти да попиташ де
Silno se nadyavam tova da ne prozvuchi samohvalno, ama ne go vijdam koga shte doyde tova vreme. V tova vinagi sym bil nay-dobriyat - uchene i prepodavane. V byrzoto kodirane napr. hich me nyama naposledyk, odyrtyah.

> или трябва да ги оставите да се гърчат и да четат сами
Po princip tryabva. Ama mi e trudno da otkazvam.

> май човек трябва да е лош, за да го уважават а?
Hich ne e zadyljitelno. No samo s uvajenie ne se jivee.

Отговор
в отговор на malkia #28

Re: Kak

Да, и аз мисля по подобен начин вече.
Шаблоните стават, за нещо като STL, ама прекалената им употреба води до увеличаване на времената за компилация и преливане на кода от cpp-тата в header-ите.
За debug-ването си абсолютно прав! За четимоста също - сега като се замисля в предния проект колко код би бил по разбираем и дебъгваем ако си беше на чисто C!! Четох наскоро сорсове на Quake 3 и просто се изумих колко чисто и ясно е всичко (малко зле структурирано, ама..).
И да - говорим си за гейм-девелопинг тука, спор да няма. Не знам какво е ATL/WTL, много им здраве на всички спецове в тази област, ама аз там без нужда не стъпвам...

Отговор
в отговор на a3 #30

Re: Kak

a ako idiota si ostavi otpechatacite po tvoite tvorbi i pochnat da te vdigat posrednosht prez den zashtoto krashva v production /poneje idiota i da go vdigat vse taia/?

Отговор
в отговор на EvilProgrammer #31

Re: Kak

>>За четимоста също - сега като се замисля в предния проект колко код би бил по разбираем и дебъгваем ако си беше на чисто C!!

айде айде, тук можем да почнем поредната свещена война на езиците. на мен примерно са ми по-читаеми няколко класа и полиморфизъм отколкото дебели switch-ове и ненормални структури с указатели към функции.

колкото до производителността - прави сте, по-бързо е... ама и хасан е хора и иска да му е лесно и добре организирано нали?

комплексиран... като баба ти!!!
Отговор
в отговор на Meндeлeeв #32

Re: Kak

za da sushtestvuva 'obuchenie' sa neobhodimi 2 entities - obuchavasht i obuchavan. samo s 1nia ne stava

nikoga ne sum otkazala da obiasnia nishto na kogoto i da e. nezavisimo kolko mi e nelicepriaten choveka otsreshta. tova koeto uporito otkazvam da pravia obache e da obiasniavam kakvoto i da e po 2 puti. jivotut e kratuk i niamam namerenie da go gubia v bezmisleni obiasnenia s hm nevazpriemashti individi, da rechem

no moje bi Resurrector e prav. kak puk na men ne mi se nalaga niakoi da me obuchava?

Отговор
в отговор на Meндeлeeв #33

Re: Kak

абе така е то, обаче като намесиш вътре темплейтите и цялата четимост отива по дяволите...за дебъгваемостта и времето за компилиране да не говорим. ние затуй сме минимизирали отвсякъде използването им и template е почти мръсна дума тук.

Отговор
в отговор на Пaлячo #34

Re: Мнооого внимателничко...

nevazmojnostta mi da posledvam suveta ti e fizicheski obuslovena

Отговор
в отговор на Mist #36

Re: Kak

е това е спорно :) your mileage may vary

кое е по-четливо?

//container c;
for(int z = 0; z < count; z++)
{
//razpyvame tuka kvoto sha pravim s c[z]
}

или

for_each(c.begin(), c.end(), MyFunc);

да не говорим, че ако е нещо стандартно (тва дето се прави в MyFunc) можеш да си лепнеш някой от стандартните функтори... или да използваш bind за да си пригодиш нещо. айде спирам, виждам как не отиваме наникъде

комплексиран... като баба ти!!!
Отговор
в отговор на edno momiche #38

Kak taka

stana che vsichki det sa v toia forum vse te obiasniavat i vse na tiah im prechat :))), edva li e taka

Отговор
в отговор на edno momiche #39

Re: Kak

Geniite winagi ostawat nerazbrani (kakwoto i da znachi towa),
a doktor Qndra preporychwa klizma (az syshto preporychwam).

pochitaniq,
Yontchew

Отговор
в отговор на Meндeлeeв #40

Re: Kak

за всяко нещо си има приложение - трябва да се преценят плюсовете/минусите за конкретния проект и да не се прекалява с абстракции и работи, които уж помагат
а проблемът е, че обикновено нещата се използват по навик или (много по-лошо) защото така е модерно
типичен пример - сваляш някакъв сорс от нета и като го отвориш да го разгледаш - вътре класове бъкани с виртуални функции, template-и, наследявания, простотии, а то кво - съществения код е някакви си 20 реда, които едва успяваш да издириш из няколкото (!) файла...идиотия на мах

Отговор