|
|
|
![]() |
|
Strumenti |
![]() |
#201 | |
Senior Member
Iscritto dal: Feb 2006
Messaggi: 1304
|
Quote:
![]() ![]() ![]() E' esattamente quello che pensavo anche io... d'altra parte è evidente che le conoscenze acquisite in latino NON sono trasferibili in qualsiasi altra lingua; non fosse altro perchè le frasi ti uscirebbero così arcaiche da essere ridicole. Se fosse vero che il latino "apre la mente", la stessa proposizione potrebbe valere che so, per il collezionismo di insetti, per il teatro, per gli scacchi, per Sim City, per fare la Settimana Enigmistica... ma non mi risulta che queste ultime si insegnino a scuola ![]() Io più che col C (che ancora non è del tutto lingua morta) ci vedo somiglianze con l'insegnamento dell'ASM su processori vecchi e strasorpassati, vero e proprio aramaico... la scusa è quella di insegnarti come funziona un pc, ma i pc moderni sono distantissimi da quel modello ormai... Se programmi un Core2 come un 386, è come guidare un BMW come una 500. Di quelle del 60. ![]() |
|
![]() |
![]() |
#202 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
#203 | |
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Quote:
Chiudo con una citazione di un grande: Premature optimization is the root of all evil. -- Orsetto Knuth |
|
![]() |
![]() |
#204 | |
Bannato
Iscritto dal: Mar 2008
Città: Villabate(PA)
Messaggi: 2515
|
Quote:
ho i suoi tre volumi e non vedo l'ora che escano anche gli altri due(forse, si legge nel suo sito, nel 2010). Ultima modifica di Vincenzo1968 : 12-08-2008 alle 17:10. |
|
![]() |
![]() |
#205 | |
Member
Iscritto dal: Aug 2005
Messaggi: 199
|
Quote:
Questa me la segno, dopo il K&R bibbia dell'Informatica ![]()
__________________
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... |
|
![]() |
![]() |
#206 | |
Member
Iscritto dal: Aug 2005
Messaggi: 199
|
Quote:
E poi che significa "un algoritmo è già implementato"? E' una delle strutture semantiche built-in nel linguaggio? Se non lo è non è implementato, se lo troviamo nelle librerie, allora vale per qualsiasi linguaggio discretamente diffuso. Oltre a questo, è una scemenza, perché il funzionamento di un algoritmo lo si può desumere qualunque sia lo strumento utilizzato per scriverlo, il che significa anche pseudocodice. Lo vogliamo implementare? Possiamo farlo con C, Java, C#, Python, Ruby, PHP ecc. ecc. Con una differenza: nei linguaggi ad alto livello ce ne freghiamo dei dettagli (puntatori per esempio) e andiamo alla sostanza, ovvero cosa fa un algoritmo e cosa funziona. Se anche i dinosauri universitari lo capissero sarebbe tutto più semplice
__________________
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... |
|
![]() |
![]() |
#207 | |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7237
|
Quote:
significa che è implementato nelle librerie standard |
|
![]() |
![]() |
#208 | |
Senior Member
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
|
Quote:
![]()
__________________
In a world without fences, who needs Gates? Power by: Fedora 8 - Mac OS X 10.4.11 |
|
![]() |
![]() |
#209 |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
|
|
![]() |
![]() |
#210 | |
Member
Iscritto dal: Aug 2005
Messaggi: 199
|
Con ogni probabilità non c'è scritto da nessuna parte. Si sta parlando delle modifiche che saranno apportate con Dolphin e ad oggi le più fondate sembrano le closures, il tentativo di rendere Java multilinguaggio, superpackage, una non ben precisata modularità e JavaFX.
Tutte novità per inciso, presenti da anni in altre tecnologie, a dimostrazione di quanto Java, da anni, non stia innovando, bensì rincorrendo i concorrenti. E in ogni caso non era questo il punto, il che rende la tua risposta superflua. La baggianata è che si possa usare il paradigma funzionale con Java; ad oggi non è possibile salvo tramite una particolare libreria, homebrew, che risulta più un accrocchio e non una funzionalità messa a disposizione del linguaggio. Quote:
Ovvero la contraddizione del ragionamento di dupa, che comunque non funzionava a priori, perché non è l'essere presente o meno in una libreria che facilita o rende più difficile l'operazione.
__________________
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... |
|
![]() |
![]() |
#211 | ||
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
|
Quote:
edit - pardon, due Quote:
|
||
![]() |
![]() |
#212 | ||||||||||
Member
Iscritto dal: Aug 2005
Messaggi: 199
|
Fin troppo ovvio
Quote:
Quindi questo inizio di ragionamento seghiamolo a priori, perché non stiamo dissertando sui piatti di una cucina. Quote:
Quote:
Banale, il che rende la tua annotazione superflua. Io non uso né C né C++ come strumento didattico o di lavoro e quindi dell'implicazione semplicemente me ne frego. Se poi invece, e arriviamo al secondo nodo, per te è fondamentale perché rientra nella cerchia di strumenti da conoscere, allora posso ribaltarti la questione e dirti che ci sono un'altra ventina di linguaggi che, in teoria, un informatico, dovrebbe conoscere a priori perché utilizzati. E quindi come la mettiamo? Includiamo anche questi in un corso di studio? Quote:
Quote:
Ed è quello che accade nella mafia delle università italiane (lo scrivo col minuscolo volutamente, perché in questo situazioni la capital letter non se la meritano neanche di striscio). Punto e stop. Se e quando capita ad uno studente neolaureato di trovarsi nella situazione di programmare macchine a calcolo numerico, PLC, dispositivi embedded vari, ALLORA si sposterà ad un livello logico più basso e cercherà di calarsi nel nuovo contesto, avendo comunque alle spalle solide nozioni di algoritmica e problem solving, che sono agnostiche rispetto alle tecnologie utilizzate. Quote:
Quella che i segmentation fault servissero per la formazione di un programmatore è stata davvero comica (ma sicuramente mi sarò perso qualche altra chicca in questi mesi ![]() Quote:
Quote:
In sostanza sono perfettamente inutili, creati per facilitare il passaggio degli sviluppatori C/C++ a C#; da quando esiste .NET non ho mai scritto mezza riga di codice unsafe. Quote:
Questi sono i problemi, le stupidaggini su cui i programmatori che non hanno ben chiara la metodologia utilizzata in un'azienda (e che probabilmente non hanno mai lavorato seriamente in un team) perdono tempo fossilizzandosi su dettagli di nulla importanza, ignorando invece le questioni serie ovvero come progettare il design di un'application enterprise, rendendola modulare e dividendo logicamente i layer della stessa. Quote:
__________________
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... |
||||||||||
![]() |
![]() |
#213 |
Member
Iscritto dal: Aug 2005
Messaggi: 199
|
si parlava dal punto di vista didattico.
Il fatto che sia incluso o meno nella libreria standard o in altre è ininfluente perché poi andrai ad implementarlo a mano, seguendo lo pseudocodice. Se però non ti devi concentrare su puntatori&co. puoi pensare direttamente al cosa fa l'algoritmo, qual'è la complessità e se è corretto, che poi è il succo del discorso del perché sia meglio utilizzare strumenti che rendono trasparenti dettagli implementativi concentrandosi sull'algoritmo necessario a risolvere X problema.
__________________
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... |
![]() |
![]() |
#214 |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
|
ah ho capito, siamo sul pippa mentis
![]() senti Galileo, chissà perché sto nome poi... ![]() ![]() oddio, 15:20 per modo di dire: per scrivere tutta quella roba minimo un'ora eh... ![]() ecco, prendi me per esempio: sono appena tornato da una bella nuotata in pisciuìna e di risponderti non mi va proprio, quindi scusami ma il post #216 non lo leggo neanche ![]() ciao ![]() |
![]() |
![]() |
#215 | |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7237
|
Quote:
quando ho detto che con ogni probabilità bisognerà aspettare java7 era sottointeso che _adesso_ java non supporta nessun costrutto del paradigma funzionale. per il fatto delle librerie standard non mi sembra di aver detto che le librerie del C non implementano l'ordinamento (infatto implementano quick sort), ho solo detto cosa significava quella frase visto che secondo me era possibile interpretarla solo in quella maniera. |
|
![]() |
![]() |
#216 | |||||||||||
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7237
|
Quote:
e io dovrei pure rispondere a uno che crede di essere dio? ![]() tanto per rimanere in tema ti faccio presente che C è utile nel mondo del lavoro "che ti piaccia o no" ho un conoscente che lavora alla Nokia Siemens e usa C tutti i santi giorni. non chiedermi perchè, ma sta di fatto che lo usano. Quote:
per la cronaca la definizione comunemente accettata di "programmatore" è: "persona che scrive software", e non "persona che risolve problemi" può sembrare una banalità, ma la seconda definizione non tiene conto del fatto che il programmatore ha a che fare con dei limiti imposti dagli strumenti che usa e che per forza di cose deve conoscere. Quote:
con strumenti non intendo linguaggi, altrimenti avrei detto linguaggi. non solo i linguaggi, ma anche il paradigma di programmazione è uno strumento, il software che uso per sviluppare sono strumenti, il computer stesso è uno strumento. ora siccome non ha senso imparare 2 milioni di linguaggi quando poi se ne useranno 2 o 3 in pratica.. è molto meglio insegnare i diversi paradigmi di programmazione usando qualche linguaggio rappresentativo per fare un pò di pratica. in tutto questo ci può stare benissimo C, Java, python e qualunque cosa che abbia un paradigma di programmazione. hanno tutti qualcosa da insegnare Quote:
per me è fondamentale sapere come funziona il computer come per un meccanico è fondamentale sapere come funziona il motore di una macchina. poi è ancora più importante sapere quando usare queste conoscenze e quando invece porsi a un livello di astrazione più elevato Quote:
è evidente che non stiamo a quel livello quindi altrimenti continueremo a sfornare gente che non ha capito il nulla più assoluto tipo questo http://mail.python.org/pipermail/pyt...er/234135.html e pure le risposte non sono tanto chiare, bastava dire: esiste solo il passaggio dei parametri per valore, non mi sembra complicato Quote:
Quote:
se c'è una cosa che ha scassato i maroni a tutta la sezione è chi sostiene python è il miglior linguaggio del mondo e probabilmente anche di saturno visto che io mi arrampico sugli specchi potresti sempre dimostrare che ho torto invece di arrampicarti sugli specchi a tua volta Quote:
Quote:
il codice unsafe è stato introdotto per rendere C# adeguato alla programmazione di sistema, non per facilitare il passaggio degli sviluppatori C/C++ come erroneamente credi. se non hai mai scritto mezza riga di codice unsafe significa che non ne hai avuto bisogno, non che è inutile. Quote:
Quote:
ecco è chiaro che tutti quelli che odiano così tanto il C è perchè devono essersi fossilizzati in qualche modo e ora lo maledicono. purtroppo però non può essere colpa del linguaggio, fatevene una ragione |
|||||||||||
![]() |
![]() |
#217 | |||
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
![]() Quote:
http://msdn.microsoft.com/en-us/libr...69(VS.71).aspx http://msdn.microsoft.com/en-us/libr...74(VS.71).aspx Quote:
non è importante conoscere i linguaggi, ma i paradigmi di programmazione, in questa maniera si ha sempre una visione d'insieme e si evita di fossilizzarsi. ecco è chiaro che tutti quelli che odiano così tanto il C è perchè devono essersi fossilizzati in qualche modo e ora lo maledicono. purtroppo però non può essere colpa del linguaggio, fatevene una ragione[/quote]
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|||
![]() |
![]() |
#218 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7237
|
|
![]() |
![]() |
#219 | ||||||||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() A questo punto usiamo pure il "tecnigrafo" e soltanto quando siamo "rodati" passeremo ad "AutoCAD". Usiamo il C "NUDO E CRUDO", quindi soltanto il linguaggio facendo a meno di TUTTA la libreria standard. Devo visualizzare qualcosa a video? La printf me la sviluppo io! Vuoi mettere il piacere di scriversi da zero qualunque cosa serva? E' così che s'impara, no? ![]() Tra l'altro ti faccio notare una cosa: http://en.wikipedia.org/wiki/Qsort_(C_Standard_Library) In the C standard library, qsort is a function used to sort elements in an array.Vaglielo a dire al K & R che NON bisogna fornire una routine di ordinamento di valori, perché fornendo la pappa pronta gli studenti verranno traviati e non capiranno come funziona un algoritmo di ordinamento. ![]() Quote:
Quote:
Anche con questi vincoli rimane un problema di fondo: perché si dovrebbe imparare il C, quando esistono altri linguaggi che permettono di utilizzare la programmazione strutturata e che sono decisamente "migliori" del C? Quote:
Quote:
Se vuoi li riuppo davvero, per me non c'è problema. Quote:
Quote:
Quote:
In C++ ci sono i reference, tanto per tirare in ballo uno dei SUPERSET più noti del C. In Pascal esistono i VAR da prima ancora che il C fosse concepito. Tutta roba che AIUTA A EVITARE BAG ROGNOSI come quello che ho riportato, e che è fra i più diffusi. Infine il fatto che i puntatori aiutino a imparare i reference è vero, ma NON è condizione necessaria: infatti in linguaggi come Java, Python, ma anche lo stesso C#... se ne fa benissimo a meno. Quote:
Quote:
Il fatto, poi, è che tu tendi a mischiare le due cose. Più precisamente, tendi a confondere queste cose: - la programmazione strutturata; - imparare a programmare; - il linguaggio C. Anzi, penso che subdolamente cerchi di far passare il messaggio che siccome il C esprime un paradigma strutturato, allora è un buon linguaggio e non vada buttato. Le tre cose di cui sopra, però, fanno caso a sé. Che la programmazione strutturata sia l'ideale per iniziare a programmare è AMPIAMENTE OPINABILE. Che il C sia un buon linguaggio di programmazione per la programmazione strutturata lo è ancor di più. Difatti non hai ancora portato UN solo vantaggio nell'usare il C per la programmazione strutturata. E quanto al primo punto, che per un essere umano sia più naturale la programmazione a oggetti è cosa ovvia. Com'è ovvio che quella strutturata sia più naturale per un calcolatore. Quote:
Quote:
E chiedi pure come mai nelle implementazioni "classiche" del calcolo del minimo albero di copertura di un grafo con l'algoritmo di Prim venga fatto uso di uno heap, anziché dell'heap di Fibonacci per ridurre la complessità computazionale. ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||||||||||||
![]() |
![]() |
#220 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Visto che i toni della discussione sono degenerati, mi vedo costretto a chiudere la discussione. Non voglio aspettare che vi cominciate ad offendere.
Ricordatevi una buona volta che c'è modo di discutere senza darsi addosso l'un l'altro. |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:14.