C# o Java

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
Savius
Linux 3.x
Linux 3.x
Messaggi: 553
Iscritto il: gio 14 ago 2008, 13:45
Slackware: Slackware64 14.0
Kernel: 3.2.29-smp
Desktop: KDE 4.8.5
Località: Napoli

Re: C# o Java

Messaggio da Savius »

@414N
Figurati! ^^ Non quoto punto per punto perché spero di esser più chiaro in questo unico periodo. Quel che intendo dire è che è sbagliato, semprea mio avviso, approcciarsi ad un linguaggio di programmazione ad oggetti se si vuole "conoscere" la programmazione nel senso più ampio del termine. Non sto dicendo che uno che programma SOLO in un dato linguaggio di programmazione non sia un programmatore, dico solo che è un programmatore "limitato" perché non conosce le basi della programmazione, quelle che hanno poi portato allo sviluppo di ulteriori linguaggi.
d4z_c0nf ha scritto:Il concetto di controllo dell'hardware soprattutto non mi è ben chiaro. Devo pur dire che ormai anche la facoltà di Informatica ha cambiato il suo approccio, dando molta importanza alla fase di progettazione e quindi all'approccio ingegneristico allo sviluppo software. Credo che attualmente, ma accetto smentite, la vera differenza sia che la facoltà di Informatica si proponga di formare degli speciacilisti del settore, senza però sottovalutare l'aspetto ingegneristico volto alla risoluzione dei problemi, mentre Ing. Informatica, a scapito della pratica nello sviluppo del software, tenda a fornire un'educazione "scientifica" più ampia che abbraccia altri campi quali l'elettronica e le telecomunicazioni la robotica, che necessitano di nozioni matematiche un po' più forti.
Con questo non voglio dire che gli uni siano meglio degl'altri.
Ti sei spiegato bene, le cose stanno proprio così. :D Per controllo hardware intendo tutti gli aspetti implementativi che ti permettono di interagire con un dispositivo hardware.
d4z_c0nf ha scritto:Altra perplessità mi viene dalla tua (Salvius) contrapposizione tra programmazione "imperativa" e ad oggetti. Ho sempre pensato che la imperativa fosse un insieme che contenesse al suo interno la programmazione ad oggetti, e che fosse la programmazione dichiarativa a contrapporsi a quella imperativa. Forse intendevi programmazione strutturata?
Sì strutturata sorry. Tendo sempre a chiamare i linguaggi di programmazione strutturati, imperativi... ^^'' Comunque dai linguaggi di programmazione strutturati sono nati poi i linguaggi di programmazione ad oggetti, volendo fare proprio il sempliciotto si può dire che nella programmazione ad oggetti, ci sono contenitori che contengono pezzi di codice strutturato.

Avatar utente
d4z_c0nf
Packager
Packager
Messaggi: 1296
Iscritto il: mar 14 mar 2006, 18:07
Nome Cognome: Rocco Aliberti
Slackware: 14.2-current64
Kernel: 4.14.73
Desktop: awesomeWM
Località: Pinerolo

Re: C# o Java

Messaggio da d4z_c0nf »

Vito ha scritto:Offtopic:
d4z_c0nf ha scritto:Offtopic: Credo che attualmente, ma accetto smentite, la vera differenza sia che la facoltà di Informatica si proponga di formare degli speciacilisti del settore, senza però sottovalutare l'aspetto ingegneristico volto alla risoluzione dei problemi, mentre Ing. Informatica, a scapito della pratica nello sviluppo del software, tenda a fornire un'educazione "scientifica" più ampia che abbraccia altri campi quali l'elettronica e le telecomunicazioni la robotica, che necessitano di nozioni matematiche un po' più forti.
Offtopic:

la differenza sostanziale,anche secondo me, sta proprio in quello che dici tu.
Io non frequento ingegneria informatica (frequento ing. dell'automazione,simile ad informatica ma incentrata sulla robotica),
noto che sull'informatica vera e propria un informatico è più ferrato in quanto il suo corso è più specifico e resta sempre legato alla programmazione e all'architettura.
Non penso vengano affrontato problematiche di robotica che richiedono un bagaglio matematico diverso (per esempio le trasformate di Laplace e Fourier utilizzate per l'analisi dei sistemi LTI in un dominio diverso dal tempo).
Come hai detto tu però posso sbagliarmi,non conoscendo tutti i curriculum messi a disposizione dalla laurea in informatica.
Offtopic: Concordavo con te infatti, ad Ing. Informatica sono trattate eccome le trasformate di Laplace e Fourier. Fondamentali per la robotica (qui chiamata automazione, che le fa perdere tutto il suo fascino :D) e soprattutto quelle di Fouriere per le Trasmissioni. Dicevo solo che secondo me non sta nell'approccio ingegneristico la differenza, perchè ho notato che anche ad Informatica, amici la frequentano, è preso molto sul serio, ma sul fatto che questo sia mirato solo al software, insomma è una facoltà più specifica, il che non significa peggiore, ma so che tu non la ritieni peggiore.

Avatar utente
d4z_c0nf
Packager
Packager
Messaggi: 1296
Iscritto il: mar 14 mar 2006, 18:07
Nome Cognome: Rocco Aliberti
Slackware: 14.2-current64
Kernel: 4.14.73
Desktop: awesomeWM
Località: Pinerolo

Re: C# o Java

Messaggio da d4z_c0nf »

Savius ha scritto:
d4z_c0nf ha scritto:Il concetto di controllo dell'hardware soprattutto non mi è ben chiaro. Devo pur dire che ormai anche la facoltà di Informatica ha cambiato il suo approccio, dando molta importanza alla fase di progettazione e quindi all'approccio ingegneristico allo sviluppo software. Credo che attualmente, ma accetto smentite, la vera differenza sia che la facoltà di Informatica si proponga di formare degli speciacilisti del settore, senza però sottovalutare l'aspetto ingegneristico volto alla risoluzione dei problemi, mentre Ing. Informatica, a scapito della pratica nello sviluppo del software, tenda a fornire un'educazione "scientifica" più ampia che abbraccia altri campi quali l'elettronica e le telecomunicazioni la robotica, che necessitano di nozioni matematiche un po' più forti.
Con questo non voglio dire che gli uni siano meglio degl'altri.
Ti sei spiegato bene, le cose stanno proprio così. :D Per controllo hardware intendo tutti gli aspetti implementativi che ti permettono di interagire con un dispositivo hardware.
d4z_c0nf ha scritto:Altra perplessità mi viene dalla tua (Salvius) contrapposizione tra programmazione "imperativa" e ad oggetti. Ho sempre pensato che la imperativa fosse un insieme che contenesse al suo interno la programmazione ad oggetti, e che fosse la programmazione dichiarativa a contrapporsi a quella imperativa. Forse intendevi programmazione strutturata?
Sì strutturata sorry. Tendo sempre a chiamare i linguaggi di programmazione strutturati, imperativi... ^^'' Comunque dai linguaggi di programmazione strutturati sono nati poi i linguaggi di programmazione ad oggetti, volendo fare proprio il sempliciotto si può dire che nella programmazione ad oggetti, ci sono contenitori che contengono pezzi di codice strutturato.
Non volevo criticare, era una curiosità, potevo sbagliarmi io, ma in caso contrario era meglio rettificare per non disinformare atomix600. ;)
Per il controllo hardware non so, se ti riferisci alla programmazione dei PLC sì è vero, è trattata, ma è un aspetto marginale.

Offtopic: EDIT: Scusa se prima ho sbagliato il tuo nick, avevo letto male.

Avatar utente
Savius
Linux 3.x
Linux 3.x
Messaggi: 553
Iscritto il: gio 14 ago 2008, 13:45
Slackware: Slackware64 14.0
Kernel: 3.2.29-smp
Desktop: KDE 4.8.5
Località: Napoli

Re: C# o Java

Messaggio da Savius »

d4z_c0nf ha scritto: Non volevo criticare, era una curiosità, potevo sbagliarmi io, ma in caso contrario era meglio rettificare per non disinformare atomix600. ;)
Per il controllo hardware non so, se ti riferisci alla programmazione dei PLC sì è vero, è trattata, ma è un aspetto marginale.

Offtopic: EDIT: Scusa se prima ho sbagliato il tuo nick, avevo letto male.
No figurati d4z_c0nf, hai fatto benissimo a porre l'attenzione su questa cosa, ammetto di conoscere molto bene ciò che concerne il mio campo e poco quello dell'Ingegneria Informatica, le mie sono considerazioni che ho fatto in base all'esperienza fatta ad Ingegneria prima di passare ad Informatica. Quando stavo ad Ing. Inf. ho studiato molte cose inerenti ad aspetti più incentrati sull'automazione, elettronica, hardware (in senso molteplice del termine) eccetera, mentre quando son passato ad Informatica ho avuto modo di studiare molte cose inerenti alla programmazione, con esami quali Algoritmi e Strutture Dati, Programmazione, Linguaggi di Programmazione, Laboratorio di Sistemi Operativi e tanti altri esami teorici e pratici. Per questo, da informatico, "credo" sia opportuno, per chi voglia imparare a programmare nel vero senso della parola, non approcciarsi subito con linguaggi di programmazione ad oggetti, tutto qui.

Vorrei inoltre scusarmi se per caso ho dato l'impressione di essere "critico", vi assicuro che non era nelle mie intenzioni ho solo dato un parere. A volte posso sembrare superbo ma vi assicuro che non è così, lo divento quando leggo commenti sarcastici, superbi o che mal interpreto in risposta a quel che dico. ^^''
Offtopic: EDIT: Scusa se prima ho sbagliato il tuo nick, avevo letto male.
Offtopic: Nessun problema! ;)

Avatar utente
absinthe
Iper Master
Iper Master
Messaggi: 2354
Iscritto il: dom 15 mag 2005, 0:00
Nome Cognome: Matteo Nunziati
Slackware: 12.1 - defunct
Kernel: 2.6.32-5-amd64
Desktop: gnome
Distribuzione: debian squeeze
Località: Prato
Contatta:

Re: C# o Java

Messaggio da absinthe »

il python è un linguaggio a tipizzazione dinamica, e puoi usarlo in maniera procedurale. a mio avviso l'interprete a volte da dei messaggi di errore non molto espliciti ad un primo approccio, ma dopo matlab credo che sia una delle cose più interessanti che abbia mai visto. in più ti obbliga ad usare i tab, e impari ad indentare il codice (una cosa che vedo fare a pochi studenti)
non penso sia intuitivissimo perchè la tipizzazione dinamica crea una gran confusione specie se si inizia ad impratichirsi e non si conosce il linguaggio. ad ogni modo in 4 mesi, lavorando 1 giorno a settimana e partendo da zero, sono riuscito a conoscere l'abc del linguaggio, usare wxpython per fare delle gui, usare sqlalchemy per interfacciare un db sqlite e creare report html.

M

Gone Berserk
Linux 0.x
Linux 0.x
Messaggi: 43
Iscritto il: lun 19 giu 2006, 9:48
Kernel: 2.6erotti
Desktop: Xfce
Distribuzione: Xubuntu

Re: C# o Java

Messaggio da Gone Berserk »

Allora...

Se vuoi farti del male, ma tanto, tanto male, programma in C#. E' un bel linguaggio, è elegante, è moderno, è creato secondo le idee dell'ingegneria del software. Quindi è pensato per essere l'inferno per il programmatore isolato. Per scrivere un dannato "hello world" genererai un file di 600 kb con 5 MB di dipendenze. E' il linguaggio per le squadre di programmatori che non devono pestarsi i piedi a vicenda.

Se vuoi farti del male, ma leggermente meno, usa Java. Stesso discorso, identico, che vale per il C#, al punto che in effetti C# è la versione di Java di MS... ma almeno quello che programmi con Java lo esegui ovunque. E' anche vero che "Java" è una illusione - senza lo studio dei framework più diffusi (Struts, ad esempio) non riuscirai a farci granchè.

Se vuoi iniziare a programmare... studiati python. Studiati Gambas. Studiati qualcosa che non ti faccia venire voglia di spararti ogni volta che devi leggere una stringa da un file, o mettere a confronto una stringa e un numero. La programmazione NON è ingegneria del software... lascia Java e C# a noi professionisti che siano stati COSTRETTI ad adottarli da Sun (prima) e MS. Evviva il progresso.

Rispondi