Файл: Современные языки программирования (Понятие и классификация языков программирования).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 18.05.2023

Просмотров: 388

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

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

SQL нельзя в полной мере отнести к традиционным языкам программирования, он не содержит традиционные операторы, управляющие ходом выполнения программы, операторы описания типов и многое другое, он содержит только набор стандартных операторов доступа к данным, хранящимся в базе данных.

Операторы SQL встраиваются в базовый язык программирования, которым может быть любой стандартный язык типа C++, PL, COBOL и т. д. Кроме того, операторы SQL могут выполняться непосредственно в интерактивном режиме.

Преимущества:

  1. Независимость от конкретной СУБД. Несмотря на наличие диалектов и различий в синтаксисе, в большинстве своём тексты SQL-запросов, содержащие DDL и DML, могут быть достаточно легко перенесены из одной СУБД в другую. Существуют системы, разработчики которых изначально ориентировались на применение по меньшей мере нескольких СУБД. Естественно, что при применении некоторых специфичных для реализации возможностей такой переносимости добиться уже очень трудно.
  2. Наличие стандартов. Наличие стандартов и набора тестов для выявления совместимости и соответствия конкретной реализации SQL общепринятому стандарту только способствует «стабилизации» языка. Правда, стоит обратить внимание, что сам по себе стандарт местами чересчур формализован и раздут в размерах.
  3. Декларативность. С помощью SQL программист описывает только то, какие данные нужно извлечь или модифицировать. То, каким образом это сделать, решает СУБД непосредственно при обработке SQL-запроса. Однако не стоит думать, что это полностью универсальный принцип - программист описывает набор данных для выборки или модификации, однако ему при этом полезно представлять, как СУБД будет разбирать текст его запроса. Чем сложнее сконструирован запрос, тем больше он допускает вариантов написания, различных по скорости выполнения, но одинаковых по итоговому набору данных.

Недостатки:

  1. Несоответствие реляционной модели данных. Создатели реляционной модели данных Эдгар Кодд, Кристофер Дейт и их сторонники указывают на то, что SQL не является истинно реляционным языком. В частности, они указывают на следующие проблемы SQL: повторяющиеся строки, неопределённые значения, явное указание порядка колонок слева направо, колонки без имени и дублирующиеся имена колонок, отсутствие поддержки свойства «=», использование указателей, высокая избыточность.
  2. Сложность. Хотя SQL и задумывался как средство работы конечного пользователя, в конце концов он стал настолько сложным, что превратился в инструмент программиста.
  3. Отступления от стандартов. Несмотря на наличие международного стандарта ANSI SQL-92, многие компании, занимающиеся разработкой СУБД, вносят изменения в язык SQL, применяемый в разрабатываемой СУБД, тем самым отступая от стандарта. Таким образом, появляются специфичные для каждой конкретной СУБД диалекты языка SQL.
  4. Сложность работы с иерархическими структурами. Ранее диалекты SQL большинства СУБД не предлагали способа манипуляции древовидными структурами. Некоторые поставщики СУБД предлагали свои решения. В настоящее время в ANSI стандартизована рекурсивная конструкция WITH из диалекта SQL DB2. В MS SQL Server рекурсивные запросы появились лишь в версии MS SQL Server 2005[16].

2.3. Java

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

Изначально язык назывался Oak («Дуб») и использовался для программирования бытовых электронных устройств. Впоследствии он был переименован в Java и стал использоваться для написания клиентских приложений и серверного программного обеспечения (из Wiki.).

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

Java очень популярный в финансовой и банковской индустрии. В первую очередь благодаря своей скорости работы и уровня безопасности. Java разработчики очень ценятся на рынке труда из-за дефицита. Этот язык программирования достаточно сложный для изучения и для новичков не всегда дается легко. Кроме всего прочего, приложения Android разрабатываются именно на Java. Это основная причина столь значительной популярности этого языка. По статистике Google Trends, динамика идет вниз.  


Это кроссплатформенная технология с открытым исходным кодом: дополняй на здоровье, изучай и вноси правки. Кроссплатформенность особенно важна для разработки веб-приложений.

Еще одним плюсом Java является возможность создавать модульные программы, которые используются снова и снова. В общем, это язык, который подходит практически для любых задач, так что без работы вы точно не останетесь. Да и будем честными, это не такой уж и сложный язык с огромным коммьюнити, массой учебного материала в сети и отличной поддержкой.

Особенности хостинга для Java: унифицированный доступ к базам данных; большое количество полезных стандартных массивов, стеков и списков; множество фильтров, настройка ввода и вывода; простота в разработке многопоточных приложений; реализовано автоматичное управление памяттю; категории для работы с запросами и ответами HTTP и многое другое[17].

Достоинства: наибольшая среди всех языков программирования степень переносимости программ; мощные стандартные библиотеки; встроенная поддержка работы в сетях (как локальных, так и Internet/Intranet).

Недостатки: низкое, в сравнении с другими языками, быстродействие, повышенные требования к объему оперативной памяти (ОП); большой объем стандартных библиотек и технологий создает сложности в изучении языка; постоянное развитие языка вызывает наличие как устаревших, так и новых средств, имеющих одно и то же функциональное назначение[18].

2.4. Python

До недавнего времени PHP был более популярный чем Python, но сейчас можно уверено сказать, что Python завоевывает доверие молодых разработчиков. Он имеет огромное количество преимуществ. В первую очередь, он лаконичный и понятный. Таким образом, Python – это отличный старт для начинающих разработчиков. Удобная структура кода позволяет легко разрабатывать проект и в дальнейшем поддерживать их. Для бизнеса это означает сокращение расходов. Питон это один из немногих серверных языков, который показывает динамику роста. 

Язык используется для создания разноуровневых веб-приложений. Открытая разработка, простота в изучении и большое сообщество разработчиков – основные преимущества интепретируемого языка для скриптов. Python подходит для большинства рода задач, в том числе он используется такими гигантами как Google и Yandex. Так как технология практически ничем не ограничена, она может быть применена и в крупных проектах, и в мелких ежедневных задачах, таких как резервное копирование, чтение електронной почты. Кроме того, Питон используется при разработке игр. Разработчики создают продукт на одном языке, а для скриптов внутри, вроде взаимодействия персонажей и сцен, часто используют именно Python[19].


Что касается технологий хостинга, на серверах для Python должны быть предустановленны плагины, которые позволят работать с языком. Зачастую хостинг для Python нужен тем, кто использует популярный фреймворк Django. Удобный и полезный Django позволяет создавать высокопрофессиональные приложения, шаблоны для сайтов и CMS.

Особенности Python хостинга: широкая распространенность, так как почти каждый дистрибутив Unix имеет интерпретатор  Python; особый интерес к данному виду хостинга обозначен прежде всего интересом и популярностью фреймворков – Zope, Django, TurboGears, Pylons, web.py, которые непосредственно связаны с данным языком программирования; установка вышеперечисленных фреймворков не всегда посильная и часто сложная задача, из-за чего в основном тормозит развитие хостинга для Python в СНГ[20].

2.5. PHP

Рассмотрим всем известный язык РНР, который отлично подходит для написания веб-приложений работающих с данными. Он также предназначен для создания систем управления контентом, таких как WordPress. Язык включает в себя множество функций, и с выходом каждой новой версии эти функции только расширяются сейчас уже доступна версия php 7. С помощью данной технологии создаются как маленькие так и огромные проекты в Сети, пишутся скрипты для сайтов, такие как чаты, формы обратной связи, тесты, гостевые книги и тп.

Широкое применения данного языка сделало его очень популярным среди веб-разработчиков. Выдаем сразу главный козырь PHP: более 80% сайтов используют эту технологию, в том числе Tumblr, Википедия и Facebook. Worldpress вообще обязан своим существованием этому языку программирования.

Наиболее популярной в сфере хостинг-технологий есть связка PHP и MySQL. Рассмотрим ее особенности:

  • использования версии языка на выбор. Многие хостинг-провайдеров поддерживают старые и новые версии PHP.
  • база данных MySQL предоставляет все технологии и инструменты для управления базами, в которых хранится информация. Удобство использования и систематическое хранения данных, что облегчает поиск – главные преимущества  MySQL.
  • наблюдается тенденция к использованию PHP-фреймворков, которые упрощают разработку веб-приложений – Zend Framework, CakePHP, Symfony. Если эти фреймворки предустановленны в хостинге, то это очень удобное и полезное решение.
  • хостинг с PHP и MySQL станет хорошим решением для сложных коммерческих сайтов, например, интернет-магазинов. Кроме того, стоимость такого хостинга вполне приемлимая.
  • пока что идеальной альтернативы связке  PHP и MySQL как таковой не существует. Конечно, провайдеры предлагают и другие варианты, например, PostgreSQL, SQLite, FirebirdSQL, которые работают по одинаковому принципу, но ограничивают клиента по определенным функциям, что влияет на работу сайтов[21].

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

Преимущества: является свободным программным обеспечением, распространяемым под особой лицензией (PHP license); легок в освоении на всех этапах; поддерживается большим сообществом пользователей и разработчиков; имеет развитую поддержку баз данных; имеется огромное количество библиотек и расширений языка; является довольно полной заменой проприетарной среды ASP (Active Server Pages) от Microsoft; может быть развёрнут почти на любом сервере; портирован под большое количество аппаратных платформ и операционных систем.

Недостатки: не подходит для создания десктопных приложений или системных компонентов; имеет слабые средства для работы с исключениями; глобальные параметры конфигурации влияют на базовый синтаксис языка, что затрудняет настройку сервера и разворачивание приложений; веб-приложения, написанные на PHP, зачастую имеют проблемы с безопасностью[22].

2.6. С++

C++ компилируемый язык программирования общего назначения, сочетает свойства как высокоуровневых, так и низкоуровневых языков программирования. В сравнении с его предшественником, языком программирования Cи, наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «язык программирования C++» происходит от языка программирования C, в котором унарный оператор ++ обозначает инкремент переменной[23].

Язык программирования C++ широко используется для разработки программного обеспечения. А именно, создание разнообразных прикладных программ, разработка операционных систем, драйверов устройств, а также видео игр и многое другое. Он был создан в начале 1980-х годов, Бьёрном Страуструпом. Он придумал ряд усовершенствований к языку программирования C, для собственных нужд. т.е. изначально не планировалось создания языка программирования С++.

Он поддерживает такие парадигмы программирования, как процедурное программирование, объектно-ориентированное программирование, обобщённое программирование, обеспечивает модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции.