|
|
|
![]() |
|
Strumenti |
![]() |
#61 |
Senior Member
Iscritto dal: Sep 2003
Città: Roma
Messaggi: 8319
|
esiste una discussione con i migliori testi per imparare a programmare (ovviamente uno per ogni linguaggio)?
sono totalmente nuovo al mondo della programmazione, ma vista la tendenza del mercato e la mia passione verso il mondo della tecnologia avrei intenzione di provare ad imparare, mediante corsi e con lo studio su appositi testi, un linguaggio di programmazione per provare a dare vita ad un mio progetto. Essendo mia intenzione di dare vita ad un browser game sulla scia di farmville, mafia wars, bubble saga etc., da quale linguaggio mi consigliate di iniziare per poter realizzare il mio progetto? Mi è parso di capire che flash è una tecnologia che a breve diventerà obsoleta, vista la sua pesantezza e la politica di Apple di non implementarla sui suoi dispositivi portatili, e che html5 dovrebbe essere il linguaggio più "sicuro" sul quale investire le proprie risorse proprio per la sua compatibilità con tutti i dispositivi portatili di nuova generazione, nonché per le possibilità che offre rispetto a Flash e Java. La situazione che ho descritto è verosimile o mi conviene investire il mio tempo per imparare ad utilizzare Flash o Java?
__________________
Sordatino a.k.a. Quelo Ho venduto/scambiato con successo aPaso74, AK47, AleAme, Prezioso84, Ckone, Nemios, yoyo83, Rhadamanthis, pitusman, mickscores, Gadducci, zeropage, 29Leonardo, Falcao3, BlackCerberus, Holly86, sesshoumaru, Lukkkka, Jimmy41, vittorio130881, Trick*, techmania, glabro76, dottorcapone; Ho comprato con successo da musodatopo, mynol, ^Christof^; |
![]() |
![]() |
![]() |
#62 | |
Member
Iscritto dal: Sep 2005
Città: Barcelona
Messaggi: 200
|
Quote:
Scegli un linguaggio ed imparane le basi. Se non ti trovi a tuo agio, cambia. E' importante lavorare con un linguaggio con cui c'è feeling. Dopodiche prova ad implementare quegli algoritmi nel linguaggio scelto. Ovviamente troverai miriadi di algoritmi gia implementati per quel linguaggio, ma il punto è cercare di capirli ed implementarli. Ti aiuta sicuramente anche qualcosa di ingegneria del software, cosi da imparare come pianificare un progetto (ok, se fai un programmino che calcola l'aria del triangolo forse non ti serve). Generalmente, se durante la codifica ti ritrovi in un vicolo cieco e devi far cambi importanti, le fasi precedenti son state un disastro. Qualunque linguaggio tu scelga, documentati sulle librerie che ti offre. Spesso la gente perde giornate per far qualcosa che era gia fornito con linguaggio. E non aver paura di usare un debugger quando hai errori semantici nel codice (il codice è grammaticalmente corretto, ma non ha senso e o si impalla o continua all'infinito). Un altro consiglio su come imparare è cercare di correggere il codice altrui. Guarda i vari forum di programmazione, trovi spesso gente meno esperta di te che chiede aiuto e posta il proprio codice. Copialo e lancialo e cerca di trovare gli errori.
__________________
Code without tests is broken by design. |
|
![]() |
![]() |
![]() |
#63 | ||
Member
Iscritto dal: Oct 2001
Messaggi: 291
|
Quote:
Quote:
![]() |
||
![]() |
![]() |
![]() |
#64 |
Member
Iscritto dal: Sep 2005
Città: Barcelona
Messaggi: 200
|
Esistono tutta una serie di algoritmi di base che sono generalmente insegnati nella triennale di informatica. Generalmente ti viene insegnato come calcolare la complessita di un algoritmo. Le differenti strutture dati. Vengono inoltre presentati algoritmi di ricerca, di ordinamento, ...
Questi algoritmi li trovi in qualsiasi linguaggio di programmazione gia belli e pronti. Ma nei libri di testo, e nelle slides che trovi gratis nei siti dei CdL di Informatica, sono presentati senza usar alcun linguaggio specifico. L'idea è quella di guardarli. Capire perche uno è meglio dell'altro. E cercare di scriverli nel linguaggio (o nei linguaggi) da te scelto.
__________________
Code without tests is broken by design. |
![]() |
![]() |
![]() |
#65 | ||||||
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
in questo caso, se fossi in te, spenderei un pò di tempo nel capire i meccanismi del problem solving
il linguaggio è uno strumento, ma se non hai la forma mentis adatta, sarà dura creare pure il più banale hello world ![]() Quote:
una in-browser, solitamente fatta con flash ( al 99% è così ) oppure html5/javascript ma c'è un'enorme componente server-side ( che tu non vedi ma c'è e gestisce il sistema dietro le quinte ) che può essere scritta in qualsiasi linguaggio Quote:
![]() il resto del mondo continua a studiare, lavorare, produrre e vendere software fatto in flash oggettivamente flash camperà almeno altri 15 anni, altro che morire a breve soprattutto se parliamo di giochi non ci sono alternative pratiche, cross-platform, altrettanto funzionali e diffuse come flash....lo so, lo so, adesso arriva il bacchettone di turno e dirà che sono fanboy perchè non ho citato silverlight ma silverlight ha uno share ridicolo rispetto a flash, è poco usato nell'ambiente, non tutti i browser e i sistemi operativi lo supportano a dovere Quote:
riguardo la pesantezza, faccio notare che, allo stato attuale, html5 è molto più pesante di flash Quote:
occhio che html5 attualmente lo usano per i siti di videostreaming, ma gli mancano parecchi pezzi per essere veramente utile per lo sviluppo di videogames Quote:
java è un linguaggio "vero", non una bacheca piena di marcatori Quote:
il problema saranno i dispositivi come gli iphone, ipad, ishit, ecc... ![]() la soluzione che ho vista implementata attualmente, è di creare app native su ios, quindi objective-c e cocoa-touch a manetta non puoi, purtroppo, limitarti a conoscere una sola tecnologia....devi per forza di cose conoscerne almeno 3-4 hai citato java e java spesso è usato per sviluppare i famosi back-end server-side di cui parlavo sopra ma non è l'unico e nemmeno il più usato in quella funzione....c'è python che si piazza praticamente in ogni nicchia e fa bei numeri ci sono c#, addirittura c++ ( lo so è folle, ma c'è chi lo usa per i web services ), l'arcinoto ruby e tanti altri comunque sia flash è basilare per quello che vuoi fare tu....inoltre adobe sta investendo moltissimo nel rendere flash interoperabile e infatti è possibile convertire app flash in html5 tramite i loro software per cui non credo proprio che flash morirà a breve, non adesso che ha il 99% del mercato e milioni di programmatori flash sparsi per il mondo |
||||||
![]() |
![]() |
![]() |
#66 | |
Member
Iscritto dal: Oct 2001
Messaggi: 291
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#67 |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
A questo punto potrebbe interessarti questo:
http://www.hwupgrade.it/forum/showthread.php?t=2454252
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
![]() |
![]() |
![]() |
#68 |
Member
Iscritto dal: Oct 2001
Messaggi: 291
|
iscritto di corsa!
|
![]() |
![]() |
![]() |
#69 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Silverlight può essere una soluzione nella misura in cui rientri i requisiti dell'applicazione. Che poi è l'unica cosa che un programmatore che si rispetti dovrebbe stare a guardare. Un'altra soluzione su cui sto smanettando in questo periodo è Pyjamas: sviluppo web senza avere a che fare con HTML, CSS, Javascript, scrivendo il tutto in puro Python. ![]() E' presente un compilatore che provvede poi a generare i vari HTML5, CSS, e Javascript, con versioni personalizzate a seconda dei vari browser. La cosa interessante è che in questo modo è possibile generare indifferentemente applicazioni desktop e web. Per il web, generando quei file è possibile copiarli su qualunque sito di host (niente ricerca del tipo: questo host supporta solo PHP, quest'altro anche Ruby, ecc.). Nella sezione esempi c'è una caterva di dimostrativi, fra cui anche qualche giochino. Se qualcosa non funziona è perché il codice di Pyjamas generato è molto vecchio; ho già contattato l'autore del sito, che provvederà quando possibile alla ricompilazione & upload del codice (circa 200MB).
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
#70 | ||||
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Quote:
![]() comunque non ho detto che silverlight fa schifo, semplicemente che tra una tecnologia che ha il 90% e oltre del mercato e un'altra che arranca ( ed è pure stata semiabbandonata dallo stesso produttore in favore di html5 ), io consiglio la prima Quote:
Quote:
Quote:
ok per i video, ma per i giochi sembra che html5 sia mancante in alcuni punti, a partire dalle performance non brillanti se oggi uno sviluppatore decidesse di abbandonare flash per fiondarsi su html5, non è che poi nel giro di qualche settimana se ne potrebbe pentire? |
||||
![]() |
![]() |
![]() |
#71 | |||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Hai toccato il tasto giusto.
![]() Quote:
Quote:
Quote:
Il vantaggio comunque rimane notevole, perché si smazza lui tutti i problemi di incompatibilità o trucchetti vari. Finora dalle prove che ho fatto sembra funzioni allo stesso modo con tutti i browser (IE9, Opera, Safari, e FireFox 3.x; soltanto Chrome non ho provato). Quote:
Quote:
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||||
![]() |
![]() |
![]() |
#72 |
Senior Member
Iscritto dal: Jan 2012
Messaggi: 1267
|
|
![]() |
![]() |
![]() |
#73 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Ma no, che io sappia proprio no. Era soltanto una battuta.
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#74 |
Senior Member
Iscritto dal: Jan 2012
Messaggi: 1267
|
![]() ![]() |
![]() |
![]() |
![]() |
#75 |
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
però ho visto che in moltissimi titoli tripla A lo usano per lo scripting, per la riproduzione video e altre cosine
quindi non è proprio una tecnologia da buttare, magari è vecchia, magari se ne abusa tantissimo il punto è che difficilmente flash morirà a breve e bisogna conviverci per forza |
![]() |
![]() |
![]() |
#76 | ||||||
Senior Member
Iscritto dal: Sep 2003
Città: Roma
Messaggi: 8319
|
Quote:
Quote:
Quote:
Quote:
Quote:
Python viene spesso citato qui su hwu, ma ha gli stessi ambiti di utilizzo di java o è più limitato? Quote:
- Farmville - QuakeLive (quello che si gioca tramite browser) - N.O.V.A. Near Orbit Vanguard Alliance: Elite
__________________
Sordatino a.k.a. Quelo Ho venduto/scambiato con successo aPaso74, AK47, AleAme, Prezioso84, Ckone, Nemios, yoyo83, Rhadamanthis, pitusman, mickscores, Gadducci, zeropage, 29Leonardo, Falcao3, BlackCerberus, Holly86, sesshoumaru, Lukkkka, Jimmy41, vittorio130881, Trick*, techmania, glabro76, dottorcapone; Ho comprato con successo da musodatopo, mynol, ^Christof^; |
||||||
![]() |
![]() |
![]() |
#77 | |||||
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
segui il link nella firma di Cesare
è un ottimo e-book, usa python come linguaggio, ma è focalizzato nell'insegnare a "pensare da informatico" ( beh lo dice pure il titolo ) Quote:
![]() javascript è un linguaggio di scripting, java è un linguaggio per cose "più serie" anche se ultimamente javascript impazza e si sono viste cose incredibili, tipo node.js che è un framework javascript con cui si sono realizzati pure dei web server Quote:
d'altronde flash è ormai a specifiche aperte, per cui è possibile che altri si prendano carico di svilupparlo, qualora adobe dovesse tirarsi indietro il punto è che là fuori ci sono milioni di programmatori flash, non gli si può dire che hanno perso tempo e denaro....infatti adobe sta mantenendo tutti i tool di sviluppo soliti, ma li sta dotando della possibilità di esportare in html5 e javascript come linguaggio server-side si, ma i browser non supportano più java....ovvero esistono i cosidetti applet java, ma onestamente non vedo più in giro da almeno 8 anni java è adatto a sviluppare la parte server del tuo gioco, ma poi la parte più mondana ( grafica, suoni, scemenze varie ) vanno implementati lato client, cioè sul pc del giocatore ovvero nel browser Quote:
è un linguaggio con una sintassi strana, per chi viene dal mondo c++, java, ecc.... però non è impossibile da apprendere è praticamente come apprendere il c++ Quote:
chi conosce il basic noterà questa cosa in comune tra i due linguaggi inoltre negli ultimi anni sono stati ideati vari metodi per rendere i programmi python molto più veloci, per cui si è finito di usarlo solo per prototipazione o "programmini" fatti per gioco Quote:
proprio quelli che ho detto, cioè flash per la parte client-side e vari linguaggi ( lo sanno solo loro quali esattamente ) per la parte server-side alla fin fine il problema è come far girare qualcosa nel browser e le scelte possibili sono 3: flash, silverlight, html5/javascript la prima è quella usata da decenni e ancora oggi la preferita la seconda ha avuto un timido boom alcuni anni fa, ma non si è arrivati al market share che microsoft voleva e anzi la stessa azienda sembra intenzionata a metterlo in secondo piano rispetto a html5 la terza è la tecnologia del futuro, ma è immatura per chi vuole programmare giochi senza troppi sbattimenti...poi c'è il problema di quali parti di html5 implementano i browser....attualmente google chrome è quello che implementa più elementi di html5, gli altri ne implementano qualcuna in meno, e complessivamente non puoi fare affidamento sul livello di supporto dei vari browser |
|||||
![]() |
![]() |
![]() |
#78 | |
Senior Member
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
|
Quote:
__________________
In a world without fences, who needs Gates? Power by: Fedora 8 - Mac OS X 10.4.11 |
|
![]() |
![]() |
![]() |
#79 | |
Senior Member
Iscritto dal: Sep 2003
Città: Roma
Messaggi: 8319
|
Quote:
__________________
Sordatino a.k.a. Quelo Ho venduto/scambiato con successo aPaso74, AK47, AleAme, Prezioso84, Ckone, Nemios, yoyo83, Rhadamanthis, pitusman, mickscores, Gadducci, zeropage, 29Leonardo, Falcao3, BlackCerberus, Holly86, sesshoumaru, Lukkkka, Jimmy41, vittorio130881, Trick*, techmania, glabro76, dottorcapone; Ho comprato con successo da musodatopo, mynol, ^Christof^; |
|
![]() |
![]() |
![]() |
#80 | |
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Quote:
se non hai la mentalità giusta, è inutile studiare questo o quel linguaggio....chiaramente per insegnare a pensare da informatico bisogna fare degli esempi e vanno fatti in un qualche linguaggio....l'autore di quel libro ha scelto python perchè è privo di fronzoli e dettagli che possono distrarre chiaramente una volta acquisita la giusta mentalità, potrai studiare tutti i linguaggi che ti pare, tanto alla fin fine hanno tutti una sintassi simile ( la stragrande maggioranza copia la sintassi del C ) e si differenziano solo per alcuni costrutti e le librerie standard che offrono ribadisco che, leggendo quel libro, non stai imparando python ma stai imparando a programmare ad esempio, io ho imparato col basic sul c64, poi ho studiato e usato pascal quando comprai il primo pc con msdos 3.3 ( che tempi ![]() poi sono venuti c, c++, java, python, php, javascript, scala, un pò ( molto poco ) di perl, l'immancabile e abominevole bash scripting ( eh beh lo conto come linguaggio ![]() Ultima modifica di pabloski : 16-03-2012 alle 16:21. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:01.