8
Dans ce cours, vous allez découvrir une stratégie essentielle pour obtenir une architecture applicative faiblement couplée. De plus, cette vidéo est plus complète que d'habitude, vous recevrez des rappels importants à appliquer dans votre développement. C'est parti pour l'utilisation de ce "presque pattern" : Fabrique Simple. jQLeadBrite("#leadplayer_video_element_52B359DB4B7AA").leadplayer(false, "eyJnYSI6dHJ1 ZSwib3ZlcmxheSI6ZmFsc2UsInBvd2VyZWRfYnkiOmZhbHNlLCJwb3dlcmVkX2J5X2xpbmsiOiJ odHRwOlwvXC93d3cucHJvZ3JhbW1hdGlvbi1mYWNpbGUuY29tXC8iLCJjb2xvcjEiOiIjRjVCQjB DIiwiY29sb3IyIjoiIzE3OThDRCIsImNvbG9yMyI6IiNGNUJCMEMiLCJ0eHRfc3VibWl0IjoiUkVDR VZPSVIgISIsInR4dF9wbGF5IjoiTGVjdHVyZSIsInR4dF9lbWwiOiJSZW5zZWlnbmV6IHZvdHJlIE VtYWlsLi4uIiwidHh0X25hbWUiOiJSZW5zZWlnbmV6IHZvdHJlIFByXHUwMGU5bm9tLi4uIiwidH h0X2ludmFsaWRfZW1sIjoiU1ZQLCByZW5zZWlnbmV6IHZvdHJlIEVtYWlsLi4uIiwidHh0X2ludm FsaWRfbmFtZSI6IlNWUCwgcmVuc2VpZ25leiB2b3RyZSBQclx1MDBlOW5vbS4uLiIsImxwX3Nv dXJjZSI6IldQIFBsdWdpbiAxLjQuMi4xIFVubGltaXRlZCIsImlkIjoiNTJCMzU5REI0QjdBQSIsIndpZ HRoIjo5NDAsImhlaWdodCI6NTI5LCJ0aHVtYm5haWwiOiIiLCJ0aXRsZSI6IkNvbW1lbnQgY3Jcd TAwZTllciBkZXMgYXJjaGl0ZWN0dXJlcyBmYWlibGVtZW50IGNvdXBsXHUwMGU5ZXMgPyIsI mRlc2NyaXB0aW9uIjoiVW4gY291cnMgdmlkXHUwMGU5byBjb21wbGV0IGF2ZWMgZGVzIHN 0cmF0XHUwMGU5Z2llcyBlc3NlbnRpZWxsZXMgXHUwMGUwIGFwcGxpcXVlciBkYW5zIHZvdH JlIGRcdTAwZTl2ZWxvcHBlbWVudC4iLCJhdXRvcGxheSI6ZmFsc2UsInNob3dfdGltZWxpbmUi OnRydWUsImVuYWJsZV9oZCI6dHJ1ZSwib3B0Ijp7InRpbWUiOiJlbmQiLCJ0ZXh0MSI6IkNyXH UwMGU5ZXogZGVzIEFwcGxpY2F0aW9ucyBQZXJmb3JtYW50ZXMgZGFucyB2b3RyZSBMY W5nYWdlICEiLCJ0ZXh0MiI6IlJlY2V2ZXogbGVzIGNvdXJzIGRlIE1hdHRoaWV1LCBFeHBlcnQg ZW4gRFx1MDBlOXZlbG9wcGVtZW50IEFwcGxpY2F0aWYiLCJ1cmwiOiJodHRwOlwvXC93d3c ucHJvZ3JhbW1hdGlvbi1mYWNpbGUuY29tXC9tZXJjaS1wb3VyLXZvdHJlLWluc2NyaXB0aW9u XC8iLCJza2lwIjp7InRleHQiOiJza2lwIHRoaXMgc3RlcCJ9LCJmb3JtX3Byb3ZpZGVyIjoiYXdlYm VyIiwiZm9ybV9odG1sIjoiJmx0OyEtLSBBV2ViZXIgV2ViIEZvcm0gR2VuZXJhdG9yIDMuMCAtLS ZndDsmbHQ7c3R5bGUgdHlwZT0mcXVvdDt0ZXh0XC9jc3MmcXVvdDsmZ3Q7I2FmLWZvcm0t Nzc2NTM1MjggLmFmLWJvZHkgLmFmLXRleHRXcmFwe3dpZHRoOjk4JTtkaXNwbGF5OmJsb 2NrO2Zsb2F0Om5vbmU7fSNhZi1mb3JtLTc3NjUzNTI4IC5hZi1ib2R5IGlucHV0LnRleHQsICNhZ i1mb3JtLTc3NjUzNTI4IC5hZi1ib2R5IHRleHRhcmVhe2JhY2tncm91bmQtY29sb3I6I0ZGRkZGRj tib3JkZXItY29sb3I6IzkxOTE5MTtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZDtjb2x vcjojMDAwMDAwO3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQt d2VpZ2h0Om5vcm1hbDtmb250LXNpemU6MTJweDtmb250LWZhbWlseTpWZXJkYW5hLCBzY W5zLXNlcmlmO30jYWYtZm9ybS03NzY1MzUyOCAuYWYtYm9keSBpbnB1dC50ZXh0OmZvY3 VzLCAjYWYtZm9ybS03NzY1MzUyOCAuYWYtYm9keSB0ZXh0YXJlYTpmb2N1c3tiYWNrZ3Jvd W5kLWNvbG9yOiNGRkZBRDY7Ym9yZGVyLWNvbG9yOiMwMzAzMDM7Ym9yZGVyLXdpZHR oOjFweDtib3JkZXItc3R5bGU6c29saWQ7fSNhZi1mb3JtLTc3NjUzNTI4IC5hZi1ib2R5IGxhYmVs LnByZXZpZXdMYWJlbHtkaXNwbGF5OmJsb2NrO2Zsb2F0Om5vbmU7dGV4dC1hbGlnbjpsZW Z0O3dpZHRoOmF1dG87Y29sb3I6IzAwMDAwMDt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250 LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjEycHg7Zm9udC1 mYW1pbHk6VmVyZGFuYSwgc2Fucy1zZXJpZjt9I2FmLWZvcm0tNzc2NTM1MjggLmFmLWJvZ Hl7cGFkZGluZy1ib3R0b206MTVweDtwYWRkaW5nLXRvcDoxNXB4O2JhY2tncm91bmQtcmVw ZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmluaGVyaXQ7YmFja2dyb3VuZC1 1 / 8

Comment créer des architectures faiblement couplées ?

Embed Size (px)

Citation preview

  • Dans ce cours, vous allez dcouvrir une stratgie essentielle pour obtenir une architectureapplicative faiblement couple. De plus, cette vido est plus complte que d'habitude, vousrecevrez des rappels importants appliquer dans votre dveloppement. C'est parti pourl'utilisation de ce "presque pattern" : Fabrique Simple.

    jQLeadBrite("#leadplayer_video_element_52B359DB4B7AA").leadplayer(false, "eyJnYSI6dHJ1ZSwib3ZlcmxheSI6ZmFsc2UsInBvd2VyZWRfYnkiOmZhbHNlLCJwb3dlcmVkX2J5X2xpbmsiOiJodHRwOlwvXC93d3cucHJvZ3JhbW1hdGlvbi1mYWNpbGUuY29tXC8iLCJjb2xvcjEiOiIjRjVCQjBDIiwiY29sb3IyIjoiIzE3OThDRCIsImNvbG9yMyI6IiNGNUJCMEMiLCJ0eHRfc3VibWl0IjoiUkVDRVZPSVIgISIsInR4dF9wbGF5IjoiTGVjdHVyZSIsInR4dF9lbWwiOiJSZW5zZWlnbmV6IHZvdHJlIEVtYWlsLi4uIiwidHh0X25hbWUiOiJSZW5zZWlnbmV6IHZvdHJlIFByXHUwMGU5bm9tLi4uIiwidHh0X2ludmFsaWRfZW1sIjoiU1ZQLCByZW5zZWlnbmV6IHZvdHJlIEVtYWlsLi4uIiwidHh0X2ludmFsaWRfbmFtZSI6IlNWUCwgcmVuc2VpZ25leiB2b3RyZSBQclx1MDBlOW5vbS4uLiIsImxwX3NvdXJjZSI6IldQIFBsdWdpbiAxLjQuMi4xIFVubGltaXRlZCIsImlkIjoiNTJCMzU5REI0QjdBQSIsIndpZHRoIjo5NDAsImhlaWdodCI6NTI5LCJ0aHVtYm5haWwiOiIiLCJ0aXRsZSI6IkNvbW1lbnQgY3JcdTAwZTllciBkZXMgYXJjaGl0ZWN0dXJlcyBmYWlibGVtZW50IGNvdXBsXHUwMGU5ZXMgPyIsImRlc2NyaXB0aW9uIjoiVW4gY291cnMgdmlkXHUwMGU5byBjb21wbGV0IGF2ZWMgZGVzIHN0cmF0XHUwMGU5Z2llcyBlc3NlbnRpZWxsZXMgXHUwMGUwIGFwcGxpcXVlciBkYW5zIHZvdHJlIGRcdTAwZTl2ZWxvcHBlbWVudC4iLCJhdXRvcGxheSI6ZmFsc2UsInNob3dfdGltZWxpbmUiOnRydWUsImVuYWJsZV9oZCI6dHJ1ZSwib3B0Ijp7InRpbWUiOiJlbmQiLCJ0ZXh0MSI6IkNyXHUwMGU5ZXogZGVzIEFwcGxpY2F0aW9ucyBQZXJmb3JtYW50ZXMgZGFucyB2b3RyZSBMYW5nYWdlICEiLCJ0ZXh0MiI6IlJlY2V2ZXogbGVzIGNvdXJzIGRlIE1hdHRoaWV1LCBFeHBlcnQgZW4gRFx1MDBlOXZlbG9wcGVtZW50IEFwcGxpY2F0aWYiLCJ1cmwiOiJodHRwOlwvXC93d3cucHJvZ3JhbW1hdGlvbi1mYWNpbGUuY29tXC9tZXJjaS1wb3VyLXZvdHJlLWluc2NyaXB0aW9uXC8iLCJza2lwIjp7InRleHQiOiJza2lwIHRoaXMgc3RlcCJ9LCJmb3JtX3Byb3ZpZGVyIjoiYXdlYmVyIiwiZm9ybV9odG1sIjoiJmx0OyEtLSBBV2ViZXIgV2ViIEZvcm0gR2VuZXJhdG9yIDMuMCAtLSZndDsmbHQ7c3R5bGUgdHlwZT0mcXVvdDt0ZXh0XC9jc3MmcXVvdDsmZ3Q7I2FmLWZvcm0tNzc2NTM1MjggLmFmLWJvZHkgLmFmLXRleHRXcmFwe3dpZHRoOjk4JTtkaXNwbGF5OmJsb2NrO2Zsb2F0Om5vbmU7fSNhZi1mb3JtLTc3NjUzNTI4IC5hZi1ib2R5IGlucHV0LnRleHQsICNhZi1mb3JtLTc3NjUzNTI4IC5hZi1ib2R5IHRleHRhcmVhe2JhY2tncm91bmQtY29sb3I6I0ZGRkZGRjtib3JkZXItY29sb3I6IzkxOTE5MTtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZDtjb2xvcjojMDAwMDAwO3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXNpemU6MTJweDtmb250LWZhbWlseTpWZXJkYW5hLCBzYW5zLXNlcmlmO30jYWYtZm9ybS03NzY1MzUyOCAuYWYtYm9keSBpbnB1dC50ZXh0OmZvY3VzLCAjYWYtZm9ybS03NzY1MzUyOCAuYWYtYm9keSB0ZXh0YXJlYTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNGRkZBRDY7Ym9yZGVyLWNvbG9yOiMwMzAzMDM7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWQ7fSNhZi1mb3JtLTc3NjUzNTI4IC5hZi1ib2R5IGxhYmVsLnByZXZpZXdMYWJlbHtkaXNwbGF5OmJsb2NrO2Zsb2F0Om5vbmU7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOmF1dG87Y29sb3I6IzAwMDAwMDt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjEycHg7Zm9udC1mYW1pbHk6VmVyZGFuYSwgc2Fucy1zZXJpZjt9I2FmLWZvcm0tNzc2NTM1MjggLmFmLWJvZHl7cGFkZGluZy1ib3R0b206MTVweDtwYWRkaW5nLXRvcDoxNXB4O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmluaGVyaXQ7YmFja2dyb3VuZC1

    1 / 8

  • pbWFnZTpub25lO2NvbG9yOiMwMDAwMDA7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6VmVyZGFuYSwgc2Fucy1zZXJpZjt9I2FmLWZvcm0tNzc2NTM1MjggLmFmLXF1aXJrc01vZGV7cGFkZGluZy1yaWdodDoxNXB4O3BhZGRpbmctbGVmdDoxNXB4O30jYWYtZm9ybS03NzY1MzUyOCAuYWYtc3RhbmRhcmRzIC5hZi1lbGVtZW50e3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweDt9I2FmLWZvcm0tNzc2NTM1MjggLmJ1dHRvbkNvbnRhaW5lciBpbnB1dC5zdWJtaXR7YmFja2dyb3VuZC1pbWFnZTp1cmwoJnF1b3Q7aHR0cDpcL1wvZm9ybXMuYXdlYmVyLmNvbVwvaW1hZ2VzXC9hdXRvXC9ncmFkaWVudFwvYnV0dG9uXC8wN2MucG5nJnF1b3Q7KTtiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcCBsZWZ0O2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2JhY2tncm91bmQtY29sb3I6IzAwNTdhYztib3JkZXI6MXB4IHNvbGlkICMwMDU3YWM7Y29sb3I6I0ZGRkZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjE0cHg7Zm9udC1mYW1pbHk6VmVyZGFuYSwgc2Fucy1zZXJpZjt9I2FmLWZvcm0tNzc2NTM1MjggLmJ1dHRvbkNvbnRhaW5lciBpbnB1dC5zdWJtaXR7d2lkdGg6YXV0bzt9I2FmLWZvcm0tNzc2NTM1MjggLmJ1dHRvbkNvbnRhaW5lcnt0ZXh0LWFsaWduOnJpZ2h0O30jYWYtZm9ybS03NzY1MzUyOCBidXR0b24sI2FmLWZvcm0tNzc2NTM1MjggaW5wdXQsI2FmLWZvcm0tNzc2NTM1Mjggc3VibWl0LCNhZi1mb3JtLTc3NjUzNTI4IHRleHRhcmVhLCNhZi1mb3JtLTc3NjUzNTI4IHNlbGVjdCwjYWYtZm9ybS03NzY1MzUyOCBsYWJlbCwjYWYtZm9ybS03NzY1MzUyOCBvcHRncm91cCwjYWYtZm9ybS03NzY1MzUyOCBvcHRpb257ZmxvYXQ6bm9uZTtwb3NpdGlvbjpzdGF0aWM7bWFyZ2luOjA7fSNhZi1mb3JtLTc3NjUzNTI4IGRpdnttYXJnaW46MDt9I2FmLWZvcm0tNzc2NTM1MjggZm9ybSwjYWYtZm9ybS03NzY1MzUyOCB0ZXh0YXJlYSwuYWYtZm9ybS13cmFwcGVyLC5hZi1mb3JtLWNsb3NlLWJ1dHRvbiwjYWYtZm9ybS03NzY1MzUyOCBpbWd7ZmxvYXQ6bm9uZTtjb2xvcjppbmhlcml0O3Bvc2l0aW9uOnN0YXRpYztiYWNrZ3JvdW5kLWNvbG9yOm5vbmU7Ym9yZGVyOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO30jYWYtZm9ybS03NzY1MzUyOCBpbnB1dCwjYWYtZm9ybS03NzY1MzUyOCBidXR0b24sI2FmLWZvcm0tNzc2NTM1MjggdGV4dGFyZWEsI2FmLWZvcm0tNzc2NTM1Mjggc2VsZWN0e2ZvbnQtc2l6ZToxMDAlO30jYWYtZm9ybS03NzY1MzUyOCBzZWxlY3QsI2FmLWZvcm0tNzc2NTM1MjggbGFiZWwsI2FmLWZvcm0tNzc2NTM1Mjggb3B0Z3JvdXAsI2FmLWZvcm0tNzc2NTM1Mjggb3B0aW9ue3BhZGRpbmc6MDt9I2FmLWZvcm0tNzc2NTM1MjgsI2FmLWZvcm0tNzc2NTM1MjggLnF1aXJrc01vZGV7d2lkdGg6MjI1cHg7fSNhZi1mb3JtLTc3NjUzNTI4LmFmLXF1aXJrc01vZGV7b3ZlcmZsb3cteDpoaWRkZW47fSNhZi1mb3JtLTc3NjUzNTI4e2JhY2tncm91bmQtY29sb3I6I0YwRjBGMDtib3JkZXItY29sb3I6I0NGQ0ZDRjtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZDt9I2FmLWZvcm0tNzc2NTM1Mjh7ZGlzcGxheTpibG9jazt9I2FmLWZvcm0tNzc2NTM1Mjh7b3ZlcmZsb3c6aGlkZGVuO30uYWYtYm9keSAuYWYtdGV4dFdyYXB7dGV4dC1hbGlnbjpsZWZ0O30uYWYtYm9keSBpbnB1dC5pbWFnZXtib3JkZXI6bm9uZSFpbXBvcnRhbnQ7fS5hZi1ib2R5IGlucHV0LnN1Ym1pdCwuYWYtYm9keSBpbnB1dC5pbWFnZSwuYWYtZm9ybSAuYWYtZWxlbWVudCBpbnB1dC5idXR0b257ZmxvYXQ6bm9uZSFpbXBvcnRhbnQ7fS5hZi1ib2R5IGlucHV0LnRleHR7d2lkdGg6MTAwJTtmbG9hdDpub25lO3BhZGRpbmc6MnB4IWltcG9ydGFudDt9LmFmLWJvZHkuYWYtc3RhbmRhcmRzIGlucHV0LnN1Ym1pdHtwYWRkaW5nOjRweCAxMnB4O30uYWYtY2xlYXJ7Y2xlYXI6Ym90aDt9LmFmLWVsZW1lbnQgbGFiZWx7dGV4dC1hbGlnbjpsZWZ0O2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDt9LmFmLWVsZW1lbnR7cGFkZGluZzo1cHggMDt9LmFmLWZvcm0td3JhcHBlcnt0ZXh0LWluZGVudDowO30uYWYtZm9ybXt0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luOmF1dG87fS5hZi1xdWlya3NNb2RlIC5hZi1lbGVtZW50e3BhZGRpbmctbGVmdDowIWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50O30ubGJsLXJpZ2h0IC5hZi1lbGVtZW50IGxhYmVse3RleHQtYWxpZ246cmlnaHQ7fWJvZHkge30mbHQ7XC9zdHlsZSZndDsmbHQ7Zm9ybSBtZXRob2Q9JnF1b3Q7cG9zdCZxdW90OyBjbGFzcz0mcXVvdDthZi1mb3JtLXdyYXBwZXImcXVvdDsgYWN0aW9uPSZxdW90O2h0dHA6XC9cL3d3dy5hd2ViZXIuY29tXC9zY3JpcHRzXC9hZGRsZWFkLnBsJnF1b3Q7ICAmZ3Q7J

    2 / 8

  • mx0O2RpdiBzdHlsZT0mcXVvdDtkaXNwbGF5OiBub25lOyZxdW90OyZndDsmbHQ7aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDttZXRhX3dlYl9mb3JtX2lkJnF1b3Q7IHZhbHVlPSZxdW90Ozc3NjUzNTI4JnF1b3Q7IFwvJmd0OyZsdDtpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O21ldGFfc3BsaXRfaWQmcXVvdDsgdmFsdWU9JnF1b3Q7JnF1b3Q7IFwvJmd0OyZsdDtpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O2xpc3RuYW1lJnF1b3Q7IHZhbHVlPSZxdW90O2RldmZhY2lsZS1wcm8mcXVvdDsgXC8mZ3Q7Jmx0O2lucHV0IHR5cGU9JnF1b3Q7aGlkZGVuJnF1b3Q7IG5hbWU9JnF1b3Q7cmVkaXJlY3QmcXVvdDsgdmFsdWU9JnF1b3Q7aHR0cDpcL1wvd3d3LnByb2dyYW1tYXRpb24tZmFjaWxlLmNvbVwvbWVyY2ktcG91ci12b3RyZS1pbnNjcmlwdGlvblwvJnF1b3Q7IGlkPSZxdW90O3JlZGlyZWN0XzQzMzFhMDVjY2FhYzEzOTRhZWFjMzI5ODE3M2EyOGQ5JnF1b3Q7IFwvJmd0OyZsdDtpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O21ldGFfcmVkaXJlY3Rfb25saXN0JnF1b3Q7IHZhbHVlPSZxdW90O2h0dHA6XC9cL3d3dy5wcm9ncmFtbWF0aW9uLWZhY2lsZS5jb21cL21lcmNpLXBvdXItdm90cmUtaW5zY3JpcHRpb25cLyZxdW90OyBcLyZndDsmbHQ7aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDttZXRhX2FkdHJhY2tpbmcmcXVvdDsgdmFsdWU9JnF1b3Q7QWNjdWVpbF9TaXRlJnF1b3Q7IFwvJmd0OyZsdDtpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O21ldGFfbWVzc2FnZSZxdW90OyB2YWx1ZT0mcXVvdDsxJnF1b3Q7IFwvJmd0OyZsdDtpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O21ldGFfcmVxdWlyZWQmcXVvdDsgdmFsdWU9JnF1b3Q7bmFtZSxlbWFpbCZxdW90OyBcLyZndDsmbHQ7aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDttZXRhX3Rvb2x0aXAmcXVvdDsgdmFsdWU9JnF1b3Q7bmFtZXx8UmVuc2VpZ25leiB2b3RyZSBQciZlYWN1dGU7bm9tLi4uLCxlbWFpbHx8UmVuc2VpZ25leiB2b3RyZSBFbWFpbC4uLiZxdW90OyBcLyZndDsmbHQ7XC9kaXYmZ3Q7Jmx0O2RpdiBpZD0mcXVvdDthZi1mb3JtLTc3NjUzNTI4JnF1b3Q7IGNsYXNzPSZxdW90O2FmLWZvcm0mcXVvdDsmZ3Q7Jmx0O2RpdiBpZD0mcXVvdDthZi1ib2R5LTc3NjUzNTI4JnF1b3Q7ICBjbGFzcz0mcXVvdDthZi1ib2R5IGFmLXN0YW5kYXJkcyZxdW90OyZndDsmbHQ7ZGl2IGNsYXNzPSZxdW90O2FmLWVsZW1lbnQmcXVvdDsmZ3Q7Jmx0O2xhYmVsIGNsYXNzPSZxdW90O3ByZXZpZXdMYWJlbCZxdW90OyBmb3I9JnF1b3Q7YXdmX2ZpZWxkLTU2NTY5ODc3JnF1b3Q7Jmd0OyZsdDtcL2xhYmVsJmd0OyZsdDtkaXYgY2xhc3M9JnF1b3Q7YWYtdGV4dFdyYXAmcXVvdDsmZ3Q7Jmx0O2lucHV0IGlkPSZxdW90O2F3Zl9maWVsZC01NjU2OTg3NyZxdW90OyB0eXBlPSZxdW90O3RleHQmcXVvdDsgbmFtZT0mcXVvdDtuYW1lJnF1b3Q7IGNsYXNzPSZxdW90O3RleHQmcXVvdDsgdmFsdWU9JnF1b3Q7UmVuc2VpZ25leiB2b3RyZSBQciZlYWN1dGU7bm9tLi4uJnF1b3Q7ICBvbmZvY3VzPSZxdW90OyBpZiAodGhpcy52YWx1ZSA9PSAnUmVuc2VpZ25leiB2b3RyZSBQciZlYWN1dGU7bm9tLi4uJykgeyB0aGlzLnZhbHVlID0gJyc7IH0mcXVvdDsgb25ibHVyPSZxdW90O2lmICh0aGlzLnZhbHVlID09ICcnKSB7IHRoaXMudmFsdWU9J1JlbnNlaWduZXogdm90cmUgUHImZWFjdXRlO25vbS4uLic7fSAmcXVvdDsgdGFiaW5kZXg9JnF1b3Q7NTAwJnF1b3Q7IFwvJmd0OyZsdDtcL2RpdiZndDsmbHQ7ZGl2IGNsYXNzPSZxdW90O2FmLWNsZWFyJnF1b3Q7Jmd0OyZsdDtcL2RpdiZndDsmbHQ7XC9kaXYmZ3Q7Jmx0O2RpdiBjbGFzcz0mcXVvdDthZi1lbGVtZW50JnF1b3Q7Jmd0OyZsdDtsYWJlbCBjbGFzcz0mcXVvdDtwcmV2aWV3TGFiZWwmcXVvdDsgZm9yPSZxdW90O2F3Zl9maWVsZC01NjU2OTg3OCZxdW90OyZndDsmbHQ7XC9sYWJlbCZndDsmbHQ7ZGl2IGNsYXNzPSZxdW90O2FmLXRleHRXcmFwJnF1b3Q7Jmd0OyZsdDtpbnB1dCBjbGFzcz0mcXVvdDt0ZXh0JnF1b3Q7IGlkPSZxdW90O2F3Zl9maWVsZC01NjU2OTg3OCZxdW90OyB0eXBlPSZxdW90O3RleHQmcXVvdDsgbmFtZT0mcXVvdDtlbWFpbCZxdW90OyB2YWx1ZT0mcXVvdDtSZW5zZWlnbmV6IHZvdHJlIEVtYWlsLi4uJnF1b3Q7IHRhYmluZGV4PSZxdW90OzUwMSZxdW90OyAgb25mb2N1cz0mcXVvdDsgaWYgKHRoaXMudmFsdWUgPT0gJ1JlbnNlaWduZXogdm90cmUgRW1haWwuLi4nKSB7IHRoaXMudmFsdWUgPSAnJzsgfSZxdW90OyBvbmJsdXI9JnF1b3Q7aWYgKHRoaXMudmFsdWUgP

    3 / 8

  • T0gJycpIHsgdGhpcy52YWx1ZT0nUmVuc2VpZ25leiB2b3RyZSBFbWFpbC4uLic7fSAmcXVvdDsgXC8mZ3Q7Jmx0O1wvZGl2Jmd0OyZsdDtkaXYgY2xhc3M9JnF1b3Q7YWYtY2xlYXImcXVvdDsmZ3Q7Jmx0O1wvZGl2Jmd0OyZsdDtcL2RpdiZndDsmbHQ7ZGl2IGNsYXNzPSZxdW90O2FmLWVsZW1lbnQgYnV0dG9uQ29udGFpbmVyJnF1b3Q7Jmd0OyZsdDtpbnB1dCBuYW1lPSZxdW90O3N1Ym1pdCZxdW90OyBjbGFzcz0mcXVvdDtzdWJtaXQmcXVvdDsgdHlwZT0mcXVvdDtzdWJtaXQmcXVvdDsgdmFsdWU9JnF1b3Q7UmVjZXZvaXIgISZxdW90OyB0YWJpbmRleD0mcXVvdDs1MDImcXVvdDsgXC8mZ3Q7Jmx0O2RpdiBjbGFzcz0mcXVvdDthZi1jbGVhciZxdW90OyZndDsmbHQ7XC9kaXYmZ3Q7Jmx0O1wvZGl2Jmd0OyZsdDtcL2RpdiZndDsmbHQ7XC9kaXYmZ3Q7Jmx0O2RpdiBzdHlsZT0mcXVvdDtkaXNwbGF5OiBub25lOyZxdW90OyZndDsmbHQ7aW1nIHNyYz0mcXVvdDtodHRwOlwvXC9mb3Jtcy5hd2ViZXIuY29tXC9mb3JtXC9kaXNwbGF5cy5odG0/aWQ9N094c3JNeXNUQnc9JnF1b3Q7IGFsdD0mcXVvdDsmcXVvdDsgXC8mZ3Q7Jmx0O1wvZGl2Jmd0OyZsdDtcL2Zvcm0mZ3Q7Jmx0O3NjcmlwdCB0eXBlPSZxdW90O3RleHRcL2phdmFzY3JpcHQmcXVvdDsmZ3Q7ICAgICZsdDshLS0gICAgKGZ1bmN0aW9uKCkgeyAgICAgICAgdmFyIElFID0gXC8qQGNjX29uIUAqXC9mYWxzZTsgICAgICAgIGlmICghSUUpIHsgcmV0dXJuOyB9ICAgICAgICBpZiAoZG9jdW1lbnQuY29tcGF0TW9kZSAmYW1wOyZhbXA7IGRvY3VtZW50LmNvbXBhdE1vZGUgPT0gJ0JhY2tDb21wYXQnKSB7ICAgICAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCZxdW90O2FmLWZvcm0tNzc2NTM1MjgmcXVvdDspKSB7ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCZxdW90O2FmLWZvcm0tNzc2NTM1MjgmcXVvdDspLmNsYXNzTmFtZSA9ICdhZi1mb3JtIGFmLXF1aXJrc01vZGUnOyAgICAgICAgICAgIH0gICAgICAgICAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJnF1b3Q7YWYtYm9keS03NzY1MzUyOCZxdW90OykpIHsgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJnF1b3Q7YWYtYm9keS03NzY1MzUyOCZxdW90OykuY2xhc3NOYW1lID0gJnF1b3Q7YWYtYm9keSBpbmxpbmUgYWYtcXVpcmtzTW9kZSZxdW90OzsgICAgICAgICAgICB9ICAgICAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCZxdW90O2FmLWhlYWRlci03NzY1MzUyOCZxdW90OykpIHsgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJnF1b3Q7YWYtaGVhZGVyLTc3NjUzNTI4JnF1b3Q7KS5jbGFzc05hbWUgPSAmcXVvdDthZi1oZWFkZXIgYWYtcXVpcmtzTW9kZSZxdW90OzsgICAgICAgICAgICB9ICAgICAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCZxdW90O2FmLWZvb3Rlci03NzY1MzUyOCZxdW90OykpIHsgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJnF1b3Q7YWYtZm9vdGVyLTc3NjUzNTI4JnF1b3Q7KS5jbGFzc05hbWUgPSAmcXVvdDthZi1mb290ZXIgYWYtcXVpcmtzTW9kZSZxdW90OzsgICAgICAgICAgICB9ICAgICAgICB9ICAgIH0pKCk7ICAgIC0tJmd0OyZsdDtcL3NjcmlwdCZndDsmbHQ7IS0tIFwvQVdlYmVyIFdlYiBGb3JtIEdlbmVyYXRvciAzLjAgLS0mZ3Q7IiwiZm9ybV9oYXNoIjoiMWVhMzNjNzM3YTc3OGY0N2M1ZGIyZGU1ODVlYTVhZjciLCJuYW1lX2VuYWJsZWQiOnRydWV9LCJjdGEiOmZhbHNlLCJ5bSI6InJvZzRXbFUxS1lnIn0=");

    Afficher le texte de la vido

    Comment crer des architectures faiblement couples ? Bonjour, et bienvenu surDveloppement Facile. Dans ce nouveau cours, vous allez apprendre comment crer desarchitectures d'applications faiblement couples. En gros, vous allez dcouvrir le design patternou modle de conception factory. C'est dire, pour schmatiser, un client qui arrive dans uneusine et qui demande une glace. A chaque fois, il aura une glace, la glace qu'ilsouhaite.Librez-vous des dpendances ! Le but, c'est de vous librer totalement des

    4 / 8

  • dpendances. La cration de nouveaux objets ne se limite pas utiliser le mot cl new. Il y ad'autres possibilits. L'instanciation d'une classe ne doit pas toujours tre public, comme vousl'avez vu avec les classes abstraites. Et pour viter les problmes de couplages, vous allezdcouvrir ds maintenant le modle. Bon, c'est pas vraiment un modle de conception, mais ase rapproche, c'est le modle Fabrique Simple. Le modle de conception factory ou fabrique,vous le verrez dans un prochain cours. En tout cas, le modle Fabrique Simple va vous aidez vous librer des dpendances contraignantes.Le problme de "new publique" Donc, lorsquevous utilisez new, vous instanciez une classe concrte. C'est un peu "le problme" avec newpublique. C'est une incrmentation, le fait de lier votre classe une classe concrte peut lerendre plus fragile au niveau des bugs, plus rigide avec des volutions un peu plus difficiles, etpour ajouter des nouvelles fonctionnalits, il devient alors ncessaire de modifier le codeexistant. Et rappelez-vous, je vous ai dis de toujours viter de modifier le code existant, parcontre, vous pouvez l'tendre, ce code l, en rajoutant de nouvelles fonctionnalits. Si vousmodifiez le code existant, vous avez beaucoup plus de risques, beaucoup plus levs, de crerdes bugs, d'avoir des bugs, et des mises jour dans le temps, qui seront de plus en plusdifficiles avec du code dissmin dans plusieurs classes de l'application, donc, du code un peupartout. Et la fin, vous obtenez une application un peu usine gaz, il est trs difficile de lafaire voluer.Les Stratgies Essentielles Revenons aux stratgies essentielles. Comme jevous l'enseigne dans les prcdents cours, il y a toujours des stratgies essentielles, utilisablesquelques soit votre langage de programmation. Que ce soit en PHP, en ActionScript, en Axe,en Java, en JavaScript, en C++, c'est tout le temps les mmes stratgies que vous devezappliquer, en modifiant lgrement la syntaxe.

    Codez des interfaces, votre code doit s'appuyer sur une interface. C'est dire que votre codefonctionnera avec toutes les classes qui implmentes cette interface, c'est du polymorphisme,rappelez-vous, vous avez commenc le voir dans le cours concernant le modle deconception dcorateur, dans un autre cours sur la programmation oriente objet. Ds

    5 / 8

  • maintenant, commencez par utiliser le modle de conception Fabrique Simple. Commentimplmenter le modle Fabrique Simple ? Nous allons prendre par exemple, une pizzeria. Vousavez une classe pizzeria qui utilise la classe Fabrique Simple, pour crer les nouvelles pizzascommandes par un client. Une classe Fabrique Simple se rfre des classes pizzasconcrtes. Donc, la Fabrique Simple, elle instancie une nouvelle classe pizza, donc fromage,fruits de mer, vgtarienne en fonction de la demande du client. La Fabrique Simple, commevous l'avez vu au dbut de ce cours, l'usine en fonction de la demande du client, elle va crerune glace au chocolat, une glace la framboise, un banana split, etc. C'est le mme principepour une pizzeria et vous avez une classe abstraite pizza, qui contient dj toutes lesimplmentations utiles, rappelez-vous le cours sur les classes abstraites. La classe abstraitepizza contient les mthodes, les proprits dj utiles, prparer, cuire, couper, emballer lapizza, etc.Comment implmenter "Fabrique Simple" ? Ensuite, vous avez Fabrique Simple, ily a les classes concrtes, les pizzas, donc chaque classe pizza, il y a une pizza au fromage,une aux fruits de mer, une classe pizza vgtarienne, elles implmentent la classe abstraitepizza. Ca fait que par dfaut, pizza fromage, fruits de mer et vgtarienne etc, tous les autrestypes de pizza auront dj les bonnes mthodes, les mthodes de la classe pizza, et sesclasses l, pizza fromage, fruits de mer vont utiliser les ingrdients ncessaire pour crer lapizza demande par le client en utilisant les mthodes de la classe abstraite pizza. Et elle, laFabrique Simple, va utiliser des instances de pizza, et donc effectuer de la composition.Rappelez-vous, trs important, le cours sur la composition, j'ai beaucoup insist sur le fait deprfrer la composition l'hritage. Donc enfaite, la pizzeria elle cre la pizza demande parle client, avec une instanciation classique, new pizzeria, on transmet la classe pizzeria unenouvelle instance de la Fabrique Simple, pizza, et ensuite la pizzeria, on lui fait commander unepizza au fromage demande par le client, et on rcupre notre instance pizza. Donc, la pizza, eton peut la livrer au client, je vais vous montrer un exemple de code source, ce sera plus parlantpour vous. Alors commenons par pizza, c'est une classe abstraite qui comme je vous le discontient en protected, rappelez-vous le cours sur les attributs des classes protected, private,public, quoi a sert, vous consultez le cours et puis voila. Donc, vous avez la liste desingrdients d'une pizza donc, un objet pte, un objet sauce, un objet lgume, une fabriqued'ingrdients, galement on peut utiliser plusieurs fabriques pour tendre les fonctionnalits dela classe. Donc la classe abstraite pizza, avec les mthodes prpares, cuire, emballer, quevous aurez bien videmment complte dans toutes les classes qui vont tendre la classepizza, et ensuite vous avez des pizza, donc une pizza fromage, avec le nom pizza fromage etbien videmment en fonction du type de pizza, vous utilisez le principe override, que vous allezvoir dans un prochain cours, pour complter la mthode de la classe abstraite. Si vous regardezla mthode de cette classe prpare, elle est vide, et comme je vous l'ai expliqu dans le courssur les classes abstraites, vous devez complter votre mthode avec les ingrdients propre lapizza au fromage, donc en utilisant la cration de la pate, de la sauce, du fromage pour unepizza au fromage. Et l vous pouvez dfinir autant de pizzas que vous le souhaitez, donc pizzaau fromage, aux fruits de mer, vgtarienne, etc. D'un autre cot, vous avez votre FabriqueSimple, qu'est ce qu'elle fait ? Elle s'occupe de crer des pizzas, elle va recevoir une chaine decaractres String en fonction de la pizza au fromage, elle va crer new pizza au fromage. Pizzaaux fruits de mer, new pizza aux fruits de mer, ou par dfaut pizza au fromage, si le clientdemande une pizza "qui n'existe pas" on lui donne par dfaut une pizza au fromage. Tout ensachant que haut pizza, donc il manque la variable haut pizza, donc enfaite la variable hautpizza serait dfinie, vous auriez private var haut pizza : qui tendrait, qui serait de type abstract

    6 / 8

  • pizza. Comme ceci. Et donc, hop, haut pizza rcupre que ce soit une instance de pizza aufromage, aux fruits de mer, vu que a tend la classe abstractive pizza, vous pouvez dfinir setmain, manipuler votre instance et la retourner la pizzeria, c'est dire que la pizzeria ellemanipule une instance haut pizza, et donc elle utilise une fabrique, quand vous l'instanciez,vous l'instanciez avec une fabrique, une instance de la Fabrique Simple, et c'est la fabrique quiva crer la pizza. Donc, c'est le principe Fabrique Simple. Vous ne vous occupez pas desclasses elles-mmes, vous manipulez uniquement des instances. Ensuite, la pizza, vous laprparez, vous la faite cuire, vous la coupez, vous l'emballe, et vous la "retournez" auclient.Avantages de "Fabrique Simple" Ensuite, les avantages du pattern Fabrique Simple,comme vous l'avez remarquez, Fabrique Simple utilise normment la composition. Vouspouvez modifier dynamiquement le comportement au moment de l'excution de l'application.Vous pouvez faire des changements de l'application en direct, de l'implmentation en direct.Dans l'exemple, c'est la possibilit de crer une pizza spcifique pour le client, une pizza aufromage, vgtarienne. Le but, c'est que vous devez dpendre d'abstractions, donc utilisez desclasses abstraites quand c'est possible. Evitez, dans la mesure du possible, de dpendre declasses concrtes et utilisez chaque fois des interfaces. Ce sont des principes essentiels.Evidemment, ces principes sont plus ou moins souples en fonction du type d'application quevous crez, ce sont des principes avoir dans un coin de la tte et utiliser.Les Gains pourvos applications performantes Les gains pour vos applications performantes, a va vouspermettre d'ajouter des nouveaux comportements sans modifier le code existant et toujours,vous aurez des conceptions rsistantes aux changements dans des architectures d'applicationsrsistantes aux changements, et suffisamment souples pour accepter les nouvellesfonctionnalits demandes par vos utilisateurs et vos clients.A vous de jouer ! Ds maintenant,vous pouvez tlcharger un exemple de code source sous ce cours vido. Etudiez le patternmodle de conception "Fabrique Simple" et mettez-le en pratique pour crer vos applications. Sivous avez des questions, posez-les-moi directement sous ce cours vido. Ou si vous avezbesoin de complment pour ce cours l dites le moi sous ce cours vido dans lescommentaires. Je vous dis trs bientt pour le prochain cours sur Dveloppement Facile.

    Tlchargez un exemple de fabrique simple

    Et voici un exemple de code source avec les diffrentes classes de la fabrique simple.

    Downloads

    Exemple ActionScript 3 de la Fabrique Simple

    Retrouvez les classes AS3 de la fabrique simple pour une Pizzeria.

    7 / 8

    http://www.programmation-facile.com/wp-content/uploads/2013/12/pattern_fabrique_simple.ziphttp://www.programmation-facile.com/wp-content/uploads/2013/12/pattern_fabrique_simple.zip
  • Consultez galement ce cours pour connaitre lesattributs d'une classe et d'une variable (private,public...).

    Dans quel type d'application avez-vous implment une fabriquesimple ?

    Il est possible d'utiliser ce "presque pattern" pour crer une application "usine de fabrication",une pizzeria... Partagez vos exemples d'applications dveloppes sur ce modle.Commentcrer des architectures faiblement couples ?

    Powered by TCPDF (www.tcpdf.org)

    8 / 8

    http://www.programmation-facile.com/utiliser-poo-dans-applications-private-public-protected/http://www.programmation-facile.com/creer-des-architectures-faiblement-couplees-factory/http://www.programmation-facile.com/creer-des-architectures-faiblement-couplees-factory/http://www.tcpdf.org