mi propongo per riportarlo in vita,anche se non ho grandi conoscienze nel campo. sono 4 anni che ho cominciato da programmare, partendo dal c++, cosa che sconsiglieri anche al mio peggior nemico.
sia da intendere che ogni affermazione qua sotto è una pura e mera opinione personale, non suffragata da dati oggettivi
per quanto riguarda
"Linguaggi da imparare per un principiante in ordine di preferenza"
io proporrei
1)python
2)groovy
3)c#/vb.net
per quanto riguarda i primi due, essi hanno entrambi cose in comune quali una curva di apprendimento bassa, la disponibilità di una vastissima liberia, di abbondante documentazione e di "finiture" sintattiche che ne permettono un utilizzo avanzato.
inoltre entrambi non hanno una "ossatura" di contorno al codice dell'utente come java e c++ & C, e aiuta per focalizzare bene cosa si sta facendo.
metto però per primo python in quanto per groovy non esistono testi gratuiti.
per c#/VB.net sono invece consigliabili per l'introduzione a quel magnifico framework che è il .Net
Linguaggi per applicazioni con GUI in ordine di preferenza:
per quanto riguarda il codice scritto a mano.
1)groovy
2)java
di groovy sono rimasto piacevolmente colpito di come gestisce le gui, è forse un po' "refrattario" all'inizio, ma permette di sviluppare con semplicità gui
per java intanto specifico che parlo riguardo le swing, le quali forse sono a mio personalissimo avvisso, le migliori librerie per scrivire gui "via codice".
Non parlo per il .Net perchè non lo conosco sotto questo punto di vista
Database per piccole applicazioni singolo utente in ordine di preferenza:
1)C# e VB.Net
e dopo (molto)
2)groovy
linq è veramente una manna dal cielo:una benedizione, non credo abbia bisogno di presentazioni
Per groovy lo cito perchè mette insieme tutta una serie di peculiarità (come del python ) come "sveltezza" nel lavorare con i dati e di gestire le interfacce grafiche (come sopra citato)
In ogni caso credo fermamente ogni linguaggio che permetta un'efficente gestione delle gui grazie a strumenti RAD e una gestione dei dati via serializzazione/orm senza particolari configurazioni è adatto a questo compito, e mi azzardo a dire che anche il c++, se abbinato alle Qt e a librerie quali le Cmarkup sia altamente produttivo in questo specifico ambito
ricapitolando
python
pro: linguaggio semplice dalla curva di apprendimento molto bassa, dotato di tutto quello che si può desiderare da un linguaggio
contro: l'assenza di un ide che lo supporti in maniera efficace, a mio avviso sintassi dannatamente caotica che quando i metodi e le funzioni superarano le 5/7 righe di codice diventa illeggibile
perchè come primo linguaggio: per quanto detto prima e soprattutto perchè si trovano testi disponibili gratuitamente e in italiano, inoltre lo "scripting interattivo" (passatemi il termine, non sapevo come dirlo meglio) è veramente utile, inoltre il fatto che non necessiti processi quali la compilazione è,per chi inizia, una perdita di tempo in meno
perche va imparato in generale: perchè si presenta come un linguaggio con caratteristiche moderne che garantisce un alta produttività e un supporto eccellente in praticamente tutti i campi
Strumenti consigliati: l'interprete interattivo e i lo usa non a scopo didattico un ide come netbeans e il link alla documentazione officiale tra i preferiti
groovy
pro: valgono le stesse considerazione del python, rispetto al quale ha giusto qualche finezza sintattica in più e, ma è una mera opinione personale, una libreria, una documentazione e una sintassi un po' meno caotica, ha anche un ide (NetBeans) ben ottimizzato per questo linguaggio
contro: ora al momento non me ne viene nessuno apparte il fatto che al contrario del python la chiamata ai metodi nativi è molto meno agevole
perchè va imparato come primo linguaggio: anche qui valgono le stessi considerazioni del python, però l'assenza di testi gratuiti (o comunque facilmente reperibili) è un duro colpo per questo linguaggio
in generale va imparato perchè è una porta verso i linguaggi moderni non dovendo buttare nel cestino tutto il knowledge di piattaforme quali quella di Java o quella del .Net (se ne prevede un implementazione chè è già in fase di sviluppo)
Strumenti Consigliati: Netbeans e documentazione installata in locale accessibile dall'ide
C#/VB.Net
li metto insieme in quanto più che un linguaggio o l'altro preferirei "votare" per i due principi della piattaforma .Net
pro: potentissimi a livello sintattico e con una libreria veramente bellissima, disponibilità gratuita di ide di alto livello per tutte le piattaforme, una documentazione che, secondo me, farebbe meritare il premio chiarezza e funzionalità a chi l'ha scritta
contro: putroppo le implementazioni open source non sono mature, non disponibilità di testi gratuiti di buon livello (di mia conoscenza),poi un mezzo difetto è il peso di 350mb dell'installer del framework
perchè vanno imparati come primo linguaggio: per tutti i motivi messi nei pro
perchè vanno imparati: perchè rappresenta l'unica vera alternativa ( alla piattaforma della Sun (che a mio avviso è inferiore a quella Microsoft, e lo dico da sostenitore di java), e per la ricchezza del framework
Strumenti consigliati: msdn e visual studio, anche se c'è da dire che anche #develop non è pessimo.
java
pro lingauggio maturo, usato pressochè in ogni ambito, con una documentazione e i (soprattuto) una letteratura sopraffine, una libreria stermininata che copre una quantità infinita di ambiti, e un ambiente runtime compatto, buona speranza che con la versione 7 di un aumento delle prestazioni grazie alla nuova versione del gc, delle ottime librerie pe rla programmazione grafica via codice e non
contro è un mastodonte, elefante che comincia a sentire il peso degli anni, specialmente nella velocità di scrittura delle operazioni banali dove si sente l'assenza di feature quali linq
motivo per cui va imparato per primo: oltre alla già citata libreria e documentazione essenzialmente uno solo, la poca "potenza" che hanno i costrutti sintattici ti permette di non farti venire un mal di testa orribile nel capire gli esempi: ad esempio (almeno per me) il mal di testa ottenuto con la compresione di un pezzo di codice che fa forte uso di aritmetica dei puntatori in c/c++ e un pezzo di codice in cui si fa forte uso di lamba expression, delegati, clousures & C. è identico.
Come secondo linguaggio: solo la ricchezza di librerie credo sia sufficente.
Strumenti consigliati: NetBeans ed Eclipse
dovrebbe esserci tutto
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
Ultima modifica di wizard1993 : 10-01-2010 alle 18:14.
Motivo: modifiche suggerite dal moderatore
|