Фреймворк (скелет, рамка, каркас, структура) - дастурий та'минот тизимининг тузилишини белгиловчи дастурий платформа; йирик дастурий та'минот лойиҳасининг турли компонентларини ишлаб чиқиш ва бирлаштиришни осонлаштирадиган дастурий та'минот ҳисобланади.

"Рамка" ёки "каркас" со'зи ҳам қўлланади ва ба'зи муаллифлар уни асосий со'з сифатида ишлатишади, бу инглиз аналогига умуман асосланмаган[1][2][3]. Лекин асосан о'қув қо'лланмаларда "фреймворк" термини то'г'ридан-то'г'ри қо'лланилиб келинмоқда. О'збек тилида "фреймворк" термини қо'лланилиши мавзуни тушунарлироқ бо'лишига ёрдам беради. Ҳар қандай дастур конфигурацияси икки қисмдан тузилган дастурларни яратишга каркасли ёндашуви[3] ҳақида айтиш мумкин:

  1. Доимий қисм - конфигурациядан конфигурацияга о'згармайдиган ва иккинчи, о'згарувчан қисм жойлаштирилган уяларни олиб юрадиган рамка ёки каркас;
  2. Уланадиган модуллар (ёки кенгайтириш нуқталари).

Кутубхонадан фарқи

“Фреймворк” кутубхона тушунчасидан шуниси билан фарқ қиладики, кутубхона дастурий маҳсулотда оддийгина ўхшаш функсионалликдаги кичик дастурлар тўплами сифатида, дастурий маҳсулот архитектурасига таъсир қилмасдан ва унга ҳеч қандай чекловлар қўймасдан фойдаланиш мумкин. "Фреймворк" дастур архитектурасини қуриш қоидаларини белгилайди, ривожланишнинг дастлабки босқичида стандарт хатти-ҳаракатни о'рнатади - белгиланган талабларга мувофиқ кенгайтирилиши ва о'згартирилиши керак бўлган "каркас". Дастурий та'минот тизими фреймворки - CМФ (Cонтент Манагемент Фрамеwорк), кутубхона учун мисол электрон почта модулидир .

Бундан ташқари, о'хшаш функсиялар то'пламини бирлаштирган кутубхонадан фарқли о'лароқ, "фреймворк" турли мавзулардаги ко'п сонли кутубхоналарни о'з ичига олиши мумкин.

"Фреймворк" ва кутубхона о'ртасидаги асосий фарқ бошқарувнинг инверсиясидир : фойдаланувчи коди кутубхона функсияларини (ёки синфларини) чақиради ва чақирувдан кейин бошқарувни олади. "Фреймворк"да фойдаланувчи коди умумийроқ - "мавҳум" фреймворк кодига киритилган о'зига хос хатти-ҳаракатларни амалга ошириши мумкин. Бундай ҳолда, "фреймворк" фойдаланувчи кодининг функсияларини (синфларини) чақиради[4].

Дастурий та'минот тизими фреймворки

Бу дастурий та'минот тизимининг (ёки ост тизимнинг) фреймворкидир . У қуйидагиларни о'з ичига олиши мумкин: ёрдамчи дастурлар, код кутубхоналари, скриптлар тили ва йирик дастурий та'минот лойиҳасининг турли компонентларини ишлаб чиқиш ва интеграциялашувини осонлаштирадиган бошқа дастурлар . Одатда ассоциация битта АПИ ёрдамида амалга оширилади.

Мисоллар: Зенд Фрамеwорк, Ларавел ёки Сймфонй ПҲП фреймворклари ёки Пйтҳонда ёзилган Джанго каби веб-фреймворкларни ко'рсатиш мумкин .

Иловалар фреймворки

"Каркасли" иловаларидан фойдаланишнинг асосий афзалликларидан бири дастурнинг "стандарт" тузилишидир. График фойдаланувчи интерфейслари пайдо бо'лиши билан "каркаслар" оммалашди, машҳур бо'лди. Улар ёрдамида иловалар учун стандарт структуралар амалга ошириб келинди. Улардан фойдаланиш орқали график интерфейсларни автоматик равишда яратиш воситаларини яратиш анча осонлашди, чунки дастур кодини ички амалга ошириш тузилиши олдиндан ма'лум бо'лди. Обектга ё'налтирилган дастурлаш усуллари одатда фреймворк яратиш учун қўлланади (масалан, дастур қисмлари базавий синфлардан мерос бо'лиши мумкин).

Биринчи тижорат дастурларидан бири Аппле томонидан " Маcинтош " учун ёзилган МаcАпп[эн] эди. Дастлаб " Обжеcт Пасcал " тилининг кенгайтирилган (обектга ё'налтирилган) версияси билан яратилган бо'лса, у кейинчалик " C++ " да қайта ёзилди. Бошқа машҳур "Маcинтош" фреймворкларига қуйидагилар киради:

Турли даражаларда дастур фреймворклари Маc ОС Х учун " Какао ", шунингдек, Мозилла, ОпенОффиcе.орг, ГНОМЕ ва КДЕ лойиҳаларининг бир қисми сифатида мавжуд бўлган бепул фреймворклардир.

Миcрософт " Wиндоwс " учун Миcрософт Фоундатион Cлассес (МФC) деб номланган шунга о'хшаш маҳсулотни яратди. Айни пайтда Миcрософт-нинг ушбу ё'налишдаги дастурий та'минотни ишлаб чиқиш бо'йича флагман маҳсулоти " . НЕТ "дир.

О'заро платформалар учун дастур фреймворклари (Линух, Маcинтош ва Wиндоwс операцион тизимлари учун), масалан, wидгет тоолкит[эн] , wхWидгец, Қт, . НЕТ, МйCоРе[де] ёки ФОХ тоолкит .

Фреймворк консепсия модели асоси

Тадқиқотда муаммони ҳал қилиш ёки г'ояни ифодалашнинг мумкин бўлган усулларини аниқлаш учун фойдаланиладиган структуранинг мавҳум тушунчаси.

Фреймворкни амалга ошириш

"Фреймворк" аниқ ва мавҳум синфлар ва уларнинг о'заро та'сирининг та'рифлари то'плами сифатида белгиланади. Конкрет синфлар одатда синфлар о'ртасидаги о'заро муносабатларни амалга оширади. Мавҳум синфлар - бу фреймворклардан фойдаланиш ёки мослаштириш мумкин бўлган кенгайтма нуқталари .

Кенгайтма нуқтаси - бу ҳеч қандай амалга оширилмаган рамканинг "қисми". Шунга ко'ра, концептуал моделнинг фреймворкии концептуал синфлардан, дастурий та'минот тизимининг фреймворки эса умумий мақсадли дастурлаш тилининг синфларидан иборат .

Фреймворк яратиш жараёни муаммонинг вазифалари ва уларни амалга оширишнинг кичик қисмини танлашдир. Амалга ошириш жараёнида умумий муаммоларни ҳал қилиш воситалари аниқ синфларга киради ва о'згарувчан асбоблар кенгайтма нуқталарига о'тказилади.

Яна қаранг

Эслатмалар

  1. ↑ В. Фаронов. Создание приложений с помощью C#, Москва, ЭКСМО, 2008, с. 12
  2. ↑ Методы и технологии реинжиниринга ИС. К. В. Ахтырченко, Т. П. Сорокваша (Wайбаcк Мачине сайтида 2009-08-03 санасида архивланган), Институт системного программирования РАН
  3. ↑ 3,0 3,1 Горбунов-Посадов М. М.. Расширяемые программы. М.: Полиптих, 1999. ИСБН 5-901-11801-4. 
  4. ↑ Мартин Фоwлер. „ИнверсионОфCонтрол“ (эн). Қаралди: 2013-йил 5-ноябр.

[1]