dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

"Learning curve"

 
dev.gamez.lv Forum Index -> Pļāpātuve
View previous topic :: View next topic  

Programeet vajag maaciit/ies lielu dalju laika veltot lai iemaaciitos pamatus primitiivaakaas programeesanas valodaas.
Piekriitu
69%
 69%  [ 9 ]
Nepiekriitu
30%
 30%  [ 4 ]
Total Votes : 13

Author Message
Storm



Joined: 11 Apr 2006
Posts: 742

PostPosted: Mon Feb 04, 2008 4:13 pm    Post subject: "Learning curve"

Paceljaas taads diezgan diskutabls jautaajums laiku pa laikam - vai veltiit laiku lai iemaaciitos primitiivaakas lietas un sisteemas, kuras tu veelaak taapat nezinaasi?

Piemeeram es maacos RTK 3 kursaa - klasee labi ja 20% saprot kaut ko no primitiivisma ko maaca skolotaaja peec maaciibu vielas. Tiek izmantots taa saucamais "Learning curve" ... loti leezens... Saakam ar BASIC, tad PASCAL, DELPHI, C, tad C++ ... Itkaa logiski... iemaacamies itkaa vieglaako un tad gruutaako?

Apmeeram taa:

Sasniedzamais rezultaats - galarezultaataa cilveeks maak programeet C++

Varitants 1. - Maacam 2.5 gadus visaadus BASIC, PASCAL, ETC, tad 1.5 gadus C un C++

Variants 2. - Maacam 4 gadus C++

Kurs variants zinaas meerkja valodu labaak?

Un vispaar kurs ir teicis ka piemeeram PASCAL ir vieglaak saprotams par C++?

Cik dienaas cilveeks saaks saprast kaa dabuut uz ekraana vienu rindu teksta, vai panemt no lietotaaja kaadu ievadi? Jaanem veeraa arii tas, ka cilveeks ir pabeidzis pamatskolu, iekluvis peec konkursa kursaa (respektiivi ir draugos ar matemaatiku un logisko domaasanu +-)

Kas veel ir noveerots - tiem kam taa programeesana ne iipasi sokaas(diemzeel 80%) - vienmeer paarejot no vienas valodas uz naakamo kaadu laika periodu ir taa teikt apdullusi - "Kaa, tur vareeja taa dariit, kapeec te taa nevar, a kaa seit var taa dariit?" Respektiivi arii modernaakaa un augstaaka liimenja valodaa vienas un taas pasas lietas var izdariit savaadaakos veidos, bet cilveeks ir pieradis pie vienkaaraakaas valodas primitiivisma un ir tendence visu pildiit ar primitiivajiem liidzekljiem kas bija iepriekseejaa valodaa, nepienemt jaunaas iespeejas ko dod naakosaa valoda. Bonus arii sintakses kljuudas kas rodas no valodu jauksanas.

Taatad 4 gadus C++ vai nee? Diskuteejam!
_________________
Izraadaas ka dazu dev.gamez.lv lietotaaju absurdaa ignorance meedz eksisteet arii augstaakas paakaapees : http://www.gamedev.net/community/forums/topic.asp?topic_id=411552
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Mon Feb 04, 2008 5:09 pm    Post subject:

šitā mētāšanās pa grāvjiem mainot progvalodas ir noderīga tikai tiem, kuri nav draugos ar loģiku!
es personīgi negribētu mācīties ko nevajadzīgu..
viennozīmīgi ar abām vai pat vairāk rokām par 4 gadu C++!!!
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
MoKa



Joined: 10 Oct 2007
Posts: 79
Location: Daugavpils

PostPosted: Mon Feb 04, 2008 5:45 pm    Post subject:

Приношу свои извенения, но не мог ли ты выразить мысль темы на русском или англисском языке? Огромное спасибо, и ещё раз извеняюсь.
_________________
Текущий Инструментарий: BlitzMax + Xors3D + FastImage + PhysX + sFXe
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Mon Feb 04, 2008 6:15 pm    Post subject: Re: "Learning curve"

Storm wrote:
Un vispaar kurs ir teicis ka piemeeram PASCAL ir vieglaak saprotams par C++?

Un tu saki, ka nav?
Vai vari atbildēt (bez skatīšanās gūglē), ko C++'ā nozīmē (jautājumi arī C++ ekspertam šņagam):
* virtuālā mantošana
* virtuālais konstruktors
* anonīma neimspeisa jēga
* Return Value Optimization (RVO)
* vai drīkst dzēst NULL pointeri ar delete?
* new vs malloc atšķirība
* kas ir copy-on-write semantika?
* atšķirība starp static/reinterpret/const/dymanic _castiem
* templeitu meta-programmēšana (nejaukt ar templeitu vienkārši lietošanu), type-traits, type-policies, ...
* exception-safe kods
* ... utt

Tieši šīs ir tās lietas, kas padara C++ par C++ atšķirībā no prasta C. Bez tām C++ ir pliks C (vai Pascal) ar "objektiem", atšķiras tikai sintakse. Cik reizes redzēti wannabe-C++ programmētāji, kuri raksta ārprātīgu C kodu un to sauc par C++ programmēšanu (un atrunājas - redz manu programmu sauc Visual C++ -> tātad C++ programmēju).

Paskālā (ne-Delphi) nekas tāds nav. Un tur cilvēks, iemācoties valodu daudz īsākā laikā, var pilnībā nodoties programmēšanai kā tādai - algoritmu saprašanai un veidošanai. Tie imho ir tieši pamati, kas vajadzīgi.

Manuprāt viennozīmīgi jāsāk ar vienkāršām programmēšanas valodām. Galvenais ir iemācīties domāšanu, valodu apgūt vēlāk ir nieks. Es, protams, neapstrīdu faktu, ja tiek mācīts C++, tad, protams, IR jāmāca C++. Bet ja tiek mācīts programmēt vispārīgi, pamati, algoritmi, tad uzskatu, ka ir daudz labākas valodas, kurā to darīt.


Last edited by bubu on Mon Feb 04, 2008 8:44 pm; edited 1 time in total
Back to top
View user's profile Send e-mail
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Mon Feb 04, 2008 7:41 pm    Post subject: Re: "Learning curve"

bubu wrote:
Vai vari atbildēt (bez skatīšanās gūglē), ko C++'ā nozīmē (jautājumi arī C++ ekspertam snake5):
* virtuālā mantošana
* virtuālais copy konstruktors
* anonīma neimspeisa jēga
* Return Value Optimization (RVO)
* vai drīkst dzēst NULL pointeri ar delete?
* new vs malloc atšķirība
* kas ir copy-on-write semantika?
* atšķirība starp static/reinterpret/const/dymanic _castiem
* templeitu meta-programmēšana (nejaukt ar templeitu vienkārši lietošanu), type-traits, type-policies, ...
* exception-safe kods
* ... utt

*virtuālā mantošana - tas laikam bija tad, kad pamata klasē uzdefinē virtuālās funkcijas, kuras pēc tam pārdefinē (precīzi nezinu latviskos terminus, šķiet, ka ar šo varu kļūdīties) mantotajā klasē
*virtuālais copy konstruktors - tāds copy konstruktors, kuru var atkal pārdefinēt mantotajā (aizmirsu, vai derived tulkojas šādi) klasē
*anonīmie namespace - nezinu, bet kodā esmu redzējis kā izskatās
*RVO - nezinu, bet gan jau drīz uzzināšu
*par NULL pointeri un delete.. laikam varēja
*new nekad neatgriež NULL pointeri, tas izsauc konstruktoru, malloc - nē
*copy-on-write - nezinu
*ak tie casti.. static laikam bija mainīgajiem, dynamic - pointeriem, reinterpret - neatceros, const - arī neatceros..
*meta-programmēšana - nezinu
*exception-safe kods - laikam tas try .. catch

labprāt gaidīšu vēl šādus jautājumus, tie man palīdz uzzināt to, ko es vēl nezinu!

EDIT: tikko apskatījos par RVO, vienu veidu, šķiet, jau biju lietojis, tikai ne vietās, kurās svarīga performance..
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Mon Feb 04, 2008 8:37 pm    Post subject: Re: "Learning curve"

Jautājumus jau nevajadzēja atbildēt šeit. Bet gan pašam sev vajadzēja. Mans jautājums bija "vai vari atbildēt", nevis "atbildi".

Anyway:
*virtuālā mantošana - tas laikam bija tad, kad pamata klasē uzdefinē virtuālās funkcijas, kuras pēc tam pārdefinē (precīzi nezinu latviskos terminus, šķiet, ka ar šo varu kļūdīties) mantotajā klasē
NEPAREIZI.

*virtuālais copy konstruktors - tāds copy konstruktors, kuru var atkal pārdefinēt mantotajā (aizmirsu, vai derived tulkojas šādi) klasē
Uff, sorry pārrakstījos, gribēju prasīt - "virtuālais konstruktors". Bez copy. Augstāk pielaboju.

*anonīmie namespace - nezinu, bet kodā esmu redzējis kā izskatās
*RVO - nezinu, bet gan jau drīz uzzināšu
*par NULL pointeri un delete.. laikam varēja
PAREIZI. bet pats redz šaubies ;)

*new nekad neatgriež NULL pointeri, tas izsauc konstruktoru, malloc - nē
NEPAREIZI. Daļēji pareizi. Ka new neatgriež NULL pointeri, tu kļūdies. Vēl dažas citas svarīgas new lietas nenosauci.

*copy-on-write - nezinu
*ak tie casti.. static laikam bija mainīgajiem, dynamic - pointeriem, reinterpret - neatceros, const - arī neatceros..
*meta-programmēšana - nezinu
*exception-safe kods - laikam tas try .. catch
NEPAREIZI.

Kā redzi - visos punktos, izņemot vienā, vai nu kļūdies, vai arī tos vienkārši nezini.
Back to top
View user's profile Send e-mail
spicausis



Joined: 23 Jan 2006
Posts: 85
Location: Teika

PostPosted: Mon Feb 04, 2008 9:05 pm    Post subject:

Skolai nevajadzētu tev padziļināti mācīt C++. Pasaule nav nagla, C++ nav āmurs. Universitātei vajadzētu tev dot gana plašas zināšanas, lai tu varētu noorientēties, kādi ir instrumenti, kur un - vispārīgi - kā tos pielietot. Specializēties uz ko vienu vienmēr pagūsi.


Tapēc es ieteiktu uzspiest uz angļu valodas apguvi, kamēr vēl tā viegli padodas, paņemt internetu un patstāvīgi rakt plašumā, arī par valodām, par ko tava pasniedzēja, iespējams, nav dzirdējusi.


Ja tavs *apzinātais* mērķis ir iemācīties C++, tad, protams, pareizā lieta ir ņemt un mācīties C++. Tikai universitāte ir viena no draņķīgākajām vietām, kur to darīt.
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Mon Feb 04, 2008 9:17 pm    Post subject:

new neatgriež nullpointeri:
http://www.parashift.com/c++-faq-lite/freestore-mgmt.html#faq-16.6
Quote:
Unlike malloc(), new never returns NULL!

bet ar vienu izņēmumu, kurš vairs tā kā netiek ievērots, jo nav vajadzības lietot vecus kompilētājus

EDIT: nu vismaz es zinu vēl dažus sīkumus (vai ko svarīgu), ko vajadzētu iemācīties!
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Mon Feb 04, 2008 10:07 pm    Post subject:

Quote:
new neatgriež nullpointeri:

orly? http://paste.php.lv/6833?lang=cpp Ja jau tu saki, ka "nekad neatgriež NULL", tad kāpēc man GCC4.1 un MSVC9 izdeva "IR NULL"? :)
Lūdzu nebrauc offtopikā sneik. Ja gribi parunāt par C++, tad taisi jaunu topiku, neviens tev to neaizliegs. Nevajag runāt par netēmu.
Un btw tie nav nekādi sīkumi, kurus minēju. Sīkumu un nianšu ir dikti daudz vairāk.
Back to top
View user's profile Send e-mail
Storm



Joined: 11 Apr 2006
Posts: 742

PostPosted: Tue Feb 05, 2008 9:16 pm    Post subject:

Ja bubu savus jautaajumus buutu uzdevis angliski... Laughing Un par to ka reaali skola ir taa vieta kur maaciities, visp atkriit Very Happy Es domaaju vnk kaa maaciisanaas veids. Manupraat - maaciities kkadus primitiivus - garaam un C++ nav mans meerkis, es vinu vnk zinu Very Happy, un praktiski jebkuru valodu var iemaaciities iisaa laikaa, vienkaarsi saskaroties ar jaunu lietu, par to var atrast informaaciju internetaa vai graamataas Wink
_________________
Izraadaas ka dazu dev.gamez.lv lietotaaju absurdaa ignorance meedz eksisteet arii augstaakas paakaapees : http://www.gamedev.net/community/forums/topic.asp?topic_id=411552
Back to top
View user's profile
Display posts from previous:   
dev.gamez.lv Forum Index -> Pļāpātuve All times are GMT + 2 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group