Di seguito una descrizione degli strumenti che utilizziamo per svolgere il nostro lavoro:
EditFramework web MVC
......
Edit
Si differenzia dal modo di sviluppo standard tramite WebForms perchè rafforza la separazione dei concetti.Solo il controller gestisce il flusso dell'applicazione, il model rappresenta i dati e la view si occupa solo di presentarli.Di conseguenza si scrive meno codice ed il risultato finale è un'applicazione più manutenibile.Anche se il progetto si chiama MonoRail, non ci sono legami con il progetto Mono. MonoRail gira sul on Microsoft .Net 1.1, 2.0 e Mono.
PRO:
- modello di sviluppo semplificato
- integrazione (opzionale) con activerecord
- possibilità di gestire html, css e javascript in maniera "corretta" (niente stili iniettati e js dentro la pagina)
- accesso ai framework html/js quali jquery ecc...
- Testabile (Nunit/MsTest/MbUnit)
- Separazione reale controller model e view
- Possibili eventuali porting verso altri modelli di presentation (WinForm, WPF …) con “poco” sforzo.
- Ci si prepara all’eventuale porting verso l’MVC di microsoft !!!
- Forum e i gruppi google per il supporto sono molto attivi
- Disponibile anche un supporto a pagamento
CONTRO:
- perdita del designer delle pagine di ASP.NET
- impossibilità di usare la marea di controlli ASP.NET disponibili
- Non molta documentazione al momento
- Curva di apprendimento delle risorse
Edit
Da qualche tempo a questa parte Microsoft ha reso noto che sta lavorando ad un progetto di implementazione del pattern MVC per
ASP.Net
Ad ogni non è ancora disponibile nessuna beta anche se bisogna dire che di questo framework si sa già molto perchè su vari blog di team manager e collaboratori Microsoft è già stato mostrato qualche esempio.
Lo strumento sembra promettere bene anche nella prima versione non dovrebbe esserci supporto per MS AJAX.
EditInversione di Controllo
C'è stato un grandissimo interesse nella comunità Java riguardo i lightweight container che permettono di assemblare componenti di differenti progetti dentro ad un'applicazione unica. Alla base di questi container c'è un pattern comune su come essi implementano il collegamento, un concetto espresso sotto il termine generico di "Inversione di Controllo".
Martin Fowler a riguardo ha scritto un'eccelente
articolo.
Per un confronto dettagliato (non ancora completo) delle funzionalità dei framework elencati vedere
IoC BenchmarkingEdit
è l'implementazione del pattern inversion of control (IoC) realizzata dal team castle grazie al quale lavora il noto framework Monorail per realizzare applicazioni web usando il pattern MVC.
Edit
è il porting in .Net di un lightweight container Java, che permette di implementare facilmente il pattern inversion of control (IoC) nelle nostre applicazioni .Net.
Edit
...
Edit
...
Edit
...
Edit
...
EditBuild Tool
Edit
NAnt è un tool gratuito basato su .NET ed ha molti vantaggi rispetto ad altri tool simili tanto da essere considerato IL tool. Innanzitutto NAnt è platform independent e puo' essere installato ed eseguito su qualunque sistema per cui esista un'implementazione di .NET. Inoltre invece di processare file di configurazione contenenti comandi basati sulla shell (che sono dipendenti dal sistema) NAnt processa file i cui comandi sono descritti in XML rendendo semplice il porting dei progetti su altri sistemi. Per la sua flessibilità è alla base degli strumenti di Continous Integration.
Edit
...
EditContinous Integration
Cos'è la Continous Integration....
Edit
è una suite di applicazioni ma il suo cuore è il servizio CruiseControl.NET che è un server per l'integrazione automatica. Il server monitora costantemente l'archivio dei sorgenti. Ogni volta che uno sviluppatore invia nuove modifiche, il server avvia una build automatica per validare le nuove modifiche.Al termine gli sviluppatori con un messaggio con l'esito della build.
Edit
può essere definito come una versione "customizzata" di CruiseControl.Net per neofiti. L'autore seguendo il paradigma "Convention over Configuration" propone una soluzione veloce per chi si vuole avvicinare facilmente alla Continous Integration.
Edit
......
Edit
....
Edit
....
EditSource control
In informatica, il controllo versione è la gestione di versioni multiple di un insieme di informazioni.
Viene usato prevalentemente nello sviluppo di progetti ingegneristici o informatici per gestire la continua evoluzione dei documenti digitali come il codice sorgente del software, i disegni tecnici, la documentazione testuale e altre informazioni importanti su cui può lavorare una squadra di persone. Le modifiche a questi documenti sono identificate incrementando un numero o un codice associato ad essi, denominato "numero di versione", "etichetta di versione", o semplicemente "versione", e sono etichettate con il nome della persona che ha apportato la modifica.
Una semplice forma di controllo versione, per esempio, assegna il numero 1 alla prima versione di un disegno. Quando viene apportata la prima modifica, il numero di versione passa a 2 e così via.
Gli strumenti software per il controllo versione sono sempre più riconosciuti essere necessari per la maggior parte dei progetti di sviluppo software.
Edit
Il Concurrent Versions System (CVS), conosciuto anche come Concurrent Versioning System, implementa un sistema di controllo versione: mantiene al corrente di tutto il lavoro e di tutti i cambiamenti in un insieme di file, tipicamente è l'implementazione di un software in via di sviluppo, in progetto, e permette a molti sviluppatori (potenzialmente distanti) di collaborare. CVS è divenuto popolare nel mondo del software libero ed è rilasciato sotto la GNU General Public License.
Edit
(noto anche come svn, che è il nome del suo client a riga di comando) è un sistema di controllo versione progettato specificamente per sostituire CVS, che è considerato avere troppe carenze.
Edit
è il sistema di controllo versione di Microsoft, il provider per l'utilizzo di tale SC è utilizzabile da tutti i prodotti Microsoft (visual Studio 6.0, Visual Studio 2003/2003/2005/2008) e sono anche disponibili plugin per IntelliJ Idea e
EclipseEdit
Meglio noto come TFS, L'ultimo nato di casa MicroSoft, consente di gestire l'intera LifeCycle dei progetti, dalla gestione dei requisiti all'assegnazione di Task al monitoraggio dei WorkItem su Portale Di Progetto sviluppato con Sharepoint Services. Mette a disposizione un Source Control Provider che permette policy di checkin customizzabili (ad esempio associare un checkin ad un workitem specifico), è disponibile anche una
Versione Web per l'accesso al server da macchine che non hanno visual studio installato.
EditTesting
Edit
Porting del popolare framework JUnit ...
Edit
...
Edit
...
Edit
Tra le caratteristiche principali c'è la possibilità di integrazione con TFS, pubblicare i test results e assegnare i workitem.
Edit
Mocking Framework ...
Edit
Mocking Objects ...
Edit
...
Edit
...
EditEvolutionary Databases - Design and Deployment
Meccanismo di update basato su script SQL:
Edit
...
Edit
...
Meccanismo di update basato su file XML:
Edit
...
Edit
...
Meccanismo di update basato su file di codice:
Edit
...
Edit
...
Edit
...
Edit
...
Edit
DbVerse offers .NET development teams an efficient and easy to use tool for database change management. It is primarily targeted at MS SQL Server environments.