Среда, 27.11.2024
Ukrainiancontet.at.ua
Меню сайта
Категории раздела
Програмування [35]
Мови веб-програмування [5]
О компании [0]
Новости игры
Статистика

Онлайн всего: 2
Гостей: 2
Пользователей: 0
Главная » 2015 » Октябрь » 25 » Модульність (програмування)
22:20
Модульність (програмування)
Модульність в мовах програмування — принцип, згідно з яким програмний засіб (ПС, програма, бібліотека, веб-програми та ін) поділяється на окремі іменовані суті, називаються модулями. Модульність часто є засобом спрощення задачі проектування ПС і розподілу процесу розробки ПС між групами розробників. При розбитті ПС на модулі для кожного модуля вказується, що реалізовується ним функціональність, а також зв'язку з іншими модулями.[]

Роль модулів можуть грати структури даних, бібліотеки функцій, класи, сервіси та ін. програмні одиниці, що реалізують деяку функціональність і надають інтерфейс до неї.

Програмний код часто розбивається на декілька файлів, кожен з яких компілюється окремо від інших. Така модульність програмного коду дозволяє значно зменшити час перекомпіляції при змінах, що вносяться лише невелика кількість вихідних файлів, і спрощує групову розробку. Також це можливість заміни окремих компонентів (таких як jar-файли, so або dll бібліотеки) кінцевого програмного продукту, без необхідності перезбирання всього проекту (наприклад, розробка плагінів до вже готової програмі).

Одним з методів написання модульних програм є об'єктно-орієнтоване програмування. ОВП забезпечує високу ступінь модульності завдяки таким властивостям, як інкапсуляція, поліморфізм та пізнє зв'язування.

Незважаючи на те, що модульне програмування ніяк не пов'язано з деталями конкретної мови (і навіть у разі відсутності явної підтримки з боку мови може застосовуватися при достатній дисципліни з боку програмістів), більшість мов висувають на верхній рівень свою власну природу системи модулів, немов перенесення системи модулів з однієї мови на іншу був би неможливий[].

У 2000 році Ксавьє Лерой[en] запропонував робити системи модулів модульними, тобто параметризуемыми описом конкретного ядра мови зі своєю системою типів[]. В якості прикладу він продемонстрував узагальнену реалізацію мови модулів ML (як найбільш розвиненої системи модулів з відомих на даний момент) і приклади її инстанцирования на традиційний для неї мову ML і на мову Сі.

Реалізація Лероя сама побудована за допомогою мови модулів ML, а саме у вигляді функтора, параметризованного даними про ядрі мови і описом його механізму перевірки узгодження типів. Це означає, що при написанні компілятора деякого мови достатньо описати ядро мови і передати його даним функтору (як бібліотечної функції) — у результаті вийде компілятор розширення відомого мови системою модулів ML.
Категория: Програмування | Просмотров: 667 | Добавил: Admin | Теги: Модульність (програмування) | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Вход на сайт

Поиск
Интернет
Здоровье
Афиша
Ситуация на восток
Религия
Архив записей
Каталог сайтов Всего.RU
Рейтинг@Mail.ru
Copyright Ukrainiancontet.at.ua © 2024
uCozЯндекс.Метрика