Связанные понятия
Модульный принцип — указывает на возможность вместо части системы исследовать совокупность её входных и выходных воздействий (абстрагироваться от излишней детализации).
Зацепление , сцепление, сопряжение (англ. coupling) — способ и степень взаимозависимости между программными модулями; сила взаимосвязей между модулями; мера того, насколько взаимозависимы разные подпрограммы или модули.
Инве́рсия абстра́кции (англ. abstraction inversion) — ошибка проектирования программного модуля, когда в сложном модуле для пользователя закрыты некоторые простые, но необходимые функции. В результате пользователь модуля вынужден реализовывать простую функциональность на основе интерфейса модуля, иногда с использованием недокументированных возможностей и побочных эффектов, в то время когда она уже реализована внутри модуля. То есть, реализовывать более низкоуровневые функции на основе высокоуровневых...
Мо́дульное программи́рование — это организация программы как совокупности небольших независимых блоков, называемых модулями, структура и поведение которых подчиняются определённым правилам. Использование модульного программирования позволяет упростить тестирование программы и обнаружение ошибок. Аппаратно-зависимые подзадачи могут быть строго отделены от других подзадач, что улучшает мобильность создаваемых программ.
Абстра́ктный тип да́нных (АТД) — это математическая модель для типов данных, где тип данных определяется поведением (семантикой) с точки зрения пользователя данных, а именно в терминах возможных значений, возможных операций над данными этого типа и поведения этих операций.
Упоминания в литературе
Выделение специализированных субтехнологий позволяет обеспечить унификацию и специализацию в управлении бизнесом, его
модульность и открытость, повышает доступность современного информационно-аналитического инструментария, снижает негативные эффекты субъективизма предпринимателя.
У вас есть автомобиль? Большинство людей имеет автомобили. Даже если вы никогда не покупали машину, вероятнее всего, вы все же знаете, что машины оснащены различными типами двигателей (например, дизельными, бензиновыми или электрическими). Это пример применения принципа
модульности как результата реализации идеи разделения на уровни для автомобилей. Возможность выбора одного из нескольких типов двигателя при покупке машины может привести к значительным различиям функциональных возможностей транспортных средств.
Принципы
модульности , структуризации и динамичности, на которых базируется модульный подход к изучению дисциплины, послужили руководством к представлению содержания дисциплины «Общая и неорганическая химия» в виде совокупности модулей (М) и учебных элементов (УЭ), что приобретает особую значимость при структурно-логическом изложении и восприятии учебного материала на двуязычной основе. «Общая и неорганическая химия» (ОиНХ) состоит из двух курсов – «Общая химия» и «Неорганическая химия». Она относится к дисциплинам естественно-научного цикла и, находясь в генетической взаимосвязи с химическими дисциплинами общепрофесионального и специального циклов, является для них источником базовых дескрипторов ПТА. Семантизированное освоение дескрипторов учебных элементов ОиНХ по двуязычным методам – залог успешного усвоения содержания химических дисциплин других циклов, а следовательно, и достижения адаптированности к учебной деятельности при химическом образовании в вузе.
Связанные понятия (продолжение)
Схема функциональной целостности (СФЦ) — это логически универсальное графическое средство структурного представления исследуемых свойств системных объектов. Описание аппарата схем функциональной целостности было впервые опубликовано Можаевым А. С. в 1982 году. По построению аппарат СФЦ реализует все возможности алгебры логики в функциональном базисе «И», «ИЛИ» и «НЕ». СФЦ позволяют корректно представлять как все традиционные виды структурных схем (блок-схемы, деревья отказов, деревья событий, графы...
Расширяемость (англ. extensibility) в электронике и информатике означает возможность добавления отдельных элементов в какую-либо систему. Этот термин является одним из принципов разработки и проектирования программного обеспечения и других систем, в которых требуется учитывать их будущий рост и развитие. Расширяемость можно рассматривать как системную меру способности расширять систему и меру количества усилий, необходимых для реализации расширения. Главный аспект применения расширяемости — это предусмотреть...
Нодализационная схема — схема ключевых узлов, использующая узловую топологию (например, сети) для достоверного математического моделирования сложных взаимосвязанных систем. Разрабатывается согласно требованиям моделирования системы на основе знаний физических принципов и опыта разработчика. Для успешной разработки нодализационной схемы необходимы глубокие знания принципов работы моделируемой системы.
Гетерогенные вычислительные системы — электронные системы, использующие различные типы вычислительных блоков. Вычислительными блоками такой системы могут быть процессор общего назначения (GPP), процессор специального назначения (например, цифровой сигнальный процессор (DSP) или графический процессор (GPU)), со-процессор, логика ускорения (специализированная интегральная схема (ASIC) или программируемая пользователем вентильная матрица (FPGA)).
Функциональная совместимость (также интероперабельность от англ. interoperability — способность к взаимодействию) — это способность продукта или системы, интерфейсы которых полностью открыты, взаимодействовать и функционировать с другими продуктами или системами без каких-либо ограничений доступа и реализации.
Вычисления с памятью — способ построения вычислительных платформ, в которых используются принцип хранения результатов функций в массивах памяти, одномерных или двухмерных, в виде таблиц поиска, а вычисление функций заменяется извлечением значения из таблиц. Такие вычислительные платформы могут следовать как чисто пространственной модели вычислений, как в ПЛИС, так и временно́й модели вычислений (процедурной), когда функция вычисляется за множество тактов. Второй подход нацелен на уменьшение избыточности...
Абстракция данных — популярная и в общем неверно определяемая техника программирования. Фундаментальная идея состоит в разделении несущественных деталей реализации подпрограммы и характеристик, существенных для корректного её использования. Такое разделение может быть выражено через специальный «интерфейс», сосредотачивающий описание всех возможных применений программы.
Адаптер (англ. Adapter) — структурный шаблон проектирования, предназначенный для организации использования функций объекта, недоступного для модификации, через специально созданный интерфейс. Другими словами — это структурный паттерн проектирования, который позволяет объектам с несовместимыми интерфейсами работать вместе.
Диагра́мма компоне́нтов (англ. Component diagram) — элемент языка моделирования UML, статическая структурная диаграмма, которая показывает разбиение программной системы на структурные компоненты и связи (зависимости) между компонентами. В качестве физических компонентов могут выступать файлы, библиотеки, модули, исполняемые файлы, пакеты и т. п.
Компоновщик (англ. Composite pattern) — структурный шаблон проектирования, объединяющий объекты в древовидную структуру для представления иерархии от частного к целому. Компоновщик позволяет клиентам обращаться к отдельным объектам и к группам объектов одинаково.
Шаблон фасад (англ. Facade) — структурный шаблон проектирования, позволяющий скрыть сложность системы путём сведения всех возможных внешних вызовов к одному объекту, делегирующему их соответствующим объектам системы.
Стратегия (англ. Strategy) — поведенческий шаблон проектирования, предназначенный для определения семейства алгоритмов, инкапсуляции каждого из них и обеспечения их взаимозаменяемости. Это позволяет выбирать алгоритм путём определения соответствующего класса. Шаблон Strategy позволяет менять выбранный алгоритм независимо от объектов-клиентов, которые его используют.
Компонентно-ориентированное программирование (англ. component-oriented programming, COP) — парадигма программирования, существенным образом опирающаяся на понятие компонента — независимого модуля исходного кода программы, предназначенного для повторного использования и развёртывания и реализующегося в виде множества языковых конструкций (например, «классов» в объектно-ориентированных языках программирования), объединённых по общему признаку и организованных в соответствии с определёнными правилами...
Компонентный каркас (англ. Component Framework) — термин из области компоненто-ориентированного программирования. По Пфистеру, это собрание компонентных интерфейсов, которые образуют абстрактную схему решений для семейства связанных проблем.
Параметрическое моделирование (параметризация) — моделирование (проектирование) с использованием параметров элементов модели и соотношений между этими параметрами. Параметризация позволяет за короткое время «проиграть» (с помощью изменения параметров или геометрических соотношений) различные конструктивные схемы и избежать принципиальных ошибок.
Функциональная схема — документ, разъясняющий процессы, протекающие в отдельных функциональных цепях изделия (установки) или изделия (установки) в целом. Функциональная схема является экспликацией (поясняющим материалом) отдельных видов процессов, протекающих в целостных функциональных блоках и цепях устройства.
В области информационных и компьютерных систем под конфигурацией понимают определенный набор комплектующих, исходя из их предназначения, номера и основных характеристик. Зачастую конфигурация означает выбор аппаратного и программного обеспечения, прошивок и сопроводительной документации. Конфигурация влияет на функционирование и производительность компьютера. Так же в операционной системе можно вручную выставлять настройки драйверов.
Подробнее: Конфигурация компьютера
Масштаби́руемость (англ. scalability) — в электронике и информатике означает способность системы, сети или процесса справляться с увеличением рабочей нагрузки (увеличивать свою производительность) при добавлении ресурсов (обычно аппаратных).
Iterator — поведенческий шаблон проектирования. Представляет собой объект, позволяющий получить последовательный доступ к элементам объекта-агрегата без использования описаний каждого из агрегированных объектов.
Подробнее: Итератор (шаблон проектирования)
Аспектно-ориентированная разработка программного обеспечения — развивающаяся технология разработки программного обеспечения, которая ищет новые способы разбиения на модули программного обеспечения, чтобы изолировать вторичные или вспомогательные функции от бизнес-логики основной программы. АОРПО позволяет реализовать отдельно различные проблемы и автоматически объединять их в работоспособные системы.
Инверсия управления (англ. Inversion of Control, IoC) — важный принцип объектно-ориентированного программирования, используемый для уменьшения зацепления в компьютерных программах. Также архитектурное решение интеграции, упрощающее расширение возможностей системы, при котором поток управления программы контролируется фреймворком.
Коиндукция в информатике — метод для определения и доказательства свойств систем параллельно взаимодействующих объектов (обобщённо). С математической точки зрения является дуальной к структурной индукции.
Абстрактная фабрика (англ. Abstract factory) — порождающий шаблон проектирования, предоставляет интерфейс для создания семейств взаимосвязанных или взаимозависимых объектов, не специфицируя их конкретных классов. Шаблон реализуется созданием абстрактного класса Factory, который представляет собой интерфейс для создания компонентов системы (например, для оконного интерфейса он может создавать окна и кнопки). Затем пишутся классы, реализующие этот интерфейс.
Ядро́ (англ. kernel) — центральная часть операционной системы (ОС), обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память, внешнее аппаратное обеспечение, внешнее устройство ввода и вывода информации. Также обычно ядро предоставляет сервисы файловой системы и сетевых протоколов.
Инкапсуляция (англ. encapsulation, от лат. in capsula) — в информатике упаковка данных и функций в единый компонент.
Моноли́тное ядро ́ — классическая и, на сегодняшний день, наиболее распространённая архитектура ядер операционных систем. Монолитные ядра предоставляют богатый набор абстракций оборудования. Все части монолитного ядра работают в одном адресном пространстве.
Паке́т прикладны́х програ́мм (аббр. ППП, англ. application package) или паке́т програ́мм — набор взаимосвязанных модулей, предназначенных для решения задач определённого класса некоторой предметной области. По смыслу ППП было бы правильнее назвать пакетом модулей вместо устоявшегося термина пакет программ. Отличается от библиотеки тем, что создание библиотеки не ставит целью полностью покрыть нужды предметной области, так как приложение может использовать модули нескольких библиотек. Требования же...
Каркас ное программирование — это стиль компьютерного программирования, основанный на простых высокоуровневых программных структурах, на так называемых фиктивных кодах. Программа каркасов похожа на псевдокод, но при этом допускает синтаксический анализ, компиляцию и тестирования кода. Фиктивный код код будет вставлен в программу каркаса для симуляции обработки и во избежание сообщений об ошибках при компиляции. Он может включать в себя пустые функциональные выражения, или функции, которые возвращают...
Векторный процессор — это процессор, в котором операндами некоторых команд могут выступать упорядоченные массивы данных — векторы. Отличается от скалярных процессоров, которые могут работать только с одним операндом в единицу времени. Абсолютное большинство процессоров является скалярными или близкими к ним. Векторные процессоры были распространены в сфере научных вычислений, где они являлись основой большинства суперкомпьютеров начиная с 1980-х до 1990-х. Но резкое увеличение производительности...
Функциональный объект (англ. function object), также функтор, функционал и функционоид — распространённая в программировании конструкция, позволяющая использовать объект как функцию. Часто используется как callback, делегат.
Контейнер свойств (англ. property container) — фундаментальный шаблон проектирования, который служит для обеспечения возможности уже построенного и развернутого приложения динамически расширять свои свойства, а в общем случае, функциональность. Это достигается путем добавления дополнительных свойств непосредственно самому объекту в некоторый «контейнер свойств», вместо расширения класса объекта новыми свойствами.
Рефа́кторинг (англ. refactoring), или перепроектирование кода, переработка кода, равносильное преобразование алгоритмов — процесс изменения внутренней структуры программы, не затрагивающий её внешнего поведения и имеющий целью облегчить понимание её работы. В основе рефакторинга лежит последовательность небольших эквивалентных (то есть сохраняющих поведение) преобразований. Поскольку каждое преобразование маленькое, программисту легче проследить за его правильностью, и в то же время вся последовательность...
Криптосистема — это завершённая комплексная модель, способная производить двусторонние криптопреобразования над данными произвольного объёма и подтверждать время отправки сообщения, обладающая механизмом преобразования паролей, ключей и системой транспортного кодирования.
Декомпозиция — разделение целого на части. Также декомпозиция — это научный метод, использующий структуру задачи и позволяющий заменить решение одной большой задачи решением серии меньших задач, пусть и взаимосвязанных, но более простых.
Унифицированная шейдерная модель (англ. Unified shader model) — термин, который используется для описания двух подобных, но вместе с тем и отдельных понятий: унифицированная шейдерная архитектура (англ. Unified Shading Architecture), которая описывает аппаратный уровень, и унифицированная шейдерная модель, которая описывает программный уровень.
Стати́ческая типиза́ция — приём, широко используемый в языках программирования, при котором переменная, параметр подпрограммы, возвращаемое значение функции связывается с типом в момент объявления и тип не может быть изменён позже (переменная или параметр будут принимать, а функция — возвращать значения только этого типа). Примеры статически типизированных языков — Ада, С++, C#, D, Java, ML, Паскаль, Nim.
Фре́ймворк , иногда фреймво́рк (англицизм, неологизм от framework «остов, каркас, структура») — заготовки, шаблоны для программной платформы, определяющие архитектуру программной системы; программное обеспечение, облегчающее разработку и объединение разных модулей программного проекта.
Произвольная (нерегулярная) логика (англ. Random logic) — метод реализации схем комбинационной логики путём синтеза схемы из логических элементов по высокоуровневому описанию. Название метода происходит из того факта, что расположение элементов и их соединений на первый взгляд кажется произвольным. В частности, в отличие от, например, схем памяти, произвольная логика практически не образует различимой структуры в расположении элементов на кристалле. В СБИС произвольная логика часто реализуется с...
База данных управления конфигурации (англ. Configuration management database, CMDB) — репозиторий всего, что касается компонентов информационной системы. Хотя IT-подразделения и раньше использовали аналогичные CMDB репозитории, термин CMDB проистекает из ITIL. В контексте ITIL CMDB представляет достоверные конфигурации компонентов IT-среды. CMDB помогает организации понять взаимосвязи между этими компонентами и отслеживать их конфигурации. CMDB является основным компонентом процесса управления конфигурацией...
Повторное использование кода (англ. code reuse) — методология проектирования компьютерных и других систем, заключающаяся в том, что система (компьютерная программа, программный модуль) частично либо полностью должна составляться из частей, написанных ранее компонентов и/или частей другой системы, и эти компоненты должны применяться более одного раза (если не в рамках одного проекта, то хотя бы разных). Повторное использование — основная методология, которая применяется для сокращения трудозатрат...