PDA

View Full Version : Da quale linguaggio partire : riflessioni e dubbi


madforthenet
26-01-2004, 22:49
Premetto subito che su consiglio di molti qui sul forum e anche da altre parti mi sono convinto ad imparare un po' di C++ usando buoni libri tipo quelli di Deitel.
Questo anche essendo un informatico mancato x vicende scolstiche che risalgono a molto tempo fa , al 1975 ed allora di visual cbsic non c'era traccia, quando ad 1 mese dall'inizio delle scuola ci convocarono x dirci che la seconda classe di informatica non si poteva + fare e x una vicenda legata a violente proteste verbali mie e di altri del Consiglio di Istituto degli Studenti ci fu un sorteggio e io rimasi fuori e feci elettronica
Vedendo però alcune persone che già programmano ho visto fare con ad es. Visual Basic delle cose tipo anche il semplice e solito messaggio a videodi WWindows tipo " Hello World" con poche e apparentemente facili istruzioni.
leggendo un po' su i libri a mia disposizione leggo che x fare lo stesso con relativa interfaccia grafica in C++ ci vorrebbe un numero spropositato di righe di programma da 2000 a 4000 !?
allora il dubbio che mi era sorto è questo: che senso ha veramente partire dal C++ e non direttamente dal Visual Basic x esempio ? non si risparmierebbero tempo e fatica ?
cosa giustifica in pieno la scelta di partire dal C++ :
-la sua potenza, trasportabiltà, diffusione ?
-è una base molto utile per entrare nel mondo della programmazione ?
-partendo in altro modo verrebero a mancare certe basi x la comprensione di tutto un mondo ?
cosa dire insomma ad uno che si appresta ad entrare in questo mondo ?
io mi sono convinto a partire dal C++ x consigli che mi sono stai datie x ragioni direi storico scolastiche, ma come spiegare ad es a mio figlio questa scelta di fronte alla "facilità" con cui si creano piccole applicazioni in Visual Basic ?
dite la vostra opinione
ciao

a2000
26-01-2004, 23:02
per codici di calcolo numerico per l'ingegneria:

- GUI in VisualBasic o ancora più rapido ed efficiente VBA

- motore di calcolo in Fortran90/95



"altri" programmi di contorno li puoi fare deliziandoti come Tafazzi picchiandoti sui OO con le astruserie di qualsiasi linguaggio sturmtruppen: C++, Java, C#, VC.NET, IdraulicoLiquido, ecc. :D

a2000
26-01-2004, 23:07
Originariamente inviato da madforthenet
...

Vedendo però alcune persone che già programmano ho visto fare con ad es. Visual Basic delle cose tipo anche il semplice e solito messaggio a videodi WWindows tipo " Hello World" con poche e apparentemente facili istruzioni.
leggendo un po' su i libri a mia disposizione leggo che x fare lo stesso con relativa interfaccia grafica in C++ ci vorrebbe un numero spropositato di righe di programma da 2000 a 4000 !?
allora il dubbio che mi era sorto è questo: che senso ha veramente partire dal C++ e non direttamente dal Visual Basic x esempio ? non si risparmierebbero tempo e fatica ?
...

io mi sono convinto a partire dal C++ x consigli che mi sono stai datie x ragioni direi storico scolastiche, ma come spiegare ad es a mio figlio questa scelta di fronte alla "facilità" con cui si creano piccole applicazioni in Visual Basic ?
dite la vostra opinione
ciao

il tuo dubbio è più che fondato e tuo figlio ha ragione. :)

un linguaggio di programmazione è uno strumento (anzi un elettrodomestico) e non un fine.

il fine è costruire ponti, satelliti, impianti e/o tirarli giù a seconda delle proprie inclinazioni personali.

maxithron
26-01-2004, 23:33
Originariamente inviato da a2000


il fine è costruire ponti, satelliti, impianti e/o tirarli giù a seconda delle proprie inclinazioni personali.


Infatti....con visual basic basta un runtime error 3021 per tirare giù anche la luna verso un impatto catastrofico/epocale che cancellerà questi 5 miliardi di "esseri" per permettere ad un'altra era e ad un'altra specie di evolversi meglio di noi..... :D

D'altronde, considera le cose dal punto di vista dell'universo (in termini di numeri...) cosa vuoi che sia il tempo che spendiamo per ogni bit digitato per qualsivoglia motivo? :O


So già quello che pensi, non sei capitato in una gabbia di matti, è che ci hanno rimesso in libertà chiudendo i manicomi!!! :D


In realtà oggi, non esiste nessun concetto così complesso da non poter essere interpretato in c o in c++. Hai fatto l'esempio di Hello World con visual basic, e siamo d'accordo.....ma ti immagini a scrivere un sistema operativo in visual basic? Considerando che un sistema operativo non è la cosa più complessa di questo mondo da progettare.

Voglio dire che più la complessità di quello che devi progettare aumenta, più i linguaggi strutturati ed orientati agli oggetti, possono paradossalmente semplificare il progetto stesso.

madforthenet
26-01-2004, 23:35
Originariamente inviato da a2000
il tuo dubbio è più che fondato e tuo figlio ha ragione. :)

un linguaggio di programmazione è uno strumento (anzi un elettrodomestico) e non un fine.

il fine è costruire ponti, satelliti, impianti e/o tirarli giù a seconda delle proprie inclinazioni personali.

sono contento che questo quesito abbia già ottenuto una risposta.
il fatto è che comunque molte applicazioni sono ancora oggi scritte con C++ , ma l'interfaccia grafica ? forse con Visual C++ ? con Visual Basic o cosa ? ormai qualunque cosa ha una parte grafica e C++ si fa aiutare da altri strumenti anche non Micrisoft
so che esistono strumenti GUI tipo GTK+ o wxwindows che credo possano usare il codice generato da C++, ma ha senso imparaare così tante cose ?
volevo suscitare in tutti quelli che leggeranno uesto un dibattito, anche aspro , perchè no, ma che sia un confronto serio di idee non un semplice x me è meglio questo o quello argomentiamo seriamente quello che pensiamo.
aspetto altre opinioni.
ciao

madforthenet
26-01-2004, 23:44
scusa non avevo visto la tua risposta mentre scrivevo l'altra.
potresti chiarire meglio i concetti che hai esposto ?
voglio dire quali sono alla fine i vantaggi e gli svantaggi di uno e dell'altro linguaggio ?
e ancora , e qui devi scusare la domanda da vero principiante, non è anche Visual basic orientato ad oggetti ?
ovvero in che cosa differiscono tra loro i due linguaggi e quali le loro applicazioni ?
cosa dovrebbe spingere in realtà ad utilizzare uno piuttosto che l'altro ?
ciao

maxithron
26-01-2004, 23:52
C++ non è un linguaggio di proprietà Microsoft. Microsoft ha solo sviluppato un ambiente di sviluppo tutto integrato con VC++.

E poi non bisogna fare confusione tra quella che è la GUI e quello che è l'ambiente di sviluppo (che può essere anche un semplice editor di testo + un compilatore)

Inoltre, se impari un linguaggio come Visual Basic, ed impari solo quello, la tua visione sarà sempre relativa soltanto a sistemi windows based, nel senso che non potrai mai sviluppare applicazioni che possano girare su sistemi diversi. E' un punto anche questo da non sottovalutare data la continua "flessibilità" che il mondo informatico di oggi richiede.

La GUI(se fai una ricerca in questa sezione trovi molti post a riguardo) è uno strato "di superficie", ma se non si è a conoscenza di quello che c'è dietro, anche una GUI può avere effetti meno benefici di quanto generalmente si consideri.

Inoltre, linguaggi come il c ed il c++ ti abituano di più a scrivere codice avendo coscienza anche di come funziona l'hardware sottostante, e quindi a scrivere codice ottimizzato a secondo dei sistemi.

maxithron
27-01-2004, 00:02
Opppssss, anche io non avevo letto la tua domanda mentre scrivevo!! :D

Per risponderti al meglio, scavo un pò nei miei archivi perchè dovrei avere ancora una tabella di "comparazione" che spiega in dettaglio i limiti ed i pregi di quasi ogni linguaggio oggi utilizzato.

Per quanto mi riguarda, personalmente, vorrei tanto impararli tutti!! :D

a2000
27-01-2004, 00:09
Originariamente inviato da maxithron
....

Voglio dire che più la complessità di quello che devi progettare aumenta, più i linguaggi strutturati ed orientati agli oggetti, possono paradossalmente semplificare il progetto stesso.

ho capito che avete scoperto che le case si fanno con i mattoni ! :D

a parte le battute ti invito a considerare che in un qualunque sistema, compreso un programma, più aumenta la numerosità degli elementi costitutivi più aumentano (molto più che linearmente) le interfacce di scambio di materia, energia, e informazione tra gli elementi e si arriva a un punto che la gestione delle interfacce è preponderante e molto più onerosa della gestione degli elementi.

è quello che si vede anche dal tipo di richieste che vengono fatte sul forum soprattutto per i linguaggi OO: il problema fondamentale è attaccare uno all'altro pezzi fatti da altri e di cui si conosce il funzionamento a scatola nera in-out.

oltre un certo limite questo è più faticoso, pericoloso e complesso (nel senso di intrinsecamente instabile e non deterministico) che non costruirsi i mattoni costitutivi (molti di meno) sapendo cosa c'è dentro.

una casa la costruisci con i mattoni da una spanna ma un grattacielo lo devi costruire con travi e facciate da 10 m l'una proprio per ridurre il numero di interfacce.

"paradossalmente" progetti industriali di basso livello hanno un think tank di centinaia di persone, quelli più impegnativi 30, quelli strategici in caso di guerra 10.

il riferimento primo e assoluto è Leonardo.

a2000
27-01-2004, 00:19
la verità caro maxithron e dovreste avere l'onestà di dichiararlo a chiare lettere è che il C è poco più che un linguaggio di basso livello con tutti i vantaggi (pochi) e gli svantaggi (una marea) che questo comporta.

a2000
27-01-2004, 00:26
per esempio solo in un contesto C/Cplusplano vengono proposti esercizi antidiluviani come "l'input da tastiera di un array 2d" :eek:

cose concettualmente astruse, inutili e sbagliate, che erano già superate, morte e sepolte col Basic del Commodore e/o col FORTRAN77 su terminale IBM di 25 anni fa !

per non parlare di altre inutili amenità come allocazioni dinamiche di matrici (scontata in un linguaggio di alto livello) ecc. ecc.

maxithron
27-01-2004, 00:27
Originariamente inviato da a2000

è quello che si vede anche dal tipo di richieste che vengono fatte sul forum soprattutto per i linguaggi OO: il problema fondamentale è attaccare uno all'altro pezzi fatti da altri e di cui si conosce il funzionamento a scatola nera in-out.

Difatti questo però non è un problema del/dei linguaggio/i in sè, quanto da chi li usa a "scatola chiusa".

oltre un certo limite questo è più faticoso, pericoloso e complesso (nel senso di intrinsecamente instabile e non deterministico) che non costruirsi i mattoni costitutivi (molti di meno) sapendo cosa c'è dentro.

Certo, a patto che sia tu "scrivano" a determinare che il contenuto dei laterizi è una scelta consapevole in base ad un contenuto che appunto conosci.

una casa la costruisci con i mattoni da una spanna ma un grattacielo lo devi costruire con travi e facciate da 10 m l'una proprio per ridurre il numero di interfacce.

"paradossalmente" progetti industriali di basso livello hanno un think tank di centinaia di persone, quelli più impegnativi 30, quelli strategici in caso di guerra 10.

E credo che non potrebbe essere diversamente se rapportiamo il discorso nel mondo reale in ambito "decisionario".

Come si dice dalle mie parti:

"Truopp gall' a canta' nun schiara mai journo" !!

Trad. = Troppi galli che cantano...non fa mai giorno :D :D

a2000
27-01-2004, 00:29
Originariamente inviato da maxithron
...

Come si dice dalle mie parti:

"Truopp gall' a canta' nun schiara mai journo" !!

Trad. = Troppi galli che cantano...non fa mai giorno :D :D

appunto. e troppi oggetti non fanno un programma efficiente.

maxithron
27-01-2004, 00:33
Originariamente inviato da a2000
la verità caro maxithron e dovreste avere l'onestà di dichiararlo a chiare lettere è che il C è poco più che un linguaggio di basso livello con tutti i vantaggi (pochi) e gli svantaggi (una marea) che questo comporta.

Io non la vedo così, semplicemente è un linguaggio che ha degli scopi ben precisi come altri linguaggi ne hanno altri. Resto sempre dell'opinione che per quanto mi riguarda non esiste "Il Linguaggio". Come spesso anche tu dici, i linguaggi sono semplici strumenti che sfruttiamo per determinati scopi. E, trattandosi di fini in base determinate richieste e caratteristiche, non può e non potrà mai esistere un linguaggio che li copra tutti.

maxithron
27-01-2004, 00:34
Originariamente inviato da a2000
appunto. e troppi oggetti non fanno un programma efficiente.

allora da domani scriverò solo in zeri e uni !! :D

a2000
27-01-2004, 00:35
Originariamente inviato da maxithron
Io non la vedo così, semplicemente è un linguaggio che ha degli scopi ben precisi come altri linguaggi ne hanno altri. Resto sempre dell'opinione che per quanto mi riguarda non esiste "Il Linguaggio". Come spesso anche tu dici, i linguaggi sono semplici strumenti che sfruttiamo per determinati scopi. E, trattandosi di fini in base determinate richieste e caratteristiche, non può e non potrà mai esistere un linguaggio che li copra tutti.

vabbuo'.

sciamn' a curca va'. :O

a2000
27-01-2004, 00:36
Originariamente inviato da maxithron
allora da domani scriverò solo in zeri e uni !! :D

ah col C ci vai abbastanza vicino.

maxithron
27-01-2004, 00:36
Originariamente inviato da a2000
vabbuo'.

sciamn' a curca va'. :O

ergo: jammec'ia cuccà'

a2000
27-01-2004, 00:39
ognuno lo dice nel suo linguaggio, ma la sostanza è la stessa.

ma la sostanza è la stessa ? :D

a2000
27-01-2004, 00:39
forse no.

xybercom
27-01-2004, 06:55
Il C/C++ sono i linguaggi più usati per "veri" programmi, e con questi intendo tutto Windows, Linux, e la maggior parte dei programmi più importanti (anche i giochi).
Io (imho) considero Visual Basic un linguaggio tremendamente limitante e anche mal scritto.
Per sviluppare interfacce grafiche in C/C++ bisogna appoggiarsi su una libreria: wxWindows è ottima, altrimenti si può usare Fltk che è molto semplice e facile da imparare; di sicuro non servono migliaia di linee di codice.
Usando invece le MFC credo che la cosa sia più complicata.

In alternativa al Visual Basic c'è anche Python che è un linguaggio molto semplice ma allo stesso tempo potente e con librerie molto estese e consente anche di sviluppare GUI in modo rapido.

lexleo
27-01-2004, 08:23
Originariamente inviato da xybercom
Il C/C++ sono i linguaggi più usati per "veri" programmi, e con questi intendo tutto Windows, Linux, e la maggior parte dei programmi più importanti (anche i giochi).
Io (imho) considero Visual Basic un linguaggio tremendamente limitante e anche mal scritto.

STRAQUOTO!!!!!
;) ;) ;)

cionci
27-01-2004, 08:38
Sono con voi ;)

a2000
27-01-2004, 17:51
Originariamente inviato da xybercom
Il C/C++ sono i linguaggi più usati per "veri" programmi, e con questi intendo tutto Windows, Linux, e la maggior parte dei programmi più importanti (anche i giochi).
....



i "veri" programmi karino sono quelli che servono per fare grattacieli da 1 km, impianti da 1 tonnellata al secondo e bombe atomiche.
e sono scritti in Fortran.

il resto sono tutti "ausiliari" in gran parte inutili (anche i giochi ovviamente).

a2000
27-01-2004, 17:55
e infatti i programmatori di scioftvar DefInt :D non li pagano più, e giustamente, un beneamato C++ :D

a2000
27-01-2004, 18:08
i "veri" programmi cominciano così:


Implicit Real*8(A-H), Integer(I-K), Real*8(L-Z)


tutti implicit Double but the index e via andare :cool:

buemuschiato
27-01-2004, 19:23
Caro a2000, spero che in questa lista del signor Stroustrup

http://www.research.att.com/~bs/applications.html

tu possa trovare qualche programma che consideri vero.

a2000
27-01-2004, 20:09
Stroustrup ? chi era costui ?
ah, deve essere questo, c'ha anche l'elmetto a parentesi graffa ! :D
http://www.repubblica.it/speciale/2003/fumetti/images/sturmtruppen/opera.jpg

non ve la prendete ... :)

ma ricordatervi sempre di onorare l' Adriano Pappalardo di tutti i linguaggi di programmazione,
gli altri sono solo dei Walter Nudo di passaggio. :D

buemuschiato
27-01-2004, 20:17
Comunque il tuo integralismo fortranista è davvero affascinante...

Che il fortran2c sia il nostro calumet della pace :)

xybercom
27-01-2004, 20:26
Originariamente inviato da a2000
i "veri" programmi karino sono quelli che servono per fare grattacieli da 1 km, impianti da 1 tonnellata al secondo e bombe atomiche.
e sono scritti in Fortran.

il resto sono tutti "ausiliari" in gran parte inutili (anche i giochi ovviamente).

grazie per il carino :cool:
Che i giochi possano essere inutili potrei anche essere d'accordo, ma che Unix/Linux/Win siano programmi "ausiliari" temo di no :mc:
comunque la grande diffusione del Fortran mi sembra dovuta più a ragioni storiche che a reali qualità del linguaggio.
Un grosso punto di forza sono senz'altro le librerie numeriche molto estese e la fedele comunità di ricercatori che (troppo spesso) conoscono solo il Fortran.
Con però l'arrivo di librerie di calcolo numerico native e porting C++ le prospettive del Fortran le vedo dure; un altro punto che non lo rende poi appetibile alla comunità opensource (che è grande) è la mancanza (ancora oggi) di un compilatore free [se escludiamo f77].
Permettimi una battuta: spero che le sonde che sono adesso su marte non siano controllate da un programma fortran con interfaccia in Visual Basic :D
Buona programmazione

abxide
27-01-2004, 20:42
Visual basic? Uhm si per qualche programmino di poco conto lo vedo anche adatto, ti permette di fare molto a livello grafico con il minimo degli sforzi. Ma se parliamo di velocità e stabilità io non lo nominerei manco il vb;)

madforthenet
27-01-2004, 20:48
beh visto che l'ho aperta io è giusto che dica qualcosa
sono contento che sia scatenato un civile scambio di idee , però volevo cercare di capire di + ad es quello che diceva xybercom

Originariamente inviato da xybercom
Il C/C++ sono i linguaggi più usati per "veri" programmi, e con questi intendo tutto Windows, Linux, e la maggior parte dei programmi più importanti (anche i giochi).
Io (imho) considero Visual Basic un linguaggio tremendamente limitante e anche mal scritto.
Per sviluppare interfacce grafiche in C/C++ bisogna appoggiarsi su una libreria: wxWindows è ottima, altrimenti si può usare Fltk che è molto semplice e facile da imparare; di sicuro non servono migliaia di linee di codice.
Usando invece le MFC credo che la cosa sia più complicata.

In alternativa al Visual Basic c'è anche Python che è un linguaggio molto semplice ma allo stesso tempo potente e con librerie molto estese e consente anche di sviluppare GUI in modo rapido.

perchè dici che visual basic è limitante e malfatto, forse allergia daa Microsoft galoppante ? a parte le battute potresti spiegarti meglio anche quando parli di wx windows ? x C++ cosa consigliersti di usare : MInGW, Borlaand, Dev-C++ , o altro ?
facendo riferimento a quello che diceva inizialmente
maxithron
a proposito del fatto di essere limitati a piattaforme windows è così limitante ? e se a uno interessano prprio quelle qual'è lo strumento + adatto ?
e ancora
Originariamente inviato da maxithron
Io non la vedo così, semplicemente è un linguaggio che ha degli scopi ben precisi come altri linguaggi ne hanno altri. Resto sempre dell'opinione che per quanto mi riguarda non esiste "Il Linguaggio". Come spesso anche tu dici, i linguaggi sono semplici strumenti che sfruttiamo per determinati scopi. E, trattandosi di fini in base determinate richieste e caratteristiche, non può e non potrà mai esistere un linguaggio che li copra tutti.

sarebbe bello se tu potessi recuperare come dicevi uqella tabella comparativa per poter capire cosa è adatto a cosa.
il nodo è
1- x entrare nel mondo della programmazione da dove bisogna partire ?
2- per poter sviluppare applicazioni basaate su piaattaforme WIndows cosa pè meglio ?
3- cosa invece è meglio x sviluppi universalmente portabili ?
infine
Originariamente inviato da maxithron
Inoltre, linguaggi come il c ed il c++ ti abituano di più a scrivere codice avendo coscienza anche di come funziona l'hardware sottostante, e quindi a scrivere codice ottimizzato a secondo dei sistemi.
puoi chiarire meglio ?
scusate il lungo post spero che serva di spunto x conitnuare a discutere ancora , se vi va
ciao

madforthenet
27-01-2004, 20:53
ancora una cosa
per sviluppare qualche interfaccia grafica usare Visual C++ è così limitante sempre x via del fatto di giraare su piattaforme windows ?
cosa ne dite del fatto che secondo eWeek.com Microsoft sarebbe pronta a presentare un SO basato su Linux ? tutto sarebbe suffragato dal fatto che Microsoft ha pagato a SCO una licenza che è il primo passo dello sviluppo futuro( da io Programmo di febbraio )
ciao

cionci
27-01-2004, 21:16
Secondo me ha chiesto la licenza per qualcosa qui dentro: http://news.hwupgrade.it/11618.html

a2000
27-01-2004, 21:18
Originariamente inviato da xybercom
grazie per il carino :cool:
Che i giochi possano essere inutili potrei anche essere d'accordo, ma che Unix/Linux/Win siano programmi "ausiliari" temo di no :mc:


dal mio punto di vista un SO è ausiliario come il frigorifero.



comunque la grande diffusione del Fortran mi sembra dovuta più a ragioni storiche che a reali qualità del linguaggio.
Un grosso punto di forza sono senz'altro le librerie numeriche molto estese e la fedele comunità di ricercatori che (troppo spesso) conoscono solo il Fortran.


no, no è che il Fortran è il linguaggio più vicino al linguaggio algebrico con cui vengono modellati matematicamente i fenomeni fisici.



Con però l'arrivo di librerie di calcolo numerico native e porting C++ le prospettive del Fortran le vedo dure; un altro punto che non lo rende poi appetibile alla comunità opensource (che è grande) è la mancanza (ancora oggi) di un compilatore free [se escludiamo f77].


è qui che si vede la differenza filosofica fondamentale tra un Fortraniano e un cplusplano :D : per uno che programma in Fortran adottare le librerie di calcolo numerico scritte da altri è come dichiarare che non sa programmare perchè il calcolo numerico è la programmazione.



Permettimi una battuta: spero che le sonde che sono adesso su marte non siano controllate da un programma fortran con interfaccia in Visual Basic :D
Buona programmazione

dagli esiti direi invece qualche scioftvar ausiliario in C++ esternalizzato a Finmatica :D

xybercom
27-01-2004, 21:21
Originariamente inviato da madforthenet
perchè dici che visual basic è limitante e malfatto, forse allergia daa Microsoft galoppante ? a parte le battute potresti spiegarti meglio anche quando parli di wx windows ? x C++ cosa consigliersti di usare : MInGW, Borlaand, Dev-C++ , o altro ?


Mi sembra di aver fatto commenti e osservazioni serie oltre a battute; comunque se devi fare interfacce per database il Visual Basic va bene, per cose "serie" (voglio dire progetti grandi, che richiedono performance e controllo completo del sistema) no e lo dimostrano le caratteristiche dei programmi scritti in questo linguaggio [Autocad in VB :D ? forse con un clock a 1000 GHz].
Il Visual Basic inoltre _fa_credere_ di saper programmare in quanto uno mette ad esempio due linee di codice ed ecco un bel bmp che appare su una finestra, la programmazione credo sia qualcos'altro.
E' vero che Microsoft non mi sta per niente simpatica comunque per il fatto che cerca di imporre agli sviluppatori i propri linguaggi e i propri standard.


il nodo è
1- x entrare nel mondo della programmazione da dove bisogna partire ?
2- per poter sviluppare applicazioni basaate su piaattaforme WIndows cosa pè meglio ?
3- cosa invece è meglio x sviluppi universalmente portabili ?
infine

puoi chiarire meglio ?
ciao

Per programmare in C++ consiglierei g++ in ambiente Linux e parlo seriamente. Per l'ambiente win consiglierei Dev-C++ (che si basa ancora su mingw) per passare poi a mingw quando uno ha un po' più di esperienza.
In ogni caso mingw (porting di gcc/g++ per win) è più lento di g++ sotto Linux ed anche di Visual Studio .NET [e la cosa non è molto sorprendente dato che le specifiche di Win le ha Microsoft]
Per wxWindows guardati il sito, la libreria è fatta bene.

Riconosco comunque che Visual Studio .NET è comodo, soprattutto per un principiante, quindi fatti i tuoi conti se val la pena di comprare una licenza.
Ciao

a2000
27-01-2004, 21:21
Originariamente inviato da madforthenet
ancora una cosa
per sviluppare qualche interfaccia grafica usare Visual C++ è così limitante sempre x via del fatto di giraare su piattaforme windows ?
...



ultimo grido per le interfacce grafiche è Visio, tutto programmabile in VBA :cool:

e vai con un filo di gas ...

madforthenet
27-01-2004, 21:24
Originariamente inviato da cionci
Secondo me ha chiesto la licenza per qualcosa qui dentro: http://news.hwupgrade.it/11618.html
la news mi era sfuggita , però in effetti potrebbe essere una manovra
posso chiederti una cosaa cosa su questo andando un po' OT:
quel pacchetto permetterebbe di gestire, e bisogna poi vedere come e su quali SO WIn , un server di rete NFS su windows senza software aggiuntivi tipo per collegare in rete macchine Unix e macchine windows senza mettere su Win software del tipo OMINI NFS Server, Maestro o Chamaleon oggi indispensabili ?
i controlli numerici sui quali lavoro, una parte, vedeno solo sever di rete NFS quidi come se fosse un sistema UNIX.
scusa l'OT
x la discussione principale cosa ne dici ?
ciao

xybercom
27-01-2004, 21:31
è qui che si vede la differenza filosofica fondamentale tra un Fortraniano e un cplusplano :D : per uno che programma in Fortran adottare le librerie di calcolo numerico scritte da altri è come dichiarare che non sa programmare perchè il calcolo numerico è la programmazione.


Fai come vuoi comunque io ne so qualcosa di calcolo numerico e la prima regola è di non reinventare quello che già esiste (e già ottimizzato per giunta).
Comunque spero x te che tu stia scherzando, cosa fai ? ti scrivi le librerie per lavorare con matrici sparse o fare trasformate di Fourier ?
Guarda che esistono blas,lapack,netlib e compagnia bella.
I programmi "seri" come li chiami tu comunque sono basati pesantemente su librerie.

Chiaramente se ti scrivi programmini da 50 linee di codice è diverso... come ho visto in qualche dipartimento di matematica dove dicono che insegnano a programmare.
Comunque come ti dicevo divertiti con il Fortran.

xybercom
27-01-2004, 21:33
Il parere di Eric Raymond sul VB:
"Visual Basic is especially awful. Like other Basics it's a poorly-designed language that will teach you bad programming habits."

cionci
27-01-2004, 21:37
Originariamente inviato da xybercom
Comunque spero x te che tu stia scherzando, cosa fai ? ti scrivi le librerie per lavorare con matrici sparse o fare trasformate di Fourier ?
Ma scherzi ? Forse non lo conosci... Lui se le fa davvero... Ha una notevole preparazione matematica...

madforthenet
27-01-2004, 21:39
scusa
la frase a parte le battute era riferita alla mia frase "forse allergia da Microsoft galoppante ?" non a quello che avevi detto che mi è parso interessante.
di applicazioni serie non c'è proprio niente in VB neanche con la versione .net ? forse tutto è allora indirizzato ad applicazioni x il Web, o anche lì VB è superato da altro ad es. il Java ?
il discorso era aprtito propriox un principiante che è mio figlio poi la cosa ha coinvolto anche me che sono diciamo un informatico mancato.
x Visual Studio la licenza ce l'ho già in versione education che è stata regalata da un amico che si doveva sdebitare con me e non sapeva come visto che io non volevo soldi e così avendomi sentito parlare di queste cose chiedendomi di mio figlio ha fatto un regalo a lui
e ti posso dire che mio figlio si sta già divertendo parecchio creto facendo cose molto piccole e semplici.
certo anch'io avevo avuto l'impressione che hai avuto anche tu

" Il Visual Basic inoltre _fa_credere_ di saper programmare in quanto uno mette ad esempio due linee di codice ed ecco un bel bmp che appare su una finestra, la programmazione credo sia qualcos'altro "
però se è uno strumento facile che può invogliare ad entrare e scoprire un mondo x me è positivo poi un domani vedrà lui, in fondo non ha ancora 15 anni e di tempo ne ha.
ciao

madforthenet
27-01-2004, 21:45
Originariamente inviato da a2000
ultimo grido per le interfacce grafiche è Visio, tutto programmabile in VBA :cool:

e vai con un filo di gas ...

dove lo trovo Visio ?
VBA= Visual Basic for Application ?
ciao

xybercom
27-01-2004, 21:45
Originariamente inviato da cionci
Ma scherzi ? Forse non lo conosci... Lui se le fa davvero... Ha una notevole preparazione matematica...
e spero anche che abbia mmolto tempo a disposizione per .. reinventare la ruota [sono cattivo lo so :D]

xybercom
27-01-2004, 21:52
Originariamente inviato da madforthenet
scusa
la frase a parte le battute era riferita alla mia frase "forse allergia da Microsoft galoppante ?" non a quello che avevi detto che mi è parso interessante.
di applicazioni serie non c'è proprio niente in VB neanche con la versione .net ? forse tutto è allora indirizzato ad applicazioni x il Web, o anche lì VB è superato da altro ad es. il Java ?
il discorso era aprtito propriox un principiante che è mio figlio poi la cosa ha coinvolto anche me che sono diciamo un informatico mancato.
x Visual Studio la licenza ce l'ho già in versione education che è stata regalata da un amico che si doveva sdebitare con me e non sapeva come visto che io non volevo soldi e così avendomi sentito parlare di queste cose chiedendomi di mio figlio ha fatto un regalo a lui
e ti posso dire che mio figlio si sta già divertendo parecchio creto facendo cose molto piccole e semplici.
certo anch'io avevo avuto l'impressione che hai avuto anche tu

" Il Visual Basic inoltre _fa_credere_ di saper programmare in quanto uno mette ad esempio due linee di codice ed ecco un bel bmp che appare su una finestra, la programmazione credo sia qualcos'altro "
però se è uno strumento facile che può invogliare ad entrare e scoprire un mondo x me è positivo poi un domani vedrà lui, in fondo non ha ancora 15 anni e di tempo ne ha.
ciao

Beh, l'importante è che si diverta alla fine.
In ogni caso il problema del visual basic è che quando finiscono le funzioni predefinite si cozza contro un muro e non c'è più niente da fare; comunque se ne accorgerà se ci smanetta abbastanza (ci sono passato anch'io per il VB parecchio tempo fa)
Rinnovo il consiglio sul Python comunque, magari per te.
Ah, Visio è un programma per il disegno ed è anche molto potente (forse è uno dei prodotti migliori di M$).
---aggiunta---
a scanso di equivoci Visio non è scritto in VB, forse però si può fare qualche "personalizzazione" con Visual Basic for Applications [ma non ne so niente]

Ciao

cionci
27-01-2004, 21:53
Originariamente inviato da xybercom
e spero anche che abbia mmolto tempo a disposizione per .. reinventare la ruota [sono cattivo lo so :D]
Chiedigli qualunque cosa di matematica, gemetria, algebra e calcolo numerico e lui in 5 minuti ti invierà un fogglio Excel, zippato in un file temp.zip, che contiene non solo la soluzione, ma anche una maschera con i colori dell'arcobaleno che ti salutano appena entri nel foglio Excel ;) :D

abxide
27-01-2004, 22:35
Originariamente inviato da cionci
Chiedigli qualunque cosa di matematica, gemetria, algebra e calcolo numerico e lui in 5 minuti ti invierà un fogglio Excel, zippato in un file temp.zip, che contiene non solo la soluzione, ma anche una maschera con i colori dell'arcobaleno che ti salutano appena entri nel foglio Excel ;) :D

:D

lexleo
27-01-2004, 22:37
Come sempre STRAQUOTO quello che dice xybercom ;)
sopratutto questo:
Originariamente inviato da xybercom
Comunque spero x te che tu stia scherzando, cosa fai ? ti scrivi le librerie per lavorare con matrici sparse o fare trasformate di Fourier ?
Guarda che esistono blas,lapack,netlib e compagnia bella.
I programmi "seri" come li chiami tu comunque sono basati pesantemente su librerie.

Le lapack le uso anche io e sono librerie che hanno dietro università e anni di ricerca...

madforthenet
27-01-2004, 22:38
beh raga in questo momento siete fuori dalle mie possibilità di comprensione.
abbiate pietà di me
comunque sono contento di avere acceso questo dibattito
continuate pure così anche se non capisco tutto
ciao

a2000
28-01-2004, 19:47
Originariamente inviato da cionci
Chiedigli qualunque cosa di matematica, gemetria, algebra e calcolo numerico e lui in 5 minuti ti invierà un fogglio Excel, zippato in un file temp.zip, che contiene non solo la soluzione, ma anche una maschera con i colori dell'arcobaleno che ti salutano appena entri nel foglio Excel ;) :D

troppo buono.

il potere come il tempo matura il vino buono e inacidisce quello cattivo.

a2000
28-01-2004, 19:51
Originariamente inviato da xybercom
e spero anche che abbia mmolto tempo a disposizione per .. reinventare la ruota [sono cattivo lo so :D]

a parte che la ruota l'abbiamo inventata a suo tempo noi ...
ricordati che quando voi cplusplani eravate ancora alle prese con include, malloc e ricerche binarie noi Fortraniani eravamo già froci :D :D

a2000
28-01-2004, 19:56
Originariamente inviato da xybercom
Beh, l'importante è che si diverta alla fine.
In ogni caso il problema del visual basic è che quando finiscono le funzioni predefinite si cozza contro un muro e non c'è più niente da fare; comunque se ne accorgerà se ci smanetta abbastanza (ci sono passato anch'io per il VB parecchio tempo fa)
...


Cioè ?

fai qualche esempio
certo che se vuoi andare a ravanare nello stack, o sulle porte, o sui pixel devi tornare a DOS-QuickBasic oppure utilizzare le API.

comunque anche io ritengo che VB sia moolto più oneroso da utilizzare di VBA.

a2000
28-01-2004, 20:00
ma poi sto "cozza" chi è ?

l'amica di c@zzo ? :D

a2000
28-01-2004, 20:15
comunque mattoperlarete da dove vuoi partire ?
per definizione dal Basic.

io sono partito in successione dal ....

Cobol
Fortran77
Assembler HP
Basic Commodore
QuickBasic
VisualBasic
Fortran90

il C mi sarebbe piaciuto se l'avessi scoperto al tempo (al posto :D) dell'AssembnlerHP ma quando l'ho trovato "popolato" dagli informatici ... ho evitato: sai una torta è buona anche in relazione ai commensali ...

xybercom
28-01-2004, 20:22
Originariamente inviato da lexleo
Come sempre STRAQUOTO quello che dice xybercom ;)

:) se eri vicino ti pagavo una birra!

Ho aggiunto la precisazione su Visio (cioè che non è scritto in VB, spero che nessuno comunque avesse frainteso..).
Comunque strano che nessuno si sia messo a difendere VB, forse bisognerebbe aprire il sondaggio "L'applicazione più importante scritta in VB ?"
A quanto mi ricordo forse qualche editor di registro di win [a parte le piccole applicazioni di nicchia che le ditte usano come interfaccia per i database].

lexleo
28-01-2004, 21:51
Originariamente inviato da xybercom
:) se eri vicino ti pagavo una birra!

Ho aggiunto la precisazione su Visio (cioè che non è scritto in VB, spero che nessuno comunque avesse frainteso..).
Comunque strano che nessuno si sia messo a difendere VB, forse bisognerebbe aprire il sondaggio "L'applicazione più importante scritta in VB ?"
A quanto mi ricordo forse qualche editor di registro di win [a parte le piccole applicazioni di nicchia che le ditte usano come interfaccia per i database].

e vai!!!
:cincin:
:ubriachi:

VB è diffuso solo perchè mamma micros@ft l'ha inserito in ogni buco..

madforthenet
28-01-2004, 21:53
Originariamente inviato da a2000
comunque mattoperlarete da dove vuoi partire ?
per definizione dal Basic.

io sono partito in successione dal ....

Cobol
Fortran77
Assembler HP
Basic Commodore
QuickBasic
VisualBasic
Fortran90

il C mi sarebbe piaciuto se l'avessi scoperto al tempo (al posto :D) dell'AssembnlerHP ma quando l'ho trovato "popolato" dagli informatici ... ho evitato: sai una torta è buona anche in relazione ai commensali ...
eccomi qua
dunque forse è meglio che faccia un passo indietro e dire ch tutto questo è nato da un inizio di interesse di mio figlio al primo anno di Istituto Tecnico x la programmazione venendo a contatto con studenti + grandi che giocano nella stessa società di basket in paese.
tutto ciò ha fatto rinascere in me un interesse x un mondo che a suo tempo 25 anni fa mi è stato negato e tralascio i motivi che alloar furono di scontro quasi politico studenti-scuola.
questp inizio di cammino di mio figlio dopo il regaalo come dicevo di Visual Studio .net 2003 educational , da parte di un amico, mi ha coinvolto in maniera definitiva e mi ha messo la voglia di entrare in questo mondo con umiltà e senza le pretese di diventare nessuno, a 44 anni conosco bene i miei limiti e so valutare le cose.
tutti qui e tanti fuori mi hanno consigliato il C++ anche se difficle da imparare, ma altri anche il VB e qui mio figlio sta muovendo piccoli passi e non credo giusto negargli questa possibilità mettendolo a conoscenza dei fatti di cui ora stiamo discutendo.
nè io x certe ragioni nè lui x questioni di età abbiamo in testa di progettare un nuovo sisetmaa operativo o chissà quale rivoluzionaria applicazione, ma di imparare x conoscere un mondo che forse + a mio figlio che a me sarà utile conoscere x il futuro.
quindi la mia partenza sarà dal C++ non disdegnando magari quaalche escursione in VB , lui invece parte dal VB essebndo ben al corrente di tutto quello di interesante che tutti voi mi dite e che io gli riferisco.
mi farà molto piacere se ci saranno altri post in risposta o altri suggerimenti o commenti
ciao

madforthenet
28-01-2004, 22:03
Originariamente inviato da lexleo
e vai!!!
:cincin:
:ubriachi:

VB è diffuso solo perchè mamma micros@ft l'ha inserito in ogni buco..

ma le cose stanno proprio così ?
il VB lo buttiamo nella spazzatura ? non serve proprio a niente ?
mi paicerebbe che qualcuno scedesse un po' + nello specifico delle caratterisctiche di ogni singolo linguaggio, almeno i + diffusi
sarebbe molto utile ad un principiante x capire bene le differenze
a questo proposito faccio un appello a
maxithron
SE HAI QUELLE TABELLE COMPARATIVE LE METTI IN UN POST ?
se qualcun altro ha ualcosa del genere va benissimo
ciao

a2000
29-01-2004, 15:32
VisualBasic è Basic e va benissimo per imparare, se hai delle fregole puristiche e didattiche puoi cominciare da un altro dialetto del Fortran che è il Pascal.

Quando poi devi dare da mangiare a codici di calcolo, elimini anche il VB perchè troppo involuto e usi VBA.

Questo almeno per chi usa il computer per fare calcoli ossia "fatti".
Per le "pugnette" non mi interesso ! :D

xybercom
29-01-2004, 20:35
Vorrei aggiungere un argomento che non è stato toccato prima.
Il C++ è un gran linguaggio ma non sempre è la scelta migliore.
In particolare se non ci sono richieste di velocità particolare ci sono casi in cui si può ricorrere a un linguaggio di livello più alto, tipicamente cioè a linguaggi di scripting.
La perdita di velocità di esecuzione è notevole (10/100 volte a seconda di quello che si fa) ma questo può non essere rilevante se il programma fa comunque cose molto semplici o se lo si deve utilizzare poche volte.
Questi linguaggi sono ad esempio: Perl (difficile!) / Ruby (poco diffuso) / Python (ormai parecchio diffuso anche per il calcolo numerico)
Ci sono poi linguaggi come Java e C# che si pongono in una posizione intermedia, permettendo di scrivere programmi in tempi più rapidi rispetto al C++ ma subendo perdite di prestazioni minori.
VB si pone come soluzione estrema; è facile da usare ma non si riescono a fare programmi neanche di media dimensione a causa della mancanza di una struttura logica interna (infatti i programmi sono imperniati sui bottoni e "widgets" vari che sono utili ma non possono essere il fulcro del programma).

Una nota infine sui linguaggi proprietari (come VB o C# che però non ho mai provato): questi linguaggi (mia opinione) sono intrinsecamente "brutti" in quanto si basano su specifiche imposte direttamente da M$, che in genere le cambia da versione a versione fregandosene della compatibilità. Inoltre non possono godere di contributi di debug/codice/suggerimenti/documentazione che arrivano invece dalle comunità che usano linguaggi non soggetti a copyright.

madforthenet
30-01-2004, 22:03
Originariamente inviato da a2000
VisualBasic è Basic e va benissimo per imparare, se hai delle fregole puristiche e didattiche puoi cominciare da un altro dialetto del Fortran che è il Pascal.

Quando poi devi dare da mangiare a codici di calcolo, elimini anche il VB perchè troppo involuto e usi VBA.

Questo almeno per chi usa il computer per fare calcoli ossia "fatti".
Per le "pugnette" non mi interesso ! :D

ecco proprio questo volevo dire !!!
mi fa piacere che lopensi anche tu.
perchè deminizzare un linguaggio che potrà anche non essere il migliore sulla piazza x la realizzazioni di programmi ed applicazioni di tipo professionale e non, ma che consente con facilità e divertimanto di entrare anche se non dalla porta principale nel meraviglioso , ma difficile mondo della programmazioen , m,agari anche divertentosi ? poi parlando con gente + esperta man mano che si va avanti ci si accorge dei propri progressi e magaris riesce a capire magari sperimentandolo che esistono dei linguaggi con cui ottenere in maniera + efficiente, veloce o stabile gli stessi programmi che uno ha scritto in VB
magari poi questo in un secondo tempo spinge ad imparare qualcosa di + e di diverso.
ciao

madforthenet
30-01-2004, 22:16
Originariamente inviato da a2000
Quando poi devi dare da mangiare a codici di calcolo, elimini anche il VB perchè troppo involuto e usi VBA.:D

Originariamente inviato da xybercom
VB si pone come soluzione estrema; è facile da usare ma non si riescono a fare programmi neanche di media dimensione a causa della mancanza di una struttura logica interna (infatti i programmi sono imperniati sui bottoni e "widgets" vari che sono utili ma non possono essere il fulcro del programma).


in effeti avevo avuto pur da principiante un'impressione: che questo essere fondato su programmi e finestre fosse un po' limitante e che anche per calcoli complessi non fosse il massimo
tutto ciò per una specie di istinto non certo x conscenza

ciao

a2000
31-01-2004, 09:37
è così madforthenet!
perchè complicarsi la vita ?
per cosa poi ?
per scrivere interfacce grafiche ?

Per un primo approccio alla programmazione poi il Basic è il più indicato.
Più avanti ti puoi mettere sotto le forche caudine e le ridondanze del Pascal.

come ho detto, fossero codici di calcolo, algoritmi numerici di controllo di apparecchiature ...
ma per le GUI VB basta e anzi è pure troppo sofisticato e quindi paradossalmente, ma non troppo, rudimentale: quello che è veramente sofisticato ed elegante è semplice: meglio il VBA.

E comunque il VisualBasic lo puoi usare anche come Basic puro senza Form, Controlli e altre graficherie e torna puro come quello del Commodore. :)


P.S.
Una strada interessante, per un ragazzo, che porta invece in direzione dei linguaggi sturmtruppen :D (C/C++, Java ecc) è quella di passare da un Assembler per microcontrollori (i nuovi ST7 per esempio): mooolto divertente.

misterx
31-01-2004, 09:50
Originariamente inviato da maxithron

Inoltre, se impari un linguaggio come Visual Basic, ed impari solo quello, la tua visione sarà sempre relativa soltanto a sistemi windows based, nel senso che non potrai mai sviluppare applicazioni che possano girare su sistemi diversi.



è un punto importantissimo quello che hai sottolineato

con VB imapri una tecnologia in quanto rimani legato ad un particolare ambiente di sviluppo

se impari "C" o "JAVA" dopo scrivi per quello e per chi vuoi in quanto trattasi di linguaggi VERI e molto più generali

se vuoi imparare la programmazione ad oggetti, che poi a parer mio altro non è che l'acquisire una mentalità di programmazione, sposo anch'io l'idea di partire da JAVA in quanto tale linguaggio di programmazione o programmi ad oggetti o no programmi affatto

lascia perdere FORTRAN(è solo un esempio) o amenità d'altro tipo; punta sul sicuro:)

a2000
31-01-2004, 09:55
misterx mi dispiace che sei depresso :(

forse è perchè programmi in C ? :D

misterx
31-01-2004, 10:18
Originariamente inviato da a2000
misterx mi dispiace che sei depresso :(

forse è perchè programmi in C ? :D


ultimamente uso solo java :)

a2000
31-01-2004, 11:25
se lo usassi, il Java VERO, non saresti così:
"ma ando hawaiii se la banana non ce l'hai bella hawaiana attecchete a sta' bananaaaa" :D

misterx
31-01-2004, 11:36
Originariamente inviato da a2000
se lo usassi, il Java VERO, non saresti così:
"ma ando hawaiii se la banana non ce l'hai bella hawaiana attecchete a sta' bananaaaa" :D


lo sto ancora studiando se è per questo :)

guyver
31-01-2004, 11:42
IMHO
per iniziare direi:
1) prima ti impari VB e di consegenza VBA
2) passi a Java
3) quando sei arrivato qua puoi decidere da solo se ti serve/vuoi impare altro es c++ fortran python flash ecc.

Vb è relativamente semplice da imparare da autodidatta per un utente medio va più che bene...considerando poi che quello che conta alla fine non è tanto in cosa sai programmare ma come lo fai
quello che conta è l'algoritmo...