|
|
Aggregatore delle news
-
|
Tony Hoare è conosciuto per aver inventato l'algoritmo QuickSort e per i suoi contributi alla programmazione concorrente, su molti libri sono citati i Monitor di Hoare . Sono rimasto sorpreso di scoprire che questo bel pezzo di antiquariato :D - cioè...
|
-
|
Quand'è che un programmatore considera un codice sorgente "Legacy" ??? Quando e come quel codice è diventato Legacy ??? Visti i link, letti i commenti, l'idea che mi convince sempre di più è questa. Visto che non è una tecnologia superata a rendere un...
|
-
|
Quand'è che un programmatore considera un codice sorgente "Legacy" ??? Quando e come quel codice è diventato Legacy ??? Letti i commenti al post precedente faccio alcune riflessioni: - L'idea che il codice diventa legacy perchè impiega tecnologie superate...
|
-
|
Il software ha due caratteristiche davvero singolari che non ci sono negli oggetti comuni di tutti i giorni e nella maggior parte dei prodotti industriali. William Gibson in Mona Lisa overdrive sembra conoscerle bene, è così che Angie, 3Jane e Continuity...
|
-
|
Aggiorno e dettaglio un idea che avevo già accennato sulla progettazione di Web Service e di applicazioni che li utilizzano. Un Web Service può fornire un servizio: un risultato finito e fruibile come l'esito della ricerca delle citazioni di un dato articolo...
|
-
|
Il modo naturale di procedere per rimuovere il codice duplicato? procedere per tentativi facendo passi in avanti e ogni tanto passe indietro : ad ogni tentativo il disegno originale apparirà più chiariro e cosi il modo di procedere. Ad esempio tovato...
|
-
|
Quando è necessario modificare un metodo lungo centinaia o migliaia di righe di codice e modificare un comportamento esistente senza l'aiuto di un tool di refactoring conviene SCOMPORRE IL METODO ABNORME E METTERLO SOTTO TEST applicando delle tecniche...
|
-
|
Scrivere codice è una di quelle attività che funziona meglio senza interruzione invece che in multi-tasking Il codice risulta migliore e il lavoro richiede meno tempo Punto. Nel mondo reale può capitare che le cose cambiano senza preavviso (una data,...
|
-
|
Quando è necessario modificare un metodo lungo centinaia o migliaia di righe di codice e modificare un comportamento esistente conviene SCOMPORRE IL METODO ABNORME E METTERLO SOTTO TEST con l'aiuto di un tool di refactoring come Resharper . La strategia...
|
-
|
Sto parlando di modificare un metodo lungo centinaia o migliaia di righe di codice non coperte da test. Quando la modifica è UNA NUOVA FUNZIONALITA' DA AGGIUNGERE cioè che non modifica comportamenti esistenti il punto è quello di non peggiorare ancora...
|
-
|
Ecco un'altra cosa che richiede disciplina e faccio fatica a seguire - ma non mi arrendo : fare una cosa alla volta quando si scrive codice Per esempio devo modificare un metodo di un oggetto perché accetti un enum con 3 valori invece del booleano che...
|
-
|
Lavoro nel team di cui faccio parte da quasi 3 anni. Un tempo in cui lo stile di programmazione nel team si è evoluto migliorandosi. Cosi quando c'è uno sviluppo da fare mi trovo a lavorare di volta in volta su codice di qualità differenti, questo mi...
|
-
|
Rimuovere le duplicazioni nel codice raramente è una sequenza lineare di passi in avanti. Ci sono modi diversi di scegliere da quali duplicazioni cominciare, modi diversi di eliminare ogni duplicazione, e durante ogni eliminazione si possono evidenziare...
|
-
|
Scelta la duplicazione da rimuovere e i refactoring da usare capita anche che ci sono più alternative per rimuoverla e quindi bisogna scegliere il modo di rimuovere la duplicazione . Per fare un esempio, il metodo void C { a(); a(); X(); a(); X(); X();...
|
-
|
E' arrivato il momento di raccogliere il fattore comune del codice duplicato e unificarlo in un solo punto eliminando cosi le duplicazioni. Annoto alcune indicazioni da Working Effectively with legacy code di M.C.Feathers . Quando la duplicazione riguarda...
|
-
|
Trovate le duplicazioni il passo seguente è scegliere quale duplicazione rimuovere per prima : in basa alla scelta fatta il risultato finale, il codice e la sua struttura, saranno diversi. L'esperienza insegna di cominciare dalla duplicazione più piccola...
|
-
|
Il primo passo è quello di riconoscere il codice duplicato . Quando il codice è il cut-and-paste di un altro codice o di un metodo è abbastanza immediato riconoscerlo. Altre volte le duplicazioni sono piccole parti di codice riscritto uguale (una riga...
|
-
|
Quando capita di trovarsi con una classe troppo grossa (con 20-60 di metodi) probabilmente li ci sono troppe responsabilità, conviene individuarle e poi estrarle mettendole in nuove classi Ecco alcuni modi di individuare le responsabilità a partire dal...
|
-
|
Sun per Java e Microsoft per .NET hanno un framework esteso che soddisfa molte delle esigenze comuni nello sviluppo di software. E ci sono anche varie librerie di 3ze parti che capita di usare nelle proprie applicazioni. Questo può portare a realizzare...
|
-
|
Il materiale della 3rd European Summer School on Agile Programming riguardo Agile Loop , i Mini-Project, la sessioni sui Test di accettazione, un report dal campo sulla adizione dei metodi agili in azienda e la stima e pianificazione è qui: http://essap.dicom.uninsubria.it/pmwiki.php?n=Main.CourseMaterials...
|
-
|
proprio quando credevo di aver imparato tutto quello che c'è da sapere sulla programmazione scrivere proprio codice intendo, scopro che ce nè altrettanto ancora da imparare !!! un po come migliorare il tempo del giro in go-kart, per passare da 50'' a...
|
-
|
Negli ultimi mesi, complice anche la querelle "PI or not" portata alla luce da "vorrei ma non posso (ancora)" Entity Framework, ho ulteriormente riflettuto sul valore di un Domain Model agnostico alla persistenza ed ho concluso che PI non basta. Quello...
|
-
|
In questi giorni ho assistito al propagarsi di un tipo particolare di attacco verso siti web che sono vulnerabili alla SQL-Injection. Si tratta di un attacco che, sfruttando XSS (Cross Site Scripting), comporta l'attivazione di un malware nel computer...
|
-
|
Quando c'è da prendere una decisione che ha impatto sul lavoro del'utente il compito dello sviluppatore, del coach e del project manager è quello di lasciare scegliere l'utente (il product owner). Anche se nel team c'è un esperto di dominio che conosce...
|
-
|
Leggendo questa citazione di von Neumann ho ricordato quella di Parmenide e Eraclito « Non ci si può bagnare due volte nello stesso fiume, perché né l'uomo né le acque del fiume sono gli stessi » ( Eraclito , Battiato ) « E neppure è divisibile, perché...
|
|
|
|