Сравнение сред разработки
Изучив теорию современных технологий разработки сайтов и проведя сравнительный анализ, была выбрана технология динамического отображения сайта. Так как эта технология позволяет затрачивать на обслуживания сайта значительно меньше времени и хранение данных производится не в файлах как в статичной технологии, а в базе данных, что позволяет при критических ситуациях восстановить информацию сайта… Читать ещё >
Сравнение сред разработки (реферат, курсовая, диплом, контрольная)
РНР и Perl.
Язык Perl оказался удобным инструментом для создания динамических web-страниц. Большое распространение Perl получил потому, что был доступен на каждом web-сервере, поскольку практически все они работали под управлением Unix и альтернативой ему являлся лишь более сложный язык Си. Perl проигрывает РНР в изяществе, притом, что РНР предлагает функциональность, аналогичную Perl при значительном меньшей избыточности и сравнительной простоте синтаксиса. Избыточность языка Perlсвязана с тем, что он разрабатывался для самых разнообразных приложений, что не могло не сказаться на его синтаксисе, в то время как РНР изначально разрабатывался для интернета. По мнению очень многих пользователей, не знавших изначально не РНР, ни Perl, выучить РНР намного проще, (см. Таблица 1) [44].
Таблица 1. Таблица сравнений РНР и PERL.
PHP. | PERL. | |
1) чтение файла /dev/urandom файл открывается один раз, чтение происходит в цикле блоками размером по 1024 байта. | ||
0.6 Mb/sec. | 4 Mb/sec. | |
2) вывод статичного текста вцикле блоками по 1 Kb. | ||
9 Mb/sec. | 9 Mb/sec. | |
3) вывод информации из БД; один запрос, возвращающий большое количество результатов по 200−300 байт каждый; вывод результатов в цикле. | ||
1.5 Mb/sec. | 0.06 Mb/sec. | |
4) чтение мелких файлов (открытие файла размером примерно в 1 Kb, чтение и вывод его содержимого, закрытие) в цикле. | ||
2.5 Mb/sec. | 2.7 Mb/sec. | |
5) чтение содержимого большого файла. Открытие его один раз, и чтение вывод в цикле. | ||
4 Mb/sec. | 7 Mb/sec. | |
6) выполнение запросов к БД в цикле, выполняется в цикле запрос к БД, который возвращает 1 результат размером примерно 1 Kb и вывод его. | ||
1.14 Mb/sec. | 0.7 Mb/sec. | |
PHP и Java.
Различают язык Java и технологию Java. Язык Java представляет собой Си-подобный язык, который разрабатывался как «улучшенный C++». Технология Java включает в себя клиентскую и серверную часть, а также доступ к базам данных, по этому наиболее корректно проводить сравнение технологии Java со связкой Apache — РНР — Mysql. Технология Java Разрабатывалась как меж платформенная технология, позволяющая создавать web-приложения корпоративного масштаба. Основными достоинствами этой технологии являются межплатформенная переносимость и объектно-ориентированный язык, что позволяет создавать сложные и обменные приложения, к числу недостатков можно отнести медленное выполнение, потребление большого количество памяти и сложность разработки web-приложений по сравнению с ЩР. Между тем РНР почти не уступает Java в гибкости и масштабируемости созданных приложений. Кроме того использование Java для разработки достаточно простых приложений вряд ли оправданно, а при работе над серьезными задачами Java обходится дороже.
PНР и ASP.NET. [44].
Основное достоинство ASP.NET заключается в возможности применения всей мощи интерфейса Windows для разработки web-приложения. Это позволяет разрабатывать страницы со сложным интерфейсом, не заботясь о сохранении, шифровании и передачи переменных, используемых на динамических страницах. ASP.NET тесно интегрирован в новую технологию NET компании Microsoft. Главною особенностью разработки web-приложений при помощи ASP.NET является возможность использовать любой язык программирования среды исполнения NET. Это может быть как модифицированный вариант Visual Basic — Visual Basic.NET, так и новый язык С# или клон Java — J#. Более того, в рамках одного web-приложения могут быть реализованы несколько языков программирования. Все это позволяет объединять в рамках, одного проекта программистов, владеющих разными языками программирования. Код web-приложения на ASP.NET компилируется промежуточный язык MSIL (Microsoft Intermediate Language), иногда просто называемый IL. Аппаратно-независимый код на языке IL помещается в кэш web-сервера, для повышения производительности, по аналогии с байт кодом Java. Но в отличии от технологий Java, обеспечивающий платформенную независимость, NET обеспечивает независимость от языка разработки. Выполнение web-приложений ASP.NET на серверах, работающих не под Windows, практически не возможна. Более того, если web-приложение интенсивно использует компоненты NET, просмотр динамической страницы будет возможен только под Windows и только с помощью браузера Internet Explorer. По этому в смысле переносимости РНР, безусловно, отличается от ASP.NET в лучшую сторону. Другой не маловажный довод в пользу РНР заключается в быстром исправлении обнаруженных ошибок. Таким образом при выборе между ASP.NET и РНР следует исходить из стоящей перед Вами задачей если в сети Internet крупной корпораций большинство серверов и клиентских машин работают, под управлением Windows, применение ASP.NET более ем оправданно, в то же время для разработки web-сайта, размещаемого в интернете, целесообразней использовать РНР. (см. Таблица 2).
Таблица 2. Таблица сравнений языков РНР и ASP.NET.
РНР 4. | РНР 5. | ASP.NET. | ||
Цена. | бесплатно. | бесплатно. | бесплатно. | |
Цена платформы. | бесплатно. | бесплатно. | $$. | |
Скорость. | высокая. | высокая. | низкая. | |
Эффективность. | высокая. | высокая. | низкая. | |
Безопасность. | высокая. | высокая. | высокая. | |
Платформа (стабильность). | стабильная. | стабильная. | нестабильная (за счет IIS). | |
Платформа для работы. | любая. | любая. | Win32 (только на IIS). | |
Доступность исходников. | да. | да. | нет. | |
Обработка исключений. | нет. | да. | да. | |
Поддержка ООП. | слабо. | хорошо. | хорошо. | |
РНР и ColdFusion[44].
Пакет ColdFusion разработан фирмой Allaire и предназначен для быстрой разработки как интерактивных, так и динамических web-документов путем обработки информации, полученной из базы данных, минусом ColdFusion является достаточно низкая переносимость. РНР работает практически на всех платформах, a ColdFusion — только на четырех: Win32, Solaris, HP/UX и Linux. Кроме того, ColdFusion, также как и ASP, является коммерческой разработкой. ColdFusion достаточно мало распространен. По сравнению с РНР он более требователен к ресурсам. Плюсом ColdFusion является хорошая интегрированная среда разработки и, как следствие, более простые, чал в РНР языковые конструкции и более быстрое написание кода. Правда из-за такой высокоуровневости языка некоторые задачи на нем решаются сложнее. [44].
Таблица 3. Сравнение языков программирования.
Возможность. | Языки. | |||
Java. | Perl. | PHP. | ||
Императивный. | ||||
Объектно-ориентированный. | ||||
Функциональный. | ; | +/; | ||
Рефлексивный. | -/+. | +/; | ||
Обобщенное программирование. | ||||
Логический. | ; | ; | ; | |
Декларативный. | ; | -/+. | ||
Распределенный. | ; | ; | ; | |
Таблица 4. Условные обозначения.
Условные обозначения. | ||
Указанная возможность присутствует. | ||
; | Указанная возможность отсутствует. | |
+/; | Возможность поддерживается не полностью. | |
-/+. | Возможность поддерживается очень ограниченно. | |
Нет данных. | ||
X. | Постановка вопроса не применима к языку. | |
Изучив теорию современных технологий разработки сайтов и проведя сравнительный анализ, была выбрана технология динамического отображения сайта. Так как эта технология позволяет затрачивать на обслуживания сайта значительно меньше времени и хранение данных производится не в файлах как в статичной технологии, а в базе данных, что позволяет при критических ситуациях восстановить информацию сайта с минимальными затратами времени. Недаром она является передовой в разработке веб-сайтов и веб-приложений.
После анализа большинства распространенных сред разработки был выбран скриптовый язык программирования РНР. Так как этот язык был разработан специально для написания веб-приложений, в отличие от других сред разработки. Он широко используем, что позволяет без труда разместить веб-сайт, написанный на РНР на любом сервере (хостинге) в сети Internet. Также он бесплатен что позволяет разрабатывать веб-сайты без необходимости оплаты новых версий языка. Написанные на нем веб-приложения распространяются с открытым кодом (Open Source) что позволяет использовать уже готовые скрипты.