|
|
|
![]() |
|
Strumenti |
![]() |
#61 | ||
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Con C# in circolazione VB non ha proprio più senso di esistere. Quote:
Oppure viene deallocata quando il GC si attiva per i cavoli suoi? Esistono anche librerie per la GC in C/C++ ma sono un controsenso. |
||
![]() |
![]() |
![]() |
#62 | |||
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
Quote:
Quote:
Quote:
'iao |
|||
![]() |
![]() |
![]() |
#63 |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Io ho iniziato col C. Sara' che ho avuto un ottimo insegnante che prima di passare al C ha spiegato in maniera dettagliata come e' fatto e come funziona un PC. Non ho avuto nessun problema a capire i puntatori ... c'e' la RAM con indirizzi di memoria ... il puntatore e' una variabile che contiene un indirizzo, punto. Ovvio che tra il capirli e l'usarli (magari array o matrici di pointers) ne e' passato di tempo, ma, personalmente, non mi sembra che sia un discorso cosi' complicato. Da dire poi che ho iniziato a 28 anni, un corso privato C e VB ... ecco, ho avuto piu' problemi a capire il VB, la logica della MS
![]() Quindi, concludo, non penso si possa dire "e' giusto iniziare con X linguaggio" ma che dipenda dalla persona. C'e' chi dice: e' mejo er VB, ce pensa tutto lui ... du' righe e fai tutto. E c'e' chi invece preferisce controllare tutto e dover fare anche le memset e le delete ... ![]() Pero' vista la quantita di esempi e manuali online per il java, un pensierino su quest'ultimo, se fossi un novello, lo farei ... si fa sempre in tempo a cambiare livello ![]() |
![]() |
![]() |
![]() |
#64 | |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Quote:
![]() Sto solo dicendo che se lo vuoi veloce lo fai in C, tutto qua. Mi sembra presto pensare di poter affidare alla macchina il compito di gestire al meglio tutte le operazioni di gestione memoria. memoria intesa anche come memoria video, memoria audio ... |
|
![]() |
![]() |
![]() |
#65 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7258
|
sempre il solito discorso...
![]() |
![]() |
![]() |
![]() |
#66 | ||
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Quote:
Il VB è un linguaggio nato per chi non ha voglia di studiarsi seriamente la programmazione, che magari di mestiere fa altro, quindi vuole scrivere un programma in fretta e senza troppe conoscenze. Un pò come se io mi mettessi a disegnare circuiti stampati con il primo programma che trovo in circolazione e pretendessi di essere uno sbrogliatore professionista! Poi data l'elevata cultura informatica che contraddistingue l'Italia, VB è usatissimo da noi. Pensa sto mettendo mano ad un programma in VB il cui sviluppo è cominciato nel 1999 (a parte il fatto che è scritto da cani, ma questo è un altro discorso), oggi nel 2006 si parla di riscriverlo da 0 ancora in VB6 ![]() Quel era la scelta migliore? VB6 o C++? Solo che la bassa cultura informatica e la voglia di avere un programma subito funzionante alla lunga ha portato a questo. Poi ti farei vedere che schifezza di codice c'è, funzioni di centinaia di righe, variabili globali in quantità, informazioni come latitudine e longitudine conservate in formato stringa ![]() Ultima modifica di tomminno : 06-06-2006 alle 09:27. |
||
![]() |
![]() |
![]() |
#67 | |||||||||||
Junior Member
Iscritto dal: Dec 2005
Messaggi: 14
|
Quote:
Comunque per iniziare consigliavo Python per la semplicità, non certo per farci videogiochi. Secondo me anche Java è un pò ostico per cominciare. Quote:
Parlavo per esperienza personale: quando lo provai io, ed era la prima release decente, mi parve più lento di java. In ogni caso, rimane più lento di C++, concorderai su questo spero. Quote:
Quote:
Puoi dirmelo tu, no? Quote:
Quote:
C++ è il linguaggio compilato più portabile. Java e C# sono più portabili, è vero. Quote:
Quote:
![]() Scherzi a parte, lo spero per voi, il mio è una cosa fatta per spremere le SDL ![]() Quote:
Se intendi che quei linguaggi non li conosco a fondo, hai perfettamente ragione - non per niente rimango un programmatore PHP e C++. Ho cominciato a studiarli ma non mi sono piaciuti per nulla e li ho mollati. Quote:
Sono esattamente la stessa cosa, nel senso che svolgono la stessa funzione. Rimane il fatto che sono utili. Delete serve a liberare memoria allocata, ovviamente, e ad evitare memory leak. Quote:
Comunque, niente da dire: se non interessa la potenza del C++ nè la sua velocità, Java e C# vanno benissimo. Io ho solo espresso la mia opinione, non ho certo annunciato verità nascoste ![]() |
|||||||||||
![]() |
![]() |
![]() |
#68 | |
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Quote:
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
![]() |
![]() |
![]() |
#69 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
![]()
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
#70 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Anche qui scrivendo il gamecode in Lua abbiamo (hanno, perche' io sono ancora relegato al C++ grrr) riscontrato un aumento di produttivita' enorme (nell'ordine del 3/400%). Il codice Lua non appare mai nel profiling. Sono invece d'accordo nel dire che un gioco interamente in C# e' fuori discussione perche' limiterebbe enormente le possibilita' di porting verso console e la virtual machine .NET offre ancora poco controllo sul garbage collector. .NET 2.0 ha pero' in gran parte risolto il secondo problema, si puo' caricare e ospitare il CLR da un'applicazione nativa avendo il quasi totale controllo del garbage collector e delle policy di allocazione/disallocazione/controllo degl'oggetti managed. Il primo problema e' ancora ovviamente irrisolto ![]()
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
#71 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA Ultima modifica di fek : 06-06-2006 alle 14:19. |
|
![]() |
![]() |
![]() |
#72 | |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Quote:
martello = Java Lua/Python testa = C/C++ bah ![]() noi, alla Valve, Eidos, Pinco Pallo, facciamo giochi 3D NON in C/C++, non cambiero' idea. |
|
![]() |
![]() |
![]() |
#73 | |
Senior Member
Iscritto dal: Apr 2001
Città: Dundee, Scotland
Messaggi: 467
|
Quote:
Io mi riferivo ad un gioco scritto interamente in un linguaggio che non sia C++. Quando dico che non puoi scrivere un gioco interamente in C# mi riferisco principalmente al calo prestazionale che nell'utilizzo delle DirectX sembrerebbe ammontare a circa il 5% rispetto al C++. Ovviamente il 5% per un gioco 3D e' un'infinita' considerando che entrambi non dormiamo la notte inseguendo i singoli fps ![]() Concordo sul fatto che il .NET 2.0 sembra promettere molto bene e sono convinto che il futuro dei videogiochi passera' per la tecnologia .NET. Come portabilita' non saprei. Mono sembra fare un eccellente lavoro sotto Linux e supporta praticamente tutto il framework. |
|
![]() |
![]() |
![]() |
#74 | |
Senior Member
Iscritto dal: Apr 2001
Città: Dundee, Scotland
Messaggi: 467
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#75 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Il problema è proprio insito nei concetti che stanno alla base del VB. A parte il mio caso specifico, se anche quel codice fosse stato scritto in maniera decente i problemi di manutenibilità del codice sarebbero rimasti. Il C/C++ ti dà garanzie di manutenibilità del codice per programmi con una vita utile che supera i 10 anni, Java ancora non ha ancora quell'età (o quasi) e C# non è altrettanto stabile come linguaggio visto che passando dalla versione 2003 alla 2005 di .NET praticamente tutti i programmi che ho visto utilizzano già metodi deprecati. Cosa succederà tra altri 5 anni? Tutto quel codice sarà da buttare? Il fatto di appoggiarsi ad un framework sottostante ha il difetto che se cambiano le specifiche il tuo codice lo puoi pure buttare e siccome le specifiche .NET le fa Microsoft a suo piacimento nessuno ti garantisce che con una ipotetica versione 3 del framework non ti obblighi a pesanti revisioni (che potrebbero comportare per il cliente l'acquisto di una nuova licenza di qualche software correlato). |
|
![]() |
![]() |
![]() |
#76 | |||
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Secondo me si tratta di definire quanto C++ c'e' oggi in un gioco, e quanto ce ne sara' in futuro. Malissimo che vada il driver della scheda video conterra' alcune parti in C++/asm ![]() Ormai non faccio piu' la distinzione fra linguaggio di scripting e non, per me Lua /Python/C# sono linguaggi a tutti gli effetti, pari dignita' del C++. Si tratta anche qui di capire quale strumento usare nel giusto contesto: rigiro l'affermazione di prima, un gioco di un certo spessore interamente in C++ e' impensabile ormai. Troppo complesso, nessuno vuole piu' spendere nottate alla ricerca di quel double delete o dell'altro memory scribbler. Meglio spendere quelle nottate a guadagnare il 5% di prestazioni oppure ad aggiungere qualche elemento di gameplay, o giocare il gioco e renderlo piu' divertente. Quote:
Quote:
![]()
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|||
![]() |
![]() |
![]() |
#77 | ||
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Quote:
![]()
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
||
![]() |
![]() |
![]() |
#78 | |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Quote:
ma cosa sta per succedere ? io sono un po' fuori dal mondo MS e .NET perche' ormai e' qualche anno che lavoro su Sun ... io comunque sto parlando di videogiochi INTERAMENTE non fatti in C/C++ ![]() e' ovvio che se fai un qualcosa in C# o vattelapesca che usa le DirectX o OpenGL allora non vale! ![]() Togliere completamente il C dalle balle adesso non e' possibile, per me. Dai che succede tra 2 anni ? ![]() |
|
![]() |
![]() |
![]() |
#79 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
![]() Il task scheduler del sistema operativo sara' molto probabilmente per sempre in assembly se e' per questo, come alcune parti dei driver, e non puoi scrivere un gioco che non usi il task scheduler o i driver. Secondo me il discorso piu' corretto da fare e' questo: quanti programmatori in un team di sviluppo che fa giochi usano il C++ oggi e quanti lo useranno domani? Nel team dove lavoro io adesso, 6 o 7 programmatori scrivono in C++ (me compreso), il resto, circa una ventina, scrivono in Lua/Python/C# a seconda di quello che stanno facendo. Fra qualche anno vedrai molti team di sviluppo in cui probabilmente non ci sara' un programmatore C++.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
#80 | |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Quote:
![]() Lionhead ? citami un gioco plz ... non posso navigare liberamente, solo qualche sito. P.S.: vi serve un prog C++ ? mi son rotto le balle di Sun e ... dell'Italia ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:30.