Актуальные проблемы кластерного анализа


НазваниеАктуальные проблемы кластерного анализа
страница7/12
ТипДокументы
filling-form.ru > Туризм > Документы
1   2   3   4   5   6   7   8   9   ...   12

Выбор языка программирования


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

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

  • Целевая платформа

  • Гибкость языка

  • Время исполнения проекта

  • Производительность

  • Поддержка и сообщество

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

2.1. Анализ инструментальных средств


Рассмотрим популярные языки и программные среды с точки зрения приспособленности под различные классы задач.

BASIC

BASIC (англ. Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих; англ. BASIC — основной, базовый). Язык был разработан в 1963 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Куртцом.

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

Восемь требования, представляшихся при разработке языка:

  • простота в использовании для начинающих;

  • общность назначения (отсутствие специализации);

  • возможность расширения функциональности средствами, доступными программистам;

  • интерактивность;

  • четкие и понятные сообщения об ошибках;

  • высокая скорость работы на небольших программах;

  • отсутствие необходимости понимания работы аппаратного обеспечения для написания программ;

  • эффективное посредничество между пользователем и операционной системой.

В 70-е годы Microsoft популяризовали этот язык, как бызовый для программирования на своих системах, а в 1991 появился Visual Basic – современная реализация, ставшая наболее полпулярной на плотформе Windows. Сегодня BASIC – это целое семейство языков с развитым деревом реализаций, но в своей основе это всё тот же язык, предназаченый для решения небольших прикладных задач.

Pascal

Pascal – один из наиболее популярных языков, так же как и BASIC направленного на обучение. Язык выделяется строгой типизацией и средствами процедурного программирования, став первопроходцем в этом направлении.

Паскаль (англ. Pascal) — язык программирования общего назначения. Один из наиболее известных языков программирования, используется для обучения программированию в старших классах и на первых курсах ВУЗов, является базой для ряда других языков.

Подробное описание всех недостатков привёл начале 1980-х Брайан Керниган в статье «Почему Паскаль не является моим любимым языком программирования».

Наиболее известной реализацией Паскаля, обеспечившей широкое распространение и развитие языка, является Turbo Pascal фирмы Borland, выросшая затем в объектный Паскаль для DOS (начиная с версии 5.5) и Windows и далее в Delphi, в которой были внедрены значительные расширения языка.

C и C++

В основе языка C - требования системного программиста: полный и эффективный доступ ко всем ресурсам компьютера, средства программирования высокого уровня, переносимость программ между различными платформами и операционными системами. С++, сохраняя совместимость с C, вносит возможности объектно-ориентированного программирования, выражая идею класса (объекта) как определяемого пользователем типа. Благодаря перечисленным качествам, C/C++ занял позицию универсального языка для любых задач. Но его применение может стать неэффективным там, где требуется получить готовый к употреблению результат в кратчайшие сроки, либо там, где невыгодным становится сам процедурный подход.

Python

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

Python — один из наиболее динамичных языков совремнного времени. Новые версии выходят часто, поэтому отсутствуют стандарт ANSI, ISO или другие официальные стандарты.

Perl

Perl (Practical Extraction and Report Language, англ. - Практический Язык для Извлечения Данных и Составления Отчётов) разработан лингвистом Ларри Уоллом. Язык богат возможностями для работы с текстом и регулярными выражениями, встроенными в синтаксис.

Perl унаследовн от Си и является процедурным, реализуя переменные, присваивания, управляющие структуры и функции.

Общая структура Perl в общих чертах ведёт своё начало от языка Си. Perl — процедурный по своей природе, имеет переменные, выражения присваивания, блоки кода, отделяемые фигурными скобками, управляющие структуры и функции. Регулярные выражения хорошо работают для «парсинга текста»

Perl заимствует массивы из Lisp, регулярные выражения из AWK и sed, из AWK также позаимствованы хеши («ассоциативные массивы»). Регулярные выражения облегчают выполнение многих задач по парсингу, обработке текста и манипуляций с данными. В языке реализоана мощная функция автоматической типизации данных, но невозможные операции приводят к фатальным ошибкам.

Java

Объектно-ориентированный язык программирования, от компанией Sun Microsystems 23 мая 1995. Приложения транслируются в байт-код и работают внутри виртуальной машины. Это снимает зависимость кода от среды исполнения, но накладывает ограничение на наличие виртуальной машины, а любые неполномочные операции завершают выполнение виртуальной машины.

По данным сайта shootout.alioth.debian.org, Java в отдельных случаях в несколько раз медленнее C/C++, что в среднем в полтора-два раза больше, а потребление памяти Java-машиной было в 10-30 раз больше.

  1. Выводы

В заключении заметим, что с профессиональной точки зрения не так важно на каком языке и в какой среде работает программист, сколько как он выполняет свою работу. Меняется аппаратура и операционные системы. Возникают новые задачи из самых различных предметных областей. Уходят в прошлое и появляются новые языки. Но остаются люди - те, кто пишет и те, для кого пишут новые программы и чьи требования к качеству остаются теми же вне зависимости от этих изменений.
1   2   3   4   5   6   7   8   9   ...   12

Похожие:

Актуальные проблемы кластерного анализа iconАктуальные проблемы
Актуальные проблемы гражданского процесса: Учебно-методическое пособие. М. А. Гранат, Тольятти: тгу, 2012. с. 26

Актуальные проблемы кластерного анализа iconРабочая программа Актуальные проблемы «холодной войны»
Учебная дисциплины «Актуальные проблемы «холоднойвойны» предусмотрена компетентно- ориентированным учебным планом по направлению...

Актуальные проблемы кластерного анализа iconГосударственное образовательное учреждение высшего профессионального...
Актуальные проблемы рекламной деятельности: теория и практика : сб науч тр. / отв ред. А. В. Прохоров; м-во обр и науки рф, г оувпо...

Актуальные проблемы кластерного анализа iconМетодические рекомендации по изучению курса «Актуальные проблемы...
Костенко Р. В., Зубенко Е. И. Актуальные проблемы уголовного процессуального права: Учебно-методическое пособие для студентов юридического...

Актуальные проблемы кластерного анализа iconБиблиографический указатель книг, имеющихся в библиотеке Казанского...
Актуальные проблемы гражданского права: учебное пособие/ под ред. Н. М. Коршунова, Ю. Н. Андреева, Н. Д. Эриашвили. 2-е изд., испр...

Актуальные проблемы кластерного анализа iconМетодические рекомендации по изучению курса «Актуальные проблемы...
Костенко Р. В., Зубенко Е. И. Актуальные проблемы уголовного процессуального права: Учебно-методическое пособие для студентов юридического...

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

Актуальные проблемы кластерного анализа iconМосква Актуальные проблемы современной науки гуманитарные науки часть...
Актуальные проблемы современной науки: Труды 14-й Международной конференции -конкурса «Актуальные проблемы современной науки». Гуманитарные...

Актуальные проблемы кластерного анализа iconЗаявка на обучение по программе «Актуальные проблемы применения законодательства...
«Актуальные проблемы применения законодательства о несостоятельности (банкротстве)»

Актуальные проблемы кластерного анализа iconАктуальные проблемы паремиологии
Типы преобразований словацких, чешских и английских пословиц в Интернет-пространстве

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск