Ingegneria software

Domande e risposte per professionisti, accademici e studenti che lavorano nel ciclo di vita dello sviluppo di sistemi





2
Dove mettiamo il codice "chiedendo al mondo" quando separiamo il calcolo dagli effetti collaterali?
Secondo il principio di Separazione comando-query , oltre a Pensare nei dati e DDD con presentazioni Clojure, si dovrebbero separare gli effetti collaterali (modificando il mondo) da calcoli e decisioni, in modo che sia più facile capire e testare entrambe le parti. Questo lascia una domanda senza risposta: dove relativamente …

4
Implementazione di più interfacce generiche in Java
Ho bisogno di un'interfaccia che mi assicuri che sia disponibile un certo metodo, inclusa una firma specifica. Finora è quello che ho: public interface Mappable<M> { M mapTo(M mappableEntity); } Il problema sorge quando una classe dovrebbe essere mappabile su più altre entità. Il caso ideale sarebbe questo (non Java): …
10 java  generics 

1
Quanto beffardo è "giusto?"
Ho intitolato la domanda scherzosamente perché sono sicuro che "dipende", ma ho alcune domande specifiche. Lavorando in un software che ha molti profondi livelli di dipendenza, il mio team si è abituato a deridere in modo abbastanza esteso per separare ciascun modulo di codice dalle dipendenze sottostanti. Pertanto sono rimasto …



7
Entità nidificate e calcolo sulla proprietà dell'entità foglia - approccio SQL o NoSQL
Sto lavorando a un progetto di hobby chiamato Menu / Gestione ricette. Ecco come appaiono le mie entità e le loro relazioni. A Nutrientha proprietà CodeeValue An Ingredientha una collezione diNutrients A Recipeha una raccolta di Ingredientse occasionalmente può avere una raccolta di altrirecipes A Mealha una collezione di RecipeseIngredients …


12
"Se un metodo viene riutilizzato senza modifiche, inseriscilo in una classe base, altrimenti crea un'interfaccia" è una buona regola empirica?
Un mio collega ha escogitato una regola empirica per scegliere tra la creazione di una classe base o un'interfaccia. Lui dice: Immagina ogni nuovo metodo che stai per implementare. Per ognuno di questi, considera questo: questo metodo sarà implementato da più di una classe esattamente in questa forma, senza alcuna …


6
Punto e virgola opzionale
Molto spesso, in un linguaggio imperativo di uso generale, sono richiesti punti e virgola come delimitatori di istruzioni o completamente non consentiti (ad esempio C e Python). Tuttavia, alcune lingue, come JavaScript, ti consentono di rinunciare a delimitare le tue dichiarazioni con punti e virgola, a favore di altri delimitatori …


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.