Обоснование выбора оптимального варианта концепции предлагаемой АИС
Технология Java включает в себя клиентскую и серверную часть, а так же доступ к базам данных, поэтому наиболее корректно проводить сравнение технологии Java со связкой Apache/PHP/MySQL. PHP почти не уступает Java в гибкости и масштабируемости созданных приложений. Кроме того, использование Java для разработки достаточно простых приложений вряд ли оправдано, а при работе над серьезными задачами… Читать ещё >
Обоснование выбора оптимального варианта концепции предлагаемой АИС (реферат, курсовая, диплом, контрольная)
Для выбора концепции реализации сайта, проведем сравнительный анализ технологий, используемых при их реализации. Проведем сравнение PHP с другими языками программирования, его конкурентами — Perl, ASP.NET и Java.
PHP и Perl.
Язык Perl (Practical Extraction and Report Language — язык для практического извлечения данных и составления отчетов). Язык удобен для создания динамических Web — страниц, Perl проигрывает PHP в изяществе, притом, что PHP предлагает функциональность, аналогичную Perl при значительно меньшей избыточности и сравнительно простоте синтаксиса. Избыточность языка Perl связана с тем, что он разрабатывался для самых разнообразных приложений, что не могло не сказаться на его синтаксисе, в то время как PHP изначально разрабатывался для Интернета.
PHP и Java.
Технология Java включает в себя клиентскую и серверную часть, а так же доступ к базам данных, поэтому наиболее корректно проводить сравнение технологии Java со связкой Apache/PHP/MySQL. PHP почти не уступает Java в гибкости и масштабируемости созданных приложений. Кроме того, использование Java для разработки достаточно простых приложений вряд ли оправдано, а при работе над серьезными задачами обходится дороже. К числу недостатков можно отнести медленное выполнение, потребление большого количества памяти и сложность разработки Web — приложений по сравнению с PHP.
PHP и ASP.NET.
ASP (Active Server Pages) — язык сценариев от Microsoft. Если язык ASP значительно уступал РНР по многим параметрам, в первую очередь, по времени выполнения сценариев, то с появлением технологии ASP.NET ситуация изменилась. Основное достоинство ASP.NET заключается в возможности применения всей мощи интерфейса Windows для разработки Web-приложений. Это позволяет разрабатывать страницы со сложным интерфейсом, не заботясь о сохранении, шифровании и передаче переменных, используемых на динамических страницах. ASP.NET тесно интегрирован в новую технологию NET компании Microsoft. Главной особенностью разработки Web-приложений при помощи ASP.NET является возможность использовать любой язык программирования среды исполнения NET. Выполнение Web-приложений ASP.NET на серверах, работающих не под Windows, практически невозможно. Более того, если Web-приложение интенсивно использует компоненты NET, просмотр динамической страницы будет возможен только под Windows и только с помощью браузера Internet Explorer. Поэтому в смысле переносимости РНР, безусловно, отличается от ASP.NET в лучшую сторону. Другой крайне немаловажный довод в пользу РНР заключается в быстром исправлении обнаруженных ошибок. Еще одним плюсом РНР, особенно важным для начинающих, является то, что его легче использовать для построения Web-приложений. Таким образом, при выборе между ASP.NET и РНР следует исходить из стоящей перед вами задачи. Если в сети Интернет крупной корпорации большинство серверов и клиентских машин работают под управлением Windows, применение ASP.NET более чем оправдано. В то же время для разработки Web-сайта, размещаемого в Интернете, целесообразнее использовать РНР.
Язык PHP на сегодняшний день представляет:
поддержку платформ Win32 (9x/NT/2000/XP), UNIX, OS/2, QNX, MacOs, BeOS, OCX;
совместимость с серверами: Apache (Win32, UNIX), phttpd, fhttpd, thttpd, ISAPI (Zeus, IIS), NSAPI, модулем Roxen/Caudium, AOLServer;
поддержка технологий COM, XML, Java, CORBA, WDDX, Macromedia Flash;
развитая функциональность для работы с сетевыми соединениями;
поддержка свыше 20 баз данных и развитая функциональность для работы с ними;
возможность создания полноценных объектно-ориентированных приложений;
сравнительно простой синтаксис и удобство в практическом использовании;
бесплатность;
открытость кода, благодаря которой вы можете создавать собственные расширения языка.
Исходя из выбора языка, нам необходимо выбрать Web-сервер.
Хотя существует множество различных Web-серверов, около 90% всех сайтов, согласно недавним исследованиям Netcraft, работают всего на двух из них Apache и Internet Information Server (IIS). Оба эти сервера — тщательно проработанные продукты, обладающие не только очень длинным списком встроенных возможностей, но и процветающим «вторичным рынком» книг, дополнений, консультаций, провайдеров и т. д.
Web-сервер оценивается по целому ряду важнейших параметров:
эффективность: как быстро он отвечает на запрос;
масштабируемость: продолжает ли сервер работать надёжно, когда к нему одновременно обращаются много пользователей;
безопасность: совершает ли сервер только те операции, которые должен? Какие возможности он предлагает для аутентификации пользователей и шифрования потока обмена информацией? Делает ли его использование более уязвимыми соседние приложения или хосты;
работоспособность, какие у сервера режимы отказа и аварийные ситуации;
соответствие стандартам: поддерживает ли сервер соответствующие RFC;
гибкость: можно ли настроить сервер для принятия большого количества запросов или динамических страниц, требующих значительных вычислений, или сложной аутентификации;
требования к платформе, на каких платформах возможно использование сервера, предъявляет ли он особые требования к аппаратной платформе;
управляемость: легко ли установить и обслуживать сервер? Совместим ли он с организационными стандартами по ведению журналов, аудиту, оценке затрат и т. д.
Сервер Apache — один из самых популярных в мире, на нём построено около двух третей хостов в Интернете. Главное его достоинство — простое и в то же время универсальное конфигурирование, что позволяет создавать довольно сложные и большие серверы на его основе. Немаловажным является и тот фактор, что существуют варианты его реализации для всех распространенных операционных систем. Сервер Apache поддерживает язык PHP. На данный момент PHP используется на 52% из 14,5 миллионов сайтов, работающих под Apache. Поэтому выбор Web-сервера Apache будет оптимальным.
При выборе СУБД мы остановились на MySQL, так как это одна из самых популярных и самых распространенных в Интернете систем управления базами данных. Она не предназначена для работы с большими объемами информации, но ее применение идеально для Интернет сайтов, как небольших, так и достаточно крупных. MySQL отличатся хорошей скоростью работы, надежностью, гибкостью. Работа с ней, как правило, не вызывает больших трудностей. Поддержка сервера MySQL автоматически включается в поставку PHP. Немаловажным фактором является ее бесплатность. MySQL распространяется на условиях общей лицензии GNU (GPL, GNU Public License).
На основании проведенного анализа, можно сделать вывод, что оптимальной для реализации разрабатываемой системы, будет Концепция 1. Web — сайт будет реализован на языке программирования PHP, с использованием СУБД MySQL и сервера Apache.