Файл: История возникновения, развития языка программирования Си (С++) и Java.pdf
Добавлен: 24.04.2023
Просмотров: 157
Скачиваний: 1
СОДЕРЖАНИЕ
1. Язык программирования Си и С++ 1.1 История возникновения языков программирования Си и С++
1.2 Понятие языков программирования С и С++
1.3 Основные принципы работы и базовые понятия языков программирования Си и С++
2.1 История возникновения языка программирования Java
2.2 Понятие языка программирования Java
2.3. Основные принципы работы и базовые понятия языка программирования Java
2. Вещественные константы. Для представления вещественных (нецелых) чисел используются константы, представляемые в памяти компьютера в форме с плавающей точкой. Каждая вещественная константа состоит из следующих частей: целая часть (десятичная целая константа); десятичная точка; дробная часть (десятичная целая константа); признак показателя "е" или "Е"; показатель десятичной степени (десятичная целая константа, возможно, со знаком). При записи констант с плавающей точкой могут опускаться целая или дробная часть (но не одновременно); десятичная точка или символ экспоненты с показателем степени (но не одновременно). Примеры констант с плавающей точкой:
125. 3.14159265 1.0е-5 .314159Е25 0.0
3. Символы, или символьные константы. Для изображения отдельных знаков, имеющих индивидуальные внутренние коды, используются символьные константы. Каждая символьная константа -- это лексема, которая состоит из изображения символа и ограничивающих апострофов. Например: 'A', 'a', '5', '?', и т.д.
Внутри апострофов можно записать любой символ, изображаемый на дисплее или принтере в текстовом режиме. Однако в компьютере используются и коды, не имеющие графического представления на экране дисплея, клавиатуре или принтере. Примерами таких кодов служит код перехода курсора дисплея на новую строку или код возврата каретки (возврат курсора к началу текущей строки). Для изображения в программе соответствующих символьных констант используются комбинации из нескольких символов, имеющих графическое представление. Каждая такая комбинация начинается с символа '\' (обратная косая черта - backslash). Такие наборы литер, начинающиеся с символа '\', в литературе по языкам C и С++ называют управляющими последовательностями. Ниже приводится их список:
'\n' -- перевод строки;
'\t' -- горизонтальная табуляция;
'\r' -- возврат каретки (курсора) к началу строки;
'\\' -- обратная косая черта \;
'\'' -- апостроф (одиночная кавычка);
'\"' -- кавычка (символ двойной кавычки);
'\0' -- нулевой символ;
'\a' -- сигнал-звонок;
'\b' -- возврат на одну позицию (на один символ);
'\f' -- перевод (прогон) страницы;
'\v' -- вертикальная табуляция;
'\?' -- знак вопроса.
Обратите внимание на то, что перечисленные константы изображаются двумя или более литерами, а обозначают они одну символьную константу, имеющую индивидуальный двоичный код. Управляющие последовательности являются частным случаем эскейп-последовательностей (ESCAPE-sequence), к которым также относятся лексемы вида '\ddd' либо'\xhh' или '\Xhh', где
· '\ddd' -- восьмеричное представление любой символьной константы. Здесь d -- восьмеричная цифра (от 0 до 7). Например, '\017' или '\233'.
· '\xhh' или '\Xhh' -- шестнадцатеричное представление любой символьной константы. Здесь h -- шестнадцатеричная цифра (от 0 до F). Например, '\x0b', '\x1A', и т.д.
Символьная константа (символ) имеет целый тип, т.е. символы можно использовать в качестве целочисленных операндов в выражениях.
4. Строки, или строковые константы. Строки вообще-то не относятся к константам языка С++, а представляют собой отдельный тип его лексем. Для них в литературе используется еще одно название: «строковые литералы». Строковая константа определяется как последовательность символов, заключенная в двойные кавычки (не в апострофы!):
"Это строка"
Среди символов строки могут быть эскейп-последовательности, т.е. сочетания знаков, соответствующие не изображаемым символам, или символам, задаваемым их внутренними кодами. В этом случае, как и в представлениях отдельных символьных констант, их изображения начинаются с обратной косой черты '\':
"\n Текст \n разместится \n на 3-х строках"
Представления строковых констант в памяти компьютера подчиняются следующим правилам. Все символы строки размещаются подряд, и каждый символ (в том числе представленный эскейп-последовательностью) занимает ровно 1 байт. В конце записи строковой константы компилятор помещает символ '\0'.
Таким образом, количество байтов, выделяемое в памяти компьютера для представления значения строки, на единицу больше, чем число символов в записи этой строковой константы:
"Строка в 18 байт."
Внимание. При работе с символьной информацией важно помнить, что длина символьной константы, например, 'A' равна 1 байту, а длина строки "A" равна 2 байтам, т.к. строка заканчивается нуль-символом ('\0').
5. Булевые константы. Имеется всего два значения: true - истина и false - ложь.
Комментарии
Комментарий - это последовательность любых знаков (символов), которая используется в тексте программы для её пояснения. Обычно в тексте программы делают вводный комментарий к программе в целом (её назначение, автор, дата создание и т.д.), а далее дают комментарии к отдельным фрагментам текста программы, смысл которых не является очевидным. Важно дать объяснение не только того, что делается, а с какой целью это делается. Комментарии важны всегда: будь то создание программа для себя, или с ней будут работать другие.
Комментарии игнорируются компилятором языка программирования, они имеют значение только для пользователя. В языке С++ имеется два вида комментариев: однострочные и многострочные.
Однострочный комментарий начинается с символов // (две косые черты). Всё, что записано после этих символов и до конца строки, считается комментарием. Например:
// Это текст комментария
Многострочный комментарий начинается парой символов /* (косая черта и звёздочка) и заканчивается символами */ (звёздочка и косая черта). Текст такого комментария может занимать одну или несколько строк. Всё, что находится между знаками /* и */ , считается комментарием. Например:
/* Это мой большой
многострочный комментарий */
2. Язык программирования Java
2.1 История возникновения языка программирования Java
Рождению языка Java предшествовала довольно интересная история. В 1990 году разработчик ПО компании SunMicrosystems Патрик Нотон понял, что ему надоело поддерживать сотни различных интерфейсов программ, используемых в компании, и сообщил исполнительному директору SunMicrosystems и своему другу Скотту МакНили о своем намерении перейти работать в компанию NeXT. МакНили, в свою очередь, попросил Нотона составить список причин своего недовольства и выдвинуть такое решение проблем, как если бы он был Богом и мог исполнить все, что угодно.
Нотон, хотя и не рассчитывал на то, что кто-то обратит внимание на его письмо, все же изложил свои претензии, беспощадно раскритиковав недостатки SunMicrosystems, в частности, разрабатываемую в тот момент архитектуру ПО NeWS. К удивлению Нотона, его письмо возымело успех: оно было разослано всем ведущим инженерам SunMicrosystems, которые не замедлили откликнуться и высказать горячую поддержку своему коллеге и одобрение его взглядов на ситуацию в SunMicrosystems. Обращение вызвало одобрение и у высшего руководства компании, а именно, у Билла Джоя, основателя SunMicrosystems, и Джеймса Гослинга, начальника Нотона.
В тот день, когда Нотон должен был уйти из компании, было принято решение о создании команды ведущих разработчиков с тем, чтобы они делали что угодно, но создали нечто необыкновенное.
Команда из шести человек, с кодовым названием Green, ушла в самовольное изгнание, погрузившись в исследования бытовых устройств, таких как NintendoGameBoys, устройств дистанционного управления. Команда Green пыталась найти средство, с помощью которого можно было бы установить взаимодействие между этими устройствами. Вскоре стало ясно, что такие электроприборы, как видеомагнитофоны, проигрыватели лазерных дисков, стереосистемы - все они были реализованы на разных процессорах. Это означало, что если производитель захочет добавить телевизору или видеомагнитофону дополнительные функции или характеристики, он будет зажат в рамках средств, зашитых в аппаратное обеспечение. Эта проблема, в сочетании с ограниченностью памяти микросхем этих устройств, выдвинула новый подход к программированию ПО, который должен был стать ведущим на рынке бытовой электроники.
Команда приступила к разработке нового объектно-ориентированного языка программирования, который был назван Oak (дуб), в честь дерева, росшего под окном Гослинга.
Вскоре компания SunMicrosystems преобразовала команду Green в компанию FirstPerson. Новая компания обладала интереснейшей концепцией, но не могла найти ей подходящего применения. После ряда неудач неожиданно ситуация для компании резко изменилась: был анонсирован Mosaic - так родился WorldWideWeb, с которого началось бурное развитие Internet.
Нотон предложил использовать Oak в создании Internet- приложений. Так Oak стал самостоятельным продуктом, вскоре был написан Oak-компилятор и Oak-браузер "WebRunner". В 1995 году компания SunMicrosystems приняла решение объявить о новом продукте, переименовав его в Java (единственное разумное объяснение названию - любовь программистов к кофе). Когда Java оказалась в руках Internet, стало необходимым запускать Java-аплеты - небольшие программы, загружаемые через Internet. WebRunner был переименован в HotJava и компания Netscape встала на поддержку Java-продуктов.
2.2 Понятие языка программирования Java
Java - язык программирования, который был разработан в компании SunMicrosystems. Приложения Java обычно компилируются в специальный байт-код, вследствие чего они имеют возможность работать на любой виртуальной Java-машине (JVM) независимо от самой компьютерной архитектуры. Дата официального выпуска языка -23 мая 1995 года. Сегодня технология Java предоставляет средства для превращения статических Web-страниц в интерактивные динамические документы, а также возможности создания распределенных (не зависящих от платформы) приложений.
Одним из создателей Java являлся Джеймс Гослинг. Он в возрасте 40 лет перешел в компанию SunMicrosystems в 1984 г. из исследовательского отдела IBM. Первая его задача, проект, - интересный с технической точки зрения, но не имевший коммерческого успеха оконный интерфейс NeWS. Он также написал GOSMACS - первую реализацию текстового редактора EMACS на языке С.
Благодаря деятельности в сфере бытовой электроники, у Гослинга и его коллег появилась возможность увидеть, какую ценность имеют для потребителя показатели - надежность, стоимость, соответствие стандартам и простота. Если у пользователей рабочих станций есть интерес к большой мощности, и они достаточно терпимы к высоким ценам, необходимости длительного обучения и присутствию различных ошибок, то обычным потребителям нужны дешевые, простые в своем применении и надежные устройства. Для того, чтобы иметь возможность успешной конкуренции на рынке бытовой электроники, фирмы должны воспринимать процессоры в роли обычного товара, который в любую минуту можно заменить другим, более дешевым, и предоставить возможность обеспечить обратную совместимость и соблюдение стандартов, которые установлены на устройства длительного использования, будь то тостер, или телевизор.
Java - это название не только самого языка, но и платформы для создания и исполнения приложений на основе данного языка. Изначально язык разрабатывался для программирования бытовых электронных устройств. Затем он был переименован в Java и стал применяться для написания клиентских приложений и серверного ПО.
У языка Java можно выделить несколько основных и самых значимых свойств.
Свойства языка Java:
- язык программирования объектно-ориентирован, оснащён богатой библиотекой классов и одновременно довольно прост для освоения.
- цикл разработки приложений сокращен при помощи того, что система построена на основе интерпретатора.
- приложение получается автоматически переносимым между множеством платформ и ОС.
- за счет встроенной системы сборки «мусора» программист освобождается от необходимости явного управления памятью.
- приложение легко сопровождается и модифицируется, т.к. модули могут быть загружены с сети.
- в приложения встроена система безопасности, не допускающая незаконного доступа и проникновения вирусов.
Джеймс Гослинг считал, что браузер является таким компонентом, который "создает рынок" для всех инструментальных средств, серверов и сред разработки. И именно язык Java во всех этих средствах играет центральную, главенствующую роль. До появления Java страница WWW по факту представляла собой листок бумаги. С появлением Java браузер задает структуру и резко расширяет возможности провайдеров содержания.
Если иметь инструментальные средства как Java и Web, мы можем получить изначально организованную систему- подчеркивает Гослинг. "Если вы создаете на языке Java клиентскую часть приложения, его запуск сводится всего лишь к переходу на соответствующую страницу. Инсталляция примитивна - просто поместите необходимое программное обеспечение на Web-сервер. И не возникнет никаких проблем с переносом, в силу того, что присутствует только одна версия приложения". Многие фирмы, по словам Гослинга, уже организуют БД в виде Web-страниц с применением интерфейса Common Gateway Interface (CGI) - специфического стандарта для работы внешних программ на сервере HTTP.
Программы на Java транслируются в байт-код, которые выполняет виртуальная машина Java (JVM) - программа, которая обрабатывает байтовый код и передает далее инструкции оборудованию в роли интерпретатора.
Достоинство подобного способа выполнения программ в том, что существует полная независимость байт-кода от ОС и оборудования, что дает возможность выполнять Java-приложения на любом устройстве, для которого существует соответствующая виртуальная машина. Следующей немаловажным достоинством технологии Java можно отметить полный контроль исполнения программы виртуальной машиной.