EFx zavodi - EFx Factory

The EFx zavodi (Arxitektura-qo'llanma dasturiy ta'minot fabrikasi) - bu kashshof me'moriy qo'llanma Dasturiy ta'minot zavodi dan Microsoft, va a ning birinchi dasturlaridan biri dasturiy ta'minot zavodi qurilishi kerak.

"EFx Factory" .NET Distributed Architecture dasturini amalga oshiradi Xizmatga yo'naltirilgan ilovalar va xizmatlar.

Zavod me'moriy dasturlar tizimiga asoslangan Korxona doirasi bu jismoniy narsani tasvirlaydi Microsoft .NET arxitekturadan foydalanish Microsoft Enterprise Library va Microsoft namunalari va amaliyotidan boshqa xizmatga yo'naltirilgan naqshlar EFX zavodi ichida ishlab chiqish bo'yicha maslahatchilar tomonidan ishlab chiqilgan va qurilgan Microsoft konsalting xizmatlari .NET arxitekturasini amalga oshirish bo'yicha mijozlar talabiga, .NETni rivojlantirish bo'yicha ilg'or tajribalar va ulardan eng yaxshi foydalanish bo'yicha ko'rsatmalarga javoban Korxona kutubxonasi va Microsoft-dan erkin foydalanish mumkin bo'lgan bir qator boshqa dastur bloklari.

Tarix

Dastlab, (taxminan 2003, .NET Framework 1.0-1.1, Visual Studio 2002-2003) "Enterprise Framework" (EFx) .NET arxitekturasini amalga oshirish uchun xaridorlarning o'sib borayotgan talabini qondirish uchun qurilgan. Ushbu ramka turli xil mijozlar uchun bir nechta korxona echimlarini ishlab chiqarish natijalaridan kelib chiqqan holda amalga oshirilish sxemalariga asoslangan edi. Ushbu ramka qatlamli .NET arxitekturasini amalga oshirdi va kengaytirildi va kengaytirildi Korxona kutubxonasi .NET platformasida dasturlar va xizmatlarni yaratish uchun to'liq asosni ta'minlash.

Ushbu dastur doirasi .NET platformasidagi o'zgarishlar, rivojlanayotgan Microsoft texnologiyalari va sanoatdagi o'zgarishlar bilan birga rivojlandi xizmatga yo'naltirish naqshlar. Ushbu tizim bazaviy dasturlarni o'z ichiga olgan sinf kutubxonalari to'plamini taqdim etdi me'moriy qatlamlar ba'zi texnologiyalarni tayinlash (masalan ASMX ) va "infratuzilma xizmatlari", ular ishlab chiquvchilar me'moriy qatlamlar uchun o'zaro bog'liq muammolarni hal qilishda foydalangan: Istisnolardan foydalanish, Autentifikatsiya, Ruxsat, Logging va hk. Ushbu tizim Enterprise Library-ni kengaytirdi va bir xil bo'lmagan texnologik muhitda ko'plab mijozlar uchun zarur bo'lgan bir nechta haqiqiy xavfsizlik ta'minotchilarini amalga oshirdi. Bundan tashqari, ushbu talablarni korxona sharoitida hal qilish uchun Enterprise Library kutubxonasida, xususan istisnolardan foydalanish bilan bog'liq ko'plab eng yaxshi amaliyot namunalari yaratilgan. Ushbu ramka, shuningdek, Enterprise Library-da paketlanmagan bloklarni taqdim etdi, masalan, tasdiqlash bloki. Ushbu echim domeniga xos bo'lgan Enterprise Library-ning foydali abstraktsiyalarini taqdim etdi, soddalashtirilgan API-larni taklif qildi va ramka satr parametrlarini kiritish bilan API-ni birlashtirdi.

Ushbu ramka (manba shaklida) Enterprise Library bilan paketlangan ramka majmualari to'plami sifatida etkazib berildi. Ushbu ramka taklif qilingan echimlar to'plamini o'z ichiga olgan, Ma'lumotni amalga oshirish (RI) va hujjatlar. Shundan kelib chiqadigan bo'lsak, dasturchilar o'zlarining dasturiy ta'minotlarini va server tomonlarini yaratdilar ASP.NET veb-xizmatlar. Ilova yoki xizmatni ishlab chiqish uchun ishlab chiquvchidan yangi echim yaratish va ramka majmualariga havola qilingan to'plamlar to'plamini (har bir qatlam uchun bittadan) amalga oshirish talab qilindi. Keyinchalik ular bajariladigan dastur yoki veb-xizmat sifatida tarqatildi.

Dasturchilar uchun asosiy muammo ramka naqshlarini o'rganish va dastur shablonlarini mavjud bo'lmagan holda (o'sha paytda) bo'sh echimlardan ilova va xizmatlarni yaratish edi. Natijada, qo'llanma xatosiga juda sezgir bo'lgan Malumotni amalga oshirish kodidan kodni ko'p qirqish va joylashtirishga olib keldi.

2005 yil atrofida Microsoft-dan shablonlardan foydalanish, ushbu turdagi dasturlar va xizmatlarni avtomatlashtirish va modellashtirishga imkon beradigan bir nechta texnologiyalar paydo bo'ldi, shu jumladan: Visual Studio 2005, Visual Studio Modellashtirish (tarqatilgan dastur va tizim dizaynerlari), qo'llanmani avtomatlashtirish bo'yicha qo'llanma (GAT) va domenga xos tillar to'plami (DSL). Ushbu yangi texnologiyalardan foydalangan holda, tizim muntazam ravishda rivojlanib, a dasturiy ta'minot zavodi. Ushbu jarayonda, zavod yig'ishi mumkin bo'lgan mahsulotlarning yanada moslashuvchanligini ta'minlash uchun ramkaning ko'plab cheklovlari bekor qilindi. Birinchi navbatda - me'moriy qatlamlarda texnologiya retseptini olib tashlash va dasturlar va xizmatlarni ishlab chiqish jarayonida o'zgarishlar bilan samarali kurashish qobiliyati. Zavod orqali, joriy etildi domenni modellashtirish, ilgari mumkin bo'lmagan bir nechta yangi abstraktlar va ishlatilgan avtomatlashtirish.

Ushbu fabrika DSL diagrammalarini GAT retseptlari bilan birlashtirgan, shuningdek Visual Studio dasturining tarqatilgan dastur va tizim dizaynerlarini GAT retseptlari bilan kengaytirgan birinchi zavodlardan biri edi. Zavod retseptlardan keng foydalanadi: eritma tuzilmasidagi o'zgarishlarni avtomatlashtirish va ushbu tuzilishga xos xususiyatlarni o'zgartirish, sehrgarlarni fabrika tomonidan taqdim etiladigan modellarni sozlash, ish mahsulotlari uchun loyiha shablonlarini yaratish va zavod foydalanuvchisi uchun oddiy vazifalarni avtomatlashtirish uchun.

2007 yilga kelib, EFx fabrikasida rivojlanish to'xtatildi va u ilgari surgan ko'plab kontseptsiyalarni Microsoft-ning kelajakdagi dasturiy ta'minot fabrikasi platformasi o'zlashtirishi va dasturiy ta'minot fabrikalari tomonidan namunalar va amaliyotlardan qabul qilinishi kerak edi (masalan, Veb-xizmat dasturlari fabrikasi ).

Asosiy xususiyatlar

Quyidagi ro'yxat ushbu zavodning xususiyatlarini o'z davrining boshqalaridan misol keltiradi.

Me'moriy mahsulot modeli

Zavod fabrikada loyihalashtirilgan birinchi zavodlardan biri edi 'Mahsulot modeli '(zavod sxemasining bir qismi) va fabrika ishlab chiqaruvchi uchun ishlab chiqarish mahsulotlarini yaratish / o'zgartirish uchun mantiqiy me'moriy ko'rinishni (va qo'llab-quvvatlanadigan ish vaqtini) ta'minlaydi. Ushbu mantiqiy model zavod mahsulotining mantiqiy dizaynini ajratib turadi 'Mahsulot Explorer Odatda Visual Studio-ning "Solution Explorer" da ko'rib chiqilgan va o'zgartirilgan jismoniy dasturdan. Shu tarzda eritma artefaktlarining fizik tuzilishini mahsulotning ish mahsulotlarining mantiqiy me'moriy tuzilishidan ajratish mumkin edi. Zavod foydalanuvchisi endi mahsulotning arxitekturasiga e'tiborni qaratishi va uni modellar va boshqa abstraktsiyalar yordamida yozishi mumkin, zavod esa uning manbalarini yaratish va joylashtirishni boshqaradi.

Taqsimlangan dastur va tizim dizaynerlarining integratsiyasi

Zavod o'rnatilgan Tarqatilgan dastur va tizim dizaynerlari bilan birlashadi va kengaytiradi Dastur me'morlari uchun Visual Studio Team Edition. Visual Studio dasturiy ta'minotni ishlab chiqaruvchisi va tizim dizaynerlari kabi diagrammalar korxonada yuqori darajadagi dasturni (va xizmatlarni) aniqlash uchun vositalarni taqdim etadi va ularni kattaroq tizimlarga qo'shilishi mumkin bo'lgan qora qutilar tizimiga kiritadi. Zavod ushbu dizaynerlarni ushbu dasturlar va xizmatlarning amalga oshirilishini aks ettiruvchi bir qator yangi shakllarni qo'shish uchun kengaytiradi. Keyinchalik ushbu yangi shakllar, ularning fizikaviy tuzilishini zavod mahsulotida namoyish etish uchun maxsus loyihalar va echimlar shablonlarini taqdim etish uchun amalga oshirilishi mumkin. Ushbu andozalar dastur va xizmat ko'rsatish qatlamlarining ichki tarkibiy qismlarini aks ettirish uchun diagramma fayllarining yangi to'plamini qo'shdi. Bular diagrammalar dastur yoki xizmat qatlamlarining xususiyatlarini aniqlang va foydalanuvchiga navigatsiya yo'lini bering (burg'ulash ) yuqori darajadagi dasturlardan ichki dastur detallariga.

Kompozitsiya va texnologiyaning kengayishi

Zavod modellari (DSL-lardan foydalangan holda) mantiqiy, texnologiyadan mustaqil arxitektura va SOA naqshlar. Ushbu arxitektura bir nechta qatlamlardan iborat bo'lib, ular keyinchalik "Artefact Generators" (yoki "texnologiya provayderlari") tomonidan kengaytirilib amalga oshiriladi. Texnologiyalar provayderlari har bir qavatning o'ziga xos texnologiyasini amalga oshirishni (va ko'rinishini) ta'minlaydi.

Bunday qatlamning misoli a-ning "Xizmat shartnomasi" qatlami bo'lishi mumkin veb-xizmat, xizmat interfeyslari, xizmat ko'rsatish operatsiyalari va ma'lumotlar shartnomalarini o'z ichiga olgan ushbu zavod uchinchi tomonlar (masalan, masalan) kengayish mexanizmini taqdim etgan birinchi zavod edi. Global SI va ISV va jamoat domeni bo'yicha mutaxassislar) turli qatlamlarni texnologik jihatdan mos ravishda amalga oshirilishini ta'minlaydilar. Ushbu texnologiya provayderlari boshqa tashqi fabrikalar shaklida bo'lishi mumkin (yoki faktoretlar ), bu me'moriy modellarning texnologiyasini o'ziga xos ko'rinishini yaxshilash va namoyish qilish uchun EFx fabrikasiga qo'shilib, oxir-oqibat ularni manba buyumlariga aylantiradi. Ushbu texnologiyani ajratish qobiliyati "variant fabrikasi" ni qadoqlash va joylashtirishga imkon berdi: texnologiyadan mustaqil yadro fabrikasi (va uning modellari) bir nechta "Artefact Generators" bilan texnologiyani amalga oshirishni ta'minlaydi. Zavod ko'plab turli xil heterojen texnologik muhitlarga mos keladigan echimlarni quradigan variantli fabrikalarning moslashuvchanligini ta'minladi.

Shuningdek qarang

Tashqi havolalar