Il design e la descrizione di alto livello di un sistema software. Il design architettonico distilla i dettagli di implementazioni, algoritmi e rappresentazione dei dati per concentrarsi sull'interazione dei componenti della "scatola nera".
Supponiamo che ti venga chiesto in un'intervista "Come implementeresti la Ricerca Google?" Come risponderesti a una domanda del genere? Potrebbero esserci risorse là fuori che spiegano come vengono implementati alcuni pezzi di Google (BigTable, MapReduce, PageRank, ...), ma ciò non si adatta esattamente a un'intervista. Quale architettura generale useresti e …
L' architettura pulita suggerisce di consentire a un interattore del caso d'uso di chiamare l'implementazione effettiva del presentatore (che viene iniettato, a seguito del DIP) per gestire la risposta / visualizzazione. Tuttavia, vedo le persone implementare questa architettura, restituire i dati di output dall'interattatore e quindi lasciare che il controller …
In un team di sviluppo non agile uno sviluppatore principale generalmente : Imposta lo standard (codifica e altro) Ricerca nuove tecnologie per il team Imposta la direzione tecnica per la squadra Ha l'ultima parola sulle questioni Progetta l'architettura di un sistema Tuttavia, un team agile lavora diversamente: Un team agile …
Sono uno sviluppatore junior (circa 3 anni) e nel mio lavoro stiamo progettando un nuovo sistema. Il mio sviluppatore principale sarà l'architetto principale, tuttavia mi ha sfidato a provare a progettare il sistema da solo (in parallelo). Nel corso di alcune iterazioni di idee di brainstorming e di proposta di …
Di recente ho riscontrato un problema architettonico apparentemente banale. Nel mio codice avevo un semplice repository chiamato così (il codice è in C #): var user = /* create user somehow */; _userRepository.Add(user); /* do some other stuff*/ _userRepository.SaveChanges(); SaveChanges era un semplice wrapper che apporta modifiche al database: void …
Sto lavorando alla progettazione di un'API RESTful. Sappiamo di voler restituire JSON e XML per una determinata risorsa. Pensavo che avremmo fatto qualcosa del genere: GET /api/something?param1=value1 Accept: application/xml (or application/json) Tuttavia, qualcuno ha lanciato usando le estensioni per questo, in questo modo: GET /api/something.xml?parm1=value1 (or /api/something.json?param1=value1) Quali sono i …
Lavoro per una grande azienda (8000+ dipendenti) da quasi 2 anni e sono stato assunto subito dopo aver finito il mio corso di studio. Tutti qui hanno a che fare quotidianamente con il codice legacy che è spesso mal progettato e pieno di hack. All'inizio, ho mantenuto un profilo basso, …
Sto cercando modelli architettonici per un'applicazione che sto sviluppando e un approccio al microservizio sembra che sarebbe una buona scelta ma non sono sicuro di come gestire le interazioni tra i servizi. L'applicazione si occupa principalmente di utenti, profili di proprietà di utenti, foto e tag che rappresentano uno o …
Quando si crea un'applicazione non banale, è meglio concentrarsi su come far funzionare le cose rapidamente e prendere scorciatoie nel codice come mescolare la logica del modello con le proprie viste, rompere l'incapsulamento - odori tipici del codice? Oppure, stai meglio prendendo il tempo in anticipo per costruire più architettura, …
Lavoro in un progetto che utilizza (Spring) Dependency Injection per letteralmente tutto ciò che è una dipendenza di una classe. Siamo a un punto in cui il file di configurazione di Spring è cresciuto a circa 4000 righe. Non molto tempo fa ho visto uno dei discorsi di zio Bob …
Il più delle volte, conservo la configurazione dell'applicazione di sviluppo nella directory principale del progetto, in questo modo: app |-- config.json Ma questo non sembra essere l'approccio migliore, dal momento che questa configurazione finisce per essere memorizzata nel sistema di controllo della versione, con possibili nomi utente, password e altre …
Secondo la documentazione Microsoft, l'articolo del principio SOLID di Wikipedia o la maggior parte degli architetti IT, dobbiamo garantire che ogni classe abbia una sola responsabilità. Vorrei sapere perché, perché se tutti sembrano essere d'accordo con questa regola nessuno sembra essere d'accordo sui motivi di questa regola. Alcuni citano una …
Ho usato per creare molte classi / metodi astratti. Quindi ho iniziato a utilizzare le interfacce. Ora non sono sicuro che le interfacce non rendano obsolete le classi astratte. Hai bisogno di una lezione completamente astratta? Crea invece un'interfaccia. Hai bisogno di una classe astratta con qualche implementazione? Crea un'interfaccia, …
Ci sono tonnellate di risorse sul web che fanno riferimento e elencano gli odori del codice. Tuttavia, non ho mai visto informazioni sugli odori dell'architettura . È definito da qualche parte ed è disponibile un elenco? Sono state fatte ricerche formali sui difetti dell'architettura e sul loro impatto sulla velocità …
Molte, molte lune fa, ho fatto i miei master in ingegneria del software orientata agli oggetti. Ho trattato di tutto: avvio del progetto, requisiti, analisi, progettazione, architettura, sviluppo, ecc. Ecc. Il mio libro IT preferito di tutti i tempi era lo sviluppo di software orientato agli oggetti, un approccio basato …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.