Io e il mio collega stiamo lavorando su una nuova applicazione che dovrebbe sostituire al più presto una vecchia VB6 / Access 97 applicazione fatta anni fa. Questa applicazione ha molti problemi, la loro regolazione nello stesso ambiente è semplicemente impossibile.
Quello che stiamo cercando di fare è riscrivere tutto il codice in C# e MySql .
Fondamentalmente stiamo partendo da zero, le uniche cose che possiamo tenere dal vecchio progetto sono alcuni dati che abbiamo già migrato da Access a MySQL
La mia domanda è, dato che abbiamo un tempo limitato e stiamo imparando durante la codifica (nessuna esperienza passata in C #) quali sono le cose che dovremmo considerare da implementare e cosa dovremmo evitare per ora?
L'ambito dell'applicazione qui non è molto importante, solo alcune letture e scritte sul database.
Questo è ciò che stiamo già facendo nel nostro piccolo team di 2:
-
Controllo origine -
Git, non avevamo SC prima -
Monitoraggio dei bug -
FogBugznel nostro caso, siamo passati da Excel - Soluzione - Ora abbiamo 1 soluzione con 3 progetti all'interno, in VB6 c'erano 5 diversi progetti. 5 differenti .exe senza un vero motivo.
Questo è ciò di cui non siamo veramente sicuri vale la pena implementare il tempo:
-
Entity Framework - Sembra buono ma c'è una curva di apprendimento, dal momento che stiamo andando con
ADO.NET, piuttosto semplice. Pianificazione sull'utilizzo diDapperquando possibile poiché sembra davvero facile e veloce. -
Test unitario - Non abbiamo mai fatto test unitari prima, abbiamo iniziato con
NUnitma poiché la nostra applicazione non è altro che la scrittura e la lettura dei dati dal database non siamo sicuro come implementarlo. Provatomoqanche con gli stessi risultati. In questo caso pensiamo che il nostro modo di procedere sia semplicemente avere un dump del database e testarlo. -
WPF -
WPFsembra fantastico, ma anche qui c'è una curva di apprendimento. Abbiamo iniziato il nostro progetto inWinForms, il nostro obiettivo principale ora è avere un'app funzionale il più presto possibile e non carina. Questo è anche abbastanza importante per il futuro di questa applicazione perché per quello che ho capito che va daWinFormsaWPFè un grande passo e serve molto riscrittura. -
Rapporti abbiamo più di 100 rapporti da ricreare. Sono tutti realizzati in
CRXIutilizzando una tabella comeReport1_Printnel database con tutti i dati ripetuti su tutte le righe. Terribile. Non abbiamo ancora provato nulla, ma stiamo pianificando di utilizzareVisual Studio Report designer. -
Distribuzione 30-35 utenti lo useranno, dal momento che condividiamo il
.exeaggiornato dell'app vb6 sul nostro server e gli utenti lo scaricano con una.bat. Stiamo cercando qualcosa di un po 'più elegante qui ...
Con il tempo in mente, quale dovrebbe essere il nostro obiettivo principale? Non stiamo davvero cercando il modo migliore per fare le cose, stiamo cercando il modo migliore per ottenere il lavoro (un buon lavoro) fatto il prima possibile. L'attenzione qui è sugli utenti che al momento non possono lavorare in modo efficiente.