Ho alcuni valori e metodi da definire in un oggetto scala.
Non so in che ordine dovrei definirli. C'è un "buon modo" per farlo? Quali metodi privati prima quindi i metodi pubblici? Solo in ordine alfabetico?
Ho alcuni valori e metodi da definire in un oggetto scala.
Non so in che ordine dovrei definirli. C'è un "buon modo" per farlo? Quali metodi privati prima quindi i metodi pubblici? Solo in ordine alfabetico?
Non esiste una convenzione strong. Puoi valutare l'applicazione delle versioni precedenti di Java Coding Conventions a Scala, ma sono abbastanza vago. Raccomandano il seguente ordine di dichiarazioni con una classe o un'interfaccia:
Class ( static) variables. First the public class variables, then the protected, then package level (no access modifier), and then the private.
Instance variables. First public, then protected, then package level (no access modifier), and then private.
Constructors.
Methods These methods should be grouped by functionality rather than by scope or accessibility. For example, a private class method can be in between two public instance methods. The goal is to make reading and understanding the code easier.
Questo non si applica direttamente a Scala poiché utilizza oggetti complementari anziché variabili statiche e i campi sono indistinguibili dai metodi. Tuttavia, puoi sempre provare a mettere lo stato dell'oggetto prima e qualsiasi altro comportamento. La raccomandazione JCC di raggruppare per funzionalità piuttosto che per accesso o nome è buona: le cose che cambiano insieme dovrebbero essere vicine.
Leggi altre domande sui tag scala software-craftsmanship