Ho programmato la maggior parte del tempo in Java, C #, Python e AS3 e in tutti questi linguaggi ci sono pacchetti (o qualcosa del genere). Il problema che ho riscontrato è con la convenzione di denominazione, o anche con l'organizzazione dei pacchetti. Ho bisogno che qualcuno mi dica PERCHÉ questo è:
com.company.app.type.Object
o org.authorname.project.type.Object
meglio di questo:
app.feature.Object
o app.module.Object
Un altro esempio:
Perché questo:
com
+--company
+--app
+--events
| |--FeatureOneEventA
| |--FeatureOneEventB
| |--FeatureOneEventC
| |--FeatureTwoEventA
| |--FeatureTwoEventB
|
+--models
| |--FeatureOne
| |--FeatureTwo
|
+--services
|--FeatureOneServiceA
|--FeatureTwoServiceA
|--FeatureTwoServiceB
È "migliore" di questo:
company
+--app
+--feature
+--one
| |--Model
| |
| +--events
| | |--EventA
| | |--EventB
| | |--EventC
| |
| +--services
| |--ServiceA
|
+--two
|--Model
|
+--events
| |--EventA
| |--EventB
|
+--services
|--ServiceA
|--ServiceB
Nel primo tutto è organizzato da "tipi di oggetti", ma le "caratteristiche" sono tutte miste, ma nella seconda l'organizzazione è per "caratteristica" e ognuno ha i propri oggetti; quindi, puoi vedere una funzionalità ben separata da un'altra.
Quindi qualcuno può dirmi perché un sacco di aziende e programmatori preferiscono il primo?