Au cours de mes 15 années en tant que développeur, j'ai découvert que les fausses croyances sur la nature humaine sont les principaux ennemis d'une bonne décomposition . En les connaissant et en s'efforçant de ne pas tomber dans leur piÚge, au fil du temps, vous pourrez formuler des astuces pour créer une décomposition de qualité . Cela m'est arrivé et je m'empresse de partager ces connaissances.
Depuis plus de 5 ans, je travaille en tant que dĂ©veloppeur backend chez FunBox. Dans l'entreprise, nous pensons que les bons produits sont le rĂ©sultat d'une forte culture d'ingĂ©nierie et nous nous efforçons de mettre en pratique ce principe dans le dĂ©veloppement de solutions pour les opĂ©rateurs mobiles. Il a ses propres caractĂ©ristiques de la pile et des processus, mais il y a aussi des aspects universels qui sont applicables dans n'importe quel domaine. L'un d'eux est l'approche de la dĂ©composition . GrĂące Ă la nature du travail axĂ©e sur les produits et Ă la culture de l'ingĂ©nierie, j'ai pu acquĂ©rir une expĂ©rience et des connaissances que je ne peux m'empĂȘcher de partager.
Navigation dans l'article:
- De fausses croyances sur la nature humaine
- Loi de Parkinson
- Un continuum de styles de décomposition
- DĂ©composition humaine
- Stratégies de décomposition
- Du précédent à la description de poste
- Sources
De fausses croyances sur la nature humaine
:
- , .
- , , .
- , ().
- ( ).
- , ().
- ().
, , . , .
. , . , .
, . « ».
, , . . , , . . , . , .
. , , . â , , . . â () , .
. , . , , , .
, , .
, , «» «» , , , .
« »
4 :
, .
« », 1955 . , . , .
« . » , , . , , .
:
- , ;
- #NoEstimates, .
« » , . :
, , , , . 1840- 1960- . , . , , . , . .
, . ( Thinking Fast And Slow). . . , , , . .
, , . , , . , , , .
, . , . , , , , , .
NoEstimates
AgileDays'14. , , :
- .
- , - . (CI) .
- , , .
, , :
- , , .
- .
- , , .
, , , .
#NoEstimates . , . , , .
, , #NoEstimates, , .
#NoEstimates .
, , , , . .
:
- . , .
- 3â5 . , .
Loose Coupling / High Cohesion ( / ), :
- Loose Coupling: .
- High Cohesion: , .
, , API . , , , , .
. API decomposition smell ( code smell), .
, . .
:
- ?
- - , ?
- ? - , ?
:
- , , , ?
- ( 3â5 )?
- ?
, . . . . .
3â5 â . , , . Ruby on Rails.
, - , , .
, c « ». , :
- , , .
- , , , ( â 3) , .
, . , , . . , , , , , . - , , . , , .
. , , â . , , , . , , . , - . , .
, , , , - .
. , . .
.
,
, ( Ruby on Rails) CRUD .
, .
â . , , . - , . , , , .
Ruby on Rails «--». has_and_belongs_to_many
HABTM- .
, , HABTM- .
, . , , HABTM-, , . . , UI, . « », .
, UI, , , , , â , .
, , , .
, , . . â , â , . , .
:
- .
- , .
- .
- , , .
- , .
- .
, 5 , , . , , «»: .
. , . API , , . API , . , .
. , , , . , .
, 10% , : , .
. , , , . , , . . API , , .
, .
, .
1.
«» , , .
, , .
3â5 , , , , . , .
2.
, . , , , . â 5, . , , , .
, â , . , , . â 6, - . , , , .
â , . « » .
, .
, . , â .
, . .
, . , , . .
, , , .
, , , , . . . , , , . 6 .
3.
, â . , - . , â - - .
. , .
: . , .
, . , , . , , .
4. ,
, . .
, , , , . , , , .
, , . â W.I.P. (work in progress). , .
5.
, , .
, , . , - , - .
. , , .
. .
6.
- .
, -, .
15 «» «- (DDD). ». (Generic Subdomains) (Cohesive Mechanisms), (Core Domain), .
, , , .
-, . , , . .
« -».
, .
, , (accidental complexity) - . , .
, - , . . omakase-, Ruby On Rails .
, . . , , . . , , .
, .
, , . , . .
7.
. , . . , .
« », , 1:3. , . â .
, , .
â , .
, . , . , . , .
, , .
, . â .
- , , . . . , , .
« . » 1999 . , 1975 , « -».
11 « » , :
â .
, . .
. , : , . -. . , . , . .
FunBox .
, , , .
:
:
- .
- « . » « . ».
- « . ».
- Thinking Fast And Slow.
- « », , . .
:
- « ». AgileDays'14, , , #NoEstimates. .
- « ». . , , , , , .