Skip to main content

Какие существуют виды компьютерного программирования?

Учитывая, что определение компьютерного программирования настолько широкое и использование программ настолько распространено, на самом деле существует множество типов компьютерного программирования, часто определяемых совершенно по-разному. Самые основные типы компьютерного программирования могут быть разбиты на язык программирования, такой как C, Lisp или Java®, используемый программистом. В других контекстах может быть только два типа компьютерного программирования - системное и прикладное. Некоторые различия делаются между сетевым программированием, веб-программированием и настольным программированием. Различные типы компьютерного программирования иногда могут быть разделены целевой платформой, такой как программирование встроенных систем, программирование в реальном времени (RTS) или программирование базы данных.

Различные типы компьютерного программирования часто определяются языком, используемым для написания программного обеспечения. Доступно много языков, но они широко относятся либо к структурированным языкам, таким как C, либо к объектно-ориентированным языкам, таким как Java®, причем оба они обычно используются профессионалами для различных задач. Языки также могут быть императивными, как ранее упомянутые, или функциональными, как Лисп, в которых программы состоят из ряда функций вместо команд. Некоторое компьютерное программирование выполняется исключительно с помощью языков сценариев, которые представляют собой интерпретируемые человеком документы, которые выполняют операции в другой среде.

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

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

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