|
|
|
![]() |
|
Strumenti |
![]() |
#21 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
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 |
||
![]() |
![]() |
![]() |
#22 | |
Senior Member
Iscritto dal: Feb 2008
Messaggi: 2808
|
Quote:
![]() anche se quando intendo programmare in asm intendo vermante programmare e non solo conoscere quei set comandi che ti servono nello specifico... ciau ![]()
__________________
Trattative concluse positivamente con: stefanonweb Toro_seduto luck78 montelli nick8640 peppe8600gt mr.jeeves sdedo71 gamecock $!/\/\o Pangasius ginepraio giorgioprimo pikerunner cicciopalla Il grande Blek spike_860 franzgranata Rebelderock ssamxx EFFERATUM monkey island ilgenerale djdisco_2 domax93 testasemidura Rospaccio bender8858 Pether vega05 domesda Shurpaul Stermy57 thinkfast Quagliarulo YuzaLaNuvola rtype davek3 Alzatan 4HwGenXX DAVO Wonderboy021067 |
|
![]() |
![]() |
![]() |
#23 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Per me programmare in assembly, come per qualunque altro linguaggio, significa risolvere i problemi che mi vengono sottoposti.
![]()
__________________
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 |
![]() |
![]() |
![]() |
#24 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Con Java in quanto linguaggio ci puoi scrivere (e si sta facendo) anche un sitema operativo (vedi JNode). Inoltre: un programmatore risolve problemi. Sono i problemi che deve risolvere e i requisiti che essi determinano per la soluzione a determinare il preciso livello di astrazione al quale il programmatore deve operare. E questo non ha niente a che vedere con la professionalità; sono solo ambiti diversi di competenze (e domini di conoscenza diversi). La professionalità di un programmatore si misura in base alla sua capacità di risolvere i problemi per i quali è richiesta la sua opera. Se i problemi che deve risolvere richiedono l'uso del linguaggio assembly e la conscenza minuziosa di una specifica architettura, bene, quello deve sapere; viceversa se i problemi da risolvere richiedono l'uso di un linguaggio di alto livello e la conoscenza minuziosa di alcune librerie, bene, quello deve sapere. A volte poi capita di avere bisogno di risolvere problemi che richiedono competenze "trasversali": bene, quelle competenze bisogna avere. Non si può ogni volta "assolutizzare": esistono diversi strati o livelli di astrazione dalla macchina nuda & cruda e diverse "brache" di sapere: inutile e privo di fondamento dire che un pezzo del quadro è più importante degli altri. Ciao ![]()
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 01-10-2009 alle 08:31. |
|
![]() |
![]() |
![]() |
#25 | |
Senior Member
Iscritto dal: Feb 2008
Messaggi: 2808
|
Quote:
ciao ![]()
__________________
Trattative concluse positivamente con: stefanonweb Toro_seduto luck78 montelli nick8640 peppe8600gt mr.jeeves sdedo71 gamecock $!/\/\o Pangasius ginepraio giorgioprimo pikerunner cicciopalla Il grande Blek spike_860 franzgranata Rebelderock ssamxx EFFERATUM monkey island ilgenerale djdisco_2 domax93 testasemidura Rospaccio bender8858 Pether vega05 domesda Shurpaul Stermy57 thinkfast Quagliarulo YuzaLaNuvola rtype davek3 Alzatan 4HwGenXX DAVO Wonderboy021067 |
|
![]() |
![]() |
![]() |
#26 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Io, personalmente, cerco di non banalizzare ne dare per scontato nulla, nei miei limiti. Per me l'attività di programmare, non è mai banale. Tra l'altro la conoscenza di un linguaggio è solo uno degli strumenti di conoscenza che entrano in ballo, in tale attività. Dunque, dal mio punto di vista, non è banale programmare ne in assembly, ne in C, ne in Java, ne in C#, ne in SmallTalk, ne in Delphi, ne in Eiffel, ne in Factor, ne in Haskell, ne in Lisp, ne in Ada, ne in Python, ne in.... credo si sia capito ![]() Proprio per il fatto che saper programmare non significa la mera conoscenza del linguaggio (anche se la presuppone).
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
![]() |
![]() |
![]() |
#27 |
Senior Member
Iscritto dal: Feb 2008
Messaggi: 2808
|
Si, vero... ma io personalmente reputo linguaggio e linguaggio... anche se sono orientati a sviluppi differeni (settori) di certo non posso dire che il c++ sia piu difficile del VHDL e di certo che il vhdl lo sia piu di un ASM... insomma analizzando in maniera oggettiva dal mio punto di vista ci sono linguaggi e linguaggi, e come tale ne esistono di più semplici e più complicati, e questo penso sia innegabile.
__________________
Trattative concluse positivamente con: stefanonweb Toro_seduto luck78 montelli nick8640 peppe8600gt mr.jeeves sdedo71 gamecock $!/\/\o Pangasius ginepraio giorgioprimo pikerunner cicciopalla Il grande Blek spike_860 franzgranata Rebelderock ssamxx EFFERATUM monkey island ilgenerale djdisco_2 domax93 testasemidura Rospaccio bender8858 Pether vega05 domesda Shurpaul Stermy57 thinkfast Quagliarulo YuzaLaNuvola rtype davek3 Alzatan 4HwGenXX DAVO Wonderboy021067 |
![]() |
![]() |
![]() |
#28 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Quello che dici ha un senso solo entro il limite determinato dal significato che tu attribuisci alla parola "semplice", e alla parola "complicato" nel contesto della tua affermazione. In ogni caso, anche ammettendo che un linguaggio X è più complicato (facciamo sia da imparare che a utilizzare, in genere) di un linguaggio Y, anche prendendo due diversi programmatori A e B, che devono tipicamente risolvere problemi appartenenti a diverse branche applicative, ognuna delle quali richiede di operare a un diverso livello di astrazione BASSO oppure ALTO, dove A conosce X e opera al livello BASSO e B conosce Y e opera al livello ALTO, ancora non possiamo dire nulla su chi dei due sia più professionale. Ovvero: non importa quanto è complicato il linguaggio che utilizza un certo programmatore: il solo fatto di utilizzarlo in ambito professionale (e quindi, presumibilmente, averlo padroneggiato) non ci dice nulla circa la sua professionalità in assoluto, e neppure relativamente ad altri programmatori che utilizzano linguaggi diversi. Potrebbe al massimo darci un'idea stereotipata, parziale e di massima circa la sua "forma mentis" nell'approcciare e risolvere un problema dalla sua prospettiva; potrebbe anche darci una vaga idea dei campi applicativi in cui più spesso è richiesta la sua opera. Tutto questo valutando le cose in modo "asettico"; cioè senza considerare che ogni programmatore ha invetibilmente dei gusti e delle inclinazioni particolari, e le sue idiosincrasie. E ricordandoci che stiamo solo pensando ai linguaggi, lasciando fuori tutto il resto (un'enormita' di roba). Ad esempio le concrete esperienze maturate in un certo dominio di problemi.
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 01-10-2009 alle 12:47. |
|
![]() |
![]() |
![]() |
#29 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Codice:
DB.PartnersSubAreas['id', 'name'].orderby['id desc'].limit[0, 5].List(partnerid = 1) Codice:
SELECT id, name FROM PartnersSubAreas WHERE (partnerid = %s) ORDER BY id desc LIMIT %s, %s Codice:
[1, 0, 5] Ti assicuro che non è affatto banale. E non sto lavorando in assembly. ![]() ![]()
__________________
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 |
||
![]() |
![]() |
![]() |
#30 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
|
|
![]() |
![]() |
![]() |
#31 | |
Senior Member
Iscritto dal: Feb 2008
Messaggi: 2808
|
Quote:
![]()
__________________
Trattative concluse positivamente con: stefanonweb Toro_seduto luck78 montelli nick8640 peppe8600gt mr.jeeves sdedo71 gamecock $!/\/\o Pangasius ginepraio giorgioprimo pikerunner cicciopalla Il grande Blek spike_860 franzgranata Rebelderock ssamxx EFFERATUM monkey island ilgenerale djdisco_2 domax93 testasemidura Rospaccio bender8858 Pether vega05 domesda Shurpaul Stermy57 thinkfast Quagliarulo YuzaLaNuvola rtype davek3 Alzatan 4HwGenXX DAVO Wonderboy021067 |
|
![]() |
![]() |
![]() |
#32 |
Senior Member
Iscritto dal: Feb 2008
Messaggi: 2808
|
fatto sta che tanto ognuno rimarrà della propria idea, com'è anche giuisto che sia.... io quel ke ho detto l'ho detto per esperienza personale...immagino e spero anche voi...
cmq son contento ugualmente di aver scambiato idee ed opinioni con voi, rimandendo però ferreo sulle mie (per ora)... kissà un dì potrei anche ricredermi e appoggiare le vostre tesi, ma per il momento no. Grazie ancora della chiacchierata ![]() ciao ![]()
__________________
Trattative concluse positivamente con: stefanonweb Toro_seduto luck78 montelli nick8640 peppe8600gt mr.jeeves sdedo71 gamecock $!/\/\o Pangasius ginepraio giorgioprimo pikerunner cicciopalla Il grande Blek spike_860 franzgranata Rebelderock ssamxx EFFERATUM monkey island ilgenerale djdisco_2 domax93 testasemidura Rospaccio bender8858 Pether vega05 domesda Shurpaul Stermy57 thinkfast Quagliarulo YuzaLaNuvola rtype davek3 Alzatan 4HwGenXX DAVO Wonderboy021067 |
![]() |
![]() |
![]() |
#33 | |
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 |
|
![]() |
![]() |
![]() |
#34 | |||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Francamente no, e nemmeno ci pensavo.
In questi giorni ho finito un progetto, e mi sono messo a rifattorizzare il codice, e ho notato dei pattern precisi per quanto riguarda le classiche operazioni al database. E' capitato anche con tanti altri progetti, ma questa volta avevo un po' di tempo e cominciato a raggruppare il codice in funzioni, a parametrizzarle, ecc. Così sono arrivato a crearmi 4 funzioni abbastanza generali per coprire le classiche SELECT, INSERT, DELETE e UPDATE di SQL. Ma non mi bastava. Anche se il codice era molto più pulito e lineare, non mi sembrava "naturale". Così ho cominciato a pensare come sarebbe stato comodo de dalla classe DB che usavo per crearmi la connessione al database, avessi potuto "estrarre" l'istanza di un'altra che rappresentasse l'entità tabella desiderata. E così via, da lì ho fatto diventare la classe DB una factory per la classe Entity che ho creato e che incapsulava tutte e 4 le operazioni SQL sopra citate. Non so, magari sono stato influenzato da LINQ a causa dei numerosi esempi che ho visto da parte di gugoXX e di Tigershark, e incosciamente sono stato portato a creare un modello simile. Simile, ma diverso, perché LINQ è un approccio alla manipolazione dei dati, mentre il mio voleva essere soltanto un metodo più naturale e semplice per gestire le 4 operazioni su DB. E infatti sto già pensando di farlo evolvere in modo da poter rappresentare condizioni molto più complesse per la parte WHERE, e magari aggiungere le operazioni di UNION, INTERSECT, le JOIN, e così via. Le potenzialità offerte dall'overloading degli operatori sono incredibili, e mi stanno facendo ammattire (nel senso buono). ![]() Quote:
Quote:
![]() Fermo restando che, basso o alto livello che sia, da buon programmatore ribadisco che m'interessa risolvere i problemi che mi vengono sottoposti. Quote:
Codice:
DB.formats(name = 'Pippo') *= {id = 1} Codice:
DB.formats[{'name' = 'Pippo'}] *= {id = 1} Comunque sarei molto interessato a sapere in che modo avresti pensato di implementarlo. Quindi quale sintassi sarebbe stata più comoda per te (se Python lo avesse permesso).
__________________
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 Ultima modifica di cdimauro : 01-10-2009 alle 19:15. |
|||
![]() |
![]() |
![]() |
#35 | |
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
LINQ ha parecchi flavour. Il primo, generalmente il piu' usato, anche qui sul forum, e' "LINQ to Object", ovvero il manipolare i dati gia' presenti nelle collezioni in memoria. Il secondo e' "LINQ to SQL", che fa proprio quello che stavi studiando, ovvero prendere una sequenza di istruzioni funzionali e trasformarla in una istruzione SQL da sottomettere al DB di turno. Che e' simile se non identico a quanto stai studiano. Ci sono poi "LINQ to XML" e "LINQ to Dataset". Relativamente a "LINQ to SQL" c'e' gia' stata un'evoluzione, sotto il nome di Entity Framework. Impagabile vedere trasformare cose come Codice:
var res = Persone.Where(persona => persona.Nome.StartsWith("Pippo")) .OrderBy(persona => persona.Cognome) .Select(persona=> new {persona.citta, persona.indirizzo}); Codice:
SELECT Citta,Indirizzo FROM Persone WHERE Nome LIKE 'pippo%' ORDER BY Cognome
__________________
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. Ultima modifica di gugoXX : 02-10-2009 alle 08:30. |
|
![]() |
![]() |
![]() |
#36 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Concordo: è una goduria.
![]() Ed effettivamente sono molto simili (d'altra parte queste soluzioni sono nate per risolvere gli stessi problemi). Io ho usato una notazione forse un po' troppo stringata, ma mi sembra che bene o male sia comprensibile. Ovviamente ogni suggerimento è il benvenuto. ![]()
__________________
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 |
![]() |
![]() |
![]() |
#37 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
marco.r, perché non ti spieghi? Guarda che non ti mangio mica!
![]() ![]()
__________________
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 |
![]() |
![]() |
![]() |
#38 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
![]() |
#39 | |
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 |
|
![]() |
![]() |
![]() |
#40 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Ma no, guarda: prenditi pure tutto il tempo che vuoi. E' già tanto se mi risponderai, e ti ringrazio anticipatamente per il disturbo.
![]()
__________________
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 |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:40.