Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабзин диплом.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
8 Мб
Скачать
☆

2.3. Анализ и выбор Фреймворка

Так же, в соответствии с желанием заказчика, необходимо воспользоваться Фреймворком. Для выбора наиболее подходящего Фреймворка следует выявить самые популярные из них. В марте 2015г на Sitepoint4 был опубликован опрос популярности PHP Фреймворков.

Всего проголосовало 7800 человек. Следует заметить, что в опросе фигурировало два аспекта популярности: популярность Фреймворка на работе и популярность Фреймворка в личных разработках опрашиваемых. В обоих случаях Laravel занял первое место, следом за ним шли Symphony2 и Nette.

Рис.11. Статистика популярности Фреймворков на рабочих местах

Рис.12. Статистика популярности Фреймворков в личных разработках

В приведенной таблице голосов видно, что Laravel имеет подавляющее количество голосов. Следует провести тест производительности Фреймворков Laravel и Symfony. Сравнение будет проходить по следующим характеристикам:

  • Количество запросов в секунду

  • Ожидание ответа сервера, минимальное (мс)

  • Ожидание ответа сервера, среднее (мс)

  • Ожидание ответа сервера, максимальное (мс)

  • Скорость передачи (Кб/с)

Несмотря на то что Фреймворки запускались на встроенных PHP серверах, Laravel оказался примерно в 10 раз быстрее чем Symfony. Из этого маленького теста уже понятно, что, работая с Symfony вопрос с кешированием будет стоять особенно остро. При необходимости можно оптимизировать приложение, используя Http Cache, но в Laravel же, благодаря кешированию, можно будет достичь еще большей производительности.

Таблица №3. Тестирование производительности Laravel и Symfony

№ п/п

Характеристики

Laravel

Symfony

1

Время, затраченное на тесты (сек.)

0,958

8,438

2

Запросов в секунду

104,43

11,85

3

Ожидание ответа сервера, минимальное (мс)

22

101

4

Ожидание ответа сервера, среднее (мс)

475

4313

5

Ожидание ответа сервера, максиммальное (мс)

953

8434

6

Скорость передачи (Кб/с)

859,28

33,52

После проведения более глубокого анализа, было выявлено что каждый Фреймворк имеет свои особенности - Laravel хорошо подходит для небольших проектов, как в данном случае, а Symfony2 - отличный выбор для больших проектов и приложений уровня Enterprice. Фреймворком, используемым для разработки портала для электронного обучения абитуриентов будет Laravel версии 5.0.

2.4. Анализ и выбор языков программирования

Для решения задач с третьей по пятую, следует воспользоваться различными языками программирования. Любому веб-программисту известно, что для работы веб-приложения необходим серверный язык программирования. Серверные языки программирования работают на стороне сервера. Во взаимодействии с базами данных они поддерживают связь между пользователем и сервером. Получая запрос с адресом веб-документа от браузера, серверные программы связываются с базой данных. БД отдаёт информацию о веб-странице скриптам сервера, и те обработав её, отсылают для интерпретации браузеру клиента, который и выводит результат совместной работы на монитор. Достоинством серверных языков является их воистину безграничные возможности и то, что их работа не подвержена воздействию пользователей и скрыта от их взоров.

По данным Openstat на июнь 2014г распространенность серверных языков программирования составляет:

Рис.13. Статистика распространенности серверных языков программирования

Более наглядную картину можно получить объединением по базовым используемым технологиям:

Рис.14. Статистика распространенности по базовым технологиям

Рис.15. Статистика распространенности по базовым технологиям

(Диаграмма)

В связи с тем, что для работы Laravel 5.0 необходим php версии 5.4 – он и будет основным языком программирования.

Ниже составлена таблица задач и методов, обеспечивающих их решение.

Таблица №4. Методы решения поставленных задач

№ п/п

Задачи

Методы

1

Создать базу данных для информационного обеспечения веб-портала.

Воспользоваться СУБД MySQL.

2

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

Воспользоваться серверной платформой

Установить на сервер Фреймворк.

3

Разработать функции регистрации и авторизации.

Воспользоваться языками программирования.

4

Разработать календарь событий.

5

Разработать форум для пользователей.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]