Примерами прикладного программирования могут быть

А как выглядит ваш прикладной код?

При разработке платформы я считаю крайне важным уделять особое внимание простоте, понятности и удобстве работы с прикладным кодом. Испробовав разные подходы, я хочу поделиться удобными рецептами из своего опыта.

Под прикладным кодом имеется в виду код, относящийся непосредственно к бизнес-логике конкретного приложения, при этом, в отличии от ядра (framework-а, платформы) такой код максимально подвержен изменениям и в крупных проектах может составлять львиную долю проекта. От удобства прикладного разработчика зависит скорость и качество разработки самым существенным образом.

image

Например на языке Brainfuck Hello world выглядит так:

А вот наши критерии удобства:

  • Строгая статическая типизация
  • Документированность
  • Отсутствие “мусора”
  • Однотипность
  • Лаконичность

Типичным примером прикладной задачи является разработка кнопки с каким-нибудь действием по её нажатию. Кнопка может находиться на форме, на гриде или в системном меню. В зависимости от расположения у неё есть набор доступных входящих параметров (что за форма? что за грид? какие записи выделены?) и набор возможных действий (обновить, изменить, открыть и т.д.), их совокупность мы называем контекстом.

В нашей системе для создания кнопки нужно разработать класс этой кнопки, реализующий специальный интерфейс (IAction) — он описывает её внешний вид и поведение.

В примере рассмотрим приложение из предыдущей статьи — агенство недвижимости.

Кнопка добавления в закладки

image

Комментарии

В заголовке класса имеются XmlDoc комментарии, они имеют двойное назначение:
во первых это классический комментарий, чтобы в коде было понятно что же делает это действие
во вторых это текст (первая строка) и подсказка (последующие строки) кнопки.

Реализация интерфейса

На первый взгляд IAction> может испугать, но это не так страшно:

IAction — интерфейс всех действий системы, для того чтобы класс был кнопкой он должен реализовывать этот интерфейс.

  • Предложений от арендодателя
  • предложений комнат (потомок)
  • предложений квартир (потомок)
Атрибут

Указывает с какой иконкой кнопка будет отображаться.

Читайте также:  Понятие система автоматизированного программирования
Метод
public void Execute(IItemContext context) 

Непосредственно код, выполняемый по нажатию на кнопку.
context — это и есть Контекст действия, что в нем есть:

ExceptionHelper.Interactive — Интерактивные исключения
ParameterManager.GetParameter — запрос параметра с клиента (похоже на интерактивные исключения, но с возможностью ввести данные)
context.ShowNotification() — способ взаимодействия с клиентом.

Кнпока расчета средней цены

image

Атрибут

указывает на требование наличия роли Agent у пользователя для видимости кнопки.

Контексты

В этой кнопке используется IFormContext — контекст формы, в отличии от контекста элемента такие кнопки не будут доступны по контекстному меню, зато будут доступны при редактировании формы.
При этом контекст содержит дополнитеьльные параметры, например
context.FormData — это ещё не сохраненные данные формы и дополнительные методы, имеющие смысл только на форме, например:
context.ChangeFieldValue(a => a.Price, averagePrice) — изменение значения поля (без сохранения)

Больше возможностей

Контекстов много

В реальности используется несколько контекстов, использование соответствующего контекста позволяет расположить кнопку в нужном месте и получить доступ до необходимых свойств и вызывать соответствующие методы.

Атрибутов тоже много

image

Например в кнопке удалить:

  • подтверждения с текстом подтверждения
  • требования выделения (без выделения кнопка не доступна)
  • горячую клавищу
Не только кнопки
  • Событий сущности
  • Событий форм
  • Событий входа в систему
  • Операций документов
  • Нумераторов

Тема для дискуссии

А у вас есть примеры ERP (или других учетных) систем где прикладной код вам нравится?
1С — образец для подражания?

Источник

Прикладное программирование

Прикладное программирование — это написание программ, которые предназначены для реализации конкретных задач и предполагают взаимообмен с пользователями.

Прикладные программные приложения – это программы, предназначенные для конечных пользователей. Этот класс программ является самым большим. Сегодня практически во всех областях деятельности людей реализованы и используются прикладные программные приложения. Во всех случаях, когда необходимо осуществить значительные математические вычисления, выполнить обработку большого объёма различных информационных данных или быстро выполнить анализ ситуационного положения для выработки управленческого решения, компьютерное оборудование, управляемое прикладным программным обеспечением, способно успешно заменить людей.

Классификация прикладного программного обеспечения

Все прикладные программы делятся на следующие типы, представленные на рисунке ниже:

Читайте также:  Коммуникатор шмр 16u программирование

Классификация прикладного программного обеспечения. Автор24 — интернет-биржа студенческих работ

Рисунок 1. Классификация прикладного программного обеспечения. Автор24 — интернет-биржа студенческих работ

Эта классификация носит достаточно условный характер, поскольку отдельные программные типы (к примеру, текстовые редакторы) представлены и в общем назначении (процессоры и программы редактирования), и в классе, где расположены профессиональные программы (например, издательские системы).

Программные приложения общего назначения

Программные средства общего предназначения применяются для разрешения проблем общего плана во всех областях деятельности людей. Они соединяют в себе наиболее часто применяемые пользователями программы, такие как редакторы текстов, табличные редакторы, информационные базы и так далее. К приложениям, работающим с текстами, можно отнести редакторы текстов и текстовые процессоры. Грань между этими программами носит достаточно условный характер. Редакторы текстов, к примеру, NotePad, разработанный компанией Microsoft, могут осуществлять базовые редакторские функции, а именно, занесение текста, его коррекция, действия с его фрагментами, выполнение операции его сохранения. Текстовые процессоры, такие как, к примеру, Word компании Microsoft, помимо этих возможностей, способны к разнообразному оформлению, а другие программы этого класса могут формировать документацию, которая предназначена для отображения на компьютере в формате электронного документа, а не в виде бумажной распечатки.

Издательские системы способны автоматизировать операции вёрстки изданий полиграфии. Их отличает более широкий набор средств управления взаимодействием текстовых зон со страничными параметрами и объектами графики, но они обладают меньшим инструментальным набором, позволяющим автоматизировать ввод и корректировку текста. Их применение обосновано для документов, прошедших обработку в текстовом процессоре и графическом редакторе. Самыми популярными издательскими пакетами считаются: Adobe PageMaker, QuarkXPress, Microsoft Publisher, Corel Ventura.

Популярным прикладным программным приложением так же являются электронные таблицы. Главным предназначением электронных таблиц является работа с разными видами информации в табличной форме, к примеру, финансовая, бухгалтерская отчётность и другая документация этой сферы, мелкие инженерные расчёты. Наиболее известными программами этого типа являются Excel компании Microsoft, Lotus фирмы Lotus. Главным достоинством электронных таблиц по сравнению с текстовыми процессорами, в которых также возможно задавать таблицы и выполнять незначительные вычисления, является то обстоятельство, что содержимое выбранных ячеек можно менять в автоматическом режиме, согласно изменений содержимого других. То есть, это означает возможность функциональной зависимости ячеек. Помимо этого, табличные процессоры способны вести маленькие информационные базы данных и визуально отображать данные в табличном формате, то есть имеют инструменты сопровождения таблиц.

Читайте также:  Ассемблер является языком программирования какого уровня

Далее рассмотрим системы управления базами данных (СУБД). Приложения данного класса, к примеру, Access компании Microsoft, дают возможность использования структурированных данных большого объёма. Обычно это базы данных с табличной структурой. СУБД служат для выполнения в автоматизированном режиме операций формирования, сохранения и извлечения данных в электронном виде. Очень много известных в разных областях деятельности людей информационных и справочных программных комплексов выполнены с применением инструментария СУБД. Используют базы данных, как правило, следующие категории людей:

  1. Специалисты в области проектирования структур сохранения информационных данных.
  2. Обычные пользователи, которые заполняют базы данных.

Структурная организация простых баз данных похожа на структуру обычных таблиц. Отдельные записи являются строками, а отдельные поля являются столбцами. Информационные свойства в столбцах могут иметь отличия, зависящие от их типа. То есть, поля в базе данных отражают не только общий формат таблицы, но и свойства данной информационной группы.

Системами работы с графикой являются прикладные программы, которые предназначены для обработки графических изображений. К этому типу можно отнести программы редактирования графики в растровой и векторной форме, приложения для работы с трёхмерными графическими изображениями (редакторы 3D). Растровые программы редактирования применяют для формирования изображений растры, то есть наборы точек, которые обладают своим цветом и уровнем яркости. В таких редакторах хорошо выполнять обработку фотографий и предметов, которые имеют плавные градации цвета. Однако следует заметить, что изменение масштаба подобных изображений, как правило, делает качество хуже. Когда сокращается число точек, то расплываются маленькие детали и подписи. Пиксельная прибавка ведёт к понижению уровня резкости и яркости изображения, поскольку новые точки должны получать оттенки, являющиеся серединой среди двух или более пограничных цветов.

Безусловно лидирует в этом классе прикладных программ приложение Adobe Photoshop. Основным инструментарием, предназначенным для работы с растровыми изображениями в операционной системе Windows, является редактор графики Paint.

Источник

Оцените статью