CINXE.COM
Architecture - InfoQ
<!DOCTYPE html> <html lang="fr" xmlns="http://www.w3.org/1999/xhtml"> <head> <!-- Google Optimize Anti-flicker snippet (recommended) --> <style>.async-hide { opacity: 0 !important} </style> <style>.promo{background:#222528;position:fixed;z-index:1001!important;left:0;top:0;right:0;max-height:48px;min-height:48px;padding-top:0!important;padding-bottom:0!important}.promo,.promo p{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.promo p{font-size:.8125rem;line-height:1rem;color:#fff;margin-bottom:0;margin-top:0;margin:0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;font-weight:700}@media only screen and (max-width:650px){.promo p{font-size:.6875rem}}.promo span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.promo a{color:#fff!important;text-decoration:underline!important}.promo a.btn{background:#d0021b;padding:7px 20px;text-decoration:none!important;font-weight:700;margin-left:10px;margin-right:10px;white-space:nowrap;border-radius:5px}@media only screen and (max-width:650px){.promo a.btn{font-size:.6875rem;padding:7px 10px}}.promo.container{padding-top:8px;padding-bottom:8px}@media only screen and (min-width:1050px){.promo.container{padding-top:0;padding-bottom:0}}.promo .actions{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.promo .actions__left{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.promo .actions__right{-ms-flex-preferred-size:40px;flex-basis:40px;margin-top:0;margin-bottom:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.promo.hidden{display:none}.promo.show{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.promo.show .container__inner{-webkit-box-flex:1;-ms-flex:1;flex:1}.promo.fixed{position:fixed}.promo.show+header.header{margin-top:48px}.header{background:#fff;-webkit-box-shadow:0 1px 0 #dde2e5;box-shadow:0 1px 0 #dde2e5}.header .actions__left,.header__bottom__events{max-width:100%!important;margin:0}.header .header__events-all{margin:0;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative}.header .header__events-all .header__event-slot{-webkit-box-flex:1;-ms-flex:1 100%;flex:1 100%;border-right:1px solid #dde2e5;margin-top:3px;margin-bottom:3px;padding-left:15px;text-align:left;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-right:5px;min-width:300px}.header .header__events-all .header__event-slot:hover{text-decoration:none!important}.header .header__events-all .header__event-slot img{min-width:40px;height:40px}.header .header__events-all .header__event-slot div{margin-left:10px}.header .header__events-all .header__event-slot span{font-weight:700!important;font-size:.75rem;margin-bottom:0!important;margin-top:0;display:block;line-height:1.125rem;text-align:left}.header .header__events-all .header__event-slot p{font-weight:400;font-size:.625rem;line-height:130%!important;color:#495057!important;margin:0}@media only screen and (min-width:1050px){.header .header__events-all .header__event-slot p{font-size:.625rem}}.header .header__events-all .header__event-slot:first-child{padding-left:0}.header .header__events-all .header__event-slot:last-child{padding-right:0;border-right:0}@media only screen and (min-width:1050px){.header__bottom,.header__middle,.header__top{position:relative;white-space:nowrap}}.header__top{padding:10px 0}@media only screen and (min-width:800px){.header__top{padding:5px 0}}.header__bottom{padding:5px 0;z-index:29;max-width:100%}.header__bottom a{font-size:.8125rem}.header__bottom .trending{margin-left:0;margin-right:0}.header__bottom .actions{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.header__bottom .actions__left{max-width:calc(100% + 8px)}@media only screen and (min-width:800px){.header__bottom .actions__left{max-width:calc(100% + 24px)}}.header__bottom .actions__right{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;display:none}@media only screen and (min-width:1050px){.header__bottom .actions__right{display:-webkit-box;display:-ms-flexbox;display:flex}}.header__middle{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}@media only screen and (min-width:1050px){.header__middle{-ms-flex-wrap:nowrap;flex-wrap:nowrap}}.header__top .actions__left{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}@media only screen and (min-width:1050px){.header__top .actions__right{max-width:430px}}.no-style.header__nav li:nth-child(3){font-weight:700}.no-style.header__nav li:nth-child(3) a{color:#0e5ef1!important}.header__bottom__events::after{background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),to(#fff));background:linear-gradient(90deg,rgba(255,255,255,0) 0,#fff 100%);content:'';position:absolute;height:60px;right:10px;width:25px}@media only screen and (min-width:1050px){.header__bottom__events::after{display:none}}.contribute-link{font-weight:400;font-size:.6875rem;color:#000!important;position:relative;padding-left:10px}.contribute-link:hover{color:#00791d!important;text-decoration:none!important}.contribute-link::before{content:'';width:1px;height:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:rgba(0,0,0,.1);left:-1px}.my-0{margin-top:0!important;margin-bottom:0!important}.header__desc.my-0{margin-left:0}.header__bottom__events .actions__left{max-width:100%!important;overflow-x:scroll;-ms-overflow-style:none;scrollbar-width:none;display:block;scroll-behavior:smooth;min-width:100%}.header__bottom__events .actions__left::-webkit-scrollbar{display:none}.header__bottom__events .actions__left:-webkit-scrollbar-thumb{background:#fff}.logo{line-height:1rem}.header{position:relative;z-index:41;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.header .input:focus,.header input[type=password]:focus,.header input[type=text]:focus{border:1px solid #00791d}.header a:not(.button):not(.login__action):not(.active){text-decoration:none;color:#222}.header a:not(.button):not(.login__action):not(.active):hover{text-decoration:underline;color:#222}.header__items{display:none;-ms-flex-wrap:wrap;flex-wrap:wrap}@media only screen and (min-width:1050px){.header__items{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.header__items nav{position:relative;background:0 0;padding:0;left:0;top:0;line-height:inherit;display:block;-webkit-box-shadow:none;box-shadow:none;max-width:100%;max-height:80px}}.header__items>div{width:100%;margin-bottom:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}@media only screen and (min-width:552px){.header__items>div:not(:nth-last-child(-n+2)){margin-bottom:32px}}@media only screen and (min-width:552px) and (max-width:1050px){.header__items>div{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:calc(99.7% * 1/2 - (32px - 32px * 1/2));flex-basis:calc(99.7% * 1/2 - (32px - 32px * 1/2));max-width:calc(99.7% * 1/2 - (32px - 32px * 1/2));width:calc(99.7% * 1/2 - (32px - 32px * 1/2))}.header__items>div:nth-child(1n){margin-right:32px;margin-left:0}.header__items>div:last-child{margin-right:0}.header__items>div:nth-child(2n){margin-right:0;margin-left:auto}}@media only screen and (min-width:800px) and (max-width:1050px){.header__items>div{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:calc(99.7% * 1/4 - (32px - 32px * 1/4));flex-basis:calc(99.7% * 1/4 - (32px - 32px * 1/4));max-width:calc(99.7% * 1/4 - (32px - 32px * 1/4));width:calc(99.7% * 1/4 - (32px - 32px * 1/4))}.header__items>div:nth-child(1n){margin-right:32px;margin-left:0}.header__items>div:last-child{margin-right:0}.header__items>div:nth-child(4n){margin-right:0;margin-left:auto}}@media only screen and (min-width:1050px){.header__items>div{margin-bottom:0!important;margin-right:0!important;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}.header__items .language__switcher{display:none}.header__items .language__switcher .li-nav.active>a,.header__items .language__switcher>li.active>a{color:#fff!important}.header__items .language__switcher .li-nav.active>a:hover,.header__items .language__switcher>li.active>a:hover{color:#fff!important;background:#0e5ef1}.header__items .language__switcher .li-nav:hover>a,.header__items .language__switcher>li:hover>a{color:#fff}.header+main{display:block;min-height:210px;-webkit-transition:margin .15s ease;transition:margin .15s ease;margin-top:0!important}.header--hide .header+main{margin-top:50px}.header--hide .header__toggle{opacity:0;top:20px;visibility:hidden}.header--hide .header__logo{max-height:0}.header--hide .header__middle,.header--hide .header__top{max-height:0;overflow:hidden;padding-top:0;padding-bottom:0;border-color:transparent}.header--hide .header__bottom .vue-portal-target{top:3px;right:0;bottom:auto;left:auto;position:absolute}.header__middle,.header__top{-webkit-transition:all .15s ease;transition:all .15s ease}.header__middle{border-bottom:1px solid rgba(0,0,0,.1);z-index:33}.header__middle .vue-portal-target{width:100%}@media only screen and (min-width:1050px){.header__middle .vue-portal-target{display:none}}@media only screen and (min-width:1050px){.header__middle{line-height:5.75rem;text-align:left;padding:0;z-index:30}.header__middle .widget__heading{display:none}}.header__top>.actions__left{display:none}@media only screen and (min-width:1050px){.header__top>.actions__left{display:-webkit-box;display:-ms-flexbox;display:flex}}.header__top>.actions__right{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin-right:0;margin-top:0;margin-bottom:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.header__top>.actions__right .dropdown__holder{width:calc(100vw - 16px);max-height:80vh}@media only screen and (min-width:600px){.header__top>.actions__right .dropdown__holder{width:auto}}.header__top>.actions__right>*{margin:0}.header__top>.actions__right .search{display:none}@media only screen and (min-width:1050px){.header__top>.actions__right>*{display:-webkit-box;display:-ms-flexbox;display:flex;white-space:nowrap}.header__top>.actions__right .search{display:block}}.header__top .user__login{display:block}.header__top .user__login>.button,.header__top .user__login>button{border-top-right-radius:0;border-bottom-right-radius:0}@media only screen and (min-width:1050px){.header__top{position:relative;right:auto;width:100%}}.header__logo{max-width:165px;position:absolute;top:8px;overflow:hidden;-webkit-transition:all .1s ease;transition:all .1s ease;z-index:32;line-height:2.25rem;height:36px;width:100px;margin-left:50px;-ms-flex-preferred-size:190px;flex-basis:190px}@media only screen and (min-width:800px){.header__logo{top:4px}}@media only screen and (min-width:1050px){.header__logo{position:relative;top:0;overflow:visible;margin-right:20px;margin-left:0;line-height:3.125rem;height:50px}.header__logo>*{width:165px}}@media only screen and (min-width:1280px){.header__logo{margin-right:30px}}.header__desc,.header__more>button{text-transform:capitalize;color:#666;letter-spacing:0;font-size:0;font-weight:400;line-height:1.5rem;vertical-align:top;font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI",system-ui,ui-sans-serif,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-transition:font-size .15s ease-in-out;transition:font-size .15s ease-in-out}@media only screen and (min-width:1050px){.header__desc,.header__more>button{font-size:.6875rem}}.header__desc{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;position:relative;width:auto}.header__topics{white-space:nowrap;float:right;position:relative}.header__topics *{display:inline-block;vertical-align:top}.header__topics a{font-size:.8125rem}@media only screen and (min-width:1050px){.header__topics{float:none}}.header__more{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:top}.header__more:before{left:-12px}.header__more:after,.header__more:before{content:'';width:1px;height:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:rgba(0,0,0,.1)}.header__more:after{right:-12px}.header__more:hover{cursor:pointer;color:rgba(0,0,0,.75)}.header__user{display:inline-block;vertical-align:top;white-space:nowrap;margin-left:8px}@media only screen and (min-width:1050px){.header__user{margin-left:0}}.header__user>div{display:inline-block;vertical-align:top}.header__user-nav a:not(.button){text-transform:uppercase;font-size:.75rem;font-weight:600}.header__user-nav a:not(.button):not(.active){opacity:.5}.header__user-nav a:not(.button):not(.active):hover{opacity:.75}.header__user-nav a:not(.button):hover{text-decoration:none}.header__user-nav a:not(.button).active{color:#222;cursor:default;text-decoration:none}.header__user-nav a:not(.button):before{margin-right:0}.header__user-nav a:not(.button):not(:last-child){margin-right:16px}@media only screen and (min-width:1050px){.header__user-nav a:not(.button):not(:last-child){margin-right:32px}}@media only screen and (min-width:1050px){.header__user-nav+.header__topics{margin-left:56px}}.header__search{display:none;vertical-align:top;margin-right:0}@media only screen and (min-width:1050px){.header__search{display:inline-block}}.header__search,.header__user{line-height:inherit}.header__nav{border-bottom:1px solid rgba(0,0,0,.1)}@media only screen and (min-width:800px){.header__nav{border-bottom:0}}.header__nav .button{margin-left:0}.header__nav .button__more{margin-right:20px}.header__nav .li-nav,.header__nav>li{-webkit-transition:all .15s ease;transition:all .15s ease}@media only screen and (min-width:1050px){.header__nav .li-nav,.header__nav>li{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle;position:static;border:none;min-height:65px}.header__nav .li-nav:hover.has--subnav .nav .li-nav,.header__nav .li-nav:hover.has--subnav .nav>li,.header__nav>li:hover.has--subnav .nav .li-nav,.header__nav>li:hover.has--subnav .nav>li{white-space:normal}.header__nav .li-nav:hover.has--subnav .nav__subnav,.header__nav>li:hover.has--subnav .nav__subnav{opacity:1;top:100%;visibility:visible;-webkit-transition-delay:.25s;transition-delay:.25s}.header__nav .li-nav:hover.has--subnav .nav__category,.header__nav>li:hover.has--subnav .nav__category{width:100%}.header__nav .li-nav:hover.has--subnav .nav__category:after,.header__nav .li-nav:hover.has--subnav .nav__category:before,.header__nav>li:hover.has--subnav .nav__category:after,.header__nav>li:hover.has--subnav .nav__category:before{-webkit-transition-delay:.25s;transition-delay:.25s;opacity:1}}@media only screen and (min-width:1080px){.header__nav .li-nav:not(:last-child),.header__nav>li:not(:last-child){margin-right:23px;margin-left:23px}}@media only screen and (min-width:1280px){.header__nav .li-nav:not(:last-child),.header__nav>li:not(:last-child){margin-right:23px;margin-left:23px}}@media only screen and (min-width:1338px){.header__nav .li-nav:not(:last-child),.header__nav>li:not(:last-child){margin-right:23px;margin-left:23px}}.header__nav .li-nav>a,.header__nav>li>a{font-size:.875rem;line-height:1.5rem;padding:12px 0;color:#000;display:inline-block;max-width:100%;position:relative;z-index:61;white-space:normal}@media only screen and (min-width:1050px){.header__nav .li-nav>a,.header__nav>li>a{padding:8px 0 0;font-weight:700}}.header__nav .li-nav>a:after,.header__nav .li-nav>a:before,.header__nav>li>a:after,.header__nav>li>a:before{content:'';position:absolute;bottom:-1px;left:50%;width:0;height:0;opacity:0;-webkit-transform:translateX(-50%);transform:translateX(-50%);border-style:solid;border-width:0 5px 5px 5px;-webkit-transition:opacity .15s ease-in-out;transition:opacity .15s ease-in-out;border-color:transparent transparent #fff transparent}.header__nav .li-nav>a:before,.header__nav>li>a:before{left:50%;bottom:0;border-width:0 6px 6px 6px;border-color:transparent transparent #f5f7f8 transparent}@media only screen and (min-width:1050px){.header__nav .li-nav>a,.header__nav>li>a{font-size:1rem}}@media only screen and (min-width:1800px){.header__nav .li-nav>a,.header__nav>li>a{font-size:1.125rem}}.header--open{overflow:hidden}@media only screen and (min-width:600px){.header--open{overflow:visible}}.header--open .content-items{max-height:215px;margin:12px 0 24px}.header--open .search{margin-top:16px;display:block}.header--open .header__toggle:before{z-index:10}.header--open .header__toggle>span:nth-child(1){top:50%;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.header--open .header__toggle>span:nth-child(2){opacity:0}.header--open .header__toggle>span:nth-child(3){top:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.header--open .header__items,.header--open .header__items .language__switcher{display:-webkit-box;display:-ms-flexbox;display:flex}.header--open .header__top{z-index:100;position:absolute;left:0;right:8px;background:#fff}@media only screen and (min-width:800px){.header--open .header__top{right:20px}}.header--open .header__top .search{display:none}.header--open .header__logo{z-index:101}.header--open .header__middle{padding-top:60px}.header--open .header__bottom{display:none}.header--open .header__container{max-height:90vh;overflow-x:hidden;overflow-y:auto}@media only screen and (min-width:1050px){.header--open .header__container{overflow:visible}}.header .subnav{position:absolute;-webkit-box-shadow:0 5px 25px 1px rgba(0,0,0,.15);box-shadow:0 5px 25px 1px rgba(0,0,0,.15);background:#fff;visibility:hidden;line-height:1.75rem;max-width:100%;width:100%;left:0;opacity:0;overflow:hidden;border:1px solid #f5f7f8;border-radius:2px;-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;top:105%;z-index:60;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.header .subnav .subnav__categories{-webkit-box-flex:0;-ms-flex:0 1 280px;flex:0 1 280px;padding:24px 0;background:#f5f7f8;margin-right:0!important}.header .subnav .subnav__categories>li{display:block;font-size:.9375rem;padding:2px 48px 2px 24px}.header .subnav .subnav__categories>li a{display:block;font-weight:700}.header .subnav .subnav__categories>li:hover{background:#e1e1e1}.header .subnav .subnav__heading{margin-bottom:20px}.header .subnav .subnav__content{position:relative;-ms-flex-item-align:start;align-self:flex-start;padding:24px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}@media only screen and (min-width:1050px){.header .subnav .subnav__content{padding-left:32px;padding-right:32px;margin:0 auto;-webkit-box-flex:1;-ms-flex:1 1 600px;flex:1 1 600px}}.header .subnav .subnav__content .heading__container{-ms-flex-preferred-size:100%;flex-basis:100%}.header .subnav .subnav__content:before{content:'';position:absolute;left:0;top:0;bottom:-100%;width:1px;background:rgba(0,0,0,.1)}.languagesEdition .active{font-weight:700}.header__more.dropdown:after{content:'';display:inline-block;vertical-align:middle;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;background-repeat:no-repeat;background-position:center;margin-bottom:2px;width:7px;height:7px;-webkit-transition:-webkit-transform .15s ease;transition:-webkit-transform .15s ease;transition:transform .15s ease;transition:transform .15s ease,-webkit-transform .15s ease;background-color:#fff!important;background-size:contain}.header__more.dropdown button{color:#000!important;margin-right:-20px;padding-right:20px;z-index:1000}.header__more.dropdown .dropdown__holder{width:165px}.header__more.dropdown .dropdown__content{padding:13px;padding-top:5px;padding-bottom:5px}.header__more.dropdown .languagesEdition li{border-bottom:1px solid #e6e6e6}.header__more.dropdown .languagesEdition li:last-child{border:0}.logo__data{display:none;color:#666;font-size:.6875rem}@media only screen and (min-width:1050px){.logo__data{display:block;line-height:.8125rem}}.container{padding-left:12px;padding-right:12px;margin:0 auto;min-width:320px;-webkit-transition:padding .15s ease-in-out;transition:padding .15s ease-in-out}@media only screen and (min-width:600px){.container{padding-left:16px;padding-right:16px}}@media only screen and (min-width:800px){.container{padding-left:20px;padding-right:20px}}@media only screen and (min-width:1250px){.container{padding-left:60px;padding-right:60px}}@media only screen and (min-width:1400px){.container{padding-left:20px;padding-right:20px}}.container.white{background:#fff}.container__inner{max-width:1290px;margin:0 auto;-webkit-transition:max-width .15s ease-out;transition:max-width .15s ease-out}.search{display:block;position:relative;z-index:33;width:100%;max-width:100%;margin:0}.search:before{position:absolute;top:50%;right:24px;-webkit-transform:translateY(-50%);transform:translateY(-50%);margin-right:0;z-index:34}.search__bar{display:block;border-radius:2px;position:relative;z-index:33}.search__bar #search{margin-bottom:0;max-width:100%;background:#fff}.search__go{top:50%;right:0;bottom:0;left:auto;position:absolute;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:32;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:36px;height:36px;line-height:2.25rem;-webkit-box-shadow:none;box-shadow:none;display:block;background:0 0;border:0;font-size:0}@media only screen and (min-width:600px){.search__go{z-index:35}}.header #search,.search__go:hover{cursor:pointer}.header #search{height:36px;position:relative;max-width:100%;background-color:#f5f7f8!important}@media only screen and (min-width:600px){.header #search{font-size:.8125rem;min-width:165px;max-width:100%;opacity:1}}.header #search:hover{cursor:auto}@media only screen and (min-width:1050px){.header #search{margin-left:auto;border-top-right-radius:0;border-bottom-right-radius:0;border-right:0}.header #search:focus{min-width:215px}}.header #search:focus{cursor:auto}.header #search .field__desc{display:none}.header #searchForm{width:100%;margin-top:8px}.header #searchForm:before{right:8px}@media only screen and (min-width:600px){.header #searchForm{margin-top:16px}}@media only screen and (min-width:1050px){.header #searchForm{margin-top:0}}</style> <script>(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date; h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')}; (a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c; })(window,document.documentElement,'async-hide','dataLayer',4000, {'GTM-W9GJ5DL':true});</script> <script type="text/javascript"> var loggedIn = false; if (loggedIn) { var userCountryId = ''; } </script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('config', 'G-VMVPD4D2JY'); //CookieControl tool recomendation // Call the default command before gtag.js or Tag Manager runs to // adjust how the tags operate when they run. Modify the defaults // per your business requirements and prior consent granted/denied, e.g.: gtag('consent', 'default', { 'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'denied' }); if((typeof loggedIn != "undefined") && loggedIn){ window.dataLayer.push({'logged_in': 'true'}); } else { window.dataLayer.push({'logged_in': 'false'}); } window.dataLayer.push({'show_queryz': ''}); </script> <!-- Google Tag Manager --> <script> var gtmProfile="GTM-W9GJ5DL"; (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer', gtmProfile);</script> <!-- End Google Tag Manager --> <title>Architecture - InfoQ</title> <link rel="canonical" href="https://www.infoq.com/fr/architecture/"/> <link rel="alternate" href="https://www.infoq.com/fr/architecture/" hreflang="fr"/> <link rel="alternate" href="https://www.infoq.com/jp/architecture/" hreflang="ja" /> <link rel="alternate" href="https://www.infoq.com/br/architecture/" hreflang="pt" /> <link rel="alternate" href="https://www.infoq.com/architecture/" hreflang="en" /> <link rel="alternate" href="https://www.infoq.com/architecture/" hreflang="x-default" /> <meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="cache-control" content="private,no-cache,no-store,must-revalidate" /> <meta http-equiv="expires" content="0" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="copyright" content="© 2006 C4Media" /> <meta name="google-site-verification" content="0qInQx_1WYOeIIbxnh7DnXlw1XOxNgAYakO2k4GhNnY" /> <meta name="msapplication-TileColor" content="#ffffff"/> <meta name="msapplication-TileImage" content="/styles/static/images/logo/logo.jpg"/> <meta property="wb:webmaster" content="3eac1729a8bbe046" /> <meta content="width=device-width,initial-scale=1" name="viewport"> <meta http-equiv="X-UA-Compatible" content="IE=10, IE=edge"> <link rel="stylesheet" type="text/css" media="screen" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/style.css"/> <link rel="stylesheet" type="text/css" media="print" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/print.css"/> <link rel="preload" type="text/css" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/style_fr.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> <link rel="preload" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/icons.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> <link rel="preload" type="text/css" media="screen" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/style_extra.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> <noscript> <link rel="stylesheet" type="text/css" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/style_fr.css"/> <link rel="stylesheet" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/icons.css"> <link rel="stylesheet" type="text/css" media="screen" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/style_extra.css"/> </noscript> <link rel="stylesheet" type="text/css" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/fonts/font.css"/> <link rel="shortcut icon" href="https://cdn.infoq.com/statics_s2_20250228123450/favicon.ico" type="image/x-icon" /> <link rel="apple-touch-icon" href="https://cdn.infoq.com/statics_s2_20250228123450/apple-touch-icon.png"/> <script type="text/javascript"> var device='desktop'; var InfoQConstants = {}; InfoQConstants.language = 'fr'; InfoQConstants.countryCode = '/fr'; InfoQConstants.pageUrl = (typeof window.location != 'undefined' && window.location && typeof window.location.href != 'undefined' && window.location.href) ? window.location.href : "URL_UNAVAILABLE"; InfoQConstants.cet='eOR6JsTe59DuGOzR'; InfoQConstants.userDetectedCountryCode = 'SG'; InfoQConstants.bpadb = 'oCOjWmPC4BS3qhTDkqXP'; </script> <script type="text/javascript" src="https://cdn.infoq.com/statics_s2_20250228123450/scripts/combinedJs.min.js"></script> <script type="text/javascript"> var JSi18n = JSi18n || {}; // define only if not already defined JSi18n.error='Erreur'; JSi18n.login_unverifiedAccount='Compte non vérifié'; JSi18n.contentSummary_showPresentations_1=''; JSi18n.contentSummary_showPresentations_2=''; JSi18n.contentSummary_showPresentations_3=''; JSi18n.contentSummary_showInterviews_1=''; JSi18n.contentSummary_showInterviews_2=''; JSi18n.contentSummary_showInterviews_3=''; JSi18n.contentSummary_showMinibooks_1=''; JSi18n.contentSummary_showMinibooks_2=''; JSi18n.login_sendingRequest='Envoi de la requête ...'; JSi18n.bookmark_saved='<q> Enregistré </q>'; JSi18n.bookmark_error='<q style=color:black;> Erreur </q>'; JSi18n.categoryManagement_showpopup_viewAllLink_viewAllPrefix='Voir tout'; JSi18n.categoryManagement_showpopup_viewAllLink_viewAllSuffix=''; JSi18n.categoryManagement_showpopup_includeExcludeLink_Exclude='Exclure'; JSi18n.categoryManagement_showpopup_includeExcludeLink_Include='Inclure'; JSi18n.login_invalid_email='Veuillez indiquer une adresse email valide'; JSi18n.login_email_not_found = 'Aucun utilisateur trouvé pour cette adresse email'; JSi18n.content_datetime_format='dd MMM yyyy'; // used by frontend JSi18n.FE = { labels: { follow: "Suivre", followTopic: "SUIVRE LE SUJET", unfollow: "Se désabonner", unfollowTopic: "NE PLUS SUIVRE LE SUJET", following: "Abonnements", followers: "Abonnés", like: "J'aime", liked: "a aimé", authors: "Pairs", users : "Lecteurs", topics: "Sujets", hide: "Masquer l’élément", hidden: "%s était masqué sur votre profil.", undo: "Annuler", showLess: "Voir moins", showMore: "En savoir plus", moreAuthors: "Et %s de plus", bookmarked: "Content Bookmarked", unbookmarked: "Content Unbookmarked", characterLimit: "Caractère(s) restant(s)" } } var usersInPage = JSON.parse('[{\"id\":\"3885831\",\"ref\":\"author-Michael-Redlich\",\"url\":\"\/fr\/profile\/Michael-Redlich\",\"followedByCurrentUser\":false,\"minibio\":\"Java Champion | Java Queue Lead Editor | Director at GSJUG\",\"name\":\"Michael Redlich\",\"bio\":\"\",\"followers\":561,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/TxhBF2gloUbm6EjmEsvlQPphHPLElD6g.jpg\"},{\"id\":\"43528774\",\"ref\":\"author-Otavio-Santana\",\"url\":\"\/fr\/profile\/Otavio-Santana\",\"followedByCurrentUser\":false,\"minibio\":\"A passionate, Award-winning Software Engineer and Architect\",\"name\":\"Otavio Santana\",\"bio\":\"\",\"followers\":168,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/XywpPBfal5RvV84xgiFdHtq4ahQS1kYH.jpg\"},{\"id\":\"60418887\",\"ref\":\"author-Olimpiu-Pop\",\"url\":\"\/fr\/profile\/Olimpiu-Pop\",\"followedByCurrentUser\":false,\"minibio\":\"Tech Executive and Engineer Focused on a Holistic Approach\",\"name\":\"Olimpiu Pop\",\"bio\":\"\",\"followers\":71,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/xdEJUM0sXSfDbXIFRMaailphJmX1ZcmX.jpg\"},{\"id\":\"61284702\",\"ref\":\"author-Jean~Michel-Doudoux\",\"url\":\"\/fr\/profile\/Jean~Michel-Doudoux\",\"followedByCurrentUser\":false,\"minibio\":\"Java Champion\",\"name\":\"Jean-Michel Doudoux\",\"bio\":\"\",\"followers\":82,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/C7ZrnJESj2pPqnkLlft8s3ML6hxm4UaB.jpg\"},{\"id\":\"50270429\",\"ref\":\"author-Nicolas-Frankel\",\"url\":\"\/fr\/profile\/Nicolas-Frankel\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Nicolas Frankel\",\"bio\":\"\",\"followers\":20,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/xUqi1zrkwIXYdzv6XvAiYGdM8BBYrKtu.jpg\"},{\"id\":\"126469079\",\"ref\":\"author-Jocerand-Ducroux\",\"url\":\"\/fr\/profile\/Jocerand-Ducroux\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Jocerand Ducroux\",\"bio\":\"\",\"followers\":2,\"imgSrc\":\"\"},{\"id\":\"66520046\",\"ref\":\"author-St\u00E9phane-Wojewoda\",\"url\":\"\/fr\/profile\/St\u00E9phane-Wojewoda\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"St\u00E9phane Wojewoda\",\"bio\":\"\",\"followers\":41,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/TUUHjvThQOkY6KLs9avFZ2o8XvgB53Ab.png\"},{\"id\":\"126570391\",\"ref\":\"author-Sylvie-Knaff\",\"url\":\"\/fr\/profile\/Sylvie-Knaff\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Sylvie Knaff\",\"bio\":\"\",\"followers\":4,\"imgSrc\":\"\"},{\"id\":\"126582922\",\"ref\":\"author-Simon-Chareyron\",\"url\":\"\/fr\/profile\/Simon-Chareyron\",\"followedByCurrentUser\":false,\"minibio\":\"Architecte de solutions\",\"name\":\"Simon Chareyron\",\"bio\":\"\",\"followers\":2,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/f2e1c59d2441c84704c530affa218fbb.jpg\"},{\"id\":\"126469081\",\"ref\":\"author-Marina-Wiesel\",\"url\":\"\/fr\/profile\/Marina-Wiesel\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Marina Wiesel\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"101756701\",\"ref\":\"author-Brice-Leporini\",\"url\":\"\/fr\/profile\/Brice-Leporini\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Brice Leporini\",\"bio\":\"\",\"followers\":16,\"imgSrc\":\"\"},{\"id\":\"126469080\",\"ref\":\"author-Laure-Constantinesco\",\"url\":\"\/fr\/profile\/Laure-Constantinesco\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Laure Constantinesco\",\"bio\":\"\",\"followers\":2,\"imgSrc\":\"\"},{\"id\":\"101761170\",\"ref\":\"author-Nicolas-Blanc\",\"url\":\"\/fr\/profile\/Nicolas-Blanc\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Nicolas Blanc\",\"bio\":\"\",\"followers\":1,\"imgSrc\":\"\"},{\"id\":\"101756751\",\"ref\":\"author-InfoQ.com\",\"url\":\"\/fr\/profile\/InfoQ.com\",\"followedByCurrentUser\":false,\"minibio\":\"ACCELERATING THE SOFTWARE SIDE OF HUMAN PROGRESS\",\"name\":\"InfoQ.com\",\"bio\":\"\",\"followers\":141,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/B9OW6pVFaHod7aklncHo2fMvbsOYPSHt.jpg\"},{\"id\":\"101761159\",\"ref\":\"author-Guillaume-Lebur\",\"url\":\"\/fr\/profile\/Guillaume-Lebur\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Guillaume Lebur\",\"bio\":\"\",\"followers\":4,\"imgSrc\":\"\"},{\"id\":\"101762205\",\"ref\":\"author-Olivier-Destrade\",\"url\":\"\/fr\/profile\/Olivier-Destrade\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Olivier Destrade\",\"bio\":\"\",\"followers\":1,\"imgSrc\":\"\"},{\"id\":\"101761251\",\"ref\":\"author-Daniel-Mezick\",\"url\":\"\/fr\/profile\/Daniel-Mezick\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Daniel Mezick\",\"bio\":\"\",\"followers\":5,\"imgSrc\":\"\"},{\"id\":\"21186991\",\"ref\":\"author-Slim-Ouertani\",\"url\":\"\/fr\/profile\/Slim-Ouertani\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Slim Ouertani\",\"bio\":\"\",\"followers\":19,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/CyyeDmzyWtAxeZfcEFcSBmSxJ0MIouej.jpg\"},{\"id\":\"126599428\",\"ref\":\"author-Steve-Rodda\",\"url\":\"\/fr\/profile\/Steve-Rodda\",\"followedByCurrentUser\":false,\"minibio\":\"CEO of Stoplight\",\"name\":\"Steve Rodda\",\"bio\":\"\",\"followers\":8,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/c27e6743c8a8ebde27e622e1d5cb5f08.jpg\"},{\"id\":\"126607049\",\"ref\":\"author-Amir-Rozenberg\",\"url\":\"\/fr\/profile\/Amir-Rozenberg\",\"followedByCurrentUser\":false,\"minibio\":\"VP Product at Quali\",\"name\":\"Amir Rozenberg\",\"bio\":\"\",\"followers\":1,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/5d042e797610870091fd10bc771706aa.jpg\"},{\"id\":\"44272503\",\"ref\":\"author-Vasco-Veloso\",\"url\":\"\/fr\/profile\/Vasco-Veloso\",\"followedByCurrentUser\":false,\"minibio\":\"Software Engineer @ ING\",\"name\":\"Vasco Veloso\",\"bio\":\"\",\"followers\":78,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/nMd3J4QF4fjdyRGLoIZHSx1iqEFBaCUH.jpg\"},{\"id\":\"101756562\",\"ref\":\"author-Nicolas-De-Loof\",\"url\":\"\/fr\/profile\/Nicolas-De-Loof\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Nicolas De Loof\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"110207\",\"ref\":\"author-Charles-Humble\",\"url\":\"\/fr\/profile\/Charles-Humble\",\"followedByCurrentUser\":false,\"minibio\":\"Techie, podcaster, editor, author and consultant\",\"name\":\"Charles Humble\",\"bio\":\"\",\"followers\":2014,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/lCB_2ocIPJA40tWqjmkSLeVd5ZhJQlt_.jpg\"},{\"id\":\"126551174\",\"ref\":\"author-Reza-Rahimi\",\"url\":\"\/fr\/profile\/Reza-Rahimi\",\"followedByCurrentUser\":false,\"minibio\":\"Head of AI & Data @ iHealth Labs - USA\",\"name\":\"Reza Rahimi\",\"bio\":\"\",\"followers\":17,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/uu7lXP6E7NBAzHLvrhQpwtbgY9o04jyE.jpg\"},{\"id\":\"104345544\",\"ref\":\"author-Arnaud-Kervern\",\"url\":\"\/fr\/profile\/Arnaud-Kervern\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Arnaud Kervern\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"126422433\",\"ref\":\"author-Edouard-Gomez~Va\u00EBz\",\"url\":\"\/fr\/profile\/Edouard-Gomez~Va\u00EBz\",\"followedByCurrentUser\":false,\"minibio\":\"VP of engineering at Arolla\",\"name\":\"Edouard Gomez-Va\u00EBz\",\"bio\":\"\",\"followers\":3,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/865815875bbb6396871ec9daa11734dc.jpeg\"},{\"id\":\"55454401\",\"ref\":\"author-Ben-Linders\",\"url\":\"\/fr\/profile\/Ben-Linders\",\"followedByCurrentUser\":false,\"minibio\":\"Trainer \/ Coach \/ Adviser \/ Author \/ Speaker @BenLinders.com\",\"name\":\"Ben Linders\",\"bio\":\"\",\"followers\":667,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/Dwyu3y5agoDZV9jPKwQcwQ6oYv7gVeR4.jpg\"},{\"id\":\"114725059\",\"ref\":\"author-Holly-Cummins\",\"url\":\"\/fr\/profile\/Holly-Cummins\",\"followedByCurrentUser\":false,\"minibio\":\"Senior Principal Software Engineer, Red Hat\",\"name\":\"Holly Cummins\",\"bio\":\"\",\"followers\":459,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/cRsuGlFgKyGmGfEHvafpMO63CxbrEm22.jpg\"},{\"id\":\"101760349\",\"ref\":\"author-Alain-Le-Guennec\",\"url\":\"\/fr\/profile\/Alain-Le-Guennec\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Alain Le Guennec\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"101757791\",\"ref\":\"author-Aur\u00E9lien-Maury\",\"url\":\"\/fr\/profile\/Aur\u00E9lien-Maury\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Aur\u00E9lien Maury\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"102926387\",\"ref\":\"author-Bastien-Jaillot\",\"url\":\"\/fr\/profile\/Bastien-Jaillot\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Bastien Jaillot\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"114283052\",\"ref\":\"author-Fatma-Urek-Uludag\",\"url\":\"\/fr\/profile\/Fatma-Urek-Uludag\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Fatma Urek Uludag\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"126580663\",\"ref\":\"author-Marco-Consolaro\",\"url\":\"\/fr\/profile\/Marco-Consolaro\",\"followedByCurrentUser\":false,\"minibio\":\"Co-founder and Socio-Technical Coach at Alcor Academy\",\"name\":\"Marco Consolaro\",\"bio\":\"\",\"followers\":7,\"imgSrc\":\"https:\/\/cdn.infoq.com\/statics_s2_20250228123450\/images\/profiles\/2LsK32HJp3XQ5SyaApst0W0CoU40Si4a.jpg\"},{\"id\":\"126594853\",\"ref\":\"author-Merlin-Boyer\",\"url\":\"\/fr\/profile\/Merlin-Boyer\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Merlin Boyer\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"101764185\",\"ref\":\"author-Mika\u00EBl-Barbero\",\"url\":\"\/fr\/profile\/Mika\u00EBl-Barbero\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Mika\u00EBl Barbero\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"114283051\",\"ref\":\"author-Nazli-Ceren-Binyildirim\",\"url\":\"\/fr\/profile\/Nazli-Ceren-Binyildirim\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Nazli Ceren Binyildirim\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"101757107\",\"ref\":\"author-Nicolas-Hoffmann\",\"url\":\"\/fr\/profile\/Nicolas-Hoffmann\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Nicolas Hoffmann\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"101761434\",\"ref\":\"author-Olivier-Gattaz\",\"url\":\"\/fr\/profile\/Olivier-Gattaz\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Olivier Gattaz\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"103031371\",\"ref\":\"author-Olivier-Leplus\",\"url\":\"\/fr\/profile\/Olivier-Leplus\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Olivier Leplus\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"103584328\",\"ref\":\"author-Simon-Georges\",\"url\":\"\/fr\/profile\/Simon-Georges\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Simon Georges\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"},{\"id\":\"110721407\",\"ref\":\"author-Yves-Brissaud\",\"url\":\"\/fr\/profile\/Yves-Brissaud\",\"followedByCurrentUser\":false,\"minibio\":\"\",\"name\":\"Yves Brissaud\",\"bio\":\"\",\"followers\":0,\"imgSrc\":\"\"}]'); var topicsInPage = JSON.parse('[{\"name\":\"Kanban\",\"id\":\"11712\",\"followers\":155,\"url\":\"\/fr\/Kanban\",\"followedByCurrentUser\":false},{\"name\":\"Lean\",\"id\":\"10563\",\"followers\":149,\"url\":\"\/fr\/lean\",\"followedByCurrentUser\":false},{\"name\":\"Domain Driven Design\",\"id\":\"11081\",\"followers\":176,\"url\":\"\/fr\/domain-driven-design\",\"followedByCurrentUser\":false},{\"name\":\"DevOps\",\"id\":\"12234\",\"followers\":48,\"url\":\"\/fr\/Devops\",\"followedByCurrentUser\":false},{\"name\":\"Microservices\",\"id\":\"15758\",\"followers\":200,\"url\":\"\/fr\/micro\",\"followedByCurrentUser\":false},{\"name\":\"D\u00E9veloppement\",\"id\":\"12691\",\"followers\":41,\"url\":\"\/fr\/development\",\"followedByCurrentUser\":false},{\"name\":\"Architecture & Design\",\"id\":\"12692\",\"followers\":66,\"url\":\"\/fr\/architecture-design\",\"followedByCurrentUser\":false},{\"name\":\"Architecture\",\"id\":\"11317\",\"followers\":38,\"url\":\"\/fr\/architecture\",\"followedByCurrentUser\":false},{\"name\":\"Culture & M\u00E9thodes\",\"id\":\"12693\",\"followers\":90,\"url\":\"\/fr\/culture-methods\",\"followedByCurrentUser\":false},{\"name\":\"LegacyClub\",\"id\":\"17429\",\"followers\":53,\"url\":\"\/fr\/lagacyclub\",\"followedByCurrentUser\":false},{\"name\":\"Java\",\"id\":\"10518\",\"followers\":98,\"url\":\"\/fr\/java\",\"followedByCurrentUser\":false},{\"name\":\"Agile\",\"id\":\"10520\",\"followers\":281,\"url\":\"\/fr\/agile\",\"followedByCurrentUser\":false},{\"name\":\"Data Science\",\"id\":\"15900\",\"followers\":28,\"url\":\"\/fr\/ai-ml-data-eng\",\"followedByCurrentUser\":false}]'); var userContentLikesInPage = []; var userCommentsLikesInPage = []; var currentUserId = 2; </script> <meta name="keywords" content="Architecture,architecture"/> <meta name="description" content="Aider les équipes de développement à adopter de nouvelles technologies et pratiques. Rédigé par des ingénieurs logiciel. Lu par plus de 1,5 million de développeurs dans le monde."/> <link rel="alternate" type="application/rss+xml" title="RSS" href="https://feed.infoq.com/fr/architecture/"/> <meta name="ifq:pageType" content="CATEGORY_PAGE"/> <script type="text/javascript"> InfoQConstants.pageType = 'CATEGORY_PAGE'; window.isIndexPage = true; </script> <link rel="image_src" href="https://cdn.infoq.com/statics_s2_20250228123450/styles/static/images/logo/logo-big.jpg" /> <meta property="og:image" content="https://cdn.infoq.com/statics_s2_20250228123450/styles/static/images/logo/logo-big.jpg"/> <script type="text/javascript" src="https://cdn.infoq.com/statics_s2_20250228123450/scripts/infoq.js"></script> <script type="text/javascript"> document.addEventListener('DOMContentLoaded', function() { if (!window || !window.infoq) return infoq.init() }) </script> </head> <body > <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W9GJ5DL" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div class="intbt"> <a href="/int/bt/" title="bt">BT</a> </div> <script type="text/javascript"> var allCountries = [{"id":3,"name":"Afghanistan"},{"id":244,"name":"Åland"},{"id":6,"name":"Albania"},{"id":61,"name":"Algeria"},{"id":13,"name":"American Samoa"},{"id":1,"name":"Andorra"},{"id":9,"name":"Angola"},{"id":5,"name":"Anguilla"},{"id":11,"name":"Antarctica"},{"id":4,"name":"Antigua and Barbuda"},{"id":12,"name":"Argentina"},{"id":7,"name":"Armenia"},{"id":16,"name":"Aruba"},{"id":15,"name":"Australia"},{"id":14,"name":"Austria"},{"id":17,"name":"Azerbaijan"},{"id":31,"name":"Bahamas"},{"id":24,"name":"Bahrain"},{"id":20,"name":"Bangladesh"},{"id":19,"name":"Barbados"},{"id":35,"name":"Belarus"},{"id":21,"name":"Belgium"},{"id":36,"name":"Belize"},{"id":26,"name":"Benin"},{"id":27,"name":"Bermuda"},{"id":32,"name":"Bhutan"},{"id":29,"name":"Bolivia"},{"id":254,"name":"Bonaire, Sint Eustatius, and Saba"},{"id":18,"name":"Bosnia and Herzegovina"},{"id":34,"name":"Botswana"},{"id":33,"name":"Bouvet Island"},{"id":30,"name":"Brazil"},{"id":104,"name":"British Indian Ocean Territory"},{"id":28,"name":"Brunei Darussalam"},{"id":23,"name":"Bulgaria"},{"id":22,"name":"Burkina Faso"},{"id":25,"name":"Burundi"},{"id":114,"name":"Cambodia"},{"id":46,"name":"Cameroon"},{"id":37,"name":"Canada"},{"id":52,"name":"Cape Verde"},{"id":121,"name":"Cayman Islands"},{"id":40,"name":"Central African Republic"},{"id":207,"name":"Chad"},{"id":45,"name":"Chile"},{"id":47,"name":"China"},{"id":53,"name":"Christmas Island"},{"id":38,"name":"Cocos (Keeling) Islands"},{"id":48,"name":"Colombia"},{"id":116,"name":"Comoros"},{"id":39,"name":"Congo (Democratic Republic)"},{"id":41,"name":"Congo (People\u0027s Republic)"},{"id":44,"name":"Cook Islands"},{"id":49,"name":"Costa Rica"},{"id":43,"name":"Cote D\u0027Ivoire"},{"id":97,"name":"Croatia"},{"id":51,"name":"Cuba"},{"id":253,"name":"Curaçao"},{"id":54,"name":"Cyprus"},{"id":55,"name":"Czech Republic"},{"id":58,"name":"Denmark"},{"id":57,"name":"Djibouti"},{"id":59,"name":"Dominica"},{"id":60,"name":"Dominican Republic"},{"id":213,"name":"East Timor"},{"id":62,"name":"Ecuador"},{"id":64,"name":"Egypt"},{"id":203,"name":"El Salvador"},{"id":87,"name":"Equatorial Guinea"},{"id":66,"name":"Eritrea"},{"id":63,"name":"Estonia"},{"id":68,"name":"Ethiopia"},{"id":72,"name":"Falkland Islands (Malvinas)"},{"id":74,"name":"Faroe Islands"},{"id":71,"name":"Fiji"},{"id":70,"name":"Finland"},{"id":75,"name":"France"},{"id":80,"name":"French Guiana"},{"id":170,"name":"French Polynesia"},{"id":208,"name":"French Southern Territories"},{"id":76,"name":"Gabon"},{"id":84,"name":"Gambia"},{"id":79,"name":"Georgia"},{"id":56,"name":"Germany"},{"id":81,"name":"Ghana"},{"id":82,"name":"Gibraltar"},{"id":88,"name":"Greece"},{"id":83,"name":"Greenland"},{"id":78,"name":"Grenada"},{"id":86,"name":"Guadeloupe"},{"id":91,"name":"Guam"},{"id":90,"name":"Guatemala"},{"id":249,"name":"Guernsey"},{"id":85,"name":"Guinea"},{"id":92,"name":"Guinea-Bissau"},{"id":93,"name":"Guyana"},{"id":98,"name":"Haiti"},{"id":95,"name":"Heard Island and McDonald Islands"},{"id":96,"name":"Honduras"},{"id":94,"name":"Hong Kong"},{"id":99,"name":"Hungary"},{"id":107,"name":"Iceland"},{"id":103,"name":"India"},{"id":100,"name":"Indonesia"},{"id":106,"name":"Iran"},{"id":105,"name":"Iraq"},{"id":101,"name":"Ireland"},{"id":245,"name":"Isle of Man"},{"id":102,"name":"Israel"},{"id":108,"name":"Italy"},{"id":109,"name":"Jamaica"},{"id":111,"name":"Japan"},{"id":250,"name":"Jersey"},{"id":110,"name":"Jordan"},{"id":122,"name":"Kazakhstan"},{"id":112,"name":"Kenya"},{"id":115,"name":"Kiribati"},{"id":243,"name":"Kosovo"},{"id":120,"name":"Kuwait"},{"id":113,"name":"Kyrgyzstan"},{"id":123,"name":"Laos"},{"id":132,"name":"Latvia"},{"id":124,"name":"Lebanon"},{"id":129,"name":"Lesotho"},{"id":128,"name":"Liberia"},{"id":133,"name":"Libya"},{"id":126,"name":"Liechtenstein"},{"id":130,"name":"Lithuania"},{"id":131,"name":"Luxembourg"},{"id":143,"name":"Macau"},{"id":139,"name":"Macedonia"},{"id":137,"name":"Madagascar"},{"id":151,"name":"Malawi"},{"id":153,"name":"Malaysia"},{"id":150,"name":"Maldives"},{"id":140,"name":"Mali"},{"id":148,"name":"Malta"},{"id":138,"name":"Marshall Islands"},{"id":145,"name":"Martinique"},{"id":146,"name":"Mauritania"},{"id":149,"name":"Mauritius"},{"id":238,"name":"Mayotte"},{"id":152,"name":"Mexico"},{"id":73,"name":"Micronesia"},{"id":136,"name":"Moldova"},{"id":135,"name":"Monaco"},{"id":142,"name":"Mongolia"},{"id":246,"name":"Montenegro"},{"id":147,"name":"Montserrat"},{"id":134,"name":"Morocco"},{"id":154,"name":"Mozambique"},{"id":141,"name":"Myanmar"},{"id":155,"name":"Namibia"},{"id":164,"name":"Nauru"},{"id":163,"name":"Nepal"},{"id":161,"name":"Netherlands"},{"id":8,"name":"Netherlands Antilles"},{"id":156,"name":"New Caledonia"},{"id":166,"name":"New Zealand"},{"id":160,"name":"Nicaragua"},{"id":157,"name":"Niger"},{"id":159,"name":"Nigeria"},{"id":165,"name":"Niue"},{"id":158,"name":"Norfolk Island"},{"id":118,"name":"North Korea"},{"id":144,"name":"Northern Mariana Islands"},{"id":162,"name":"Norway"},{"id":167,"name":"Oman"},{"id":173,"name":"Pakistan"},{"id":180,"name":"Palau"},{"id":178,"name":"Palestinian Territory"},{"id":168,"name":"Panama"},{"id":171,"name":"Papua New Guinea"},{"id":181,"name":"Paraguay"},{"id":169,"name":"Peru"},{"id":172,"name":"Philippines"},{"id":176,"name":"Pitcairn"},{"id":174,"name":"Poland"},{"id":179,"name":"Portugal"},{"id":177,"name":"Puerto Rico"},{"id":182,"name":"Qatar"},{"id":183,"name":"Reunion"},{"id":184,"name":"Romania"},{"id":185,"name":"Russian Federation"},{"id":186,"name":"Rwanda"},{"id":193,"name":"Saint Helena"},{"id":117,"name":"Saint Kitts and Nevis"},{"id":125,"name":"Saint Lucia"},{"id":251,"name":"Saint Martin"},{"id":175,"name":"Saint Pierre and Miquelon"},{"id":229,"name":"Saint Vincent and the Grenadines"},{"id":247,"name":"Saint-Barthélemy"},{"id":236,"name":"Samoa"},{"id":198,"name":"San Marino"},{"id":202,"name":"Sao Tome and Principe"},{"id":187,"name":"Saudi Arabia"},{"id":199,"name":"Senegal"},{"id":248,"name":"Serbia"},{"id":189,"name":"Seychelles"},{"id":197,"name":"Sierra Leone"},{"id":192,"name":"Singapore"},{"id":252,"name":"Sint Maarten"},{"id":196,"name":"Slovakia"},{"id":194,"name":"Slovenia"},{"id":188,"name":"Solomon Islands"},{"id":200,"name":"Somalia"},{"id":239,"name":"South Africa"},{"id":89,"name":"South Georgia and the South Sandwich Islands"},{"id":119,"name":"South Korea"},{"id":255,"name":"South Sudan"},{"id":67,"name":"Spain"},{"id":127,"name":"Sri Lanka"},{"id":190,"name":"Sudan"},{"id":201,"name":"Suriname"},{"id":195,"name":"Svalbard and Jan Mayen"},{"id":205,"name":"Swaziland"},{"id":191,"name":"Sweden"},{"id":42,"name":"Switzerland"},{"id":204,"name":"Syria"},{"id":220,"name":"Taiwan"},{"id":211,"name":"Tajikistan"},{"id":221,"name":"Tanzania"},{"id":210,"name":"Thailand"},{"id":209,"name":"Togo"},{"id":212,"name":"Tokelau"},{"id":216,"name":"Tonga"},{"id":218,"name":"Trinidad and Tobago"},{"id":215,"name":"Tunisia"},{"id":217,"name":"Turkey"},{"id":214,"name":"Turkmenistan"},{"id":206,"name":"Turks and Caicos Islands"},{"id":219,"name":"Tuvalu"},{"id":223,"name":"Uganda"},{"id":222,"name":"Ukraine"},{"id":2,"name":"United Arab Emirates"},{"id":77,"name":"United Kingdom"},{"id":224,"name":"United States Minor Outlying Islands"},{"id":226,"name":"Uruguay"},{"id":225,"name":"USA"},{"id":227,"name":"Uzbekistan"},{"id":234,"name":"Vanuatu"},{"id":228,"name":"Vatican City (Holy See)"},{"id":230,"name":"Venezuela"},{"id":233,"name":"Vietnam"},{"id":231,"name":"Virgin Islands (British)"},{"id":232,"name":"Virgin Islands (U.S.)"},{"id":235,"name":"Wallis and Futuna"},{"id":65,"name":"Western Sahara"},{"id":237,"name":"Yemen"},{"id":241,"name":"Zaire"},{"id":240,"name":"Zambia"},{"id":242,"name":"Zimbabwe"}]; var gdprCountriesIds = [196,194,191,184,179,174,161,148,132,131,130,108,101,99,97,88,77,75,70,67,63,58,56,55,54,37,23,21,14]; </script> <div class="infoq" id="infoq"> <!-- ####### SITE START ######### --> <header class="header"> <button aria-label="Toggle Navigation" tabindex="0" class="burger header__toggle button">Toggle Navigation <span></span><span></span><span></span></button> <div class="header__container container"> <div class="container__inner"> <div data-nosnippet class="actions header__top"> <div class="actions__left"> <p class="header__desc my-0"> Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise </p> <div class="button__dropdown dropdown header__more my-0 dropdown__center"> <button aria-label="English edition" class="button button__unstyled button__small">French edition</button> <div class="dropdown__holder"> <!----> <div class="dropdown__content"> <ul class="no-style dropdown__nav languagesEdition"> <li><a href="/">English edition</a></li> <li><a href="https://www.infoq.cn">Chinese edition</a></li> <li><a href="/jp/">Japanese edition</a></li> <li class="active"><a href="#" onclick="return false;">French edition</a></li> </ul> </div> <!----> </div> </div> <a class="my-0 contribute-link" role="button" href="/fr/write-for-infoq/" title="Contribuez"> Contribuez </a> </div> <div class="actions__right"> <div> <form id="searchForm" name="search-form" action="/fr/search.action" enctype="multipart/form-data" class="search icon__search icon icon__green"> <div class="field search__bar input__text input__no-label input__small"> <label for="search" class="label field__label">Rechercher</label> <input name="queryString" type="text" id="search" value="" placeholder="Rechercher" class="input field__input"> <input type="hidden" name="page" value="1"/> <input type="hidden" size="15" name="searchOrder"> </div> <input value="Rechercher" type="submit" class="search__go"> </form> </div> <div class="button__dropdown dropdown user__login"> <button aria-label="INSCRIPTION / CONNEXION" class="button button__small button__green button__arrow arrow__true button__icon icon icon__user icon--only">INSCRIPTION / CONNEXION</button> <div class="dropdown__holder"> <div class="dropdown__content"> <div class="login__dropdown"> <div class="login__module"> <div class="login__username"> <form id="login-form" data-vv-scope="login" class="login__form form" action="/fr/login.action"> <input type="hidden" id="loginWidgetOrigin" name="loginWidgetOrigin" value="mainLogin"/> <input type="hidden" name="fromP13N" id="isP13n" value="false"/> <input type="hidden" name="fromP13NId" id="p13n-id" value=""/> <input type="hidden" name="fromP13NType" id="p13n-type" value=""/> <div class="field form__row input__text input__small" data-vv-as="Email" data-vv-scope="login"> <label for="email" class="label field__label">Email</label> <input type="text" id="email" placeholder="" class="input field__input" name="username"> </div> <div class="field form__row input__password input__small" data-vv-as="Mot de passe" data-vv-scope="login"> <label for="password" class="label field__label">Mot de passe</label> <input type="password" id="password" placeholder="" class="input field__input" name="password"> <p data-message="resultMessage"></p> </div> <input type="submit" value="Connexion" class="form__row button button__medium button__green"> <div class="login__actions"> <button aria-label="Mot de passe oublié ?" class="forgot button button__unstyled">Mot de passe oublié ?</button> </div> </form> <form id="forgot-password-form" data-vv-scope="forgot" class="forgot__form form" action="/fr/resetpasswordinit.action" onsubmit="UserActions_Login.showMessage($(this),JSi18n.login_sendingRequest);"> <div data-vv-as="Email" data-vv-scope="forgot" class="field form__row input__text input__small"> <label for="forgotten_email" class="label field__label">Email du compte InfoQ</label> <input id="forgotten_email" name="email" placeholder="" class="input field__input" type="text" onkeyup="UserActions_ResetPass.checkInputStatus('forgotten_email','forgotPassMessage',JSi18n.login_invalid_email,'submit_resetPass');"> <p id="forgotPassMessage" data-message="resultMessage"></p> </div> <input type="submit" id="submit_resetPass" value="Envoyer email de récupération" class="button button__medium button__green" onclick="return UserActions_ResetPass.checkInputStatus('forgotten_email','forgotPassMessage',JSi18n.login_invalid_email,'submit_resetPass');"> <p class="login__actions"> <button aria-label="Retour à la connexion" class="back-to-login button button__unstyled">Retour à la connexion</button> </p> </form> <form id="email-revalidation-form" data-vv-scope="revalidation" class="revalidation__form form" action="/fr/reactivate.action" onsubmit="UserActions_Login.showMessage($(this),JSi18n.login_sendingRequest);"> <div data-vv-as="Email" data-vv-scope="revalidation" class="field form__row input__text input__small"> <label for="revalidated_email" class="label field__label">Renvoyer l'Activation</label> <input id="revalidated_email" name="email" placeholder="" class="input field__input" type="text" onkeyup="UserActions_ResetPass.checkInputStatus('revalidated_email','emailRevalidMessage',JSi18n.login_invalid_email,'submit_resetPass');"> <p id="emailRevalidMessage" data-message="resultMessage"></p> </div> <input type="submit" value="Renvoyer" class="button button__medium button__green" onclick="return UserActions_ResetPass.checkInputStatus('revalidated_email','emailRevalidMessage',JSi18n.login_invalid_email,'submit_resetPass');"> <p class="login__actions"> <button id="show-login" aria-label="Retour à la connexion" class="back-to-login button button__unstyled">Retour à la connexion</button> </p> </form> </div> <div class="login__social"> <h4 class="heading">Connexion avec:</h4> <div class="social__connect form__row login__socials"> <a href="/fr/social/googleLogin.action?fl=login" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__medium button__gray button__icon icon icon__google" title="Connexion avec Google">Google</a> <a href="/fr/social/liveLogin.action?fl=login" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__medium button__icon icon icon__microsoft" title="Connexion avec Microsoft">Microsoft</a> <a href="/fr/twitter-info" class="button button__medium button__icon icon icon__twitter" title="Connexion avec Twitter">Twitter</a> <a href="/fr/social/facebookLogin.action?fl=login" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__medium button__icon icon icon__fb" title="Connexion avec Facebook">Facebook</a> </div> </div> <div class="login__signup"> <h4 class="heading">Vous n'avez pas encore de compte InfoQ ?</h4> <a href="/fr/reginit.action?" onclick="return UserActions_Login.addLoginInfo(this);" class="button button__medium button__green">S'inscrire</a> </div> </div> </div> </div> </div> </div> </div> </div> <div class="header__middle"> <div class="logo header__logo"> <a href="/fr/" class="logo__symbol active"> Logo - Back to homepage </a> </div> <div class="content-items"> <a href="/fr/news/" class="icon icon__news">Actualités</a> <a href="/fr/articles/" class="icon icon__articles">Articles</a> <a href="/fr/presentations/" class="icon icon__presentations">Présentations</a> <a href="/fr/podcasts/" class="icon icon__podcasts">Podcasts</a> <a href="/fr/minibooks/" class="icon icon__guides">Livres</a> </div> <div class="header__items columns"> <div> <h3 class="widget__heading">Sujets</h3> <nav class="nav header__nav topics" data-trk-ref="header_personas"> <div class="has--subnav li-nav"> <a href="/fr/development/" title="Development" class="nav__category">Development</a> <div class="nav__subnav subnav"> <ul class="subnav__categories no-style"> <li><a href="/fr/java/" title="Java">Java</a></li> <li><a href="/fr/clojure/" title="Clojure">Clojure</a></li> <li><a href="/fr/scala/" title="Scala">Scala</a></li> <li><a href="/fr/dotnet/" title=".Net">.Net</a></li> <li><a href="/fr/mobile/" title="Mobile">Mobile</a></li> <li><a href="/fr/android/" title="Android">Android</a></li> <li><a href="/fr/ios/" title="iOS">iOS</a></li> <li><a href="/fr/HTML5Topic/" title="HTML5">HTML5</a></li> <li><a href="/fr/javascript/" title="JavaScript">JavaScript</a></li> <li><a href="/fr/fp/" title="Programmation Fonctionnelle">Programmation Fonctionnelle</a></li> <li><a href="/fr/webapi/" title="Web API">Web API</a></li> </ul> <div class="subnav__content" data-id="12691"> <div class="heading__container actions"> <div class="actions__left"> <h3 class="heading section__heading">A la une dans Développement</h3> </div> </div> <ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style"> <li> <div class="card__content"> <div class="card__data"> <h4 class="card__title"> <a href="/fr/articles/encryption-defense-native-browser-apps">Comment Utiliser Le Chiffrement Pour La Défense En Profondeur Dans Les Apps Natives Et Navigateurs</a> </h4> <p class="card__excerpt">Isaac Potoczny-Jones discute des avantages et des inconvénients du chiffrement de la couche application. Il couvre la surface d'attaque du chiffrement dans la couche application d'un navigateur, comme...</p> <div class="card__footer"></div> </div> <a href="/fr/articles/encryption-defense-native-browser-apps" class="card__header"> <img loading="lazy" alt="Comment Utiliser Le Chiffrement Pour La Défense En Profondeur Dans Les Apps Natives Et Navigateurs" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/encryption-defense-native-browser-apps/fr/smallimage/security-browser-1589240480229.jpg" class="card__image"/> </a> </div> </li> </ul> <a href="/fr/development/" class="button__more button button__large button__arrow arrow__right">Tout voir dans development</a> </div> </div> </div> <div class="has--subnav li-nav"> <a href="/fr/architecture-design/" title="Architecture & Design" class="nav__category">Architecture & Design</a> <div class="nav__subnav subnav"> <ul class="subnav__categories no-style"> <li><a href="/fr/architecture/" title="Architecture">Architecture</a></li> <li><a href="/fr/enterprise-architecture/" title="Architecture Entreprise">Architecture Entreprise</a></li> <li><a href="/fr/performance-scalability/" title="Scalabilité/Performance">Scalabilité/Performance</a></li> <li><a href="/fr/design/" title="Design">Design</a></li> <li><a href="/fr/Case_Study/" title="Case Studies">Case Studies</a></li> <li><a href="/fr/DesignPattern/" title="Patterns">Patterns</a></li> <li><a href="/fr/Security/" title="Sécurité">Sécurité</a></li> </ul> <div class="subnav__content" data-id="12692"> <div class="heading__container actions"> <div class="actions__left"> <h3 class="heading section__heading">A la une dans Architecture & Design</h3> </div> </div> <ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style"> <li> <div class="card__content"> <div class="card__data"> <h4 class="card__title"> <a href="/fr/articles/ballerina-data-functional-programming">Manipulation De Données Avec Programmation Fonctionnelle Et Requêtes Dans Ballerina</a> </h4> <p class="card__excerpt">Ballerina a été conçu comme un langage de programmation orienté données et prend en charge un style de codage de programmation fonctionnel. Le langage de requête de Ballerina est similaire à SQL dans ...</p> <div class="card__footer"></div> </div> <a href="/fr/articles/ballerina-data-functional-programming" class="card__header"> <img loading="lazy" alt="Manipulation De Données Avec Programmation Fonctionnelle Et Requêtes Dans Ballerina" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/ballerina-data-functional-programming/fr/smallimage/logo-1660058595815.jpg" class="card__image"/> </a> </div> </li> </ul> <a href="/fr/architecture-design/" class="button__more button button__large button__arrow arrow__right">Tout voir dans architecture-design</a> </div> </div> </div> <div class="has--subnav li-nav"> <a href="/fr/ai-ml-data-eng/" title="Data Science" class="nav__category">Data Science</a> <div class="nav__subnav subnav"> <ul class="subnav__categories no-style"> <li><a href="/fr/bigdata/" title="Big Data">Big Data</a></li> <li><a href="/fr/machinelearning/" title="Machine Learning">Machine Learning</a></li> <li><a href="/fr/nosql/" title="NoSQL">NoSQL</a></li> <li><a href="/fr/database/" title="Base de données">Base de données</a></li> <li><a href="/fr/data-analytics/" title="Data Analytics">Data Analytics</a></li> </ul> <div class="subnav__content" data-id="15900"> <div class="heading__container actions"> <div class="actions__left"> <h3 class="heading section__heading">A la une dans Data Science</h3> </div> </div> <ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style"> <li> <div class="card__content"> <div class="card__data"> <h4 class="card__title"> <a href="/fr/articles/uber-eats-time-predictions">Les Prédictions De Temps Chez Uber Eats</a> </h4> <p class="card__excerpt">Les prédiction de temps sont essentielles pour les activités d’Uber Eats, elles permettent une répartition optimale des livreurs et garantissent la satisfaction des clients. Nous verrons dans cet art...</p> <div class="card__footer"></div> </div> <a href="/fr/articles/uber-eats-time-predictions" class="card__header"> <img loading="lazy" alt="Les Prédictions De Temps Chez Uber Eats" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/uber-eats-time-predictions/fr/smallimage/predicting-time-to-cook-arrive-deliver-in-uber-eats-logo-small-1573830801103.jpg" class="card__image"/> </a> </div> </li> </ul> <a href="/fr/ai-ml-data-eng/" class="button__more button button__large button__arrow arrow__right">Tout voir dans ai-ml-data-eng</a> </div> </div> </div> <div class="has--subnav li-nav"> <a href="/fr/culture-methods/" title="Culture & Methods" class="nav__category">Culture & Méthodes</a> <div class="nav__subnav subnav"> <ul class="subnav__categories no-style"> <li><a href="/fr/agile/" title="Agile">Agile</a></li> <li><a href="/fr/Leadership/" title="Leadership">Leadership</a></li> <li><a href="/fr/team-collaboration/" title="Team Collaboration">Team Collaboration</a></li> <li><a href="/fr/testing/" title="Tests">Tests</a></li> <li><a href="/fr/pm/" title="Project Management">Project Management</a></li> <li><a href="/fr/ux/" title="UX">UX</a></li> <li><a href="/fr/scrum/" title="Scrum">Scrum</a></li> <li><a href="/fr/lean/" title="Lean/Kanban">Lean/Kanban</a></li> </ul> <div class="subnav__content" data-id="12693"> <div class="heading__container actions"> <div class="actions__left"> <h3 class="heading section__heading">A la une dans Culture & Méthodes</h3> </div> </div> <ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style"> <li> <div class="card__content"> <div class="card__data"> <h4 class="card__title"> <a href="/fr/articles/individual-team-processes">Les Processus De Tests Individuels Ne Peuvent Convenir A Tout Le Monde.</a> </h4> <p class="card__excerpt">De nombreuses entreprises de l'industrie du logiciel ont mis en place des procédures qui sont utilisés par tout le monde dans l'entreprise. Chaque équipe est différente alors pourquoi les procédures s...</p> <div class="card__footer"></div> </div> <a href="/fr/articles/individual-team-processes" class="card__header"> <img loading="lazy" alt="Les Processus De Tests Individuels Ne Peuvent Convenir A Tout Le Monde." src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/individual-team-processes/fr/smallimage/logo-1667318501298.jpg" class="card__image"/> </a> </div> </li> </ul> <a href="/fr/culture-methods/" class="button__more button button__large button__arrow arrow__right">Tout voir dans culture-methods</a> </div> </div> </div> <div class="has--subnav li-nav"> <a href="/fr/devops/" title="DevOps" class="nav__category">DevOps</a> <div class="nav__subnav subnav"> <ul class="subnav__categories no-style"> <li><a href="/fr/infrastructure/" title="Infrastructure">Infrastructure</a></li> <li><a href="/fr/continuous_delivery/" title="Déploiement continu">Déploiement continu</a></li> <li><a href="/fr/automation/" title="Automation">Automation</a></li> <li><a href="/fr/cloud-computing/" title="Cloud">Cloud</a></li> </ul> <div class="subnav__content" data-id="12234"> <div class="heading__container actions"> <div class="actions__left"> <h3 class="heading section__heading">A la une dans DevOps</h3> </div> </div> <ul data-size="large" data-horizontal="true" data-tax="" taxonomy="articles" class="cards no-style"> <li> <div class="card__content"> <div class="card__data"> <h4 class="card__title"> <a href="/fr/articles/devops-governance-developer-velocity">Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La Vélocité Des Développeurs</a> </h4> <p class="card__excerpt">L'environnement d'application doit être géré de manière centralisée par l'équipe DevOps. Cela leur permet de mieux suivre les modifications et les changements qui seraient ensuite rapides et transpare...</p> <div class="card__footer"></div> </div> <a href="/fr/articles/devops-governance-developer-velocity" class="card__header"> <img loading="lazy" alt="Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La Vélocité Des Développeurs" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/devops-governance-developer-velocity/fr/smallimage/logo-1658737978607.jpg" class="card__image"/> </a> </div> </li> </ul> <a href="/fr/devops/" class="button__more button button__large button__arrow arrow__right">Tout voir dans devops</a> </div> </div> </div> </nav> </div> <div> <h3 class="widget__heading">Liens utiles</h3> <ul class="no-style header__nav"> <li> <a href="/fr/about-infoq" title="A propos d'InfoQ"> A propos d'InfoQ </a> </li> <li> <a href="/fr/infoq-editors" title="Editeurs InfoQ"> Editeurs InfoQ </a> </li> <li> <a href="/fr/write-for-infoq" title="Contribuez"> Contribuez </a> </li> <li> <a href="/fr/about-c4media" title="A propos de C4 Media"> A propos de C4 Media </a> </li> <li> <a rel="noreferrer noopener" href="https://c4media.com/diversity" title="Diversity" target="_blank">Diversity</a> </li> </ul> </div> <div> <h3 class="widget__heading">Sélectionner votre région</h3> <ul class="language__switcher no-style"> <li><a href="/" title="InfoQ English">En</a></li> <li><a href="https://www.infoq.cn">中文</a></li> <li><a href="/jp/">日本</a></li> <li class="active"><a href="#" onclick="return false;">Fr</a></li> </ul> </div> </div> </div> <div data-nosnippet class="actions header__bottom header__bottom__events"> <div class="actions__left"> <div class="header__events-all"> <a href="https://qconlondon.com/?utm_source=infoq&utm_medium=referral&utm_campaign=homepageheader_qlondon25" rel="nofollow" target="_blank" class="header__event-slot"> <picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvbG9uZG9uLXRvcC11cGRhdGVkMi5qcGciLCJlZGl0cyI6IHsid2VicCI6IHsgInF1YWxpdHkiOjgwfX19" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvbG9uZG9uLXRvcC11cGRhdGVkMi5qcGciLCJlZGl0cyI6IHsianBlZyI6IHsgInF1YWxpdHkiOjgwfX19" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvbG9uZG9uLXRvcC11cGRhdGVkMi5qcGciLCJlZGl0cyI6IHsianBlZyI6IHsgInF1YWxpdHkiOjgwfX19" loading="lazy" width="40px" height="40px" alt="QCon London - image"></picture> <div> <span>QCon London</span> <p>Discover emerging trends, insights, and real-world best practices in software development & tech leadership. Join now.</p> </div> </a> <a href="https://devsummit.infoq.com/conference/boston2025?utm_source=infoq&utm_medium=referral&utm_campaign=homepageheader_idsboston25" rel="nofollow" target="_blank" class="header__event-slot"> <picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvSW5mb1FEZXZTdW1taXQtdG9wLmpwZyIsImVkaXRzIjogeyJ3ZWJwIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvSW5mb1FEZXZTdW1taXQtdG9wLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvSW5mb1FEZXZTdW1taXQtdG9wLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" loading="lazy" width="40px" height="40px" alt="InfoQ Dev Summit Boston - image"></picture> <div> <span>InfoQ Dev Summit Boston</span> <p>Learn how senior software developers are solving the challenges you face. Register now with early bird tickets.</p> </div> </a> <a href="https://devsummit.infoq.com/conference/munich2025?utm_source=infoq&utm_medium=referral&utm_campaign=homepageheader_idsmunich25" rel="nofollow" target="_blank" class="header__event-slot"> <picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvSURTLU11bmljaC10b3AuanBnIiwiZWRpdHMiOiB7IndlYnAiOiB7ICJxdWFsaXR5Ijo4MH19fQ==" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvSURTLU11bmljaC10b3AuanBnIiwiZWRpdHMiOiB7ImpwZWciOiB7ICJxdWFsaXR5Ijo4MH19fQ==" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvSURTLU11bmljaC10b3AuanBnIiwiZWRpdHMiOiB7ImpwZWciOiB7ICJxdWFsaXR5Ijo4MH19fQ==" loading="lazy" width="40px" height="40px" alt="InfoQ Dev Summit Munich - image"></picture> <div> <span>InfoQ Dev Summit Munich</span> <p>Learn practical solutions to today's most pressing software challenges. Register now with early bird tickets.</p> </div> </a> <a href="https://qconsf.com/?utm_source=infoq&utm_medium=referral&utm_campaign=homepageheader_qsf25" rel="nofollow" target="_blank" class="header__event-slot"> <picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvU0YtdG9wLmpwZyIsImVkaXRzIjogeyJ3ZWJwIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvU0YtdG9wLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvaGVhZGVyL2NvbmZlcmVuY2VzLzIwMjUvU0YtdG9wLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" loading="lazy" width="40px" height="40px" alt="QCon San Francisco - image"></picture> <div> <span>QCon San Francisco</span> <p>Explore insights, real-world best practices and solutions in software development & leadership. Register now.</p> </div> </a> </div> </div> <!----> </div> </div> </div> </header> <!-- ####### CONTENT START ######### --> <main> <section class="container section topics"> <div class="columns container__inner" data-trk-ref="hover_topic_page"> <p class="crumbs"> <span data-nosnippet><a href="/fr" title="Accueil InfoQ">Accueil InfoQ</a></span> <span data-nosnippet class="active">Architecture sur InfoQ</span> </p> <div class="actions heading__container heading__actions" data-id="11317" data-trk-ref="topic_page"> <div class="actions__left"> <h1 class="heading heading__rss">Architecture</h1> <span class="rss icon icon__rss-feed"> <a href="https://feed.infoq.com/fr/architecture/" target="_blank">Flux RSS</a> </span> </div> </div> <!-- add static promotion box on the top of the page,under title,for service mesh topic page --> <!-- add graph and description for trends report topic page (https://www.infoq.com/infoq-trends-report/) --> <div data-col=""> <div class="items"> <div class="actions heading__container"> <div class="actions__left"> <h2 class="heading section__heading heading__rss"> <a href="/fr/architecture/news/" > Actualités sur Architecture </a> </h2> <span class="rss icon icon__rss-feed"> <a href="https://feed.infoq.com/fr/architecture/news/" target="_blank">Flux RSS</a> </span> </div> </div> <div class="items__content"> <div> <ul class="no-style cards" data-cols="3" data-size="large" data-hoverables="true" data-tax="news"> <li data-id="3cff8fa4-7cdc-49b1-aa3c-ac1a26a698c0" data-path="/news/2022/12/financial-debt-impossible"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/culture-methods/" data-id="12693">Culture & Méthodes</a> </span> </div> <h4 class="card__title"> <a title="La Dette Technique Est Quantifiable En Tant Que Dette Financière : Impossible Pour Les Développeurs" href="/fr/news/2022/12/financial-debt-impossible/">La Dette Technique Est Quantifiable En Tant Que Dette Financière : Impossible Pour Les Développeurs</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Ben-Linders/" data-id="author-Ben-Linders">Ben Linders</a> </span> </div> <span class="card__date date">le<span> 07 déc. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="40ac5eb4-85c5-41e6-b399-d1e53ce05c33" data-path="/news/2022/10/modern-java-design-patterns"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Venkat Subramaniam Modernise Les Modèles De Conception GoF Avec Java Moderne Au Devoxx BE" href="/fr/news/2022/10/modern-java-design-patterns/">Venkat Subramaniam Modernise Les Modèles De Conception GoF Avec Java Moderne Au Devoxx BE</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Olimpiu-Pop/" data-id="author-Olimpiu-Pop">Olimpiu Pop</a> </span> </div> <span class="card__date date">le<span> 19 oct. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="bc65c2f8-4400-4259-bb69-3f504524e08f" data-path="/news/2022/10/grab-data-platform"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/ai-ml-data-eng/" data-id="15900">Data Science</a> </span> </div> <h4 class="card__title"> <a title="Grab A Partagé Son Experience Sur La Conception De Plate-formes De Données Distribuées" href="/fr/news/2022/10/grab-data-platform/">Grab A Partagé Son Experience Sur La Conception De Plate-formes De Données Distribuées</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Reza-Rahimi/" data-id="author-Reza-Rahimi">Reza Rahimi</a> </span> </div> <span class="card__date date">le<span> 18 oct. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="ffe7bc51-4cbf-4efa-9b04-812b716790fe" data-path="/news/2022/10/design-patterns-serverless"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="Comment Eviter Le Verrouillage Des Fournisseurs Sans Serveurs Avec Design Patterns ?" href="/fr/news/2022/10/design-patterns-serverless/">Comment Eviter Le Verrouillage Des Fournisseurs Sans Serveurs Avec Design Patterns ?</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Vasco-Veloso/" data-id="author-Vasco-Veloso">Vasco Veloso</a> </span> </div> <span class="card__date date">le<span> 04 oct. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="f2b4ec2c-4aad-45cd-8580-539c92a621e8" data-path="/news/2022/09/data-predict-usage-user-insights"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/culture-methods/" data-id="12693">Culture & Méthodes</a> </span> </div> <h4 class="card__title"> <a title="Utiliser La Data Pour Prédire Les Usages De Demain Et Améliorer L'Expérience Des Utilisateurs" href="/fr/news/2022/09/data-predict-usage-user-insights/">Utiliser La Data Pour Prédire Les Usages De Demain Et Améliorer L'Expérience Des Utilisateurs</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Ben-Linders/" data-id="author-Ben-Linders">Ben Linders</a> </span> </div> <span class="card__date date">le<span> 23 sept. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="decb4e18-7160-4f66-b0b6-53568eefbc9b" data-path="/news/2022/09/distributed-system-knowable"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/culture-methods/" data-id="12693">Culture & Méthodes</a> </span> </div> <h4 class="card__title"> <a title="Un Système Distribué Est Prévisible : Une Chose Impossible Pour Les Développeurs" href="/fr/news/2022/09/distributed-system-knowable/">Un Système Distribué Est Prévisible : Une Chose Impossible Pour Les Développeurs</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Ben-Linders/" data-id="author-Ben-Linders">Ben Linders</a> </span> </div> <span class="card__date date">le<span> 02 sept. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="fad7fb0d-fe91-4b65-a4a7-115550c59100" data-path="/news/2022/08/java-news-roundup-aug22-2022"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Le Point Sur L'Actualité De Java - Semaine Du 22 Août 2022" href="/fr/news/2022/08/java-news-roundup-aug22-2022/">Le Point Sur L'Actualité De Java - Semaine Du 22 Août 2022</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Michael-Redlich/" data-id="author-Michael-Redlich">Michael Redlich</a> </span> </div> <span class="card__date date">le<span> 29 août 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="2160097e-c9cd-485e-8961-481bffee9ea8" data-path="/news/2022/08/java-news-roundup-aug08-2022"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Le Point Sur L'Actualité De Java - Semaine Du 8 Août 2022" href="/fr/news/2022/08/java-news-roundup-aug08-2022/">Le Point Sur L'Actualité De Java - Semaine Du 8 Août 2022</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Michael-Redlich/" data-id="author-Michael-Redlich">Michael Redlich</a> </span> </div> <span class="card__date date">le<span> 18 août 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="e5b05339-0470-496c-bda7-4f17e3da6cd5" data-path="/news/2022/08/java-news-roundup-jul25-2022"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Le Point Sur L'Actualité De Java - Semaine Du 25 Juillet 2022" href="/fr/news/2022/08/java-news-roundup-jul25-2022/">Le Point Sur L'Actualité De Java - Semaine Du 25 Juillet 2022</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Michael-Redlich/" data-id="author-Michael-Redlich">Michael Redlich</a> </span> </div> <span class="card__date date">le<span> 03 août 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="0b89ea1b-2ab0-4d35-be58-9c06adb52882" data-path="/news/2022/07/java-news-roundup-jul04-2022"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Le Point Sur L'Actualité De Java - Semaine Du 4 Juillet 2022" href="/fr/news/2022/07/java-news-roundup-jul04-2022/">Le Point Sur L'Actualité De Java - Semaine Du 4 Juillet 2022</a></h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Michael-Redlich/" data-id="author-Michael-Redlich">Michael Redlich</a> </span> </div> <span class="card__date date">le<span> 13 juil. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> </ul> <a href="/fr/architecture/news/" class="button button__arrow arrow__right button__more button__has-transition"> PLUS D'ACTUALITÉS </a> </div> </div> </div> <div class="items"> <div class="actions heading__container"> <div class="actions__left"> <h2 class="heading section__heading heading__rss"> <a href="/fr/architecture/articles/" > Articles sur Architecture </a> </h2> <span class="rss icon icon__rss-feed"> <a href="https://feed.infoq.com/fr/architecture/articles/" target="_blank">Flux RSS</a> </span> </div> </div> <div class="items__content"> <div> <ul class="no-style cards boxes" data-horizontal="true" data-size="large" data-tax="articles" data-hoverables="true" data-cols="3"> <li data-id="2a232b65-8376-40d3-bf95-66a05eb6dfbc" data-path="/articles/architecture-couches"> <div class="card__content"> <a href="/fr/articles/architecture-couches/" class="card__header"> <img loading="lazy" alt="L'Architecture En Couches, Toujours La Norme?" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/architecture-couches/fr/smallimage/petiteImage100x100-1662629391810.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="L'Architecture En Couches, Toujours La Norme?" href="/fr/articles/architecture-couches/"> L'Architecture En Couches, Toujours La Norme? </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Simon-Chareyron/" data-id="author-Simon-Chareyron">Simon Chareyron</a> </span> </div> <span class="card__date date">le<span> 12 sept. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="2523c6e4-1499-4c1a-9179-8a195150f48c" data-path="/articles/devops-governance-developer-velocity"> <div class="card__content"> <a href="/fr/articles/devops-governance-developer-velocity/" class="card__header"> <img loading="lazy" alt="Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La Vélocité Des Développeurs" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/devops-governance-developer-velocity/fr/smallimage/logo-1658737978607.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/Devops/" data-id="12234">DevOps</a> </span> </div> <h4 class="card__title"> <a title="Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La Vélocité Des Développeurs" href="/fr/articles/devops-governance-developer-velocity/"> Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La Vélocité Des Développeurs </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Amir-Rozenberg/" data-id="author-Amir-Rozenberg">Amir Rozenberg</a> </span> </div> <span class="card__date date">le<span> 02 sept. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="415bd36a-c999-48fa-a82b-70cf0fe1c7ba" data-path="/articles/java-date-time-api"> <div class="card__content"> <a href="/fr/articles/java-date-time-api/" class="card__header"> <img loading="lazy" alt="Il Est Maintenant Temps De Décomplexer Avec La Pas-Si-Nouvelle API Date & Time De Java" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/java-date-time-api/fr/smallimage/java-date-time-api-100-1658350273276.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Il Est Maintenant Temps De Décomplexer Avec La Pas-Si-Nouvelle API Date & Time De Java" href="/fr/articles/java-date-time-api/"> Il Est Maintenant Temps De Décomplexer Avec La Pas-Si-Nouvelle API Date & Time De Java </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Otavio-Santana/" data-id="author-Otavio-Santana">Otavio Santana</a> </span> </div> <span class="card__date date">le<span> 22 juil. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="2ed1b3bf-f142-4490-af47-d4c52b96f19a" data-path="/articles/design-first-api-development"> <div class="card__content"> <a href="/fr/articles/design-first-api-development/" class="card__header"> <img loading="lazy" alt="Approche Design-First Du Développement D'API : Comment L'implémenter Et Pourquoi Cela Fonctionne" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/design-first-api-development/fr/smallimage/design-first-approach-API-development-small-image-1650616561277.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/culture-methods/" data-id="12693">Culture & Méthodes</a> </span> </div> <h4 class="card__title"> <a title="Approche Design-First Du Développement D'API : Comment L'implémenter Et Pourquoi Cela Fonctionne" href="/fr/articles/design-first-api-development/"> Approche Design-First Du Développement D'API : Comment L'implémenter Et Pourquoi Cela Fonctionne </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Steve-Rodda/" data-id="author-Steve-Rodda">Steve Rodda</a> </span> </div> <span class="card__date date">le<span> 25 mai 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="f1f19271-dd73-41f4-a99f-d96547db0838" data-path="/articles/architecture-decision-records"> <div class="card__content"> <a href="/fr/articles/architecture-decision-records/" class="card__header"> <img loading="lazy" alt="Architecture Decision Records (ADR) : Définition Et Comment Nous Le Faisons Chez Zup" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/architecture-decision-records/fr/smallimage/architecture-decision-records_100-1649318897698.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="Architecture Decision Records (ADR) : Définition Et Comment Nous Le Faisons Chez Zup" href="/fr/articles/architecture-decision-records/"> Architecture Decision Records (ADR) : Définition Et Comment Nous Le Faisons Chez Zup </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Otavio-Santana/" data-id="author-Otavio-Santana">Otavio Santana</a> </span> </div> <span class="card__date date">le<span> 07 avr. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="079beeb2-0c9b-460d-9f28-f6cbe2a0e230" data-path="/articles/tech-radar"> <div class="card__content"> <a href="/fr/articles/tech-radar/" class="card__header"> <img loading="lazy" alt="Tech Radar : Qu'Est-Ce Que C'Est Et Pourquoi Les Equipes Techniques Doivent En Avoir Un" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/tech-radar/fr/smallimage/03 Tech Radar_100-1647468523314.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="Tech Radar : Qu'Est-Ce Que C'Est Et Pourquoi Les Equipes Techniques Doivent En Avoir Un" href="/fr/articles/tech-radar/"> Tech Radar : Qu'Est-Ce Que C'Est Et Pourquoi Les Equipes Techniques Doivent En Avoir Un </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Otavio-Santana/" data-id="author-Otavio-Santana">Otavio Santana</a> </span> </div> <span class="card__date date">le<span> 18 mars 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="4b1556dd-9a95-4567-afae-de29a93022ac" data-path="/articles/soulful-socio-technical-architecture"> <div class="card__content"> <a href="/fr/articles/soulful-socio-technical-architecture/" class="card__header"> <img loading="lazy" alt="Architecture Socio-Technique" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/soulful-socio-technical-architecture/fr/smallimage/logo-1634048553359.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="Architecture Socio-Technique" href="/fr/articles/soulful-socio-technical-architecture/"> Architecture Socio-Technique </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Marco-Consolaro/" data-id="author-Marco-Consolaro">Marco Consolaro</a> </span> </div> <span class="card__date date">le<span> 01 mars 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="42c5454d-1529-4937-9b91-7f4191836b17" data-path="/articles/microservices-seven-fail"> <div class="card__content"> <a href="/fr/articles/microservices-seven-fail/" class="card__header"> <img loading="lazy" alt="7 Façons D'échouer Dans Les Microservices" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/microservices-seven-fail/fr/smallimage/logo-1644492934255.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="7 Façons D'échouer Dans Les Microservices" href="/fr/articles/microservices-seven-fail/"> 7 Façons D'échouer Dans Les Microservices </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Holly-Cummins/" data-id="author-Holly-Cummins">Holly Cummins</a> </span> </div> <span class="card__date date">le<span> 18 févr. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> <li data-id="5f0e2888-f92d-4b18-a791-9506e3fbe330" data-path="/articles/patterns-database-jakarta-data"> <div class="card__content"> <a href="/fr/articles/patterns-database-jakarta-data/" class="card__header"> <img loading="lazy" alt="Jakarta Data : Meilleure Intégration Entre Java Et La Base De Données" src="https://imgopt.infoq.com/fit-in/100x100/filters:quality(80)/articles/patterns-database-jakarta-data/fr/smallimage/patterns-database-jakarta-data_100-1644824776112.jpg" class="card__image"> </a> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/java/" data-id="10518">Java</a> </span> </div> <h4 class="card__title"> <a title="Jakarta Data : Meilleure Intégration Entre Java Et La Base De Données" href="/fr/articles/patterns-database-jakarta-data/"> Jakarta Data : Meilleure Intégration Entre Java Et La Base De Données </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Otavio-Santana/" data-id="author-Otavio-Santana">Otavio Santana</a> </span> </div> <span class="card__date date">le<span> 14 févr. 2022</span></span> </div> <button aria-label="J'aime" size="small" class="like button button__unstyled icon__gray button__icon icon icon__like">J'aime</button> </div> </div> </div> </li> </ul> <a href="/fr/architecture/articles/" class="button button__arrow arrow__right button__more button__has-transition"> PLUS D'ARTICLES </a> </div> </div> </div> <div class="items"> <div class="actions heading__container"> <div class="actions__left"> <h2 class="heading section__heading heading__rss"> <a href="/fr/architecture/presentations/" > Présentations sur Architecture </a> </h2> <span class="rss icon icon__rss-feed"> <a href="https://feed.infoq.com/fr/architecture/presentations/" target="_blank">Flux RSS</a> </span> </div> </div> <div class="items__content"> <div> <ul class="no-style cards boxes" data-cols="4" data-size="large" data-hoverables="true" data-tax="presentations"> <li data-id="73bf9ce5-676e-4c30-b330-09202222f6ba" data-path="/presentations/flowcon-2018-Jocerand-Ducroux-Laure-Constantinesco-Marina-Wiesel" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/architecture-design/" data-id="12692">Architecture & Design</a> </span> </div> <h4 class="card__title"> <a title="L'UX au delà de l'interface" href="/fr/presentations/flowcon-2018-Jocerand-Ducroux-Laure-Constantinesco-Marina-Wiesel/">L'UX au delà de l'interface</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Jocerand-Ducroux/" data-id="author-Jocerand-Ducroux">Jocerand Ducroux</a> </span> <span> <a href="/fr/profile/Laure-Constantinesco/" data-id="author-Laure-Constantinesco">Laure Constantinesco</a> </span> <span> <a href="/fr/profile/Marina-Wiesel/" data-id="author-Marina-Wiesel">Marina Wiesel</a> </span> </div> <span class="card__date date">le<span> 09 sept. 2020</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/flowcon-2018-Jocerand-Ducroux-Laure-Constantinesco-Marina-Wiesel/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/flowcon-2018-Jocerand-Ducroux-Laure-Constantinesco-Marina-Wiesel/fr/mediumimage/flowcon-2018-Jocerand-Ducroux-Laure-Constantinesco-Marina-Wiesel-270X200-1599661129574.jpg" alt="L'UX au delà de l'interface" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 37:33 </div> </div> </a> </div> </li> <li data-id="d81dfdcc-4b00-4ea1-b1e5-6487c8c2a53f" data-path="/presentations/flowcon-2018-Edouard-Gomez-Vaez" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/culture-methods/" data-id="12693">Culture & Méthodes</a> </span> </div> <h4 class="card__title"> <a title="Le Jour Où Je Ne Serais Plus Coach Agile" href="/fr/presentations/flowcon-2018-Edouard-Gomez-Vaez/">Le Jour Où Je Ne Serais Plus Coach Agile</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Edouard-Gomez%7EVa%C3%ABz/" data-id="author-Edouard-Gomez~Vaëz">Edouard Gomez-Vaëz</a> </span> </div> <span class="card__date date">le<span> 15 nov. 2019</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/flowcon-2018-Edouard-Gomez-Vaez/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/flowcon-2018-Edouard-Gomez-Vaez/fr/mediumimage/flowcon-2018-Edouard-Gomez-Vaez_270x200-1573743577710.jpg" alt="Le Jour Où Je Ne Serais Plus Coach Agile" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 30:47 </div> </div> </a> </div> </li> <li data-id="85fca547-da61-4fa9-939d-31137ebc5e4a" data-path="/presentations/user-centered-analysis-and-design-nazli-ceren-binyildirim-fatma-urek-uludag" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="/fr/culture-methods/" data-id="12693">Culture & Méthodes</a> </span> </div> <h4 class="card__title"> <a title="User-Centered Analysis and Design" href="/fr/presentations/user-centered-analysis-and-design-nazli-ceren-binyildirim-fatma-urek-uludag/">User-Centered Analysis and Design</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Fatma-Urek-Uludag/" data-id="author-Fatma-Urek-Uludag">Fatma Urek Uludag</a> </span> <span> <a href="/fr/profile/Nazli-Ceren-Binyildirim/" data-id="author-Nazli-Ceren-Binyildirim">Nazli Ceren Binyildirim</a> </span> </div> <span class="card__date date">le<span> 19 janv. 2018</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/user-centered-analysis-and-design-nazli-ceren-binyildirim-fatma-urek-uludag/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/user-centered-analysis-and-design-nazli-ceren-binyildirim-fatma-urek-uludag/fr/mediumimage/270x200-1516350456764.jpg" alt="User-Centered Analysis and Design" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 34:31 </div> </div> </a> </div> </li> <li data-id="0f976022-b2c7-4aef-9f08-cc1bb0a06e00" data-path="/presentations/serverless-du-monolithique-au-systeme-distribue-yves-brissaud" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Serverless : transition du monolithique au système distribué" href="/fr/presentations/serverless-du-monolithique-au-systeme-distribue-yves-brissaud/">Serverless : transition du monolithique au système distribué</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Yves-Brissaud/" data-id="author-Yves-Brissaud">Yves Brissaud</a> </span> </div> <span class="card__date date">le<span> 29 sept. 2017</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/serverless-du-monolithique-au-systeme-distribue-yves-brissaud/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/serverless-du-monolithique-au-systeme-distribue-yves-brissaud/fr/mediumimage/270x200-1506688805453.jpg" alt="Serverless : transition du monolithique au système distribué" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 37:48 </div> </div> </a> </div> </li> <li data-id="493065b0-08d7-4dd5-8a94-10bfa93f1d4a" data-path="/presentations/codeurs-en-seine-arnaud-kervern" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Construire une API flexible, composable et extensible" href="/fr/presentations/codeurs-en-seine-arnaud-kervern/">Construire une API flexible, composable et extensible</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Arnaud-Kervern/" data-id="author-Arnaud-Kervern">Arnaud Kervern</a> </span> </div> <span class="card__date date">le<span> 27 mars 2017</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/codeurs-en-seine-arnaud-kervern/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/codeurs-en-seine-arnaud-kervern/fr/mediumimage/270x200.jpg" alt="Construire une API flexible, composable et extensible" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 41:51 </div> </div> </a> </div> </li> <li data-id="6cecac18-c2c9-4abc-956c-7e1236ef9e8c" data-path="/presentations/codeurs-en-seine-nicolas-hoffmann-internationalisation-sites" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Guide de survie de l'internationalisation des sites" href="/fr/presentations/codeurs-en-seine-nicolas-hoffmann-internationalisation-sites/">Guide de survie de l'internationalisation des sites</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Nicolas-Hoffmann/" data-id="author-Nicolas-Hoffmann">Nicolas Hoffmann</a> </span> </div> <span class="card__date date">le<span> 20 mars 2017</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/codeurs-en-seine-nicolas-hoffmann-internationalisation-sites/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/codeurs-en-seine-nicolas-hoffmann-internationalisation-sites/fr/mediumimage/270x200.jpg" alt="Guide de survie de l'internationalisation des sites" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 36:19 </div> </div> </a> </div> </li> <li data-id="17b55793-0cf9-4d99-b958-95c4249666cc" data-path="/presentations/codeurs-en-seine-simon-georges-seo" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="SEO : Indexation d'un site web, de la théorie à la pratique" href="/fr/presentations/codeurs-en-seine-simon-georges-seo/">SEO : Indexation d'un site web, de la théorie à la pratique</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Simon-Georges/" data-id="author-Simon-Georges">Simon Georges</a> </span> </div> <span class="card__date date">le<span> 06 mars 2017</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/codeurs-en-seine-simon-georges-seo/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/codeurs-en-seine-simon-georges-seo/fr/mediumimage/270x200.jpg" alt="SEO : Indexation d'un site web, de la théorie à la pratique" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 38:44 </div> </div> </a> </div> </li> <li data-id="44729088-2d71-4f63-b854-81fc7099766b" data-path="/presentations/codeurs-en-seine-olivier-leplus-app-web-sans-reseau" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Votre application web qui marche même sans réseau, c'est possible !" href="/fr/presentations/codeurs-en-seine-olivier-leplus-app-web-sans-reseau/">Votre application web qui marche même sans réseau, c'est possible !</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Olivier-Leplus/" data-id="author-Olivier-Leplus">Olivier Leplus</a> </span> </div> <span class="card__date date">le<span> 20 févr. 2017</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/codeurs-en-seine-olivier-leplus-app-web-sans-reseau/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/codeurs-en-seine-olivier-leplus-app-web-sans-reseau/fr/mediumimage/ol-270X200.jpg" alt="Votre application web qui marche même sans réseau, c'est possible !" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 46:43 </div> </div> </a> </div> </li> <li data-id="1d6c42f8-d79b-44ca-b37f-0f7a17390d39" data-path="/presentations/codeurs-en-seine-bastien-jaillot-projet-web" > <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Petit guide de survie dans la complexité d'un projet Web" href="/fr/presentations/codeurs-en-seine-bastien-jaillot-projet-web/">Petit guide de survie dans la complexité d'un projet Web</a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Bastien-Jaillot/" data-id="author-Bastien-Jaillot">Bastien Jaillot</a> </span> </div> <span class="card__date date">le<span> 15 févr. 2017</span></span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/presentations/codeurs-en-seine-bastien-jaillot-projet-web/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/297x220/filters:quality(80)/presentations/codeurs-en-seine-bastien-jaillot-projet-web/fr/mediumimage/270X200.jpg" alt="Petit guide de survie dans la complexité d'un projet Web" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 37:27 </div> </div> </a> </div> </li> </ul> <a href="/fr/architecture/presentations/" class="button button__arrow arrow__right button__more button__has-transition"> PLUS DE PRÉSENTATIONS </a> </div> </div> </div> <div class="items"> <div class="actions heading__container"> <div class="actions__left"> <h2 class="heading section__heading heading__rss"> <a href="/fr/architecture/interviews/" > Interviews sur Architecture </a> </h2> <span class="rss icon icon__rss-feed"> <a href="https://feed.infoq.com/fr/architecture/interviews/" target="_blank">Flux RSS</a> </span> </div> </div> <div class="items__content"> <div> <ul class="no-style cards boxes" data-cols="4" data-size="large" data-hoverables="true" data-tax="interviews"> <li data-id="20a44e88-eec4-4c59-b901-745007b28002" data-path="/interviews/tiad-interview-nicolas-blanc-blablacar"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Architecture & Automatisation à BlaBlaCar" href="/fr/interviews/tiad-interview-nicolas-blanc-blablacar/"> Architecture & Automatisation à BlaBlaCar </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Nicolas-Blanc/" data-id="author-Nicolas-Blanc">Nicolas Blanc</a> </span> </div> <span class="card__date date"> le <span> 08 févr. 2016</span> </span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/interviews/tiad-interview-nicolas-blanc-blablacar/" class="card__header"> <img loading="lazy" src="https://res.infoq.com/interviews/tiad-interview-nicolas-blanc-blablacar/fr/mediumimage/nicolas-blanc270x200.jpg" alt="Architecture & Automatisation à BlaBlaCar" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 11:24 </div> </div> </a> </div> </li> <li data-id="2babcbea-b90d-452b-9ee6-8a01d8f1c3d6" data-path="/interviews/modeling-emf-compare-git-gerritt"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Le futur de la modélisation avec EMF Compare, Git et Gerrit" href="/fr/interviews/modeling-emf-compare-git-gerritt/"> Le futur de la modélisation avec EMF Compare, Git et Gerrit </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Mika%C3%ABl-Barbero/" data-id="author-Mikaël-Barbero">Mikaël Barbero</a> </span> </div> <span class="card__date date"> le <span> 27 mars 2014</span> </span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/interviews/modeling-emf-compare-git-gerritt/" class="card__header"> <img loading="lazy" src="https://res.infoq.com/interviews/modeling-emf-compare-git-gerritt/fr/mediumimage/eclipsecon-mickaelbarbeto-270x200.png" alt="Le futur de la modélisation avec EMF Compare, Git et Gerrit" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 05:55 </div> </div> </a> </div> </li> <li data-id="746b1743-6e09-447b-84c2-3c673b1bd880" data-path="/interviews/integration-projets-eclipse-esterel"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Retour d'expérience d'intégration de projets Eclipse chez Esterel Technologies" href="/fr/interviews/integration-projets-eclipse-esterel/"> Retour d'expérience d'intégration de projets Eclipse chez Esterel Technologies </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Alain-Le-Guennec/" data-id="author-Alain-Le-Guennec">Alain Le Guennec</a> </span> </div> <span class="card__date date"> le <span> 26 févr. 2014</span> </span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/interviews/integration-projets-eclipse-esterel/" class="card__header"> <img loading="lazy" src="https://res.infoq.com/interviews/integration-projets-eclipse-esterel/fr/mediumimage/eclipsecon-allainleguennec-270x200.png" alt="Retour d'expérience d'intégration de projets Eclipse chez Esterel Technologies" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 06:27 </div> </div> </a> </div> </li> <li data-id="69472f98-af76-4946-93c7-39a1ae96baf1" data-path="/interviews/cohorte-sca-remote-osgi-olivier-gattaz"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Cohorte, un conteneur SCA dynamique" href="/fr/interviews/cohorte-sca-remote-osgi-olivier-gattaz/"> Cohorte, un conteneur SCA dynamique </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Olivier-Gattaz/" data-id="author-Olivier-Gattaz">Olivier Gattaz</a> </span> </div> <span class="card__date date"> le <span> 13 janv. 2014</span> </span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/interviews/cohorte-sca-remote-osgi-olivier-gattaz/" class="card__header"> <img loading="lazy" src="https://res.infoq.com/interviews/cohorte-sca-remote-osgi-olivier-gattaz/fr/mediumimage/eclipsecon-oliviergattaz.png" alt="Cohorte, un conteneur SCA dynamique" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 07:53 </div> </div> </a> </div> </li> <li data-id="2bb5f5fb-5db3-40c3-a48f-0318bd5c3bb7" data-path="/interviews/cloud-patterns-nicolas-de-loof"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Discussion sur les Patterns du développement Cloud avec Nicolas de Loof" href="/fr/interviews/cloud-patterns-nicolas-de-loof/"> Discussion sur les Patterns du développement Cloud avec Nicolas de Loof </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Nicolas-De-Loof/" data-id="author-Nicolas-De-Loof">Nicolas De Loof</a> </span> </div> <span class="card__date date"> le <span> 29 oct. 2013</span> </span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/interviews/cloud-patterns-nicolas-de-loof/" class="card__header"> <img loading="lazy" src="https://res.infoq.com/interviews/cloud-patterns-nicolas-de-loof/fr/mediumimage/itw_NicolasDeloof-270x200.png" alt="Discussion sur les Patterns du développement Cloud avec Nicolas de Loof" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 15:39 </div> </div> </a> </div> </li> <li data-id="7d7427fd-d431-44b3-9fcb-0bbf92e95f35" data-path="/interviews/interview-aurelien-maury-breizhcamp-2013"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Discussions autour de Vert.X avec Aurélien Maury" href="/fr/interviews/interview-aurelien-maury-breizhcamp-2013/"> Discussions autour de Vert.X avec Aurélien Maury </a> </h4> <div class="card__footer"> <div class="card__details"> <div class="card__authors authors"> <span> <a href="/fr/profile/Aur%C3%A9lien-Maury/" data-id="author-Aurélien-Maury">Aurélien Maury</a> </span> </div> <span class="card__date date"> le <span> 18 sept. 2013</span> </span> </div> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small">J'aime</button> </div> </div> <a href="/fr/interviews/interview-aurelien-maury-breizhcamp-2013/" class="card__header"> <img loading="lazy" src="https://res.infoq.com/interviews/interview-aurelien-maury-breizhcamp-2013/fr/mediumimage/AurelienMaury270.jpg" alt="Discussions autour de Vert.X avec Aurélien Maury" class="card__image" /> <div class="card__meta"> <div class="card__icon">Icon</div> <div class="card__length"> 07:25 </div> </div> </a> </div> </li> </ul> </div> </div> </div> <div class="items"> <div class="actions heading__container"> <div class="actions__left"> <h2 class="heading section__heading heading__rss"> <a href="/fr/architecture/minibooks/" > Guides sur Architecture </a> </h2> <span class="rss icon icon__rss-feed"> <a href="https://feed.infoq.com/fr/architecture/minibooks/" target="_blank">Flux RSS</a> </span> </div> </div> <div class="items__content"> <div> <ul class="no-style cards boxes" data-cols="4" data-size="large" data-hoverables="true" data-tax="guides"> <li data-id="0e2314c9-3e38-405a-9927-d44d1e8ce96f" data-path="/minibooks/Mezick-Culture-game"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Jeu de Culture: Outils pour le manager agile" href="/fr/minibooks/Mezick-Culture-game/"> Jeu de Culture: Outils pour le manager agile </a> </h4> <div class="card__footer"> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small"> J'aime </button> </div> </div> <a href="/fr/minibooks/Mezick-Culture-game/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/256x364/filters:quality(80)/minibooks/Mezick-Culture-game/fr/cover/Culture-Game-TR3250x355.JPG" alt="Jeu de Culture: Outils pour le manager agile" class="card__image" /> </a> </div> </li> <li data-id="e5266ed6-366c-466a-8e97-e0cd5fa2c19e" data-path="/minibooks/domain-driven-design-quickly"> <div class="card__content"> <div class="card__data"> <div class="card__topics topics"> <span> <a href="http://www.infoq.com/fr/architecture/" data-id=""></a> </span> </div> <h4 class="card__title"> <a title="Domain-Driven Design Vite fait" href="/fr/minibooks/domain-driven-design-quickly/"> Domain-Driven Design Vite fait </a> </h4> <div class="card__footer"> <button class="icon button button__icon like button__unstyled icon__gray icon__like" aria-label="J'aime" size="small"> J'aime </button> </div> </div> <a href="/fr/minibooks/domain-driven-design-quickly/" class="card__header"> <img loading="lazy" src="https://imgopt.infoq.com/fit-in/256x364/filters:quality(80)/minibooks/domain-driven-design-quickly/fr/cover/DDDViteFait.jpg" alt="Domain-Driven Design Vite fait" class="card__image" /> </a> </div> </li> </ul> </div> </div> </div> </div> </div> </section> </main> <footer class="footer "> <section data-nosnippet class="section container prsps__section white center"> <div class="container__inner"> <p>Rien ne serait possible sans le soutien et la confiance de nos Sponsors:</p> <div class="prsps__list"> <a href="https://www.oxiane.com/" target="_blank"> <img loading="lazy" src="/styles/static/images/oxiane_logo_bleu_150x40.png" alt="Jenji"/> </a> </div> </div> </section> <section data-nosnippet class="section container"> <div class="container__inner"> <ul data-cols="5" class="no-style columns boxes topic__boxes"> <li class="development"> <div class="box__header"> <a class="t_all_footer_more-boxes-header" href="/fr/development/">Développement</a> </div> <div class="box__content"> <ul class="no-style box__list small"> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/07/Asahi-linux-m2-support/" title="La Nouvelle Version D'Asahi Linux Prend En Charge Les Processeurs Apple M1 Ultra Et M2">La Nouvelle Version D'Asahi Linux Prend En Charge Les Processeurs Apple M1 Ultra Et M2</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/06/PostgreSQL-14-Breaking-Change/" title="PostgreSQL 14 Casse Les Pilotes .NET Et Java Pour PostgreSQL">PostgreSQL 14 Casse Les Pilotes .NET Et Java Pour PostgreSQL</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/03/docker-desktop-macos-virtiofs/" title="Docker Desktop 4.6 Pour Mac Am&eacute;liore Les Performances De Partage">Docker Desktop 4.6 Pour Mac Améliore Les Performances De Partage</a></h5> </li> </ul> </div> </li> <li class="architecture-design"> <div class="box__header"> <a class="t_all_footer_more-boxes-header" href="/fr/architecture-design/">Architecture & Design</a> </div> <div class="box__content"> <ul class="no-style box__list small"> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/10/design-patterns-serverless/" title="Comment Eviter Le Verrouillage Des Fournisseurs Sans Serveurs Avec Design Patterns ?">Comment Eviter Le Verrouillage Des Fournisseurs Sans Serveurs Avec Design Patterns ?</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/articles/ballerina-data-functional-programming/" title="Manipulation De Donn&eacute;es Avec Programmation Fonctionnelle Et Requ&ecirc;tes Dans Ballerina">Manipulation De Données Avec Programmation Fonctionnelle Et Requêtes Dans Ballerina</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/articles/ballerina-data-oriented-language/" title="Ballerina : Un Langage De Programmation Orient&eacute; Donn&eacute;es">Ballerina : Un Langage De Programmation Orienté Données</a></h5> </li> </ul> </div> </li> <li class="culture-methods"> <div class="box__header"> <a class="t_all_footer_more-boxes-header" href="/fr/culture-methods/">Culture & Méthodes</a> </div> <div class="box__content"> <ul class="no-style box__list small"> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/12/financial-debt-impossible/" title="La Dette Technique Est Quantifiable En Tant Que Dette Financi&egrave;re : Impossible Pour Les D&eacute;veloppeurs">La Dette Technique Est Quantifiable En Tant Que Dette Financière : Impossible Pour Les Développeurs</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/11/performance-testing-trends/" title="Les Tests De Performance Doivent S'Appuyer Sur Les Tendances">Les Tests De Performance Doivent S'Appuyer Sur Les Tendances</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/articles/individual-team-processes/" title="Les Processus De Tests Individuels Ne Peuvent Convenir A Tout Le Monde.">Les Processus De Tests Individuels Ne Peuvent Convenir A Tout Le Monde.</a></h5> </li> </ul> </div> </li> <li class="ai-ml-data-eng"> <div class="box__header"> <a class="t_all_footer_more-boxes-header" href="/fr/ai-ml-data-eng/">Data Science</a> </div> <div class="box__content"> <ul class="no-style box__list small"> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/10/grab-data-platform/" title="Grab A Partag&eacute; Son Experience Sur La Conception De Plate-formes De Donn&eacute;es Distribu&eacute;es">Grab A Partagé Son Experience Sur La Conception De Plate-formes De Données Distribuées</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2021/01/microsoft-vision-language-vinvl/" title="Microsoft Research D&eacute;veloppe un Nouveau Syst&egrave;me de Language-Vision : VinVL">Microsoft Research Développe un Nouveau Système de Language-Vision : VinVL</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/articles/uber-eats-time-predictions/" title="Les Pr&eacute;dictions De Temps Chez Uber Eats">Les Prédictions De Temps Chez Uber Eats</a></h5> </li> </ul> </div> </li> <li class="devops"> <div class="box__header"> <a class="t_all_footer_more-boxes-header" href="/fr/devops/">DevOps</a> </div> <div class="box__content"> <ul class="no-style box__list small"> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/10/Uber-breach-mfa-fatigue/" title="Les Facteurs Cl&eacute;s De La &quot;MFA Fatigue&quot; Dont A Ete Victime Uber">Les Facteurs Clés De La "MFA Fatigue" Dont A Ete Victime Uber</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/news/2022/09/slack-remote-development-env/" title="Adoption D'Environnements De D&eacute;veloppement &Agrave; Distance Chez Slack">Adoption D'Environnements De Développement À Distance Chez Slack</a></h5> </li> <li> <h5><a class="t_all_footer_more-boxes-item" href="/fr/articles/devops-governance-developer-velocity/" title="Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La V&eacute;locit&eacute; Des D&eacute;veloppeurs">Pourquoi La Gouvernance DevOps Est Cruciale Pour Permettre La Vélocité Des Développeurs</a></h5> </li> </ul> </div> </li> </ul> </div> </section> <section data-nosnippet class="container section section__newsletter"> <div class="columns container__inner"> <div class="newsletter" data-col="1/2" > <h2 class="heading"> <strong>InfoQ</strong> Newsletter hebdomadaire </h2> <p class="intro">Un résumé du contenu de la semaine dernière sur InfoQ envoyé tous les jeudis. Rejoignez une communauté de plus de 250 000 développeurs seniors. <a target="_blank" href="https://assets.infoq.com/newsletter/regular/fr/newsletter_sample/newsletter_sample.html">Voir un exemple</a> </p> <ul class="newsletter__features"> <li>Obtenez un aperçu rapide du contenu publié sur une variété de technologies innovantes et précoces</li> <li>Apprenez ce que vous ne savez pas et que vous devriez connaître</li> <li>Restez à jour avec les dernières informations sur les sujets qui vous intéressent</li> </ul> <div class="newsletter__subscribe"> <form class="form gdpr" name="footerNewsletterForm" id="footerNewsletterForm" action="#" onsubmit="footerNewsletter.saveSubscription(); return false;"> <div class="field newsletter__mail input__text input__no-label input__medium email"> <label for="email-newsletter-infoq" class="label field__label">Votre adresse email ici</label> <input id="email-newsletter-infoq" name="footerNewsletterEmail" placeholder="Votre adresse email ici" class="input field__input" type="email"/> <input type="text" name="emailH" id="input_email_h" aria-required="false" style="display:none !important" tabindex="-1" autocomplete="off"/> <input type="hidden" id="fnt" name="fnt" value="eOR6JsTe59DuGOzR"/> <input type="hidden" id="footerNewsletterType" name="footerNewsletterType" value="regular"/> <input type="hidden" id="cmpi" name="cmpi" value="2"/> </div> <div class="hidden"> <span class="input__select field country"> <label for="input-simple-newsletter-country" class="label field__label">Sélectionnez votre pays</label> <select id="input-simple-newsletter-country" class="select field__input"> <option value="" class="select__option">Sélectionner</option> </select> <p class="input__message field__desc"></p> </span> <span class="input__checkbox field hidden"> <input type="checkbox" id="gdpr-consent-simple-nl"> <label for="gdpr-consent-simple-nl" class="label"><span>Je consens à ce que InfoQ.com traite mes données comme expliqué dans ces <a href="https://www.infoq.com/fr/privacy-notice" target=“_blank”>conditions de confidentialité</a>.</span></label> </span> </div> <input type="submit" role="button" value="S'inscrire" class="button button__medium button__red" onclick="return footerNewsletter.validateEmail('Adresse email invalide');"/> </form> <p class="meta"> <a href="/fr/privacy-notice/" target="_blank">Nous protégeons votre vie privée.</a> </p> <span class="success" style="display:none;" id="footerNewsletterMessage"></span> </div> <script type="text/javascript"> var footerNewsletter = new Newsletter('Votre adresse email ici', 'email-newsletter-infoq', 'footerNewsletterType','footerNewsletterMessage', 'fnt', 'input_email_h', 'input-simple-newsletter-country', 'cmpi','footer_except_homepage'); </script> </div> <div data-col="1/2" data-bg="qconLondon" class="event__container"> <a href="https://qconlondon.com/?utm_source=infoq&utm_medium=referral&utm_campaign=largefooterad_qlondon25" target="_blank" class="qconplus__events-slider"> <div> <div class="logo-london"></div> <br> </div> <p class="intro"><ul><li><strong>Conference: April 7-9, 2025</strong></li><li><strong>Certification workshop: April 10, 2025</strong></li></ul> QCon London International Software Development Conference returns on April 7-10, 2025. Level-up on 15 major software and leadership topics including; The Tech of FinTech, AI & ML in Software Engineering, Modern Data Architectures, Engineering Productivity, The Path to Senior Engineering Leadership, Supply Chain Security, and more.</p> <p class="intro">Learn the emerging trends. Explore the use cases. Implement the best practices.<br><strong class="button button__green cta__button">Register Now</strong></p> </a> </div> </div> </section> <section data-nosnippet class="section container footer__subfooter align__left"> <div class="container__inner columns"> <div data-col="1/4" class="columns footer__links-wrap"> <div class="footer__links"> <a href="/fr/" class="nuxt-link-exact-active active" title="Accueil">Accueil</a> <a href="/fr/reginit.action" class="emphasis" title="S'inscrire">S'inscrire</a> <button aria-label="Connexion" class="login" data-ref="mainLogin">Connexion</button> <a rel="noreferrer noopener" href="http://qconferences.com/" target="_blank" title="Conférences QCon">Conférences QCon</a> <a rel="noreferrer noopener" href="https://events.infoq.com/" target="_blank">Events</a> <a href="/fr/write-for-infoq/" title="Contribuez">Contribuez</a> <a href="/fr/infoq-editors/" title="Editeurs InfoQ">Editeurs InfoQ</a> <a href="/fr/about-infoq/" title="A propos d'InfoQ">A propos d'InfoQ</a> <a href="/fr/about-c4media/" title="A propos de C4 Media">A propos de C4 Media</a> <a rel="noreferrer noopener" href="https://c4media.com/diversity" title="Diversity" target="_blank">Diversity</a> </div> </div> <div data-col="1/4" class="events__list"> <h4 class="heading footer__heading">Events</h4> <ul class="qcons__list no-style"> <li><span class="icon event__type conference"></span> <div class="qcon__detail"> <h5 class="heading"> <a rel="noreferrer noopener" href="https://qconlondon.com/?utm_source=infoq&utm_medium=referral&utm_campaign=footer_qlondon25" target="_blank">QCon London</a> </h5> <span class="meta date">APRIL 7-10, 2025</span> </div> </li> <li><span class="icon event__type conference"></span> <div class="qcon__detail"> <h5 class="heading"> <a rel="noreferrer noopener" href="https://devsummit.infoq.com/conference/boston2025?utm_source=infoq&utm_medium=referral&utm_campaign=footer_idsboston25" target="_blank">InfoQ Dev Summit Boston</a> </h5> <span class="meta date">June 9-10, 2025</span> </div> </li> <li><span class="icon event__type conference"></span> <div class="qcon__detail"> <h5 class="heading"> <a rel="noreferrer noopener" href="https://devsummit.infoq.com/conference/munich2025?utm_source=infoq&utm_medium=referral&utm_campaign=footer_idsmunich25" target="_blank">InfoQ Dev Summit Munich</a> </h5> <span class="meta date">October 15-16, 2025</span> </div> </li> <li><span class="icon event__type conference"></span> <div class="qcon__detail"> <h5 class="heading"> <a rel="noreferrer noopener" href="https://qconsf.com/?utm_source=infoq&utm_medium=referral&utm_campaign=footer_qsf25" target="_blank">QCon San Francisco</a> </h5> <span class="meta date">November 17-21, 2025 / In-person</span> </div> </li> <li><span class="icon event__type conference"></span> <div class="qcon__detail"> <h5 class="heading"> <a rel="noreferrer noopener" href="#" target="_self" onclick="return false;">InfoQ Dev Summit New York</a> </h5> <span class="meta date">December, 2025 / In-person</span> </div> </li> </ul> </div> <div data-col="1/4" class="footer__social-wrap"> <h4 class="heading text-left footer__heading">Retrouvez-nous sur les réseaux sociaux </h4> <div class="social__links columns social__links__row"> <a href="http://www.linkedin.com/company/infoq"><span class="icon icon__large icon__social icon__linkedin"></span></a> <a href="#" id="footerNewsletterRssLink"><span class="icon icon__large icon__social icon__rss"></span></a> <a href="http://twitter.com/infoqfr" target="_blank"><span class="icon icon__large icon__social icon__twitter"></span></a> <a href="https://www.facebook.com/InfoQ-75911537320" target="_blank"><span class="icon icon__large icon__social icon__fb"></span></a> </div> </div> <div data-col="1/4" class="footer__stayin-wrap"> <h4 class="heading text-left footer__heading">Stay in the know</h4> <div class="stayIn_panel_container"> <a href="/podcasts/" class="stayIn_panel" target="_blank" rel="noreferrer noopener"><span>The InfoQ Podcast</span><picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QuanBnIiwiZWRpdHMiOiB7IndlYnAiOiB7ICJxdWFsaXR5Ijo4MH19fQ==" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QuanBnIiwiZWRpdHMiOiB7ImpwZWciOiB7ICJxdWFsaXR5Ijo4MH19fQ==" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QuanBnIiwiZWRpdHMiOiB7ImpwZWciOiB7ICJxdWFsaXR5Ijo4MH19fQ==" loading="lazy" width="65px" height="64px" alt="The InfoQ Podcast Logo - Stay in the know"></picture></a> <a href="/podcasts/#engineering_culture" class="stayIn_panel" target="_blank" rel="noreferrer noopener"><span>Engineering Culture Podcast</span><picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QtZW5naW5lZXJpbmctY3VsdHVyZS5qcGciLCJlZGl0cyI6IHsid2VicCI6IHsgInF1YWxpdHkiOjgwfX19" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QtZW5naW5lZXJpbmctY3VsdHVyZS5qcGciLCJlZGl0cyI6IHsianBlZyI6IHsgInF1YWxpdHkiOjgwfX19" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLXBvZGNhc3QtZW5naW5lZXJpbmctY3VsdHVyZS5qcGciLCJlZGl0cyI6IHsianBlZyI6IHsgInF1YWxpdHkiOjgwfX19" loading="lazy" width="65px" height="64px" alt="Engineering Culture Podcast Logo - Stay in the knoww"></picture></a> <a href="/software-architects-newsletter/" class="stayIn_panel" target="_blank" rel="noreferrer noopener"><span>The Software Architects' Newsletter</span><picture><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLWFyY2hpdGVjdC1uZXdzbGV0dGVyLmpwZyIsImVkaXRzIjogeyJ3ZWJwIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><source srcset="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLWFyY2hpdGVjdC1uZXdzbGV0dGVyLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" type="image/webp"><img src="https://imgopt.infoq.com/eyJidWNrZXQiOiAiYXNzZXRzLmluZm9xLmNvbSIsImtleSI6ICJ3ZWIvZm9vdGVyL2luZm9xLWFyY2hpdGVjdC1uZXdzbGV0dGVyLmpwZyIsImVkaXRzIjogeyJqcGVnIjogeyAicXVhbGl0eSI6ODB9fX0=" loading="lazy" width="65px" height="64px" alt="The Software Architects' Newsletter Logo - Stay in the know"></picture></a> </div> </div> </div> </section> <section data-nosnippet class="container footer__bottom section white align__left"> <div class="container__inner columns"> <div data-col="2/3" class="column"> <div class="footer__contact contact columns"> <span data-col="1/6"> Feedback Général <a href="mailto:feedback-fr@infoq.com">feedback-fr@infoq.com</a> </span> <span data-col="1/6"> Publicité <a href="mailto:sales-fr@infoq.com">sales-fr@infoq.com</a> </span> <span data-col="1/6"> Éditorial <a href="mailto:editors-fr@infoq.com">editors-fr@infoq.com</a> </span> <span data-col="1/6"> Marketing <a href="mailto:marketing@infoq.com">marketing@infoq.com</a> </span> </div> </div> <div class="column" data-col="1/3"> <p class="footer__more"> InfoQ.com et tous les contenus sont copyright © 2006-2025 C4Media Inc.<br/> <a href="/fr/privacy-notice/" target="_blank">Politique de confidentialité</a></span> </p> </div> </div> </section> </footer> <!-- ####### SITE END ######### --> </div> <div class="intbt"> <a href="/int/bt/" title="bt">BT</a> </div> <script type="text/javascript"> $.when(humanDetectionAsync()).then( function(status) { $.getScript("/scripts/__hd.ifq?hdt=eOR6JsTe59DuGOzR&ha=" + status); } ); </script> <script type="text/javascript"> var pageFullyLoaded = false; // this event is fired by frontend once all the necessary things have been done(mobile display, moving vcr boxes around when needed...) infoq.event.on('loaded', function(e) { pageFullyLoaded = true; }); infoq.event.on('pageWidthChanged', function(e) { // re-execute tracking vcr impressions when this event happens (it only happens when elements are added/removed from page) // doTrackVcrImpressions takes into account the data-trk-impr="true" if =false the element was already tracked. // this is needed when switching from mobile to desktop or when layout on mobile changes and desktop version is displayed. New elements become visible. Tracker.safeExec(Tracker.doTrackVcrImpressions); // these 2 need to be called also because we might be on a content page. In case we are not nothing happens VCR.doTrackingCustomRightbar(); VCR.doTrackingCustomRightbarForPresentations() }); //check to see if error page if(window.device !== undefined) { var intervalImpressions = setInterval(function() { var shouldTrack = false; // no vcr widgets on index pages if(window.isIndexPage) { if(window.sponsoredPodcastDone === undefined || window.sponsoredPodcastDone) { shouldTrack = true; } } else //on homepage, bottom widget + 2 native widgets if(InfoQConstants.pageType == "HOMEPAGE" && window.finishedVcrOptional1 && window.finishedRelatedVcr && (window.finishedVcrOptional2 === undefined || window.finishedVcrOptional2)) { shouldTrack = true; } else // rightbar widgets + native widgets + content vcr widgets if((InfoQConstants.pageType == "NEWS_PAGE" || InfoQConstants.pageType == "ARTICLE_PAGE") && ((window.finishedRightbarVcr || window.finishedRightbarVcr === undefined) && window.contentVcrFinished)) { shouldTrack = true; } else if ((InfoQConstants.pageType == "PRESENTATION_PAGE") && (window.contentVcrFinished || window.contentVcrFinished === undefined) && (window.finishedRightbarVcr || window.finishedRightbarVcr === undefined) ) { shouldTrack = true; } else // native widgets + content widgets if(window.contentVcrFinished && (window.finishedVcrOptional1 || window.finishedVcrOptional1 === undefined) && (window.finishedVcrOptional2 || window.finishedVcrOptional2 === undefined)) { shouldTrack = true; } // we start tracking only after the page is fully loaded, frontend signals that they finished everything related to page display. if(shouldTrack && pageFullyLoaded) { clearInterval(intervalImpressions); Tracker.safeExec(Tracker.doTrackVcrImpressions); // start tracking viewable impressions also only after everything is ready function callbackRouter(entries, observer) { var targets = new Array(); entries.forEach(function (entry) { var target = entry.target; if (target.dataset.trkView === 'false') return; if (entry.intersectionRatio > 0) { target.dataset.trkView = false; targets.push(target); } }); Tracker.doTrackViewableImpressions(targets); } var elementsForTrackingViewableImpressions = document.querySelectorAll('[data-trk-view="true"]') var observer = new IntersectionObserver(callbackRouter, { threshold: 0.3 }); elementsForTrackingViewableImpressions.forEach(observer.observe.bind(observer)); } }, 500); } $(document).ready(function () { // desktop notifications widget Tracker.encodeNotificationLinks($(".f_notificationWidget")); // mobile notifications widget Tracker.encodeNotificationLinks($(".h_notifications")); // desktop notifications page Tracker.encodeNotificationLinks($(".notification-page")); // mobile notifications page Tracker.encodeNotificationLinks($(".notifications_page")); }); </script> <script type="text/javascript"> if(window.location.hash){ var hash = window.location.hash.substring(1); if(hash == 'subscribe'){ $('html,body').animate({scrollTop: $('.ftxt3 > .newsletter').offset().top}, 'slow'); } } </script> <script type="text/javascript"> var newsletterSubscriptionURL ='/fr/newsletter/subscribe.action'; DynamicLinks.updateRssLinks('XnLuCjIf6z9BHCGZ6Nd4R76O32258ENr'); ContentSummary.setSelectedTab('fr'); //when user enters the main content area show default topics in the topics bar $("#content-wrapper").mouseenter(function() { showDefaultTopics(); }); Bookmarks.contentTitle = ""; Bookmarks.apiUrl = '/widgets/bookmark.action'; Bookmarks.isContentBookmarked = ""; </script> <script type="text/javascript"> var $buoop = {vs:{i:6,f:1,o:10.1,s:1}} $buoop.ol = window.onload; $(document).ready(function() { try {if ($buoop.ol) $buoop.ol();}catch (e) {} var e = document.createElement("script"); e.setAttribute("type", "text/javascript"); e.setAttribute("src", "https://cdn.infoq.com/statics_s2_20250228123450/scripts/lib/browser-update-org/update.js"); document.body.appendChild(e); }); </script> <script type='text/javascript'> try { mixpanel.track('page viewed', { 'page name' : document.title, 'url' : window.location.pathname }); } catch(err) { } </script> <!-- Latest Version --> <script src="https://cc.cdn.civiccomputing.com/9/cookieControl-9.x.min.js" type="text/javascript"></script> <script> const config = { apiKey: '8910ea974a96ffb6f927952b4ae9b9b0cc3e5973', product: 'PRO_MULTISITE', // general settings consentCookieExpiry: 90, encodeCookie: true, sameSiteCookie: true, // if false, cookie set as SameSite=None;secure; sameSiteValue: ';secure', // either 'Strict', 'Lax', or 'None' subDomains: true, initialState: 'notify', // 'notify','top','box' require pro licence notifyOnce: false, setInnerHTML: true, //layout settings layout: 'slideout', position: 'left', theme: 'light', acceptButton: true, rejectButton: true, closeOnGlobalChange: true, closeStyle: 'icon', toggleType: 'slider', notifyDismissButton: true, settingsStyle: 'link', excludedCountries: ['US'], /*accessibility: { disableSiteScrolling: true, },*/ statement: { description: 'For more detailed information about the cookies we use, see our', name: 'Cookie Policy', url: 'https://www.infoq.com/cookie-policy', updated: '01/01/2024', }, // cookies starting from 'cookie_expire' are from live.infoq.com but since we use the same tool on the same domain we need to specify those too so // that infoq.com cookieControl does not delete live.infoq.com cookies(also infoq.com cookies have been specified in live.infoq.com cookieControl configs) necessaryCookies: ['RegUserCookie', 'UserCookie', 'IdpCookie', 'ConversionTrackingV2_','PSAdialog','*P13NWN*','topbarSurvey','__bkm','JSESSIONID','mp_','_mixpanel','CloudFront-Key-Pair-Id','CloudFront-Policy','CloudFront-Signature','cookie_expire','discount_promo_closed','discount_promo_code','discount_promo_submitted','exit_survey_popup','referrer_popup','voting_popup_*','AWSALB','AWSALBCORS','aws-waf-token'], optionalCookies: [ { name: 'analytics', label: 'Analytics', description: 'Analytical cookies help us to improve our website by collecting and reporting information on its usage.', cookies: ['_ga', '_ga*', '_gid', '_gat', '__utma', '__utmt', '__utmb', '__utmc', '__utmz', '__utmv'], onAccept: function(){ gtag('consent', 'update', {'analytics_storage': 'granted'}); }, onRevoke: function(){ gtag('consent', 'update', {'analytics_storage': 'denied'}); } }, { name: 'marketing', label: 'Advertising', description: 'We use advertising cookies to display advertisements to you for our products.', onAccept: function(){ gtag('consent', 'update', {'ad_storage': 'granted', 'ad_personalization': 'granted', 'ad_user_data': 'granted'}); }, onRevoke: function(){ gtag('consent', 'update', {'ad_storage': 'denied', 'ad_personalization': 'denied', 'ad_user_data': 'denied'}); } } ], text : { // main preference panels title: '<h3>Our use of cookies</h3>', intro: 'We use necessary cookies to make our site work. Functional cookies help enhance the performance and functionality of the site. '+ 'We\'d also like to set analytics cookies to help us improve your experience by measuring how you use the site. '+ 'These will be set only if you accept. ', acceptSettings: 'I Accept', rejectSettings: 'I Do Not Accept', necessaryTitle : '<h3>Necessary Cookies</h3>', necessaryDescription : 'Necessary cookies enable core functionality ' + 'such as page navigation and access to secure areas. '+ 'The website cannot function properly without '+ 'these cookies, and can only be disabled by changing '+ 'your browser preferences.', closeLabel: 'Close Cookie Control', cornerButton: 'Set cookie preferences', // main preference panel controls on: 'On', off : 'Off', thirdPartyTitle : 'Some cookies require your attention', thirdPartyDescription : 'Consent for the following cookies could not be '+ 'automatically revoked. Please follow the link(s) '+ 'below to opt out manually.', // notification panels (only accessible for pro licences) notifyTitle : 'Your choice regarding cookies on this site', notifyDescription : 'We use cookies to optimise site functionality and '+ 'give you the best possible experience.', accept : 'I Accept', reject: 'I Do Not Accept', settings : 'Settings', }, branding : { removeAbout: true, }, }; // do not load this for local envs only. for testing on local envs remove/modify this condition if(InfoQConstants.pageUrl.indexOf('local')===-1){ CookieControl.load( config ); } </script> </body> </html> <!-- s2 -->