Очерк информатики - Outline of computer science
Информатика (также называется вычислительная наука) - это изучение теоретических основ Информация и вычисление и их реализация и применение в компьютер системы. Одной из хорошо известных систем предметной классификации информатики является Система классификации вычислений ACM разработан Ассоциация вычислительной техники.
Что такое информатика?
Информатику можно описать следующим образом:
Подполя
Математические основы
- Теория кодирования - Полезно в сети и других областях, где компьютеры взаимодействуют друг с другом.
- Теория игры - Полезно в искусственном интеллекте и кибернетика.
- Дискретная математика
- Теория графов - Основы структур данных и алгоритмов поиска.
- Математическая логика – Логическая логика и другие способы моделирование логические запросы; использование и ограничения формальных методов доказательства
- Теория чисел - Теория целые числа. Используется в криптография а также тестовый домен в искусственный интеллект.
Алгоритмы и структуры данных
- Алгоритмы - Последовательные и параллельные вычислительные процедуры для решения широкого круга задач.
- Структуры данных - Организация и обработка данных.
Искусственный интеллект
Схема искусственного интеллекта
- Искусственный интеллект - Внедрение и изучение систем, которые демонстрируют автономный интеллект или собственное поведение.
- Автоматизированное рассуждение - Решающие двигатели, такие как используемые в Пролог, которые производят шаги к результату по запросу к базе данных фактов и правил, и автоматические средства доказательства теорем которые стремятся доказать математические теоремы с некоторой помощью программиста.
- Компьютерное зрение - Алгоритмы распознавания трехмерных объектов из двухмерного изображения.
- Мягкие вычисления, использование неточных решений для чрезвычайно сложных проблем:
- Машинное обучение - Автоматическое создание набора правил и аксиом на основе ввода.
- Эволюционные вычисления - Биологически вдохновленные алгоритмы.
- Обработка естественного языка - Создание систем и алгоритмов, которые анализируют, понимают и генерируют естественные (человеческие) языки.
- Робототехника - Алгоритмы управления поведением роботов.
Связь и безопасность
- Сети - Алгоритмы и протоколы для надежной передачи данных через различные общие или выделенные носители, часто включая исправление ошибки.
- Компьютерная безопасность - Практические аспекты защиты компьютерных систем и компьютерных сетей.
- Криптография - Применяет результаты теории сложности, вероятности, алгебры и чисел для изобретения и коды прерывания, и проанализировать безопасность криптографические протоколы.
Компьютерная архитектура
- Компьютерная архитектура - Проектирование, организация, оптимизация и проверка компьютерной системы, в основном о Процессоры и объем памяти подсистема (и соединяющая их шина).
- Операционные системы - Системы для управления компьютерными программами и обеспечения основы пригодной для использования системы.
Компьютерная графика
- Компьютерная графика - Алгоритмы как для синтетического создания визуальных образов, так и для интеграции или изменения визуальной и пространственной информации, взятой из реального мира.
- Обработка изображений - Определение информации из изображения посредством вычислений.
- Визуализация информации - Методы представления и отображения абстрактных данных для облегчения взаимодействия человека с целью исследования и понимания.
Параллельные, параллельные и распределенные системы
- Параллельные вычисления - Теория и практика одновременных вычислений; безопасность данных в любой многозадачной или многопоточной среде.
- Параллелизм (информатика) - Вычисления с использованием нескольких параллельных потоков выполнения, разработка алгоритмов решения проблем на нескольких процессорах для достижения максимального ускорения по сравнению с последовательным выполнением.
- Распределенных вычислений - Вычисления с использованием нескольких вычислительных устройств в сети для выполнения общей цели или задачи и, таким образом, уменьшения задержки, связанной с вкладом одного процессора для любой задачи.
Базы данных
- Реляционные базы данных - в теоретико-множественный и алгоритмическая основа баз данных.
- Структурированное хранилище - нереляционные базы данных, такие как NoSQL базы данных.
- Сбор данных - Изучение алгоритмов поиска и обработки информации в документах и базах данных; тесно связан с поиск информации.
Языки программирования и компиляторы
- Теория компилятора - Теория компилятор дизайн, основанный на Теория автоматов.
- Прагматика языка программирования - Таксономия языков программирования, их сильные и слабые стороны. Различный парадигмы программирования, такие как объектно-ориентированного программирования.
- Теория языка программирования
- Формальная семантика - строгое математическое изучение смысла программ.
- Теория типов - Формальный анализ типов данных и использование этих типов для понимания свойств программ, особенно безопасности программ.
Научные вычисления
- Вычислительная наука - строительство математические модели и количественный анализ методы и использование компьютеров для анализа и решения научный проблемы.
- Численный анализ - Приближенное численное решение математических задач, таких как поиск корней, интеграция, то решение обыкновенных дифференциальных уравнений; приближение специальные функции.
- Символическое вычисление - Манипуляция и решение выражений в символической форме, также известной как Компьютерная алгебра.
- Вычислительная физика - Численное моделирование больших неаналитических систем
- Вычислительная химия - Компьютерное моделирование теоретической химии с целью определения химических структур и свойств
- Биоинформатика и Вычислительная биология - Использование информатики для обслуживания, анализа, хранения биологические данные и помочь в решении биологических проблем, таких как Сворачивание белков, прогнозирование функций и Филогения.
- Вычислительная нейробиология - Вычислительное моделирование нейрофизиология.
Программная инженерия
- Формальные методы - Математические подходы к описанию и рассуждению о разработке программного обеспечения.
- Программная инженерия - Принципы и практика проектирования, разработки и тестирования программ, а также надлежащие инженерные практики.
- Разработка алгоритма - Использование идей теории алгоритмов для творческого проектирования решений реальных задач.
- Компьютерное программирование - Практика использования языка программирования для реализации алгоритмов.
- Взаимодействие человека с компьютером - Изучение и проектирование компьютерных интерфейсов, которыми пользуются люди.
- Обратный инжиниринг - Применение научного метода для понимания произвольного существующего программного обеспечения.
Теория вычислений
- Теория автоматов - Различные логические структуры для решения проблем.
- Теория вычислимости - Что можно рассчитать с текущими моделями компьютеров. Доказательства разработаны Алан Тьюринг и другие дают представление о возможностях того, что можно вычислить, а что нет.
- Теория вычислительной сложности - Фундаментальные ограничения (особенно время и объем памяти) классов вычислений.
- Квантовые вычисления теория - исследует вычислительные модели, включающие квантовая суперпозиция бит.
История
Профессии
- Программист
- Учитель /Профессор
- Инженер-программист
- Программный архитектор
- Разработчик программного обеспечения
- Тестер программного обеспечения
- Инженер по аппаратному обеспечению
- Аналитик данных
- Дизайнер взаимодействия
- Администратор сети
Данные и структуры данных
- Структура данных
- Тип данных
- Ассоциативный массив и Хеш-таблица
- Массив
- Список
- Дерево
- Строка
- Матрица (информатика)
- База данных
Парадигмы программирования
- Императивное программирование /Процедурное программирование
- Функциональное программирование
- Логическое программирование
- Объектно-ориентированного программирования
Смотрите также
внешняя ссылка
- Очерк информатики в Керли
- ACM отчет о рекомендуемой учебной программе по информатике (2008 г.)
- Справочник бесплатных университетских лекций по информатике
- Коллекция библиографий по информатике
- Фотографии ученых-информатиков (Бертран Мейер галерея)