Программирование

Материал из Циклопедии
Перейти к навигации Перейти к поиску
Что такое программирование и язык программирования? Просто о сложном // Alex Vydrin [11:22]

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

Общая информация[править]

Программирование сочетает в себе элементы инженерии (существует даже соответствующая специальная отрасль инженерии — программная инженерия (англ. software engineering), фундаментальных наук (прежде всего математики) и искусства

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

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

Уровни программирования[править]

Успешное программирования предусматривает выполнение необходимых действий на следующих уровнях:

  • Экономический (бизнес-логика): Формирование требований к программному продукту с учетом привлекательности для пользователей, доходности для разработчика и имеющихся возможностей разработчика;
  • Структурный (архитектура): Создание перечня и взаимосвязей нужных модулей, графических и звуковых элементов, алгоритмов, баз данных, файлов, выбор языка программирования;
  • Детальный/Физический (кодирование): Реализация отдельных функций с использованием конструкций и операторов языка программирования, печати текста программы на клавиатуре.

Источники[править]

См. также[править]

Литература[править]

  • Лавров С. С. Програмирование. Математические основи, средства, теория / С. С. Лавров. — СПб. : БХВ-Петербург,2001. — 251с.
  • Непейвода Н. Н. Основания програмирования: учеб. пособие / Н. Н. Непейвода, И. Н. Скопин. — Ижевск, 2003.
 
Библиотека

Стандартная библиотека • Пространство имён • Фреймворк • Интерфейс • API

Основные
термины

Алгоритм • Псевдокод • Перегрузка операторов • Выражение • Инструкция • Операция • Отступ • Количество строк кода • Ошибка безопасности

Подпрограмма

Соглашение об именовании • Мультиметод • Callback • Функция высшего порядка • Рекурсивная функция • Обобщённое программирование • Операнд • Параметр • Полиморфизм • Перегрузка процедур и функций

ООП

Класс • Конструктор • Деструктор • Инкапсуляция • Наследование • Множественное наследование • Метод • Сборка мусора • Ссылка

Структуры
и типы данных

Дерево • Символьный тип • Запись • Множество • Очередь • Список • Связный список • Стек • Свойство • Семафор • Массив • Куча • Абстрактный тип данных • Динамический массив

Исходный
код

Категория Категория

 
Используемые
в разработке

Ада • A+ • APL • Atlast Forth • AWL • Язык ассемблера • ActionScript • ABAP/4 • AutoIt • AWK • BeanShell • Бейсик • Си • Кобол • C++ • C# • Cω • Clarion • Clojure • ColdFusion • Common Lisp • D • dBase • Delphi • DuAL • Eiffel • Erlang • Euphoria • F# • Форт • Фортран • Gambas • Go • Groovy • HAL/S • Haskell • IBM PL/S • Icon • Iridium • Java • JavaScript • Limbo • Lua • Модула-3 • Object Pascal • Objective-C • OCaml • Oz • Parser • Паскаль • Компонентный Паскаль • Perl • Pixilang • PHP • PowerBASIC • Python • ПЛ/1 • Пролог • Qi • Ruby • Scala • Scheme • Seed7 • Smalltalk • SQL • PL/SQL • Tcl • TouchDesigner • Vala • Visual Basic (.NET) • X-Robot

Академические

Agda • Clean • Curry • Idris • Лого • ML • Оберон • Planning C • РЕФАЛ • Симула •

IEC 61131-3

Instruction List • ST • FBD • Ladder Diagram (LD) • SFC

Прочие

Алгол • Алгол 68 • Модула-2 • Миранда • Hope • НОРМИН • Санда

Эзотерические

HQ9+/HQ9++ • INTERCAL • Brainfuck • Befunge • Malbolge • Piet • Spoon • Unlambda • Whitespace • FALSE • LOLCODE • Глагол

Визуальные

G (LabVIEW) • Microsoft VPL • Sikuli • VisSim • Алиса • ДРАКОН • Скретч

Прочее

Динамические • Для создания компьютерных игр • Компилируемые • С ключевыми словами не на английском языке • С C-style синтаксисом • Синтаксис • Системное программное обеспечение • YoptaScript

Категория Языки программирования

 
Известные
деятели

Кент Бек • Гради Буч • Фред Брукс • Barry Boehm • Уорд Каннингем • Оле-Йохан Даль • Том Демарко • Эдсгер Вибе Дейкстра • Дональд Кнут • Мартин Фаулер • Чарльз Энтони Ричард Хоар • Watts Humphrey • Майкл Джексон • Ивар Якобсон • Craig Larman • James Martin • Мейер Бертран • Дэвид Парнас • Winston W. Royce • James Rumbaugh • Никлаус Вирт • Эдвард Йордан • Стив Макконнелл

Процесс

Анализ требований • Проектирование • Программирование • Тестирование • Внедрение • Сопровождение • Формальные методы • Стадии разработки

Концепции

Моделирование данных • Архитектура ПО • Функциональная спецификация • Язык моделирования • Парадигма • Методология • Технологии • Процесс разработки • Качество • Обеспечение качества • Структурный анализ)

Направления

Программирование (Аспектно-ориентированное • Объектно-ориентированное • Проблемно-ориентированное) • Онтология • Сервис-ориентированная архитектура • Оценка затрат на разработку

Модели
разработки

Agile • Cleanroom • CASE • Итеративная разработка • RUP • OpenUP • RAD • Scrum • MSF • Спиральная • Каскадная • XP • V-Model • Dual Vee Model • DSDM

Другие
модели

CMM • CMMI • Данных • Function model • IDEF • Информационная • Metamodeling • Object model • View model • UML

Прочее

Информатика • Инженерия (Компьютерная • Организационная) • История разработки ПО • Документирование • Управление (Конфигурационное • Проектами • Программами • качеством) • Эргономика • Системотехника • Обратная разработка • Версии