Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Обзор языков программирования и выбор инструментария






 

Как известно не существует такого языка программирования, который был бы лучше всех остальных. Превосходство какого-то одного языка программирования может выражаться только в контексте какой-либо определенной задачи. Но это совсем необязательно. Почти все задачи могут быть результативно решены с помощью всякого современного распространенного языка программирования. Нередко, избрание языка программирования и фреймворка зависит от того, какими познаниями владеют программисты, готовые разработать тот или иной проект. Чаще всего, здесь нет ничего плохого, вернее даже наоборот, если, допустим, посадить ASP.NET программистов на РНР проект, то в итоге результат может оказаться плачевным. (рисунок 2)

 

Рисунок 2. Популярные фреймворки и языки веб-программирования

 

Также, надо понимать различие между языком программирования и фреймворком. Язык программирования – это попросту кое-какой базовый синтаксис (вероятно со стандартными библиотеками), с его помощью можно создавать приложения. Фреймворк же дает возможность программисту использовать различные библиотеки, которые значительно упрощают разработку программ и сайтов. Отдельные языки и фреймворки выступают как неделимое целое (например, ASP.NET и JSP). Иные же языки могут быть использованы без фреймворка (РНР и Perl).

Независимо от того, какой язык программирования будет выбран, в основе любого сайта лежит язык гипертекстовой разметки –HTML. Его обязаны знать все веб-разработчики. Не будут лишними хотя бы базовые знания HTML и тем разработчикам, которые ничего сами не пишут, а применяют готовые решения (стандартные или заказные).

Если честно, одного языка HTML уже, в принципе, достаточно для того, чтобы разработать сайт. Чаще всего это статические сайты, которые не содержат обратной связи с пользователями. Обновления этих статических сайтов трудоеМБи. Для того чтобы придать сайту динамики, используют языки веб-программирования.

Прежде всего, языки веб-программирования можно разделить на два типа: клиентские и серверные. Соответственно, клиентские языки применяются при написании программ, исполняемых на стороне клиента (веб-браузер), а серверные используются для программ, реализовываемых на сервере.

Из многих клиентских языков веб-программирования следует выделить JavaScript, он, как и HTML, составляет основу многих веб-технологий, и умение писать программы на нем причисляется к базовым познаниям веб-разработчика.

Следующие популярные клиентские языки, а вернее фреймворки – этоAdobe Flash(язык ActionScript) и SilverLight(любые.NET языки). Adobe Flash используется веб-разработчиками крайне давно. Главное использование этой технологии – мультимедийный контент и реклама, электронные сайты, а также сервисы, игры онлайн. SilverLight – это технология, созданная компанией Microsoft и позиционируемая как замена Adobe Flash.

Серверные языки веб-программирования можно условно разделить, смотря на какой операционной системе они работают: Windows и *nix. Это деление в некоторой степени условно, потому что практически все известные языки и фреймворки ориентированы на обе ОС. Но, тем не менее, они нечасто используются на неродных ОС.

Если говорить про ОС Windows, то тут абсолютно господствует технологияASP.NET, разработанная компанией Microsoft. С ее помощью можно спроектировать сайты любой сложности – от самых простейших, которые состоят из нескольких страниц, до крайне сложных, обрабатывающих миллионы запросов в день (сайты Microsoft, разработанные на ASP.NET, являются одними из самых посещаемых).

Безусловно, одним из самых популярных языков веб-программирования является РНР. Главными его преимуществами являются: несложный синтаксис, высокое быстродействие, поддержка большинством хостингов.

Следующий известный язык веб-программирования на платформе Unix – язык Perl. Он имеет не простой запутанный синтаксис и никогда не определялся, как язык для веб-программирования.

JSP (Java Server Pages)– это часть технологии J2EE, определенная для создания сайтов при помощи языка Java. У JSP немало общего с ASP.NET и выбор между данными двумя технологиями нередко основывается на предпочтениях разработчиков, а не на каких-нибудь преимуществах или недостатках этих платформ.

Также сейчас высокую популярность приобрел язык Ruby и, в частности, фреймворк Ruby on Rails. При его помощи можно быстро создать сайт с требуемой функциональностью. Одним из основных недостатков Ruby является низкое быстродействие.

Надо отметить, что выбор языка веб-программирования для сайта неразрывно связан с выбором CMS сайта

При выполнении данной выпускной квалификационной работы будет использован следующий инструментарий:

– язык гипертекстовой разметки HTML;

– каскадные таблицы стилей CSS;

– текстовый редактор Notepad++6.7.8.2.

Итак, язык гипертекстовой разметки HTML – это один из самых популярных стандартных языков разметки документов в интернете. Довольно многие сайты создаются при помощи языка HTML. Язык HTML интерпретируется браузерами и отображается в удобной для человека форме – в виде документа.

Во многих случаях теги используются парами. Пара главным образом состоит из открывающего < имя_тега> и закрывающего < /имя_тега> тегов. С места, где встретился открывающий тег, начинается действие любого парного тега и заканчивается, соответственно, при встрече соответствующего закрывающего тега. Нередко пару, которая состоит из открывающего и закрывающего тегов, называют контейнером, а часть текста, стоящего между открывающим и закрывающим тегом, — элементом.

Главное достоинство языка HTML в том, что он легок в изучении, и владея им, можно в последующем без затруднений изучать другие языки. HTML оптимальным образом поддерживается и интерпретируется Интернет-проводниками. Он позволяет тонко подстроить под условия каждого конкретного браузера представление страниц.

В целом, язык HTML предоставляет следующие возможности:

– размещать web-документы, которые содержат заголовки, текст, таблицы, списки, фотографии и т.д.;

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

– создавать формы для передачи данных удаленным серверам;

– вводить непосредственно в документ видеоклипы и аудиоклипы, анимационные ролики и другие объекты [13, 14].

Каскадные таблицы стилей CSS приобрели популярность в конце 1996 года. Но, по крайней мере, до недавнего времени, не смотря на довольно долгое существование этой технологии, ее практическое использование для Web-дизайна ограничивалось управлением шрифтами и цветом.

Каскадные таблицы стилей CSS стали популярны в конце 1996 года. Но, по меньшей мере, до недавнего времени, не смотря на достаточно продолжительное существование этой технологии, ее утилитарное использование для Web-дизайна ограничивалось управлением шрифтами и цветом.

Это ограничение появилось из-за отсутствия совместимой поддержки каскадных таблиц стилей браузерами. Так как не все браузеры одинаково равно обрабатывали директивы языка CSS (если вообще обрабатывали), у дизайнеров не было возможности в полном объеме воспользоваться действительными преимуществами таблиц стилей. Вместо этого, ответственность за показ информации возлагалась на язык HTML.

Сегодня, когда поддержка языка CSS исполнена намного лучше, и, благодаря этому, можно воспользоваться разнообразием ценных возможностей языка, Web-дизайнеры переключаются от употребления языка HTML, как средства стилизации и реализации макетов страниц, к настоящему дизайну с использованием языка CSS.

Особенности каскадных таблиц стилей:

– Раздельное сохранение представления и документа разрешает стилизовать этот документ для разнообразных устройств, включая, монитор, принтер, проектор и также портативные устройства.

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

– Язык CSS разрешает управлять как одним, так и миллионами документов. Для внесения изменений потребуется модифицировать нужный стиль в одном CSS-файле, и эти изменения автоматически отразятся на всех объединенных документах. В языке HTML это невыполнимо.

– CSS-документы кэшируются. Это значит, что они помещаются в память браузера только единожды. При передвижении по сайту браузеру никогда не придется заново интерпретировать стили. В итоге получаются более связные переходы от страницы к странице, и происходит более быстрая загрузка страниц, что всегда представляет собой конечную цель.

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

Несомненно, что язык CSS дает множество возможностей.

Также, CSS применяется для задания цветов, шрифтов, расположения и других аспектов изображения документа. Главной целью создания CSS является деление содержимого (написанного на HTML или другом известном языке разметки) и представления документа (написанного на CSS). Данное разделение может повысить доступность документа, предоставить высокую гибкость и вероятность управления его представлением, а также снизить сложность и повтор в структурном содержимом. Кроме этого, CSS разрешает представлять один и тот же документ в разнообразных стилях или методах вывода, таких как экранное изображение, вывод на печать, чтение голосом.

Каскадные таблицы стилей (CSS) обрели невероятную популярность в последние годы, главным образом, благодаря обширно распространенной помощи браузерами большинства их директив [15].

Таблица стилей состоит из комплекта правил. Любое правило, в первую очередь, состоит из одного или нескольких селекторов, которые разделены запятыми, и набора определений. Блок определений при этом обрамляется фигурными скобками, и состоит из всевозможных свойств и их значений [16, 17].

Стандарт CSS устанавливает приоритеты, в ряде которых применяются определенные правила стилей, если для какого-нибудь элемента годятся свойства некоторых правил одновременно (или, в крайних случаях, в одном правиле есть одноименные свойства). Это и называется «каскадом», где для свойств распределяются приоритеты или «веса», что дает предсказуемые результаты [18].

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

– несколько видов дизайнов страницы для различных механизмов просмотра. К примеру, на экране дизайн будет рассчитан на немалую ширину, при печати меню не будет выводиться, а на ПК и мобильном телефоне меню будет следовать за содержимым;

– снижение времени для загрузки страниц сайта благодаря переносу правил представления информации в отдельный CSS-файл. В данном случае браузер загружает всего лишь структуру документа и данные, которые хранятся на странице, а представление данных загружается браузером только единожды;

– незамысловатость последующего видоизменения дизайна. Не надо исправлять каждую страницу, а лишь следует изменить CSS-файл;

– добавочные возможности оформления: благодаря CSS-верстке можно сделать набор текста, который прочий текст будет обтекать (например, для меню) или разработать так, чтобы меню было постоянно видно при просмотре страницы [19].

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

Существуют три способа применения стилей в документе HTML:

– встраивание: описание стиля можно встроить в различные дескрипторы (теги) HTML, для которых стиль имеет смысл, например: для объявления абзацев, заголовков, горизонтальных полос, якорей и ячеек таблицы;

– внедрение, обеспечивающее контроль над страницей HTML. Использование дескриптора < STYLE> в пределах раздела < HEAD> страницы позволяет детально описать атрибуты, применяемые ко всей странице стиля;

– связанные стили, называемые также внешними, являются развитием внедренных стилей. При этом используется тот же дескриптор STYLE, но все описания хранятся в отдельном файле (обычно с расширением css) [20].

Notepad++6.7.8.2 - новая версия бесплатного, удобного текстового редактора, построенная на системе UDL2 (User Defined Languge). Это авторская сборка, упакованная как портативное приложение, имеет все функции Notepad++, включая поддержку многих языков и обширную систему плагинов, и вы можете ее разместить на USB флэш-диске, IPod, и использовать на любом компьютере, не оставляя никакой личной информации позади.

Базируясь на мощном компоненте для редактирования Scintilla, Notepad++ написан на C++ с использованием чистого Win32 API и STL, что позволяет достичь максимальной скорости работы в сочетании с минимальным размером программы. Кроме того, пользователи могут задавать собственные правила подсветки и сворачивания для других языков.

Основные особенности программы:

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

2. WYSIWYG (при вводе текста получается то, что видно на экране).

3. Режим подсветки синтаксиса настраивается пользователем

4. Автоматическое завершение вводимого слова

5. Синхронная работа с разными документами

6. Одновременный просмотр нескольких документов

7. Поддержка постоянных выражений Поиска/Замены. Полная поддержка перетягивания фрагментов текста

8. Динамическое видоизменение окон просмотра

9. Машинальное определение состояния файла

10. Увеличение и уменьшение

11. Поддержка немалого количества языков

12. Заметки

13. Выделение скобок при исправлении текста

14. Запись макроса и его выполнение

Автоматический снимок сеанса и периодическое резервное копирования.
Если эта функция включена (включено по умолчанию), программа спрашивает пользователя сохранить ли несохраненный файл, когда он выходит из Notepad++, и при запуске Notepad++ восстанавливает несохраненный файл и несохраненный документ без названия последней сессии. Эта функция обеспечивает еще одно преимущество - периодическое резервное копирование несохраненных файлов, которая защищает ваши данные от сбоев компьютера или отключения питания.

Применяемая система UDL2 (User Defined Languge), не только позволяет удалить многие ограничения, но и добавляет множество новых возможностей / расширений, а также с UDL2 вы можете определить почти любой язык.

Ключевые особенности UDL2:

1. Добавляет больше групп ключевых слов (может быть определена большая подсветка синтаксиса): 3 сворачивающиеся группы, 8 групп ключевых слов, 2 группы комментариев, 1 определенный номер, 2 группы операторов, 8 наборов разделителей.

2. Поддерживаются составные (Multipart) ключевые слова (например: " еще, если" может быть определено как одно ключевое слово).

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

4. Значительно улучшилась определение номеров поддержки (поддерживаются префиксы, суффиксы, диапазоны и дополнительные символы).

5. Операторы и разделители могут состоять больше, чем из одного символа.

6. Те же символы могут быть применимы как комментарии и операторы.

7. Комментарии и разделители дают поддержку вложениям (даже друг другу).

8. Совершенствование комментариев включают в себя:
- Комментарий свернутый

- Комментарий с продолжением

- Комментарий начинается только в начале линии

9. В случае нескольких пар комментарий определено, что открытые символы комментариев соответствуют только с близким комментариями, имеющих символы того же порядка (для примера: /* C комментарий */, /+ D комментарий +/, но не /* смешанные комментарии +/).

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.