|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#61 | |||||||||||||||||
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Quote:
Quote:
Quote:
).Comunque nemmeno io conosco tutti i linguaggi e le innovazioni che hanno introdotto. Non mi sento di definire come "innovazioni" la forzatura di alcune caratteristiche. Quindi delle cose che hai elencato salverei quelle che ho evidenziato. Non ho messo l'ereditarietà multipla tramite le interfacce perché ho il forte dubbio che fosse già stata proposta come modello alternativo alla classica ereditarietà singola e multipla. Da verificare (ho fatto qualche ricerca veloce, ma non ho trovato nulla purtroppo). Quote:
Comunque l'immutabilità dovrebbe un po' piacerti. Le stringhe in Java sono immutabili, e la trovo un'ottima cosa. In generale immutabilità e composizione di funzioni sono concetti che mi piacciono, e quando posso utilizzo (la composizione in Python la uso spesso tramite i decoratori di funzione; quelli di classe non ho avuto modo di applicarla perché in produzione abbiamo Python 2.5). Saranno le mie reminiscenze di Scheme e Prolog, che ho molto apprezzato all'università (non particolarmente la sintassi, al solito, ma i concetti sì). Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Da informatico i miei "padri spirituali" (per modo di dire, visto che sono ateo Quote:
Quote:
Quote:
Quote:
Hai parlato anche di cose semplici come scanf e printf, ma se dimentichi un & appiccicato al nome della variabile dovresti sapere che succede. Un disastro. E bug di questo tipo sono difficili da scoprire; ti fanno impazzire. Soprattutto sono bug specifici di un linguaggio povero come il C, e che ovviamente altri non hanno. Non è un caso che per parecchi anni alle scuole sia stato insegnato il BASIC o il Pascal. Oggi al MIT al corso introduttivo alla programmazione si usa Python. Bisognerebbe chiedersi il perché di queste scelte. P.S. Non è corretto affermare che la divisione per zero sia un errore, magari di distrazione. Può essere un comportamento voluto, e il risultato essere più o meno infinito, o un NaN. Quote:
__________________
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 |
|||||||||||||||||
|
|
|
|
|
#62 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Quote:
Se non e' chiaro, ti basta chiedere e ripetiamo tutto....
__________________
In God we trust; all others bring data |
|
|
|
|
|
|
#63 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
E un bug della madonna del genere in un linguaggio tra i piu' usati e' qualcosa di inconcepibile per me. Per quanto riguarda le inner class per me i delegate e le lambda function sono un deciso passo avanti.
__________________
|
|
|
|
|
|
|
#64 | |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Ti sembra veramente possibile che ci sia un bug del genere nelle librerie standard?
Cosa c'è scritto nella documentazione di Calendar.MONTH? Quote:
calendar.setLenient(false); calendar.setTime(2011, 3, 31); calendar.getTime(); Cosa ti dice adesso calendar?
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
|
|
|
|
|
|
#65 | ||
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
Quote:
La & io non la vedrei così negatva, potrebbe essere utile a capire la differenza tra il passaggio parametri per valore e per indirizzo, entrando anche nel concetti di allocazione della memoria che secondo me sono importanti. Si a volte è difficile beccarla una & dimenticata ma se appunto si usa il C++ solo come inizio i programmi scritti saranno al più programmi di massimo 300 linee o giù di lì trovare la & dimenticata non è così difficile. Alla fine in C++ su SW semplici gli errori possono essere - i ; - le & - mancate inizializzazioni - graffe fuori posto Altro non mi viene in mente... tra l'altro importando le librerie con un inizio di programma che può anche essere scritto senza capire perchè sia così si può avere un Codice:
printf("Hello World");
Codice:
System.out.printf("Hello World");
Codice:
System.out out = new System.out();
out.println("Hello World");
Molto più semplice da assimilare. E a maggior ragione uno Codice:
scanf("%i%i", &b, &b)
E' vero mi sono dimenticato dell'esistenza dei NaN Ultima modifica di birmarco : 10-05-2011 alle 12:50. |
||
|
|
|
|
|
#66 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quando si cerca in tutti i modi di salvare il passato perche' presente e futuro non piacciono piu', e' ora di estinugersi.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#67 |
|
Senior Member
Iscritto dal: Feb 2006
Messaggi: 1304
|
E' un peccato però che scanf sia ANSI C, non C++
Sembra una pignoleria ma è importanterrimo concettualmente. PS: se credi che C++ possa dare solo quegli errori su programmi semplici sei un sognatore A me è capitato qualsiasi cosa, da main non trovato a linking contro librerie sbagliate a errori aritmetici. Basta avere la giusta dose di sfortuna ![]() @everyone: che piaccia o no, l'informatica ha due basi opposte e altrettanto importanti. Una è la matematica pura e la logica, l'altra è il "gretto hardware", assembly, C, e tutte quelle robbacce sporche e cattive. L'unico modo per sapere veramente cosa si sta facendo è conoscerle tutte e due, e basta. Non esiste che in Python si ignori le architetture HW o al contrario che in C si ignori cos'è un'algoritmo... è solo stupido. Ultima modifica di Tommo : 10-05-2011 alle 13:12. |
|
|
|
|
|
#68 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
|
piú che altro...
mio padre quando avevo 8 anni mi mise davanti al QBasic incluso con il dos. se doveste fare qualcosa del genere con un vostro eventuale pargolo, cosa scegliereste? sottolineo il "8 anni" |
|
|
|
|
|
#69 | |||||||||
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
In 6 anni e mezzo di utilizzo di Python le applicazioni che ho scritto funzionano praticamente ovunque, da Windows a Linux & co., dagli x86 agli ARM, e ho smanettato perfino con la PSP (c'è un porting non ufficiale). Quote:
Nel caso di C & compagnia di medio-basso livello è praticamente indispensabile. In altri linguaggi (come Python, appunto), l'allocazione e relativa deallocazione della memoria è del tutto trasparente. Quote:
Quote:
Codice:
WriteLn('Hello, World');
Read(b, b);
Quote:
Quote:
Quote:
Quote:
__________________
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 |
|||||||||
|
|
|
|
|
#70 | |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Quote:
Quattro ceffoni e a letto senza cena, altro che programmazione! Educazione del fanciullo, dal manuale Costanzo-Endemol: 8 - 12: scuola calcio*/** 12 - 13: pranzo davanti al grande fratello 13 - 16: corso di tronista 16 - 16.15: merenda davanti al grande fratello 16.15 - 18: scuola calcio*/** 18-19: libertà 19-20: cena (privare se colto a leggere libri*** nella fase precedente) 20-21: un'ora di televisione commerciale 21: tre ave maria filippi e poi a letto *Sostituire con nuoto in caso di fanciulla. **In alternativa tennis, ambosessi ***Eclusi oggi, gente, chi, novella 2000 e assimilabili
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
|
|
|
|
|
|
#71 | |
|
Senior Member
Iscritto dal: Feb 2006
Messaggi: 1304
|
Quote:
Di certo hai idea di che cosa succede dietro le quinte e sai usare Python senza stressare i limiti della VM su cui gira, e di conseguenza evitare i limiti della macchina. Se uno non ha la più pallida idea di che cosa è pesante e che cosa no, non credo possa scrivere un'applicazione server, in nessun linguaggio
|
|
|
|
|
|
|
#72 | |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Quote:
l'assembly, il c, ecc.... sono sulla stessa falsariga di quelle nozioni di base, nozioni che piaccia o no è obbligatorio avere per comprendere fino in fondo il funzionamento di questa benedetta macchina che poi andremo a programmare in java, python, basic o come ci pare rimane però il fatto che la conoscenza delle basi permette di operare anche con linguaggi ad alto livello in maniera più cosciente e di realizzare ottimizzazioni che altrimenti sarebbero incomprensibili e giudicate superflue voglio dire, c'è gente che in assembly sceglie xor eax,eax invece di mov eax,0 perchè la prima impiega meno cicli di clock e questo è diretta conseguenza di come quelle due istruzioni sono implementate nel processore....conoscerlo ti permette di programmare meglio logicamente c'è il rovescio della medaglia e cioè la logica, l'algoritmo e quello è più un problema di impostazione mentale che di conoscenza tecnica e in questo caso è necessario sviluppare capacità logico/matematiche un linguaggio ad alto livello aiuta in questo senso e permette di ragionare in termini algoritmici senza prestare attenzione ai dettagli....personalmente ho cominciato dal basic ( come ho già scritto in un post precedente ) e quindi penso che sia una buona soluzione ma solo ed esclusivamente per farsi le ossa nel pensare da informatico, poi bisognerà volenti o nolenti scontrarsi con la macchina e i suoi dettagli |
|
|
|
|
|
|
#73 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Quote:
Secondo te questo pezzo di codice cosa fa? Compila? Se no, perché? Codice:
#include <iostream>
struct A { int a; };
int main() {
A var(A());
std::cout << var.a << std::endl;
return 0;
}
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
|
#74 | |||
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
- Variabili e tipi - Condizioni e iterazioni - Funzioni - Array - Strutture - Puntatori e liste con conseguente allocazione e pulitura della memoria - Scrittura/lettura di file semplici Sono le cose più semplici e utili a fare dei programmini di base come dei gestionali di un'ipotetica attività, se proprio non ci si vuole fermare all'odiosa area del quadrato. Si può pasticciare un po' con queste cose e al più decidere di andare anche oltre. Di problemi in queste cose direi che ce ne sono pochi, o meglio io non ho mai avuto problemi che non siano stati sviste mie nella scrittura del codice. Quote:
In C ho programmato per 3 anni alle superiori facendo davvero decine e decine di applicazioni sulle situazioni ipotetiche più assurde. Cmq il tutto era limitato al C base diciamo (poco più dei punti che ho elencato all'inizio di questo post) quindi di problemi non ne ho mai incontrati. Quando ho dovuto fare il corso di Java all'università è stato mio in poche ore, giusto il tempo di imparare i concetti della programmazione ad oggetti. E questo grazie a C. Secoli fa mi sono messo ad imparare da solo il VB .Net da un libro che avevo in casa sul Visual Basic 6.0 che tra l'altro non è nemmeno .net. Ed era un libro per superiori... lascio immaginare Quote:
|
|||
|
|
|
|
|
#75 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
iostream credo manchi di un .h, cmq non so cosa significhi la riga che inizia con std quindi e neanche A var(A()) l'ho mai visto, sembra tanto una dichiarazione di tipo A ma quel che viene dopo A non lo so identificare. Cmq questo o è una forma contratta che non ho mai visto oppure fa parte di un C che non è proprio quello base che si insegna per primo. Il mio "imparare il C" non voleva dire impararlo tutto, solo le basi basi per pasticciare sulla logica di programmazione |
|
|
|
|
|
|
#76 | |
|
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Quote:
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|
|
|
|
|
|
#77 | |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12919
|
Quote:
![]() Preferirei far fare ai ragazzi 10 corsi di algebra e logica (che non conoscono) piuttosto che iniziare il corso di laurea in informatica o ingegneria informatica parlando di transistor Volendo passare al lato oscuro (quello del formalismo integralista) per alcuni neanche bisognerebbe introdurre il concetto di ciclo senza aver dato prima il concetto di invariante ![]() Comunque preferirei che ci si concentrasse sulle tecniche per scrivere codice corretto, introducendo anche delle metodologie di testing (cosa che alla triennale si vede poco, o almeno per me è stato così). |
|
|
|
|
|
|
#78 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
|
|
|
|
|
|
|
#79 | |
|
Senior Member
Iscritto dal: Feb 2006
Messaggi: 1304
|
Quote:
Non è C, è C++. std è un namespace, cout è un'istanza statica di una classe e iostream sta bene senza la sua .h Io sinceramente lascerei stare discorsi su come insegnare agli altri se ancora non si è imparato... io smanetto in C/C++ da 6 anni e ancora imparo roba a vagonate. E' vero che all'inizio i risultati sono più rapidi, ma non ti offendere se ti dico che quello che hai imparato non è nemmeno l'inizio, ed è tutto tranne che utile
|
|
|
|
|
|
|
#80 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
proprio tra le parti che odio di più! |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:25.











).
.









