Architecture d'application universelle





Quiconque est engagé dans la programmation se souvient sûrement qu'au tout début du chemin, un flux d'informations sur les algorithmes, les modèles et les méthodes de développement lui tombe dessus. Elle se souvient de ce sentiment même quand, après avoir traité une idée fraîche ou simplement nouvelle pour soi, le sentiment "bien, maintenant nous allons vivre!" Et aussi ce sentiment de léger désespoir - après avoir essayé d'appliquer tout cela dans un vrai projet, avec de vraies personnes, avec des retournements soudains de logique métier et une constante «très urgent».





Comment se fait-il que dans un monde où la plupart des projets s'inscrivent dans le modèle «saisie de données, validation et enregistrement dans la base de données», tant de projets tombent dans une confusion totale? Malgré le fait que tous les développeurs sont pleins de connaissances sur les algorithmes, les cadres et les modèles, et les principes de SOLID rebondissent sur les dents lors de l'entretien. Je me risquerais à exprimer à cette occasion mon hypothèse sur la cause, ainsi que ma manière personnelle de gérer cela.





Thèse

. , . :   , , . , , , , ( ). , "" . , “” .





? , . , “” , .





, - , - , , . , . . , , UI. , “” , .. “” “”. , : “ ” “ ” ?





, : , “”, ? , “” - , , - .





1- .

, , : (), , ? - ? , RFC 5322, - , . " " - . , , " ?". , .. , , . , , - - . , “-”. , , , . , , , .





1- : () . 





, , , , . , - - . , , . 





2- . "" ""

, ? ,  : , , “”.





: , "" ()? . , - "" , . , " , - ", " ", , - .





3- .

2 . “ ?” UI, , . Console.Write()



textbox.Text



html-, .





. , , , “ ”. , , , -, , .





, . , , , , , . , . , , , . 





: Win , , .





4 : , , , . - - “ ”.





, . , . , . , , , . , , , () - : “ ” ? , “” , . , , , . - , , , .





, . Windows .





. - SMS . - - . 





, “ , ”, - - . , - .





, Client



, , IO - ClientGet(int id)



, .





, IO . ClientGet



Client. ClientVerySpecificStatsInfo



, IO . , , , , . , , , , , . , . - , , . 





,  - ( “”) “” , " !".





, . , - - , . , , - . , , , .   . , - , - , , , , .





, , . , , MVP . - ,     - , , - “”.  , UserPresenter



, UserPrecursor



.





“ ” . , .. .. , - , “ ” - , , , .





: , UI. UI , “” , UI. ( ) . .





. “ ” . “ ” . - . , “” .  , , , , .





L'importance des instructions

, () - . , - . , Order (), Client User. Order Line (), . , Line Order . , , , . .  





Logic.Order



Logic.Orders.Line



, Line Order - , Line Orders.





Logic.Order



Logic.Line



, Line , , . 





, “” , “”, “”, . , , . . , , Zip, City, Address - , . , , .





:





/Geo
	Address
	City
	Zip
/Orders
	Line
Order //   "Orders"
      
      







, , : , .





, . , , , - , . , , . -. 





, . - . UML, , , , - , … … . , - Zip, Address, City - - , - - GeoObject . 





, , - . “ - ” - . - .Subitems



. - .Subtypes







, .





.Def

, , , - , . .Def



(Definitions). , . UML, , .





/Geo
	Address
	City
	Zip
/Orders
	/.Def
		OrderType
		OrderBase
	Line
Order
      
      



.Spec

, 1-1 . 1-1 . , , , ..   - . 





, . UML .





.Spec



- ( specification - , ), .





, User UserLikes, , / User’ .





“ ” . “” , - .





. , UserStats (“”) . , , , , . , , .. , . Stats, . (, UserStats , Stats .)





:





/Users
	/.Spec
		UserLikes
		UserStats //   1- 
	Stats //   
User
      
      







. , , UML, , UML. , ,   , - .





.Calc

, , . . , . , , .. . “” , - , 0 1 . PDF , Adobe Acrobat Reader, .  .Calc



( calculators).





, . , , , , . , “ - ? ?”





- , - . . .





.Models

.Models



, -, , , . , Team, ID



Name



. , , , , ”” . 2- , User , .





- , . - , , , .





  , . , presenter.Submit(input)



clientValidator.Validate(input)



, “-” , .





“” , UI “”.





 

, , , , , , .. . - . . , , Ms Excel. - UI, , . , , - Html, Pdf, Rtf, Json, Xls .





, , . 





.Tech



, , . , , - - . , , , , . “ ” , , , .





, . , , “” .. .Dev



. IO , .





, , - ? Money? ? , , Options? - , Context - MoneyContext, OptionsContext ..





MVC, MVP, MVVM

MVC, MVP MVVM , .. ( ) . , , , “” - . , , . - .





, , - . . , . , “ !”, . “ ”, “ ”, “ ”. , - . 





, “” -   “”. - , - - ( , ), .





, , “ ?”. . , “” . , - .





, , , - . , , , - , - . , - , "" . , .





p.s. C !








All Articles