Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Zenfone 11 Ultra: il flagship ASUS ritorna a essere un 'padellone'
Recensione Zenfone 11 Ultra: il flagship ASUS ritorna a essere un 'padellone'
Zenfone 11 Ultra ha tantissime qualità interessanti, fra cui potenza da vendere, un display di primissimo livello, un comparto audio potente e prestazioni di connettività fra le migliori della categoria. Manca però dell'esclusività del predecessore, che in un settore composto da "padelloni" si distingueva per le sue dimensioni compatte. Abbiamo provato il nuovo flagship ASUS, e in questa recensione vi raccontiamo com'è andata.
Appian: non solo low code. La missione è l’ottimizzazione dei processi con l'IA
Appian: non solo low code. La missione è l’ottimizzazione dei processi con l'IA
Abbiamo partecipato ad Appian World 2024, evento dedicato a partner e clienti che si è svolto recentemente nei pressi di Washington DC, vicino alla sede storica dell’azienda. Nel festeggiare il 25mo anniversario, Appian ha annunciato diverse novità in ambito intelligenza artificiale
Lenovo ThinkVision 3D 27, la steroscopia senza occhialini
Lenovo ThinkVision 3D 27, la steroscopia senza occhialini
Primo contatto con il monitor Lenovo ThinkVision 3D 27 che grazie a particolari accorgimenti tecnici riesce a ricreare l'illusione della spazialità tridimensionale senza che sia necessario utilizzare occhialini
Tutti gli articoli Tutte le news

Vai al Forum
Discussione Chiusa
 
Strumenti
Old 14-03-2006, 15:18   #81
mjordan
Bannato
 
L'Avatar di mjordan
 
Iscritto dal: Mar 2002
Città: Pescara - 未婚・恋人なし Moto: Honda CBR 1000 RR ‫Casco: XR1000 Diabolic 3
Messaggi: 27578
Quote:
Originariamente inviato da zappy
cosa è esattamente questo soft. development kit?
Software Development Kit (SDK) cioè Kit di Sviluppo Software. Per sviluppare software c'è bisogno di diverse cose. Dei compilatori, della documentazione, un debugger, un editor piu' altre cosette. L'SDK ti fornisce appunto, questo. Tranne l'editor che in genere è una scelta personale.

Quote:
permette di costruire un programma che gira? o è solo documentazione?
Mette a disposizione stumenti che permettono di costruire un programma dal codice sorgente (compilatore), scovare e correggere errori (debugger) piu' altre cose. Quindi la risposta è si.

Quote:
che differenza c'è con visual studio?
graz
Visual Studio è un editor, un ambiente visuale che mette a disposizione degli strumenti per la creazione del codice sorgente. Per funzionare, ha bisogno dell'SDK, sotto. Cioè di tutta quella serie di strumenti che costituiscono "l'ambiente di sviluppo". Visual Studio include già di suo l'SDK per .NET
Puoi considerare Visual Studio come l'editor (molto semplicemente) che mancava nell'SDK, che ti dicevo prima. Solo che in questo caso è l'editor che ti fornisce l'SDK

Ultima modifica di mjordan : 14-03-2006 alle 15:21.
mjordan è offline  
Old 14-03-2006, 16:53   #82
zappy
Senior Member
 
L'Avatar di zappy
 
Iscritto dal: Oct 2001
Messaggi: 19669
Quote:
Originariamente inviato da mjordan
Software Development Kit (SDK) cioè Kit di Sviluppo Software. Per sviluppare software c'è bisogno di diverse cose. Dei compilatori, della documentazione, un debugger, un editor piu' altre cosette. L'SDK ti fornisce appunto, questo. Tranne l'editor che in genere è una scelta personale.....
quindi in pratica da solo non serve... cioè a meno che il sorgente non lo scrivi col notepad, giusto?
mi pareva strano che ms fornisse gratis un pacchetto completo e funzionante
__________________
Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza (O.W.)
zappy è offline  
Old 14-03-2006, 17:22   #83
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da zappy
quindi in pratica da solo non serve... cioè a meno che il sorgente non lo scrivi col notepad, giusto?
mi pareva strano che ms fornisse gratis un pacchetto completo e funzionante
Se devi lavorare con C# "l'editor" di MS è gratuito ed è pure il milgiore.

ciao
VICIUS è offline  
Old 14-03-2006, 17:39   #84
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7061
Quote:
Originariamente inviato da VICIUS
Se devi lavorare con C# "l'editor" di MS è gratuito ed è pure il milgiore.

ciao
io l'anno scorso ho provato il borland C# builder personal edition (che è gratuito per scopi non commerciali).. ha qualcosa da invidiare a quello di MS? http://www.borland.com/downloads/dow...rpbuilder.html
k0nt3 è offline  
Old 14-03-2006, 17:56   #85
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
Quote:
Originariamente inviato da k0nt3
perchè l'oggetto è un concetto complesso!
niente affatto è banalmente semplice.


La programmazione orientata agli oggetti non è stata inventata banalmente per risolvere problemi complessi con soluzioni + facili, è stata inventata ma è + giusto dire "mutuata", perchè si avvicina maggiormente al nostro modo di ragionare.

Anzi è la trasposizione esatta di come funziona il nostro cervello, come ragioniamo:
- il mondo è un universo composto da oggetti ( ed è vero, perchè noi siamo circondati da oggetti, dalle particelle + piccole della materia, alle costruzioni come ponti, grattacieli che sono il risultato dell'assemblamento di tanti oggetti)
- gli oggetti, noi compresi, relazionano tra di loro scambiandosi dei messaggi ( nella vita reale usiamo i mezzi e le forme che preferiamo, nella programmazione si utilizza l'invocazione di metodi, ma il concetto è perfettamente identico)

E tutto questo è il frutto di discussioni durate decenni dai problemi che in realtà si sono posti per primi i filosofi greci, le idee, le relazioni che sussistono tra di esse, se alcuni concetti sono innati oppure no, se sono esterni o interni a noi...per certi versi trovo sia affascinante che nella realizzazione di una finestrella con un bottone in realtà si sia passati attraverso queste problematiche e queste fasi della storia dell'uomo

Quote:
non può essere trattato in prima istanza! fai conto che uno che inizia non sa nemmeno cosa sia un for o una variabile..
tanto meglio...meno ne sà e + facilmente può comprendere il paradigma OO

Quote:
e poi la programmazione OO contiene concetti di programmazione procedurale! è un'estensione che permette di costruire cose più complesse e vederle in maniera più semplice..
dato che l'obiettivo è quello di costruire cose + complicate e + funzionali perchè non partire direttamente dagli strumenti che ti permettono di farlo nel modo + semplice possibile?

Quote:
ma ci vuole già una base sotto, non si parte con gli oggetti dal nulla!
?

Perchè no?


Secondo me c'è un grosso errore/fraintendimento di fondo e cioè quello di considerare gli aspetti tecnici della OOP prima ancora dei fondamenti e dei ragionamenti che stanno dietro questa filosofia.

L'aspetto + importante e + difficile è proprio quello di capire la metodologia. ( che non ha nulla a che vedere con i cicli for e le varie iterazioni)
Gli aspetti tecnici sono secondari, esistono i datasheet, esistono mille risorse soprattutto al giorno d'oggi nella rete, ma se non si riesce a capire che cosa sta dietro l'utilizzo di una classe, la comunicazione tra i vari oggetti e via discorrendo, tutto il discorso viene a cadere.
Potrò fare magari qlc applicazione che funziona ma non avrò REALMENTE imparato a programmare.

Quote:
per python non me la sentirei di consigliarlo per iniziare.. ha un comportamento molto diverso dai linguaggi più comuni! e tra l'altro non ha una sintassi così bella da guardare quindi ci puoi fare programmi di dimensioni limitate sennò non si capisce più nulla IMHO
La sintassi di Python è secondo me una delle qualità migliori di questo linguaggio: estremamente pulito ed elegante ma assai versatile e potente con la possibilità di utilizzarlo sia come interpretato che compilato ( usando i vari JIT compiler che girano) con prestazioni migliori per es. di un linguaggio analogo come Java.

Non è così diffuso come la creatura della Sun ma lo scopo che si prefigge l'utente che ha chiesto delucidazioni è imparare.
E per farlo è necessario scegliere lo strumento che gli consenta di imparare al meglio ovvero quella di acquisire certe capacità di analisi e di problem solving che sn trasparenti al linguaggio utilizzato ed alla piattaforma utilizzata.
E Python può essere una delle scelte + azzeccate secondo me...
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 14-03-2006, 18:20   #86
zappy
Senior Member
 
L'Avatar di zappy
 
Iscritto dal: Oct 2001
Messaggi: 19669
Quote:
Originariamente inviato da VICIUS
Se devi lavorare con C# "l'editor" di MS è gratuito ed è pure il milgiore.
ciao
ed è compreso nel SDK?
__________________
Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza (O.W.)
zappy è offline  
Old 14-03-2006, 18:26   #87
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
Quote:
Originariamente inviato da k0nt3
il C ha tutto ciò che serve per imparare.. anzi il PASCAL è meglio! purtroppo il PASCAL è meno C-like.. e questo è un punto a sfavore! se sai programmare in C e ti metti a imparare la programmazione a oggetti con java... è tutto come ti aspetti che sia! quello che hai imparato dal C non lo butti via, ma ci aggiungi quello che impari da java!
La programmazione è un pò come il maiale, non si butta via niente

Secondo me Pascal non è meglio...dipende sempre da cosa vuoi fare; fosse per me utilizzerei un linguaggio per ciascun tipo di programmazione ( procedurale, a oggetti, funzionale, logica...).
Chiaramente per non generare confusione conviene partire da uno solo e in questo caso scremando scremando io rimarrei con Java o Python ( forse Ruby...forse...un pò giovane però come linguaggio)

Quote:
eh!? vuoi dire che uno per iniziare oltre a imparare il linguaggio deve anche imparare a usare eclipse? non ci siamo.. si inizia sempre con il blocco note
Si inizia con gli strumenti + facili e che ti mettono nelle condizioni di lavorare meglio.
Ovvero non notepad, dato che non ha alcun funzionalità di suggerimento e di highlight syntax.

cmq ci sono tanti editor free da poter utilizzare

Quote:
anche, ma soprattutto il fatto che se non sai programmare a oggetti è troppo inutilmente complicato, e se non sai programmare in maniera procedurale... figurati a oggetti!
è proprio il contrario.

Una persona può non capire un ciclo ( dal pdv del ragionamento), ma sà perfettamente cosa significhi combinare degli oggetti tra di loro, riutilizzarne una parte ecc. ecc.
Lo fanno ogni giorno nella vita quotidiana.

Quote:
ps. dovresti convincere i professori delle varie università a insegnare Java prima del C
non li deve convincere lui, Java in molte università ha sostituito C come linguaggio utilizzato nel corso di programmazione.
Questo per 3 motivi sostanzialmente:
- è un linguaggio didattico ( nasconde certe problematiche tecniche e si concentra + sui paradigmi)
- è un linguaggio naturalmente orientato agli oggetti: il che significa che quando lo studente deve frequentare quel corso e capirne i principi ( anche solo per superare poi l'esame ) ha a disposizione il bagaglio culturale, l'esperienza acquisiti e la sintassi già imparata con Prog1

C resta di base perchè utilizzato soprattutto nel corso di Sistemi Operativi, ma con un'importanza + marginale e sarà sempre "peggio" in futuro.
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 14-03-2006, 18:27   #88
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7061
Quote:
Originariamente inviato da Galileo
niente affatto è banalmente semplice.


La programmazione orientata agli oggetti non è stata inventata banalmente per risolvere problemi complessi con soluzioni + facili, è stata inventata ma è + giusto dire "mutuata", perchè si avvicina maggiormente al nostro modo di ragionare.
cioè tu credi che la gente normale ragiona a oggetti? comunque è stata inventata banalmente per risolvere problemi complessi in maniera più semplice! ed è vero che si avvicina di più al nostro modo di ragionare, ma non può e non vuole essere il nostro modo di ragionare (un pò più complesso oggettivamente parlando )
Quote:
Originariamente inviato da Galileo
Anzi è la trasposizione esatta di come funziona il nostro cervello, come ragioniamo:
- il mondo è un universo composto da oggetti ( ed è vero, perchè noi siamo circondati da oggetti, dalle particelle + piccole della materia, alle costruzioni come ponti, grattacieli che sono il risultato dell'assemblamento di tanti oggetti)
- gli oggetti, noi compresi, relazionano tra di loro scambiandosi dei messaggi ( nella vita reale usiamo i mezzi e le forme che preferiamo, nella programmazione si utilizza l'invocazione di metodi, ma il concetto è perfettamente identico)
no
Quote:
Originariamente inviato da Galileo
E tutto questo è il frutto di discussioni durate decenni dai problemi che in realtà si sono posti per primi i filosofi greci, le idee, le relazioni che sussistono tra di esse, se alcuni concetti sono innati oppure no, se sono esterni o interni a noi...per certi versi trovo sia affascinante che nella realizzazione di una finestrella con un bottone in realtà si sia passati attraverso queste problematiche e queste fasi della storia dell'uomo
chissà perchè anche per la filosofia si parte dai greci e non dal '900

Quote:
Originariamente inviato da Galileo
tanto meglio...meno ne sà e + facilmente può comprendere il paradigma OO
no perchè il paradigma a oggetti comprende quello strutturale
Quote:
Originariamente inviato da Galileo
dato che l'obiettivo è quello di costruire cose + complicate e + funzionali perchè non partire direttamente dagli strumenti che ti permettono di farlo nel modo + semplice possibile?

?

Perchè no?
perchè prima di aver imparato non fai cose complicate e funzionali.. motivo per cui questo viene dopo
Quote:
Originariamente inviato da Galileo
Secondo me c'è un grosso errore/fraintendimento di fondo e cioè quello di considerare gli aspetti tecnici della OOP prima ancora dei fondamenti e dei ragionamenti che stanno dietro questa filosofia.
la parte filosofica è un'altra cosa.. allora io ti direi che il paradigma logico è il migliore perchè bla bla bla.. ma.. in pratica?
Quote:
Originariamente inviato da Galileo
L'aspetto + importante e + difficile è proprio quello di capire la metodologia. ( che non ha nulla a che vedere con i cicli for e le varie iterazioni)
Gli aspetti tecnici sono secondari, esistono i datasheet, esistono mille risorse soprattutto al giorno d'oggi nella rete, ma se non si riesce a capire che cosa sta dietro l'utilizzo di una classe, la comunicazione tra i vari oggetti e via discorrendo, tutto il discorso viene a cadere.
Potrò fare magari qlc applicazione che funziona ma non avrò REALMENTE imparato a programmare.
appunto.. quindi dove vedi semplicità? se vuoi fare cazzatine è semplice, ma capire è tutta un'altra cosa

Quote:
Originariamente inviato da Galileo
La sintassi di Python è secondo me una delle qualità migliori di questo linguaggio: estremamente pulito ed elegante ma assai versatile e potente con la possibilità di utilizzarlo sia come interpretato che compilato ( usando i vari JIT compiler che girano) con prestazioni migliori per es. di un linguaggio analogo come Java.
semplicemente java e python non sono pensati per le stesse esigenze.. non sono affatto intercambiabili
Quote:
Originariamente inviato da Galileo
Non è così diffuso come la creatura della Sun ma lo scopo che si prefigge l'utente che ha chiesto delucidazioni è imparare.
E per farlo è necessario scegliere lo strumento che gli consenta di imparare al meglio ovvero quella di acquisire certe capacità di analisi e di problem solving che sn trasparenti al linguaggio utilizzato ed alla piattaforma utilizzata.
E Python può essere una delle scelte + azzeccate secondo me...
nulla contro python.. ho solo detto la mia opinione! il modo di gestire le cose in quel linguaggio non è affatto banale però.. può creare problemi all'utente inesperto in certi casi
k0nt3 è offline  
Old 14-03-2006, 18:33   #89
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
Quote:
Originariamente inviato da mjordan
Quello non è un problema del C, fidati. Quello è un problema di chi gli sta davanti.
Tutte le API che trovi direttamente dentro Java esistono anche in C. E tutto ciò che è richiamabile da C lo è in C++ e viceversa.

Se poi uno si crede che scrive codice GUI con la libreria ANSI C è un'altro discorso. Meno male che algoritmi e strutture dati si fa ancora in C in molte facoltà italiane.
Di corsi di algoritmi ce ne sono tanti.

Il corso di Algoritmi e Strutture Dati ( quello per eccellenza, il tradizionale corso dove si imparano le varie strutture dati, gli algoritmi di ordinamento, alberi e via dicendo) non è nè in C, nè in Java, in nessun linguaggio.

O meglio, tutti e nessuno.
Perchè la teoria è trasparente rispetto al linguaggio e poi è l'insegnante che decide ( se sono previsti esercizi al calcolatore) quale sia il linguaggio utilizzato per implementare i vari algoritmi.
Tipicamente sarà il linguaggio imparato nel corso di programmazione1, per facilitare le cose ovviamente ( chiaramente è una scelta fatta a tavolino tra i vari docenti che impostano quel percorso universitario).
Ma la parte principale che è quella dedicata al problem solving e al ragionamento è neutra, tanto è vero che l'esame scritto così come i vari esercizi assegnati dal docente e la spiegazione dei vari algoritmi vengono tutti impostati con l'uso dello pseudocodice ( così come fà il Cormen tanto per citare un libro che conoscono in tanti).
Ed è l'approccio + corretto.
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 14-03-2006, 18:58   #90
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
Quote:
Originariamente inviato da k0nt3
cioè tu credi che la gente normale ragiona a oggetti?
non lo credo io, è così

Di sicuro non ragionano a suon di cicli


Quote:
comunque è stata inventata banalmente per risolvere problemi complessi in maniera più semplice!
non solo come ti ho detto...per andare nel dettaglio è stata creata per rendere il codice + facile da essere riutilizzato e manutenibile per es...
ed è vero che si avvicina di più al nostro modo di ragionare, ma non può e non vuole essere il nostro modo di ragionare (un pò più complesso oggettivamente parlando )

Quote:
no
no...cosa? argomenta o non si capisce il motivo del tuo dissenso

Quote:
chissà perchè anche per la filosofia si parte dai greci e non dal '900
perchè i filosofi del 900 e quelli che li hanno preceduti sono partiti nell'elaborazione delle loro tematiche dalla discussioni di problemi nati e portati alla luce dai filosofi greci.
Così come la storia, la filosofia è un processo sequenziale.


Se mi vuoi fare un parallelo sarcastico per dire che come iniziamo dai greci e non dal 900 così dovremmo iniziare dalla programmazione procedurale per poi passare a quella OO, non ci sei riuscito
Perchè è tutta un'altra cosa...

Quote:
no perchè il paradigma a oggetti comprende quello strutturale
non è esatto...dal pdv del ragionamento è completamente diverso anzi l'OOP rappresenta un superamento della programmazione procedurale.

In realtà l'OOP utilizza di fatto alcuni concetti e caratteristiche che derivano dalla programmazione procedurale come il concetto di classe che è l'evoluzione del TDA di memoria "settantiana" ( anni 70 )

Quote:
perchè prima di aver imparato non fai cose complicate e funzionali.. motivo per cui questo viene dopo
il rischio è quello di invece di imparare a fare cose semplici, quello di fossilizzarsi su un metodo di ragionamento e problem solving che non è + quello migliore.
E dover fare tabula rasa purtroppo nel nostro caso non è così semplice, dato che non siamo dei computer

Quote:
la parte filosofica è un'altra cosa.. allora io ti direi che il paradigma logico è il migliore perchè bla bla bla.. ma.. in pratica?
la parte filosofica è tutto...ed è il motivo per cui Tigershark e tutti i programmatori che hanno cominciato con la programmazione procedurale e poi per esigenze varie hanno dovuto abbandonarla ( almeno principalmente) per passare alla metodologia OO, hanno sputato pallini.

Quote:
appunto.. quindi dove vedi semplicità? se vuoi fare cazzatine è semplice, ma capire è tutta un'altra cosa
Eh beh ma capire è sempre difficile, che razza di annotazione è scusa...

Per me non ha senso imparare e fossilizzarsi su di un metodo per poi disimparare quanto acquisito e dover reiniziare praticamente da 0.
Tanto vale partire col piede giusto.

Quote:
semplicemente java e python non sono pensati per le stesse esigenze.. non sono affatto intercambiabili
e dov'è che ho scritto che sono intercambiabili?

Ho detto che è analogo perchè ha delle caratteristiche che lo rendono analogo (l'essere interpretato, cross-platform, la possibilità di utilizzare dei JIT-Compiler...poi se vuoi vado avanti )
Ma non sono sempre uno il sostituto dell'altro...

Quote:
nulla contro python.. ho solo detto la mia opinione! il modo di gestire le cose in quel linguaggio non è affatto banale però.. può creare problemi all'utente inesperto in certi casi
Può essere...il discorso è quello però di fornire lo strumento migliore possibile per poter apprendere cosa sia la programmazione.

E cosa sia la programmazione non signfica imparare a programmare in Java o in C o in Perl.
Questo sembra scontato ma è un errore che purtroppo molte persone che insegnano ( non necessariamente docenti universitari) commettono...
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 14-03-2006, 19:49   #91
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7061
è troppo lungo risponderti a tutto.. comunque non ragioniamo a oggetti e la dimostrazione è che i ragionamenti umani non sono riproducibili con la programmazione a oggetti. ma devi sapere che capisco cosa intendi.. cioè una volta che uno ha la padronanza della programmazione a oggetti comincia a vedere oggetti ovunque, non il contrario
ma se vuoi guardare il nostro modo di ragionare assomiglia di più al paradigma logico, ma neppure quello è il nostro modo di ragionare.
mi spieghi per quale a me ignoto motivo uno dovrebbe ripartire da zero dopo aver imparato il C (o meglio il pascal)? sono pienamente daccordo sul non fossilizzarsi, mai detto il contrario! ritengo controproducente però iniziare dagli oggetti. anche perchè le lacune sul procedurale te le porteresti dietro e poi perchè la trattazione degli oggetti richiederebbe conoscenze abbastanza ampie che uno alle prime armi non ha (sempre che non ti vuoi limitare a fare due bottoncini dentro un form).

ps. mjordan fai questo tutorial sulla programmazione a oggetti in C
k0nt3 è offline  
Old 14-03-2006, 21:51   #92
Franziscko
 
Messaggi: n/a
Ciao ragazzi....questa discussione è INTERESSANTISSIMA...scusate se mi intrometto!!
Prima o poi avrei voluto anch'io aprire un 3ad del genere e vorrei intervenire per chiedervi qualcosa, premesso che non sono niubbo...
Nel lontano 1983 ho avuto il mio mitico ZX SPECTRUM, ed ho iniziato quindi col Basic, quando poi ho avuto il pc, sono passato al Quick Basic, poi ho iniziato col linguaggio più *elegante* (mi consenta il nome!!!) il Pascal, intanto dal Dos si è passati ai vari windows....e buonanotte!!

Secondo me, al nostro amico hanno consigliato il VB perchè, semplicemente, dobbiamo tutti ammettere che il basic è il linguaggio più semplice in assoluto, simile al ragionamento umano, ad alto livello, appunto, solo che ormai il basic è diventato....visuale! Siamo daccordissimo che è il più scadente, ma sicuramente è il più facile da apprendere, perchè anche scrivere For f=0 to 10, è bello sapere cosa fa, cioè, parliamo delle basi, è bello ed anche utile, o no? Ad esempio, chi non ha mai avuto a che fare col Dos, alcune volte con xp si trova in difficoltà.

Il rovescio della medaglia è che personalmente, non ci capisco niente con gli oggetti, ma quando ho iniziato io c'era il c e il pascal 5, oggetti nisba!
 
Old 14-03-2006, 23:35   #93
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da zappy
ed è compreso nel SDK?
No ma puoi sempre scaricarlo a parte dal sito.

ciao
VICIUS è offline  
Old 14-03-2006, 23:51   #94
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
Quote:
Originariamente inviato da k0nt3
è troppo lungo risponderti a tutto.. comunque non ragioniamo a oggetti e la dimostrazione è che i ragionamenti umani non sono riproducibili con la programmazione a oggetti.
dov'è questa dimostrazione?

Riformulo il mio pensiero: le relazioni tra noi e il mondo esterno così come il comunicare sono un modello ripreso nella programmazione a oggetti, in questo senso è un approccio tipico del nostro modo di ragionare; + che di ragionare avrei dovuto di relazionarsi.

Quote:
ma devi sapere che capisco cosa intendi..
da quel che hai appena scritto si capisce benissimo che non hai affatto capito...o magari che non vuoi capire

Quote:
cioè una volta che uno ha la padronanza della programmazione a oggetti comincia a vedere oggetti ovunque, non il contrario
sinceramente la tua battuta non mi fà ridere...

Quote:
mi spieghi per quale a me ignoto motivo uno dovrebbe ripartire da zero dopo aver imparato il C (o meglio il pascal)?
Intanto specifichiamo che ripartire da 0 (così nè nè nessun altro può inciampare e leggere volontariamente o involontariamente quello che non c'è scritto o quello che maggiormente gli fà comodo) significa abbandonare totalmente un approccio alla programmazione ( intesa sia come stesura del codice sia come analisi di un problema e formulazione di una o + soluzioni, quindi la realizzazione di un algoritmo, in parole povere...) per abbracciarne uno nuovo che praticamente nulla ha in comune, sia dal pdv tecnico, ma soprattutto dal pdv del ragionamento e della trattazione di un problema.

Detto questo, te lo dico subito il perchè occorre ripartire da 0 e + in là con gli anni e con l'esperienza si và e + diventa difficile compiere questo passo ( e se leggi qls intervento di programmatori di una certa esperienza possono confermartelo oppure l'hanno fatto a suo tempo, da fek a cdimauro per citarne un paio che di "programmazione" campano): perchè per programmare decentemente ed essere produttivo ( il che vuol dire non buttare via del tempo, molto semplicemente) devi perdere tutte le abitudini, spesso brutte abitudini, che avevi imparato con la programmazione procedurale.

Un pò come quelli che passano dal C al C++ e siccome usano il C++ ( che per altro è un linguaggio ibrido dato che supporta vari tipi di metodologia...e non poteva essere altrimenti, essendo un superset del C) con un pò di incapsulamento, sono convinti di saper programmare ad oggetti.
Questo non è programmare ad oggetti ma soprattutto non è _ragionare_ con l'approccio OO.

Quote:
sono pienamente daccordo sul non fossilizzarsi, mai detto il contrario! ritengo controproducente però iniziare dagli oggetti. anche perchè le lacune sul procedurale te le porteresti dietro e poi perchè la trattazione degli oggetti richiederebbe conoscenze abbastanza ampie che uno alle prime armi non ha (sempre che non ti vuoi limitare a fare due bottoncini dentro un form).
se fosse per me inizierei da questo paradigma, perchè banalmente è quello + utilizzato ed il migliore nella stragrande maggioranza dei progetti e processi di creazione del SW.
Quindi iniziare subito dalla metodologia giusta sarebbe un grosso passo in avanti.
(e sempre fosse per me, questa è una provocazione, non utilizzerei nessuno dei linguaggi finora citati bensì Nebula, Eiffel o ancor meglio Smalltalk che ha a disposizione discreti strumenti per poter lavorare, un'ottima documentazione ed ancora una buona comunità di sviluppatori; in parole povere utilizzerei un linguaggio ad oggetti puro)

Quanto alle lacune che ci sarebbero nel non partire con la programmazione procedurale, beh sono facilmente colmabili perchè sono concetti abbastanza semplici e che possono essere trattati durante l'insegnamento dell'OOP.

Molto + difficile è insegnare un approccio, far sì che gli studenti imparino ad usare quello per poi dire "bene, quello che avete imparato è ok, ora però mettetelo da parte, pensate come se doveste iniziare da 0 ed impariamo a programmare e a pensare il programma in termini di oggetti".

E' come voler insegnare a giocare a calcio a stando con le mani appoggiate sul campo per poi insegnare a giocare a calcio "normalmente".
Non è un modo diverso di giocare, è proprio un altro sport.
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 14-03-2006, 23:54   #95
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da k0nt3
è troppo lungo risponderti a tutto.. comunque non ragioniamo a oggetti e la dimostrazione è che i ragionamenti umani non sono riproducibili con la programmazione a oggetti.
Mio padre ragiona ad oggetti quando vede la sua macchina vede una scatola di ferro che ha alcune caratteristiche come il colore della carrozzeria che possono essere ricondotti ai vari attributi di una classe. Quando vuole cambiare marcia usa frizioe e cambio che simile ad due chiamate ai metodi del oggetto macchina.

Quote:
Originariamente inviato da k0nt3
ps. mjordan fai questo tutorial sulla programmazione a oggetti in C
Sono mesi che ce lo ha promesso e ancora niente. Sono impaziente anche io

ciao
VICIUS è offline  
Old 15-03-2006, 00:03   #96
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
[quote=Franziscko]Ciao ragazzi....questa discussione è INTERESSANTISSIMA...scusate se mi intrometto!!
Prima o poi avrei voluto anch'io aprire un 3ad del genere e vorrei intervenire per chiedervi qualcosa, premesso che non sono niubbo...
Nel lontano 1983 ho avuto il mio mitico ZX SPECTRUM, ed ho iniziato quindi col Basic, quando poi ho avuto il pc, sono passato al Quick Basic, poi ho iniziato col linguaggio più *elegante* (mi consenta il nome!!!) il Pascal, intanto dal Dos si è passati ai vari windows....e buonanotte!!

Quote:
Secondo me, al nostro amico hanno consigliato il VB perchè, semplicemente, dobbiamo tutti ammettere che il basic è il linguaggio più semplice in assoluto,
io non sono affatto d'accordo...e se fosse come dici tu, dove insegnano a programmare, utilizzerebbero il Visual Basic.
Invece in nessuna università lo si fà ma nemmeno negli istituti tecnici o in altri ambienti...ti pongo la domanda: come mai?

Quote:
simile al ragionamento umano, ad alto livello,
bastasse l'essere ad alto livello, di linguaggi ce ne sarebbero un'infinità da poter essere definiti "facili"...così non è logicamente

Quote:
appunto, solo che ormai il basic è diventato....visuale!
c'è una differenza abissare tra il Basic e il VB.

Così come esiste tra VB ( l'ultimo cioè il 6) e la versione .NET


"magari" fosse solo l'essere "visuale"...

Quote:
Siamo daccordissimo che è il più scadente, ma sicuramente è il più facile da apprendere, perchè anche scrivere For f=0 to 10, è bello sapere cosa fa, cioè, parliamo delle basi, è bello ed anche utile, o no?
la programmazione iterativa, per quanto la sintassi possa cambiare, la si impara facilmente.

Per quale motivo quindi uno dovrebbe scegliere un linguaggio che per fare le cose + semplici, complica le cose, assai poco didattico, non portabile e chiuso ad una sola piattaforma con tutti gli svantaggi che ne derivano?


Scusa ma se io devo imparare a guidare, non scelgo una macchina da Formula1 ( che poi il paragone nemmeno regge perchè il VB non è la F1 dei linguaggi, ma cmq...), con 40mila comandi, sensibile, difficile da guidare.
Scelgo un'utilitaria e se poi vorrò da grande fare il pilota, passerò al limite alle macchine da corsa.
Ti pare?

Quote:
Ad esempio, chi non ha mai avuto a che fare col Dos, alcune volte con xp si trova in difficoltà.
Non si può sempre tornare al passato per poi proseguire col futuro.
Per fortuna esistono strumenti e ambienti in cui poter lavorare e produrre in minor tempo e con + efficienza e risultati di una volta.
XP ed i programmi terzi sono un'ottima palestra in cui potersi esercitare, non c'è alcun bisogno di conoscere DOS o la linea di comando in generale per imparare a programmare.

E per fortuna aggiungo io...

Quote:
Il rovescio della medaglia è che personalmente, non ci capisco niente con gli oggetti, ma quando ho iniziato io c'era il c e il pascal 5, oggetti nisba!
non ci capisci niente proprio per il discorso che facevo io, imparato un approccio e utilizzato magari per anni, scostarsene di botto e reimparare da 0 o quasi è molto difficile.

Però salvo casi eccezionali, saper costruire delle classi e farle comunicare tra di loro in modo che il programma funzioni è una richiesta minima ormai per coloro che vogliono fare non i programmatori mai semplici coders.

E' così, il mondo và avanti e tocca sempre aggiornarsi...chi resta indietro è perduto ^^
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 15-03-2006, 00:13   #97
Galileo
Member
 
Iscritto dal: Aug 2005
Messaggi: 199
comunque, senza divagare troppo, la questione non è partita come scegliere l'approccio giusto per imparare a programmare ( è un aspetto importante e io ho detto la mia).
La domanda iniziale è che linguaggio consigliare.

Io se dovessi consigliare un linguaggio, terrei conto di vari fattori, semplicità sintattica, facilità nel reperire gli strumenti giusti, portabilità o cmq diffusione del linguaggio, facilità di apprendimento, facilità nell'imparare a programmare, propensione alla metodologia ad oggetti.

E tutti questi fattori io li vedo in Java che preferirei a Python solo per un fatto di diffusione.
E' inutile dover insegnare ad uno che non sà NULLA della programmazione aspetti tecnici che complicano la vita e che distolgono il problema dalla testa di chi deve imparare; e cioè che il problema non è di natura tecnico, è meglio se faccio la dichiarazione della variabile subito con l'istanziazione oppure no ecc., quanto l'imparare a risolvere i problemi che ci si pone nel programmare.

E se posso rendere trasparenti parte degli aspetti tecnici e dei problemi che ne derivano, lo preferisco, ecco perchè le università privilegiano Java per esempio, ormai.
Non ci sono puntatori, non c'è la necessità di allocare e deallocare ogni volta le risorse ( ci pensa il Garbage Collector anche se occorre distinguere in alcuni casi), l'ereditarietà e il polimorfismo sn concetti insiti nel linguaggio e non aggiunti successivamente.

E via discorrendo...poi se uno vuole iniziare con C, niente di male, deve sapere però che prima o poi si scontrerà con un modo completamente diverso di approcciare i problemi della programmazione e prima lo farà meglio sarà per lui.


Finito


P.S.: cmq discussione interessante e sempre attuale direi Thx a tutti i partecipanti
__________________
I' ve seen things you people wouldn' t believe...
attackships on fire off the shoulder of Orion, and I' ve watched C-beams glitter in the dark near the Tannhauser gate. All those moments, will be lost, in time, lke tears in the rain...
Galileo è offline  
Old 15-03-2006, 00:26   #98
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Galileo, grazie per aver citato i filosofi greci. Credevo di essere l'unico rimasto a ricordare e approfondire la relazione esistente tra la prospettiva orientata agli oggetti e la filosofia classica.

C'è anche un aneddoto riguardo alla nascita dei linguaggi "orientati agli oggetti". Lo racconto perchè, oltre a sembrarmi divertente, può essere utile a chi deva affrontare un volume sui linguaggi tipo C++, Python, Java, Squeak eccetera.

E' trito e ritrito il fatto che il primo linguaggio di programmazione orientato agli oggetti sia stato Simula. Furono tal Nygaard e un certo Dhal a crearlo e che per questo vinsero un Turing a testa.

Lo scopo era quello di semplificare la vita a chi dovesse eseguire delle simulazioni attraverso un calcolatore (da cui, con grande fantasia, il nome Simula). Per i due Nostri, si trattava si simulazioni riguardanti l'arricchimento di barre di uranio per una centrale nucleare sperimentale o roba del genere.

Sappiamo, dalla voce dei due, che la prima cosa che fecero fu cercare di capire perchè le simulazioni in ALGOL erano "complicate". Stabilirono che ALGOL permetteva di descrivere i fenomeni da un punto di vista che era più vicino a quello del calcolatore che non a quello del uomo che programmava.

Come giustamente afferma Galileo, la soluzione che trovarono per semplificare la scrittura di simulazione fu quella di automatizzare un cambio di prospettiva.

I calcolatori avevano allora e hanno ancora oggi una prospettiva che si basa su valori conservati in registri di memoria e operazioni su quei valori (lo dico basandomi sul libro di Hennessy-Patterson, io non progetto computer).

Loro (Dhal e Nygaard) sapevano della diversità tra questo modo di interpretare per comprendere i fenomeni e quello proprio degli esseri umani.

Ciò che scoprirono fu il modo di rappresentare un fenomeno secondo una prospettiva umana e lasciare che un compilatore si occupasse di tradurre questa rappresentazione secondo la prospettiva che avrebbe potuto usare e poteva comprendere un calcolatore.

Fondarono quindi, con Simula, quella che fu poi definita da Nygaard "prospettiva orientata agli oggetti": un modo umano di scrivere programmi.

Ora viene il passaggio cruciale.

Cosa sapevano Nygaard e Dhal circa il modo in cui l'uomo comprende i fenomeni (reali o immaginari) che osserva? Be', è ragionevole supporre che non ne sapessero più di quanto ne sapevano psicologi e neurologi sul finire degli anni '70.

Tutti i campi del sapere umano hanno, in certo periodo storico, una teoria dominante. La teoria dominante non è "vera": è solo quella più resistente alle critiche.

Capita allora che tra gli anni '60 e gli anni '70 la psicologia cognitiva stabilisse che l'uomo comprendesse il mondo attraverso l'applicazione di concetti le cui relazioni erano definite dalla teoria cosidetta "classica".

"classica" perchè apparentata con le categorie aristoteliche. La teoria classica stabiliva che i concetti usati dall'uomo per comprendere i fenomeni fossero intrecciata da relazioni di tipo gerarchico rapportanti le loro caratteristiche essenziali. Se B è sottoclasse di A allora B ha tutte le caratteristiche essenziali di A più altre caratteristiche definenti. Per ogni concetto esistono delle caratteristiche che lo distinguono in quanto appartenente ad un Tipo e non ad un altro e tali caratteristiche sono essenziali e immancabili. La specie è compatibile con il genere. E via dicendo.

Caspita, ma questa è proprio la programmazione orientata agli oggetti! Siamo a cavallo, scrivo come penso!

E allora perchè a tanti lascia l'amaro in bocca?

Ragazzi, notizia dell'ultima ora: non siamo più nel 1970

Nell'anno del signore 2006, i cognitivisti dibattono accanitamente sulla natura della "prospettiva umana". C'è un solo punto fermo e penso che l'abbiate sulla punta della lingua: di tutte le teorie possibili, quella "classica" è la peggiore immaginabile.

A quanto pare ci si accapiglia su altre tre: teoria dei prototipi, teoria degli esemplari e teoria dei concetti dipendenti dalle teoria.

E' un problema mica da ridere. Apri un libro che abbia qualcosa a che fare con l'orientamento agli oggetti in informatica e la prima frase cade come un pugno sul tavolo "gerarchia, genere a specie, ereditarietà, ereditarietà, ereditarietà!!!".

Probabilmente la teoria classica continua ad appestarci perchè è molto schematica: ha le gambe, una seduta e lo schienale, cascasse il mondo questa è una sedia.

La migliore scienza ed esperienza del nostro momento storico, ci dice che la faccenda è, come rileva k0nt3, più magmatica: ci sono sedie che sono più "sedia" di altre sedie. Caratteri non essenziali che definiscono categorie essenziali secondo il contesto. E oggetti che non hanno nulla in comune, salvo il fatto che sono compresi come in rapporto di genere a specie.

Così programmiamo usando strumenti che ci offrono una visione delle cose che non è nè la nostra nè quella della macchina a cui parliamo.

Ben si comprende perchè qualcuno ancora parli al proprio computer in C: il 50% dei dialoganti comprende quel che si dice .

Il mio consiglio a chi si appresti ad imparare è: se scegliete un linguaggio "OO", siate pronti a mettere in discussione le "verità" che vi offre un libro. C'è una sorta di peccato originale nella programmazione orientata agli oggetti di cui non tutti vogliono dar conto. E se qualcosa vi appare strano, c'è caso che lo sia veramente

Ultima modifica di PGI-Bis : 15-03-2006 alle 00:29. Motivo: ci voleva uno "smile"
PGI-Bis è offline  
Old 15-03-2006, 06:50   #99
mjordan
Bannato
 
L'Avatar di mjordan
 
Iscritto dal: Mar 2002
Città: Pescara - 未婚・恋人なし Moto: Honda CBR 1000 RR ‫Casco: XR1000 Diabolic 3
Messaggi: 27578
Cavoli, ho risposto a delle questioni su un SDK e si è scatenato l'inferno qui dentro...

Quote:
Originariamente inviato da zappy
quindi in pratica da solo non serve... cioè a meno che il sorgente non lo scrivi col notepad, giusto?
mi pareva strano che ms fornisse gratis un pacchetto completo e funzionante
Microsoft fornisce l'intero Visual Studio gratuitamente in versione Express (che include anche l'SDK per .NET e i compilatori per il codice nativo. Leggi il thread in rilievo a riguardo.
E' proprio vero che i thread in rilievo non li legge mai nessuno

Quote:
Originariamente inviato da k0nt3
ps. mjordan fai questo tutorial sulla programmazione a oggetti in C
Faccio il possibile, questo periodo sono impicciatissimo, mi hanno chiamato pure per un lavoro... Comunque sei solo tu interessato a quanto pare.

Quote:
Originariamente inviato da VICIUS
Sono mesi che ce lo ha promesso e ancora niente. Sono impaziente anche io
Mesi, l'ho detto poco tempo fa!

Comunque un tutorial del genere non è semplice da scrivere, nel senso che i concetti in genere per chi legge un tutorial come questo sono già noti, quindi bisogna andare subito al sodo. Siccome si tratta di fare OO in C, il sodo significa scrivere del codice di supporto. La parte difficile è mantenere il codice "piccolo" laddove tende a diventare "grande". Soprattutto si tratta di scrivere un piccolo "sdk" per i concetti successivi. Quindi è l'inizio che è molto complicato poi il resto viene da se.

Comunque mi avete dato un incipit.

P.S.: Premetto che non ho letto i discorsi fatti sull'OO dopo la mia risposta sull'SDK. Sono le 7:51 e sto ancora col cervello annebbiato dal sonno.
mjordan è offline  
Old 15-03-2006, 10:25   #100
Franziscko
 
Messaggi: n/a
Quote:
Originariamente inviato da Galileo
c'è una differenza abissare tra il Basic e il VB.

Così come esiste tra VB ( l'ultimo cioè il 6) e la versione .NET

"magari" fosse solo l'essere "visuale"...
E' così, il mondo và avanti e tocca sempre aggiornarsi...chi resta indietro è perduto ^^
Confesso la mia ignoranza totale, io credevo che il VB come Delphi fosse solo Basic o Pascal + oggetti, e *visual* perchè è per windows....

cmq se potessi tornare indietro, comincerei col Pascal per buttarmi subito poi col C/C++.
 
 Discussione Chiusa


Recensione Zenfone 11 Ultra: il flagship ASUS ritorna a essere un 'padellone' Recensione Zenfone 11 Ultra: il flagship ASUS ri...
Appian: non solo low code. La missione è l’ottimizzazione dei processi con l'IA Appian: non solo low code. La missione è ...
Lenovo ThinkVision 3D 27, la steroscopia senza occhialini Lenovo ThinkVision 3D 27, la steroscopia senza o...
La Formula E può correre su un tracciato vero? Reportage da Misano con Jaguar TCS Racing La Formula E può correre su un tracciato ...
Lenovo LEGION e LOQ: due notebook diversi, stessa anima gaming Lenovo LEGION e LOQ: due notebook diversi, stess...
Sta per succedere! La prima gara a guida...
Parthenope: un nuovo RPG investigativo t...
Urbanista Malibu: ecco come va la cassa ...
Gas Station Simulator è costato 1...
AOC Graphic Pro U3, tre nuovi monitor pe...
Wacom Movink: per la prima volta il disp...
HPE Aruba presenta i nuovi access point ...
Lamborghini presenta Urus SE, prima vers...
Scuderia Ferrari e HP insieme: ufficiale...
Snapdragon X Plus, un nuovo SoC per i no...
L'iPad 10,9'' 64 GB è sceso a meno di 40...
Steam: basta ai furbetti dell'accesso an...
Motorola Edge 40 Neo con fotocamera da 5...
Arriva Kasperksy Next, la nuova gamma di...
Fallout, un successo senza fine: 1 milio...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 03:07.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Served by www2v