Questions marquées «class-design»

Directives générales sur la façon de concevoir des classes avec les meilleures pratiques connues de l'industrie.

5
Comment décomposer un constructeur?
Disons que j'ai une classe Enemy, et le constructeur ressemblerait à quelque chose comme: public Enemy(String name, float width, float height, Vector2 position, float speed, int maxHp, int attackDamage, int defense... etc.){} Cela semble mauvais parce que le constructeur a tellement de paramètres, mais lorsque je crée une instance Enemy, …


7
Quelle est l'idée derrière le nommage des classes avec le suffixe «Info», par exemple: «SomeClass» et «SomeClassInfo»?
Je travaille dans un projet qui traite des périphériques physiques, et je ne sais pas comment nommer correctement certaines classes de ce projet. Étant donné que les appareils réels (capteurs et récepteurs) sont une chose et que leur représentation dans le logiciel en est une autre, je pense à nommer …

4
Pourquoi définir un objet Java à l'aide d'une interface (par exemple Map) plutôt que d'une implémentation (HashMap)
Dans la plupart des codes Java, je vois des gens déclarer des objets Java comme ceci: Map<String, String> hashMap = new HashMap<>(); List<String> list = new ArrayList<>(); au lieu de: HashMap<String, String> hashMap = new HashMap<>(); ArrayList<String> list = new ArrayList<>(); Pourquoi y a-t-il une préférence pour définir l'objet Java …







5
Les classes de base comme usines?
J'écrivais du code au cours du week-end et je me suis retrouvé à vouloir écrire une usine comme méthode statique dans une classe de base. Ma question est simplement de savoir s'il s'agit d'une approche ac # idomatique? Mon sentiment que cela pourrait ne pas provenir du fait que la …
14 c#  class-design 


2
Conception: méthode Object vs méthode de classe séparée qui prend Object comme paramètre?
Par exemple, est-il préférable de faire: Pdf pdf = new Pdf(); pdf.Print(); ou: Pdf pdf = new Pdf(); PdfPrinter printer = new PdfPrinter(); printer.Print(pdf); Un autre exemple: Country m = new Country("Mexico"); double ratio = m.GetDebtToGDPRatio(); ou: Country m = new Country("Mexico"); Country us = new Country("US"); DebtStatistics ds = …



En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.