Связанные понятия
Декларати́вное программи́рование — это парадигма программирования, в которой задаётся спецификация решения задачи, то есть описывается, что представляет собой проблема и ожидаемый результат. Противоположностью декларативного является императивное программирование, описывающее на том или ином уровне детализации, как решить задачу и представить результат. В общем и целом, декларативное программирование идёт от человека к машине, тогда как императивное — от машины к человеку. Как следствие, декларативные...
Процеду́рное программи́рование — программирование на императивном языке, при котором последовательно выполняемые операторы можно собрать в подпрограммы, то есть более крупные целостные единицы кода, с помощью механизмов самого языка.
Бизнес-логика — в разработке информационных систем — совокупность правил, принципов, зависимостей поведения объектов предметной области (области человеческой деятельности, которую система поддерживает). Иначе можно сказать, что бизнес-логика — это реализация правил и ограничений автоматизируемых операций. Является синонимом термина «логика предметной области» (англ. domain logic). Бизнес-логика задает правила, которым подчиняются данные предметной области.
Упоминания в литературе
Кризис бюрократии преодолевается делегированием ответственности.
Естественно, что это делегирование не может состояться без предварительной четкой формализации объектов и процедур управления и исполнения, без однозначного разграничения зон ответственности сотрудников (функциональной, документной и пр.). Но всему свое время, и проведение популярных тренингов делегирования полномочий вряд ли даст нужные результаты в слабоформализованной компании.
В практике современного бизнеса встречаются
различные варианты делегирования инженеру (инжиниринговой компании) ответственности за реализацию базовых процессов создания объектов.
Делегирование требует эффективных коммуникаций, т.е. подчинённые должны чётко понимать, что хочет руководитель. Делегирование связано так же с мотивацией, влиянием и лидерством, поскольку руководитель должен заставить подчинённых эффективно выполнять его задачи.
• децентрализация
функций (например, кадровой службы) – делегирование среднесрочных и оперативных управленческих функций на первичные звенья, в линейные подразделения, при этом за функциональными управленческими службами (штабными) остается решение только стратегических задач (например, разработка корпоративных программ кадровой политики, внедрение организационных изменений, корпоративное обучение, подбор и расстановка топ-менеджеров и т. д.);
1. Раскройте
основные принципы делегирования полномочий: принцип диапазона контроля, принцип фиксированной ответственности, принцип соответствия прав и обязанностей, принцип передачи работы на возможно более низкий уровень, принцип отчетности по отклонениям.
Связанные понятия (продолжение)
В области компьютеризации понятие программирования сетевых задач или иначе называемого сетевого программирования (англ. network programming), довольно сильно схожего с понятиями программирование сокетов и клиент-серверное программирование, включает в себя написание компьютерных программ, взаимодействующих с другими программами посредством компьютерной сети.
Подробнее: Программирование сетевых задач
Контрактное программирование (design by contract (DbC), programming by contract, contract-based programming) — это метод проектирования программного обеспечения. Он предполагает, что проектировщик должен определить формальные, точные и верифицируемые спецификации интерфейсов для компонентов системы. При этом, кроме обычного определения абстрактных типов данных, также используются предусловия, постусловия и инварианты. Данные спецификации называются «контрактами» в соответствии с концептуальной метафорой...
Комбинаторное
программирование (также программирование, свободное от указателей и Бесточечное программирование) — парадигма программирования, в которой при объявлении функций не используются промежуточные переменные, но составляются цепочки из функций.
Леда (Leda) — мультипарадигмальный язык программирования, спроектированный Тимоти Баддом.
Коди́рование — процесс написания программного кода, скриптов, с целью реализации определённого алгоритма на определённом языке программирования.
Инверсия управления (англ. Inversion of Control, IoC) — важный принцип объектно-ориентированного программирования, используемый для уменьшения зацепления в компьютерных программах. Также архитектурное решение интеграции, упрощающее расширение возможностей системы, при котором поток управления программы контролируется фреймворком.
Абстрактная фабрика (англ. Abstract factory) — порождающий шаблон проектирования, предоставляет интерфейс для создания семейств взаимосвязанных или взаимозависимых объектов, не специфицируя их конкретных классов. Шаблон реализуется созданием абстрактного класса Factory, который представляет собой интерфейс для создания компонентов системы (например, для оконного интерфейса он может создавать окна и кнопки). Затем пишутся классы, реализующие этот интерфейс.
Концептуальное программирование - подход к программированию, описанный Э.Х. Тыугу в одноименной книге . К. программирование предполагает оперирование понятиями (концептами), описанными в терминах предметной области, что позволяет использовать ЭВМ на этапе постановки задачи. Достаточно точное описание задачи позволяет ЭВМ автоматически составлять программы для её решения. Характерными особенностями концептуального программирования являются также использование языка предметной области и использование...
Интеллектуа́льная систе́ма (ИС, англ. intelligent system) — это техническая или программная система, способная решать задачи, традиционно считающиеся творческими, принадлежащие конкретной предметной области, знания о которой хранятся в памяти такой системы. Структура интеллектуальной системы включает три основных блока — базу знаний, механизм вывода решений и интеллектуальный интерфейс.
Металингвистическая абстракция в информатике — это процесс решения сложных проблем путём создания нового языка или словарного запаса, чтобы лучше понять проблему пространства. Этот вопрос подробно описан в учебнике МТИ «Структура и интерпретация компьютерных программ», который рекомендует использовать язык Scheme как основу для создания новых языков.
Мультипарадигма́льный язы́к программи́рования — как правило, язык программирования, который был разработан специально как инструмент мультипарадигмального программирования, то есть изобразительные возможности которого изначально предполагалось унаследовать от нескольких, чаще всего не родственных языков.
Адресный язык программирования — алгоритмический язык, ориентированный на приложения в качестве основы для создания языков программирования. Основу адресного языка составляет отношение адреса и содержимого, формализация этого отношения позволяет в простой форме описывать операции, реализуемые на ЦВМ (Цифровой Вычислительной Машине). Язык программирования высокого уровня, придуманный Е. Л. Ющенко. Первые идеи и мысли о языке программирования были высказаны в 1955 г. Конструкции данного языка вошли...
Язык спецификаций — формальный язык, предназначенный для декларативного описания структуры, связей, свойств данных и способов их преобразований, (в отличие от активных языков) без явного упоминания порядка выполняемых действий и использования конкретных значений данных.
Аппликативное программирование — один из видов декларативного программирования, в котором написание программы состоит в систематическом осуществлении применения одного объекта к другому. Результатом такого применения вновь является объект, который может участвовать в применениях как в роли функции, так и в роли аргумента и так далее. Это делает запись программы математически ясной. Тот факт, что функция обозначается выражением, свидетельствует о возможности использования значений-функций — функциональных...
Грамотное программирование (ГП; англ. Literate Programming) — концепция, методология программирования и документирования, в которой программа состоит из прозы на естественном языке вперемежку с макроподстановками и кодом на языках программирования. Термин и саму концепцию предложил Дональд Кнут в 1981 году при разработке системы компьютерной вёрстки TeX.
Полномочия — ограниченное право использовать ресурсы организации и направлять усилия некоторых сотрудников на выполнение определенных задач (фактически командовать людьми).
Подробнее: Полномочие (право)
Паради́гма программи́рования — это совокупность идей и понятий, определяющих стиль написания компьютерных программ (подход к программированию). Это способ концептуализации, определяющий организацию вычислений и структурирование работы, выполняемой компьютером.
Делегирование полномочий — это процесс передачи части функций руководителя другим управляющим или сотрудникам для достижения конкретных целей организации. Используется для улучшения и оптимизации рабочей силы руководителя. Суть этого понятия заключается в том, что работающие над конкретной проблемой лица как исполнители готовы предоставить консолидированную информацию непосредственному руководителю.
Компью́терная програ́мма — 1) комбинация компьютерных инструкций и данных, позволяющая аппаратному обеспечению вычислительной системы выполнять вычисления или функции управления (стандарт ISO/IEC/IEEE 24765:2010); 2) синтаксическая единица, которая соответствует правилам определённого языка программирования, состоящая из определений и операторов или инструкций, необходимых для определённой функции, задачи или решения проблемы (стандарт ISO/IEC 2382-1:1993).
Формальные методы занимаются приложением довольно широкого класса фундаментальных техник теоретической информатики: разные исчисления логики, формальных языков, теории автоматов, формальной семантики, систем типов и алгебраических типов данных.
Сетевая модель — теоретическое описание принципов работы набора сетевых протоколов, взаимодействующих друг с другом. Модель обычно делится на уровни, так, чтобы протоколы вышестоящего уровня использовали бы протоколы нижестоящего уровня (точнее, данные протокола вышестоящего уровня передавались бы с помощью нижележащих протоколов — этот процесс называют инкапсуляцией, процесс извлечения данных вышестоящего уровня из данных нижестоящего — декапсуляцией). Модели бывают как практические (использующиеся...
Принцип разделения интерфейса (англ. Interface Segregation Principle, ISP) — один из пяти принципов проектирования классов «SOLID» в объектно-ориентированном программировании. Следование этому принципу помогает системе оставаться гибкой при внесении изменений в логику работы и пригодной для рефакторинга.
Теория языков программирования (англ. programming language theory, PLT) — раздел информатики, посвящённый вопросам проектирования, анализа, определения характеристик и классификации языков программирования и изучением их индивидуальных особенностей. Тесно связана с другими ветвями информатики, результаты теории используются в математике, в программной инженерии и лингвистике.
В информатике отражение или рефлексия (холоним интроспекции, англ. reflection) означает процесс, во время которого программа может отслеживать и модифицировать собственную структуру и поведение во время выполнения. Парадигма программирования, положенная в основу отражения, называется рефлексивным программированием. Это один из видов метапрограммирования.
Подробнее: Рефлексия (программирование)
Криптодоказующие программы — это специальные программные средства, смоделированные на основе формальных моделей (например, модель Долева-Яо) с использованием штатных средств и алгебры процессов, а также с приведением к математической логике философских теорий о знании, с целью доказать криптостойкость протоколов, и, по-возможности, найти недостатки в безопасности.
Аналитик программного обеспечения (также программный аналитик) — специалист-аналитик, планирующий и организующий работу программистов с целью упрощения и оптимизации. Его должностные обязанности могут включать в себя выбор методологии и среды разработки; создание или выбор фреймворков; принятие решений о том, когда следует воспользоваться готовым программным кодом вместо самостоятельной разработки; написание спецификаций и прочей документации для будущего программного продукта и планирование сроков...
Обобщённое программирование (англ. generic programming) — парадигма программирования, заключающаяся в таком описании данных и алгоритмов, которое можно применять к различным типам данных, не меняя само это описание. В том или ином виде поддерживается разными языками программирования. Возможности обобщённого программирования впервые появились в виде дженериков (обобщённых функций) в 1970-х годах в языках Клу и Ада, затем в виде параметрического полиморфизма в ML и его потомках, а затем во многих объектно-ориентированных...
Вычислительная среда (англ. computational environment) — это совокупность объектов, участвующих в вычислениях, причем каждый раз требуется определение того, что считается объектом, и что понимается под вычислениями, то есть трактовка этих терминов зависит от контекста употребления. Так, например, в программной инженерии под вычислительной средой понимается совокупность программных компонентов и сервисов, интегрируемых в рамках одного приложения (реализующего некоторый процесс в определенной предметной...
Стратегия (англ. Strategy) — поведенческий шаблон проектирования, предназначенный для определения семейства алгоритмов, инкапсуляции каждого из них и обеспечения их взаимозаменяемости. Это позволяет выбирать алгоритм путём определения соответствующего класса. Шаблон Strategy позволяет менять выбранный алгоритм независимо от объектов-клиентов, которые его используют.
Ме́тод в объектно-ориентированном программировании — это функция или процедура, принадлежащая какому-то классу или объекту.
Комбинаторная оптимизация — область теории оптимизации в прикладной математике, связанная с исследованием операций, теорией алгоритмов и теорией вычислительной сложности.
Алгоритмика — раздел информатики, дисциплина, изучающая алгоритмы и их применение к решению задач.
Вычислительное мышление – это мыслительные процессы, участвующие в постановке проблем и представлении их решения в форме, которая может быть эффективно реализована с помощью человека или компьютера.
Из-за путаницы с терминологией словом «оператор» в программировании нередко обозначают операцию (англ. operator), см. Операция (программирование).Инстру́кция или опера́тор (англ. statement) — наименьшая автономная часть языка программирования; команда или набор команд. Программа обычно представляет собой последовательность инструкций.
Подробнее: Оператор (программирование)
Функциона́льное программи́рование — раздел дискретной математики и парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании).
В информатике формальная спецификация — это математическое описание программной или аппаратной системы, которая может быть реализована в соответствии с этим описанием. Специфицируется, что должна делать система, но не то, как она должна это делать. Если существует спецификация системы, возможно применить методы формальной верификации, чтобы продемонстрировать, что система удовлетворяет (или будет удовлетворять) спецификации. Таким образом, можно проверить, будет ли конкретная спроектированная модель...
Сема́нтика в программировании — дисциплина, изучающая формализации значений конструкций языков программирования посредством построения их формальных математических моделей. В качестве инструментов построения таких моделей могут использоваться различные средства, например, математическая логика, λ-исчисление, теория множеств, теория категорий, теория моделей, универсальная алгебра. Формализация семантики языка программирования может использоваться как для описания языка, определения свойств языка...
Шаблонный метод (англ. Template method) — поведенческий шаблон проектирования, определяющий основу алгоритма и позволяющий наследникам переопределять некоторые шаги алгоритма, не изменяя его структуру в целом.
Аспектно-ориентированная разработка программного обеспечения — развивающаяся технология разработки программного обеспечения, которая ищет новые способы разбиения на модули программного обеспечения, чтобы изолировать вторичные или вспомогательные функции от бизнес-логики основной программы. АОРПО позволяет реализовать отдельно различные проблемы и автоматически объединять их в работоспособные системы.
Фре́ймворк , иногда фреймво́рк (англицизм, неологизм от framework «остов, каркас, структура») — заготовки, шаблоны для программной платформы, определяющие архитектуру программной системы; программное обеспечение, облегчающее разработку и объединение разных модулей программного проекта.
Системный аналитик — в широком смысле — специалист по решению сложных организационно-технических проблем, имеющих междисциплинарную природу, использующий принципы общей теории систем и методы системного анализа.