Vai al contenuto

Iniziare Da (Quasi) 0 Con Swift.


Daniel X

Messaggi raccomandati

Buonasera,

Ho alcune domande a cui non sono riuscito finora a trovare risposta leggendo in rete, quindi le pongo su questo forum che mi sembra pieno di buoni intenditori.

Sono in possesso di: MacBook Pro retina 15" (mid 2014), iPad Air 2 64 GB, iPhone 6s 64 GB e Apple Watch Sport.

Con iOS 10 è uscita su iPad l'applicazione Swift PlayGround per imparare a programmare in Swift e mi ha davvero colpito: Pur non conoscendo niente del C o Java (ho studiato a scuola solo HTML, SQL e PHP, quest'ultimo alquanto antipatico) sono riuscito a capire velocemente i concetti spiegati risolvendo puzzle in tempo reale. Quest'oggi ho completato l'argomento dell'ultima lezione (gli Array) e come ultimo livello ti lascia creare un puzzle partendo da un terreno vuoto. Questo però usando la stessa grafica degli altri puzzle. In alternativa, si possono modificare con il codice imparato giochi già programmati come Brick Breaker. Con Swift Playground ho imparato i comandi base, le funzioni, i cicli, il codice condizionale, gli operatori logici, gli while loops, gli algoritmi, le variabili, i types, inizializzazione, i parametri e gli Arrays. Però arrivato a questo punto mi sono chiesto "E adesso che faccio?". Vorrei imparare per bene il linguaggio Swift ma avrei alcune domande:

C'è un buon libro/i e/o guida online completa che ti spieghi proprio tutto su questo linguaggio?

Imparando solo il linguaggio Swift e basta è sufficiente per creare un gioco in 2D semplice? O mi serve anche l'objective C?

E ipotizzando di aver imparato bene lo Swift e volendo creare un gioco in 2D, come realizzo la parte grafica? Ci sono testi che spiegano queste cose?

Il tempo non mi manca, adesso che ho finito con l'applicazione Swift Playgrounds mi sento un po "abbandonato", nel senso che non so dove continuare il mio cammino.

Vi ringrazio molto e vi pongo cordiali saluti.

Link al commento
Condividi su altri siti

non posso aiutarti molto per swift visto che non lo uso al momento ma posso darti alcuni suggerimenti.

prima di tutto swift lo puoi usare al posto di objective c per fare praticamente tutto (non devi necessariamente studiare anche objective c).

ti consiglio di iniziare a imparare ad usare la documentazione ufficiale apple per continuare:

https://developer.apple.com/library/content/referencelibrary/GettingStarted/DevelopiOSAppsSwift/Resources.html#//apple_ref/doc/uid/TP40015214-CH15-SW1

 

Personalmente ti consiglio di studiarti bene liste, ricorsione, il concetto di classe e oggetto, l'ereditarietà, le interfacce (dimentico sicuramente qualcosa ma più o meno queste cose le dovresti imparare).

Per la grafica invece dovresti studiarti Cocoa (se vuoi usare swift), scoprirai che le interfacce grafiche si fanno alla fine proprio perchè non c'è una sola API standard per tutti i linguaggi e per tutti i sistemi operativi.

 

Per la creazione della grafica di un videogioco che sia 2D o 3D avrai bisogno dei classici strumenti da photo editing... su mac puoi usare pixelmator, photoshop o gimp per la grafica 2d, blender, cinema 4d e altri per la grafica 3d... in ogni caso non si crea grafica direttamente da codice, si può però utilizzare grafica e animazioni da codice.

 

Per la creazione di un videogioco l'ideale però è un motore grafico e personalmente ti consiglio Unity3d. È abbastanza semplice ma è un motore grafico serio e professionale. Gira su windows e mac e esporta per windows, mac, linux, android, ios, windows phone e molte altre piattaforme.

L'unico "svantaggio" è che dovrai studiarti C# (che però è un ottimo linguaggio, molto simile a Java e tutto sommato anche abbastanza simile a Swift, anche se Swift ti ha sicuramente lasciato qualche piccola cattiva abitudine come quella di non dare il tipo ad una variabile o quella di non mettere ; alla fine, di non usare graffe negli if e nei cicli ecc...), ma il guadagno che avrai nella creazione dei videogiochi con un motore grafico non ha prezzo. Inoltre una volta imparato C# capirai molto più facilmente Swift, Java e avrai anche le basi di Objective C, C e C++ quindi è un bel guadagno.

 

Se vuoi solo imparare il mio consiglio è di studiarti bene quel che ti ho scritto prima (non importa il linguaggio).

Se invece il tuo obbiettivo è creare un videogioco buttati direttamente su Unity3d... arriverai ad un certo punto che dovrai comunque imparare quelle cose ma sarà più divertente farlo direttamente in Unity.

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...