Языки научного программирования
Image credit: Языки НП
Научное программирование - стиль программирования, ориентированный на научные расчеты.
Языки научного программирования.
- Python - это мощный язык программирования общего назначения, который разработал Гвидо ван Россум (Guido van Rossum) в 1989 году. Python классифицируется как язык программирования высокого уровня, в котором автоматически обрабатывается большинство фундаментальных операций (таких как управление памятью), выполняемых на уровне процессора («машинный код»). Python считается языком более высокого уровня, чем, например, C, из-за его выразительного синтаксиса (который во многих случаях близок к естественному языку) и богатого разнообразия встроенных структур данных, таких как списки, кортежи, множества и словари.
Плюсы:
-
ясный и простой синтаксис позволяет быстро писать программы на Python и в общем сводит к минимуму возможности совершения скрытых ошибок,
-
сама рабочая программная среда Python и связанные с ней библиотеки бесплатны, а кроме того, представляют собой программное обеспечение с открытым исходным кодом, в отличие от коммерческих предложений, таких как Mathematica и MATLAB,
-
для Python существует большая библиотека модулей и пакетов, которая расширяет его функциональность,
-
поддержка многих платформ: Python доступен для каждой общедоступной компьютерной системы, в том числе Windows, Unix, Linux и macOS,
-
Python – гибкий язык: его часто описывают как язык «многих парадигм», в котором имеются наилучшие функциональные возможности для процедурного, объектно-ориентированного и функционального программирования.
Минусы:
-
скорость выполнения программы на Python не так высока, как программ на других, полностью компилируемых языках, таких как C и Fortran,
-
трудно скрыть или замаскировать исходный код программы на Python, чтобы защитить ее от копирования и/или изменения,
-
на протяжении всей истории существования Python самыми частыми претензиями становились жалобы на излишне быстрое его развитие, приводящее к проблемам несовместимости между версиями.
- Язык программирования Fortran был разработан в середине 50-х годов ХХ века и стал первым высокоуровневым типом. Сегодня можно часто услышать, что его время прошло с появлением массовых компьютеров и осталось в эпохе перфокарт и ЭВМ размером с целую комнату. Однако данный язык до сих пор актуален. Программа на языке программирования Fortran представляет собой систему, составленную из элементов библиотеки, включающих основной программный текст, модули, внешние подпрограммы и процедуры. Любая программа включает базовый набор комбинаций компьютерных инструкций и данных. Кроме того, она может содержать/не содержать дополнительные программные модули.
Плюсы:
-
очень простой и доступный вариант языка для обучения программированию,
-
благодаря распространенности во всем мире, Fortran имеет объемную библиотеку и большой ассортимент прикладных приложений, которые созданы за его длинную историю,
-
система имеет обширный набор инструментов, доступных на бесплатной основе,
-
язык программирования Fortran имеет набор средств (трансляторов) для преобразования в машинные системы разных компьютеров.
Минусы:
-
жесткие требования к формату кода,
-
небольшой набор команд для управления программной структурой,
-
слабый набор средств для описания данных.
- Matlab - популярный инструмент, используемый при работе с матричными базами данных, виртуализацией и математическими расчетами. Он не применяется для разработки программного обеспечения вроде игр или бизнес-решений. Язык Matlab высокоуровневый и интерпретируемый. Он включает в себя пакет прикладных программ, а также интегрированную среду разработки. Встречается преимущественно в математических и инженерных задачах. Его изучают математики и физики. Соответствующий комплекс представляет собой набор профессиональных инструментов для технических вычислений, а также компьютерного моделирования. Отличается строгими требованиями качества. Matlab как язык программирования был создан в 1970-х годах неким Кливом Моулером, деканом факультета компьютерных наук в университете Нью-Мексико. В самой первой своей версии Matlab не был полноценным языком. Он представлял собой простой интерактивный матричный калькулятор.
Плюсы:
-
этот язык намного проще, чем СИ-семейство и Fortan. Он обладает интуитивно понятным синтаксисом, хорошей справочно-документальной базы от разработчиков,
-
при помощи данного языка удается работать с продвинутой библиотекой для обработки и формирования графиков, интегрированными функциями линейной алгебры, быстрым преобразованием Фурье, полиномами, базовой статистикой, решением дифференциальных уравнений,
-
то, что написано на Matlab, легко переводится на C и C++ через Matlab Coder,
-
в пакет включены прикладные приложения от сторонних и официальных разработчиков. Они расширяют стандартную функциональность языка.
Минусы:
-
Matlab имеет множество операторов и команд. Они делают работы программ, написанных на рассматриваемом языке, более медленными,
-
использование инструмента поддерживается только в замкнутых экосистемах. На других программных платформах он неэффективен,
-
данная программная среда – это коммерческий продукт. Он распространяется только платно. Чтобы приобрести дистрибутив по минимальной стоимости, необходимо быть студентом университета.
Языками научного программирования также считаются: C /C++, ALGOL, APL, J, Julia, Maple и R.