Файл: Классификация языков программирование. Категории выбора среды и языков разработки программ..pdf
Добавлен: 01.04.2023
Просмотров: 219
Скачиваний: 2
Общесистемные принципы программирования.
- Принцип включения. – Этот принцип предусматривает, что требования к созданию, функционированию и развитию Программного Обеспечения (ПО) определяется со стороны более сложной, вклиняющий в себя его системы
- Принцип системного единства. – Он состоит в том, что на всех стадиях создания, функционирования и развития ПО целостность будет обеспечиваться связями между подсистемами, а также функционированием под системного управления.
- Принцип развития. – Он предусматривает то, что у ПО есть возможность его наращивания и совершенствования компонентов и связей между собой.
- Принцип комплексности. – Его суть заключается в том, что ПО обеспечивает связанность обработки информации как отдельный элемент, и всего объема данных в целом на всех стадиях обработки.
- Принцип информационного единства. – Во всех подсистемах, средствах обеспечения и компонентов ПО используется единые термины, символы, условные обозначения и способы обработки.
- Принцип совместимости. – Который заключается в том, что язык, символы, коды и средства программного обеспечения согласованы, тем самым обеспечивая совместное функционирования всех подсистемах и сохраняя открытый доступ в структуры системы в целом.
- Принцип инвариантности. – предопределяющий, что подсистема и компоненты Программного Обеспечения инварианты к обрабатываемой информации, то есть являются универсальными или «топовыми».
– Язык программирования С – Си относят к относительно языкам «Низкого Уровня», в этом нет нечего оскорбительного, это просто значит, что Си имеет дело с объектами такого вида, что и большинство старых ЭВМ, а точней, со символами, числами и адресами. Они могут объединиться и пересылать посредством обычных арифметических и логических операций, которые осуществляют реальные ЭВМ. В языке Си отсутствовали так называемые операции, имеющие непосредственное дело со составными объектами, такими как строки символов, множества, список или массивы, рассматриваемые как единое целое. Например, не было никакого аналога операции «PL/1», которое оперируют с целыми массивов и строками. Язык не представляет никаких возможностей распределить памяти, кроме статического определения и механизма стеков, которые обеспечивают локальные переменные функции, и нет так называемых «Куч» (Heep), не «Сборки Мусора», как это предусматривалась в АЛГОЛЕ-68. Ну и сам по себе Си не обеспечен никакой возможностью ввода-вывода, нет операторов «read» или «write» и не каких встроенных методов доступа к файлам. Все эти механизмы находиться в языках «Высокого Уровня».
А язык Си предлагал тока простые, последовательные конструкции потоков управления, проверки, циклы, группирование, подпрограммы, но не мультипрограммирования, то есть, параллельные операции, синхронизацию или сопрограммы.
Может показаться, что некоторые средства могут выглядеть как упрощающее неполноценность, но удержания языка в рамках дает хорошие преимущества на то время. Так как Си относительно мал, он не занимал много места, и его можно быстро выучить. Компилятор с Си может быть простым и компактным, что позволяет писать новые компиляторы быстро и при 80% нового компилятора будет общей с программами для существующих компиляторов. Это обеспечивает высокую мобильность языка
Поскольку типы данных и структур управления, которые были в Си, непосредственно поддерживаться большинство старых ЭВМ, библиотек, которое необходимо во время прогона изолированных программ, и он оказывается очень маленькой. Например, на PDP-11 она содержит только программы на 32-битовой умножения и деления, а для выполнения программ ввода-вывода последовательностей. Конечно, каждая реализация может обеспечить исчерпывающую, совместимую библиотеку функций для выполнения операции ввода и вывода, обработка распределения памяти и срок, но обращения к ним осуществляется только явно, если необходимо избежать их вызова, эти функции могут быть написаны компактно на самом языке Си.
Но надо отметить, что язык Си не зависел от какой-либо конкретной архитектуры машин того времени и позволяла писать переносимые программы. Как и любой язык он модернизировался, улучшался, я описал состояния языка Си на момент 1978 года по этом многие вещи могут не совпадать со современностью.
Язык Си оказал большое влияния на разработку программного обеспечения, и на его основе синтаксиса были созданы, такие языки как С++, C#, Java и другие.
- Язык C++ – Язык Си++ уже был языком «Высокого уровня» и брал за основу объектно-ориентированный подход к программированию, был разработан в результате расширения и дополнения языка Си. В этом языке были лучшие свойства Ассемблера и языка «высокого уровня». Компактность и скорость выполнения программы на языке Си++ приближена к программам, написанным на языке ассемблер. На ряду с этим Си++ полностью поддерживает технологию структурного программирования. Фирма Borland International создала несколько компиляторов для C++. Но для изучения особенности языка не обязательно иметь последнею версию компилятора. К основным особенностям языка Си++ относят, возможность разделения программы на легко поддающиеся контролю, за счет определения новых пользовательских типов, наличие классов, которые обеспечивают скрытие данных и их инициализацию, управления памятью, и механизмом перезагрузки операции и функции. Программа на Си++ состоит из одной или больше функций, которые содержат переменные, константы, операторы, которые нужны для решения определенных задач. В языке включены оригинальные операторы присвоения и выбирающие. Циклы «До» и «С параметром», немного отличаться от привычных алгоритмов, выход их цикла осуществляется по условию «Нет», как и в паскале 7.0, операторы отделяться друг от друга точкой с запитой.
- Язык C# (Читаются и произноситься как «Си-Шарп») – это объектно-ориентированный язык программирования и поддерживающий компонентной-ориентированный, который разработанные компанией Майкрософт под платформу .NET. Язык Си-Шарп специально создан под эту платформу, и поэтому в нем отсутствуют проблемы со совместимостью с предыдущим версиям языка. Разработка приложений на языке Си-Шарп ведется в платформе Visual Studio.NET и Visual C++. NET Runtime – В этой среде выполняется кода, полученный после компиляции программы, написанной Си-Шарп. Это среда выполнения основана на ассемблере (То есть код, который является родным для процессора), а на промежуточной коде. Поэтому для данной Среды возможна использования нескольких языков. Самая важная особенность была, такие как, модель программирования на основе свойств, методов, событий. Каждый компонент имеет атрибуты, представляющие декларативные сведенья, а также встроенные элементы документации. Тока несколько функций Си-Шарп, обеспечивающих надежность и устойчивость приложений, такие как, сборка мусора, автоматически освобождает память, занятую уничтоженным и неиспользуемыми объектами, обротка исключений представляет структурированный и расширяемый способ выявлять и обработка ошибок, строгая типизация языка не позволяет обращаться к неинициализированным переменным, выходя за рамки индексируемых массивов или выполнять неконтролируемое приведение типов. В Си-Шарп существуют «Единая система типов». Все типы включая типы-примитивы, такие как «int» и «double», они следуют от одного корневого типа «object». Таким образом, все типы используют общий набор операций, значения любого типа можно хранить, передавать, обрабатывать похожим способом. Чтобы обеспечить совместимость программ и библиотек «Си-Шарп», при разработки много уделено управлению версиями.
Язык Java – Одни из основных преимуществ языка Java, была независимость от платформы, на котором выполняются программы, один и тот же код можно запускать под управлением операционных системах Windows, Solaris, Linux, Machintosh и многие другие. И это необходимо, когда программы загружаются через Интернет для последующего выполнения под управлением разных оперативных систем. Другое преимущества в том, что синтаксис похож на Си++, тот кто знает Си или Си++, то и просто будет изучить язык Java. Но кто имеет Visual Basic, этот синтаксис будет не привычен.
И нужно отметить, что Java – это полностью Объектно-ориентированный язык программирования, даже больше, чем Си++. Вся сущность Java является объектным, но есть исключения (primitive types), например чисел. Поскольку с помощи объектно-ориентированного программирования можно легко делать сложные проекты, и благодаря этому оно заменила собой структурное программирования.
Программы написанные на Java работают таким образом, программа транслирует в «Байт-код», выполняемой «виртуальной машиной Java» (Java VM, JVM), программой, обрабатывающей «байт-код» и передающий инструкции оборудованию как интерпретатор.
Главным недостатком Java является то, что в отличии от Си++ или Delphi, это то, что все же Java это не компилятор, а больше интерпретатор. Ну и она проигрывает в скорости, той же самый Си++ и занимает в среднем в 10 раз больше памяти.
Java является базовым языком программирования для операционной системы Android. Но привязывать язык Java к одной из ОС, не будем. (См. Рис.8)
(Рис.8 жизненный цикл разработки и запуска программы на Java)
Исходный текст Java-программы должна быть файлом с расширением «.java». Для компиляции программы в «Байт-код» используется программа «javac» из JDK6.
Файлы «байт-кода» исполняются как было сказано, виртуальной машиной Java, JVM. Для каждой операционной системы или устройства разрабатывается своя Java VM, но от этого байт-код программы отстояться неизменным. (См. Рис.9)
(Рис.9 Запуск приложений на различных платформах при помощи Java VM)
В Java отличие от других языков программирования, например Си++, PHP, где объектно-ориентированное программирования можно использовать по желанию, а в Java каждая программа – объектно-ориентированная. Что это значит?
Это значит то что основная конструкция языка Java, главный объект, с которым можно что-то делать – это класс. У каждого класса есть характеристика, так называемом полями (Другими словами Переменные) и умения что делать, так называемые методами (Или функция). На рисунке изображен текст просто программы. (См. Рис.10)
(Рис.10 Текс простой программы на языке Java)
В заключении скажу, Java и C/С++ одни из известных языков программирования, есть и другие, но на основе этим можно сделать общее представления об программирование. Каждый язык действует по определенной парадигме и создан для определенных задач или спектров задач, нужно думать какую вы хотете программу создать и посмотреть возможности определенного языка.
Заключения
Ну и в заключении я могу сказать, что у языков программирования есть парадигмы по котором они создаются, каждый язык создан ради определённой задач, и они развивались вмести с ЭВМ, и развития шло к упрощения и к удобности языка программирования, самого начала были придуманы Ассемблеры чтобы сделать коммуникацию ЭВМ и человека, потом пришли языки более высокого уровня, что вызвало появления классификации и парадигм, где со временем преобладать стал объектно-ориентированное программирования, потом появилась Интегрированная Среда Разработки, это было вызвано желаниям убрать рутину из программирования, и вот мы сегодня, развития идет, и неизвестно что будет завтра.
Список литературы
- Германович, В.В Классификация и характеристика современных языков программирования/ В.В. Гедронавич, Б.А. Гедранович:
Минск: Изд-во МИУ, URL:https://i5t.ru/images/pdf_files/programmirovanie/genderovich_yz_prog.pdf 2011. - 344 с. - Брайн Керниган, Деннис Ритчи Язык программирования Си/ Брайн Керниган, Деннис Ритчи, URL: https://www.r-5.org/files/books/computers/languages/c/kr/Brian_Kernighan_Dennis_Ritchie-The_C_Programming_Language-RU.pdf 1978. - 8 с.
- С.В Вабищевич Язык программирования Pascal/ Вабищевич С.В, Краткий курслекций URL:https://phys.bspu.by/static/um/inf/prg/lecpdf/pascal1s.pdf - 2 с.
- Хабаров С.П. Prolog – язык разработки интеллектуальных и экспертных систем/ С.П. Хабаров: Санкт-Петербуржский государственный университет им. С.М. Кирова, URL: http://www.habarov.spb.ru/book_prolog_2013/SerpBook_Prolog.pdf 2013. – 5-6 с
- Интегрированная среда разработки Visual Studio URL: https://technet.microsoft.com/ru-ru/office/dn762121(v=vs.85)
- Начало работы с Android Studio URL: https://code.tutsplus.com/ru/tutorials/getting-started-with-android-studio--mobile-22958
- 10. Интегрированные среда разработки: Вуз комсомольский-на-Амуре Государственный Технический Университет. URL: https://studfiles.net/preview/5918053/
- 10. Интегрированные среда разработки: Вуз комсомольский-на-Амуре Государственный Технический Университет. URL: https://studfiles.net/preview/5918053/
- Понятия интегрированной среды разработки: Вуз Московский технический университет связи и информации. URL:https://studfiles.net/preview/3528305/page:3/
- Первые шаг в разработки приложений под Мас. URL: https://macdays.ru/soft/review-installation-of-xcode/
- Основные средства разработки программ. URL: https://studfiles.net/preview/3528305/page:2/
- Программная реализация. URL: https://studfiles.net/preview/6231232/page:6/
- Многофайловая организация программ. URL: https://studfiles.net/preview/2919300/
- Среда Xcod и plyground-проекты. URL: http://storage.piter.com/upload/contents/978549602256/978549602256_p.pdf 1-2 с.
- IntelliJ IDEA. URL: https://bmstu.cloud/docs/software/intellij-idea/
- Введения в Java/Язык программирования Java. URL: https://metanit.com/java/tutorial/1.1.php
- Основы языка WEB программирования HTML. URL: https://info-comp.ru/programmirovanie/69--web-html.html
- Бесплатная электронная книга/Учись Embarcadero Delphi, URL: https://riptutorial.com/Download/embarcadero-delphi-ru.pdf -2 с.
- Глава 1. Среда разработки приложений Eclipse, URL: https://studfiles.net/preview/3731479/page:2/
- Тема 7. Программное обеспечение и технологии программирования Лекция 14. Технологии программирования и принципы разработки программного приложения, URL: https://studfiles.net/preview/2059940/page:17/
- 1. Назначение некоторые особенности языка, URL: https://studfiles.net/preview/1582894/
- Медведев М.А, Медведев А.Н. Программирования на Си#/ М.А. Медведев, А.Н. Медведев
Уральский федеральный университет им. Первого президента России Б.Н.Ельцина, URL: http://elar.urfu.ru/bitstream/10995/36057/1/978-5-7996-1561-1_2015.pdf 2015. - 3 с. - Краткий обзор языка C#, URL: https://docs.microsoft.com/ru-ru/dotnet/csharp/tour-of-csharp/
- ЛЕКЦИЯ №1. Введения в Java. URL: http://k504.khai.edu/attachments/article/410/lect01_java_android_ponom.pdf