#gio#


lo zibaldone di pensieri
Archivio Posts
Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

Anno 2005

L'inutile indispensabile

Questo post è ispirato dopo una lunga chiaccherata via msn con notini da cui è nato il suo post, era inevitabile il mio contropost.
Tutto è nato dalla discussione sul fatto che le tecnologie java e .net prossimamente si troveranno dappertutto in diversi dispositivi differenti anche dai pc stessi. Domandone: tutto questo è un male ed un bene?

Facciamo un passo indietro, e torniamo agli inizi quando si diffondevano i primi computer e con essi un linguaggio di programmazione che i più anziani hanno visto il linguaggio C oppure ansi C, in realtà poi esistono diversi dialetti di C e diversi compilatori e le cose sono peggiorate con C++  (preferisco chiamarlo C con classi) ed altre classi aggiuntive che venivano introdotte da varie case software (benedette Mfc) per farla breve comunque la peculiarità del C + sempre stata la velocità di esecuzione del codice, una gestione raffinata della memoria ed una attenzione particolare verso le prestazioni del sistema ed alle ottimizzazione delle risorse. Senza tediare con dettagli tecnici "il C dialogava con il ferro,con l'hardware sottostante".
Poi sono arrivati i linguaggi "managed" gestiti da un framework e da una macchina virtuale vedi java con la sua jvm , C# gestito dal CLR ed anche C++ managed insomma una nuova filosofia che stratifica l'applicazione inseririsce meccanismi di controllo sulla memoria con il garbage collector  ma contemporaneamente uccide le prestazioni del sistema.
Quì nasce il conflitto con Notini poiche vi sono queste due filosofie la sua rigorosamente "unmanaged" e la mia rigorosamente "Managed".
perchè usare codice managed (C#, C++ managed e VB.net)?
1) si ha una ampia libreria di classi data dal framework
2) lo sviluppo del programma è più veloce
3) la struttura del sistema è più stabile e sicura
4) grazie al fatto di lavorare managed non si deve più pensare a gestire puntatori ed ad ottimizzare la memoria
5) si lavora ad un livello di astrazione di livello più elevato
il lato negativo è la perdita di prestazioni che può essere compensata solo da un hw più potente.
Mi fermo qui e lascio ai veri dev la questione "è meglio usare codice managed oppure unmanaged" sperando che qualcuno possa sopperire alle lacune di questo post scritto da un non dev.

PS: una delle cose cose che mi ha dato più soddisfazioni è stato il porting di progdvb dal C++ a progdvb.net che ne ha permesso una migliore stabilità operativa ( rispetto alle prime versioni con .net è davvero migliorato in stabilità)

martedì, 29 lug 2008 Ore. 20.09
Statistiche
  • Views Home Page: 275.730
  • Views Posts: 1.017.704
  • Views Gallerie: 215.588
  • n° Posts: 701
  • n° Commenti: 545
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003