Recentemente ho "ereditato" un progetto scritto in ASP.Net MVC che ha alcuni problemi
e sto cercando suggerimenti su come procedere per il refactoring del codice.
I problemi tecnici rilevati finora sono:
Tutta la logica aziendale è scritt...
Il mio team ha sviluppato un'applicazione web business da oltre un anno. È iniziato abbastanza piccolo, ma ora sta crescendo sempre più grande. Penso che sia tempo di refactoring.
Guardando il codice, vedo la seguente situazione:
IUserServ...
Usiamo Git come nostro DVCS e stiamo per iniziare a fare un clean up (mai fatto prima in questo team) di file che non sono necessari (non fanno parte delle fonti) dei nostri prodotti.
Questo avviene in due modi:
rimuovendo i file produc...
Sto refactoring un sistema di tracker delle spese utilizzando Object Calisthenics . Sono in grado di portare la mia classe a cinque attributi. Come posso andare avanti da qui?
Questa è la mia classe in questo momento.
public class Expense...
Considera il seguente scenario.
Al momento hai un set di funzioni A che desideri estendere per includere il set di funzioni B . Nella funzione vicina c'è un'alta possibilità che desideri estendere ulteriormente questo aspetto inclu...
In una base di codice sono "a partire da" ci sono una manciata di interfacce con molti metodi predefiniti. Sembrano qualcosa del genere:
public interface HasXY {
double getX();
double getY();
default double method1(double x, double y)...
Il mio primo tentativo a questa domanda era troppo teorico, quindi l'ho riscritto con il codice reale. Guarda la cronologia delle modifiche se ti interessa.
Supponendo questa logica, "sofferenza" dalla freccia anti-pattern :
/**
* F...
Non sono riuscito a trovare un singolo esempio sul modello di repository usando qualcos'altro di un database.
Il mio obiettivo è avere un repository globale statico che memorizza alcuni oggetti in memoria. Non voglio che sia un singleton...
Uno dei motivi principali per cui scrivere test di unità è assicurarsi che il codice si comporti ancora nello stesso modo dopo il refactoring. Tuttavia, se le interfacce cambiano durante il refactoring, anche i test devono essere aggiornati. Cam...
Ho avuto un ciclo attraverso l'oggetto Process , ciascuna istanza process può essere di un tipo diverso, derivata da Process classe base (ad esempio Process1 , Process2 , ...). Ogni tipo derivato di Process ha propriet...