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