Следующий план представляет собой обзор и тематическое руководство по компьютерному программированию:
Компьютерное программирование - процесс, который ведет от оригинальной постановки вычислительной задачи к исполняемым компьютерным программам. Программирование включает в себя такие действия, как анализ, развитие понимания, генерация алгоритмов , проверка требований алгоритмов, включая их правильность и потребление ресурсов, а также реализацию (обычно называемую кодированием [1] [2] ) алгоритмов на целевом языке программирования . Исходный код написан на одном или нескольких языках программирования.. Цель программирования - найти последовательность инструкций, которая автоматизирует выполнение конкретной задачи или решение данной проблемы.
История [ править ]
- История информатики
- История вычислительной техники
- История языков программирования
- Компьютерное программирование в эпоху перфокарт
- Хронология операционных систем
Платформы [ править ]
- Компьютер
- Компьютерное железо
- Аналоговый компьютер
- Цифровой компьютер
- Компьютер с вакуумной трубкой
- Транзисторный компьютер
- Список транзисторных компьютеров
- Мэйнфрейм
- Миникомпьютер
- Микрокомпьютер
- Домашние компьютеры
- Совместимость с IBM PC
- Персональный компьютер
- Настольный компьютер
- Ноутбук
- Мобильный компьютер
- Персональный цифровой помощник (КПК)
- Смартфон
- Планшетный компьютер
- Носимый компьютер
- Сервер
- Суперкомпьютер
- Виртуальная машина
- Аппаратная виртуализация
- Система выполнения
Парадигмы [ править ]
- Агентно-ориентированный
- Аспектно-ориентированный
- На основе автоматов
- На основе данных
- Декларативное (в отличие от императивного программирования)
- Ограничение
- Логика ограничений
- Логика параллельных ограничений
- Логика ограничений
- Поток данных
- На основе потока (FBP)
- Реактивный
- Функциональный
- Функциональная логика
- Чисто функциональный
- Логика
- Абдуктивная логика
- Набор ответов
- Параллельная логика
- Функциональная логика
- Индуктивная логика
- Ограничение
- Событийный
- Управляемый временем
- Ориентированный на выражение
- Ориентированный на функции
- Функциональный уровень (в отличие от программирования на уровне значений)
- Общий
- Императивный (в отличие от декларативного программирования)
- Грамотный
- Процедурный
- Индуктивное программирование
- Ориентированный на язык (LOP)
- Программирование на естественном языке
- Преднамеренный
- Неструктурированный (в отличие от структурированного )
- Множество
- Недетерминированный
- Ориентированный на процесс
- Ролевой
- Семантико-ориентированный (СОП)
- Структурированное (в отличие от неструктурированного программирования)
- Блочно-структурированный
- Модульный
- Параллельные вычисления
- Релятивистское программирование
- Параллельные вычисления
- Объектно-ориентированный (ООП)
- На основе классов
- Параллельное ООП
- На основе прототипа
- Предметно-ориентированный
- Молчаливый
- На уровне значений (в отличие от программирования на уровне функций)
- Вероятностный
- Концепция
Написание программ [ править ]
- Псевдокод
Методология [ править ]
- Программирование массива
- Разработка для конечных пользователей
- Метапрограммирование
- Автоматическое программирование
- Отражение
- Атрибутно-ориентированное программирование (АОП)
- Гомоиконность
- Метапрограммирование шаблона
- Дизайн на основе политик
- Сервис-Ориентированная Архитектура
- Сервисно-ориентированное моделирование
- Рекурсия
- Разделение проблем
- Резьбовое кодирование
Алгоритмы [ править ]
- Список алгоритмов
- Список общих тем алгоритмов
- Список важных_публикаций по теоретической информатике § Алгоритмы
- Характеристики алгоритмов
- Введение в алгоритмы
- Теория вычислений
- Теория вычислительной сложности
- Анализ алгоритмов
- Эмпирическая алгоритмика
- Обозначение Big O
- Алгоритмическая эффективность
- Анализ алгоритмов
- Алгоритмическая теория информации
- Алгоритмическая вероятность
- Алгоритмически случайная последовательность
- Теория вычислительной сложности
- Алгоритм поиска
- Алгоритм сортировки
- Алгоритм слияния
- Строковые алгоритмы
- Жадный алгоритм
- Снижение
- Последовательный алгоритм
- Параллельный алгоритм
- Распределенный алгоритм
- Детерминированный алгоритм
- Рандомизированный алгоритм
- Квантовый алгоритм
Языки программирования [ править ]
Язык программирования - формальный сконструированный язык, предназначенный для передачи инструкций машине, в частности компьютеру. Языки программирования могут использоваться для создания программ для управления поведением машины или для выражения алгоритмов.
- Список поколений языков программирования
- Список языков программирования по типу
- Алфавитный список языков программирования
- Скомпилированный язык
- Интерпретируемый язык
- Язык сценариев
- Сравнение языков программирования
- Диалект языка программирования
- Теория языка программирования
- Формальная семантика языков программирования
- язык ассемблера
- Макрос
Типы языков программирования [ править ]
- Язык программирования массивов
- Аспектно-ориентированный язык программирования
- Язык программирования на основе классов
- Конкатенативный язык программирования
- Язык параллельного программирования
- Структурированный язык данных
- Язык программирования потока данных
- Декларативный язык программирования
- Доменно-ориентированный язык
- Язык динамического программирования
- Эзотерический язык программирования
- Язык программирования, управляемый событиями
- Расширяемый язык программирования
- Функциональный язык программирования
- Язык программирования высокого уровня
- Императивный язык программирования
- Интерпретируемый язык
- Язык логического программирования
- Язык программирования низкого уровня
- Язык машинного программирования
- Язык программирования метапрограммирования
- Мультипарадигмальный язык программирования
- Неанглийский язык программирования
- Объектно-ориентированный язык
- Объектно-ориентированный язык программирования
- Внешний язык программирования правил
- Язык конвейерного программирования
- Язык процедурного программирования
- Язык программирования на основе прототипов
- Светоотражающий язык программирования
- Язык программирования на основе правил
- Синхронный язык программирования
- Язык программирования очень высокого уровня
- Язык визуального программирования
Популярные языки [ править ]
20 самых популярных языков программирования по состоянию на февраль 2021 года [Обновить]: [3]
- C
- Ява
- Python
- C ++
- C #
- Visual Basic .NET
- JavaScript
- PHP
- SQL
- язык ассемблера
- р
- Groovy
- Идти
- Рубин
- Быстрый
- MATLAB
- Delphi / Object Pascal
- Классический Visual Basic
- Perl
- Цель-C
Анатомия языка программирования [ править ]
- Синтаксис
- Лексическая грамматика
- Точка с запятой
- Значения
- Типы
- Операторы
- Структуры программы
- Переменные
- Выражения
- Заявления
- Ключевые слова и зарезервированные слова
- Структуры управления
- Подпрограммы (также известные как функции)
- Анонимные функции
- Петли
- Для петель
- Пока петли
- Условные
- Если-то
- Если-то-еще
- Операторы case и switch
- Подпрограммы (также известные как функции)
- Поток управления
- Структуры данных
- Объекты
- Массивы
- Регулярные выражения
Сравнение языков программирования [ править ]
Сравнение языков программирования
- Общее сравнение
- Базовый синтаксис
- Основные инструкции
- Обработка исключений
- Перечислимые типы
- Анонимные функции
- Условные выражения
- Функциональные инструкции
- Массивы
- Ассоциативные массивы
- Строковые операции
- Строковые функции
- Понимание списка
- Объектно-ориентированное программирование
- Объектно-ориентированные конструкторы
- Пока петли
- Для петель
- Стратегия оценки
- Список программ "Hello World"
- Языки с зависимыми типами
- Сравнение типов систем
Сравнение отдельных языков [ править ]
- Платформы Java и .NET
- Влияние АЛГОЛА 58 на АЛГОЛ 60
- АЛГОЛ 60: Сравнение с другими языками
- Сравнение АЛГОЛА 68 и C ++
- АЛГОЛ 68: Сравнение с другими языками
- Совместимость C и C ++
- Сравнение Pascal и Borland Delphi
- Сравнение Object Pascal и C
- Сравнение Паскаля и Си
- Сравнение Java и C ++
- Сравнение C # и Java
- Сравнение C # и Visual Basic .NET
- Сравнение Visual Basic и Visual Basic .NET
Компиляция [ править ]
- Программист
- Исходный код
- Парсинг
- Компиляция
- Предварительная обработка
- Перевод
- сборка
- Связывание
- Оптимизация компилятора
- Ошибка компиляции
Программное обеспечение [ править ]
- Компьютерная программа
- Hello world (распространенная форма примера программы для обучения программистов)
- Программное обеспечение
- Программный комплекс
- Система управления базами данных
- Программное обеспечение для программирования
- Инструмент программирования
- Текстовый редактор
- Редактор исходного кода
- Интегрированная среда разработки (IDE)
- Редактор исходного кода
- Ассемблер
- Компилятор
- Устный переводчик
- Компоновщик
- Отладчик
- Текстовый редактор
- Инструмент программирования
- Программное обеспечение
Компоненты [ править ]
- Инструкция
- Библиотека
- Интерфейс прикладного программирования (API)
Разработка программного обеспечения [ править ]
- Разработка программного обеспечения
- Процесс разработки программного обеспечения
- Отладка
- Человеческая ошибка
- Отладка
- Методология разработки программного обеспечения
- Гибкая разработка программного обеспечения
- Экстремальное программирование
- Процесс разработки программного обеспечения
Программная инженерия [ править ]
Программная инженерия -
- Выполнение
- Исполнение
- Архитектура программного обеспечения
- Надежность программного обеспечения
- Качество программного обеспечения
- Тестирование программного обеспечения
- Сопровождение программного обеспечения
- Оптимизация программного обеспечения
- Хрупкость программного обеспечения
См. Также [ править ]
- Схема компьютеров
- Схема вычислений
- Очерк информатики
- Схема искусственного интеллекта
- Краткое описание криптографии
- Схема Интернета
- Краткое изложение Google
- Краткое описание программного обеспечения
- Типы софта
- Краткое описание бесплатного программного обеспечения
- Схема поисковых систем
- План разработки программного обеспечения
- Краткое описание программной инженерии
- Очерк веб-дизайна и веб-разработки
- Очерк компьютерного программирования
- Языки программирования
- Краткое описание C ++
- Краткое описание Perl
- Языки программирования
- Типы софта
- Очерк информатики
- Схема вычислений
Ссылки [ править ]
- ^ Шон Беббингтон (2014). «Что такое кодирование» . Проверено 3 марта 2014 .
- ^ Шон Беббингтон (2014). «Что такое программирование» . Проверено 3 марта 2014 .
- ^ "Индекс Тиобе" . Программное обеспечение TIOBE . Проверено 13 февраля 2021 года .
Внешние ссылки [ править ]
- Как думать как компьютерный ученый - Джеффри Элкнер, Аллен Б. Дауни и Крис Мейерс