Программа для составления расписания уроков начальная школа. Проблема полной автоматизации при составлении школьного расписания. Бизнес-модель SaaS использования ПО

От автора: Очень часто при разработке веб-приложений, особенно крупных веб-проектов, необходимо использовать различные сторонние библиотеки. К примеру, это может быть php-фреймворк, либо шаблонизатор, либо движок форума, или все эти компоненты вместе. В данном уроке мы с Вами рассмотрим менеджер зависимостей Composer, при помощи которого можно легко скачать и установить необходимые библиотеки

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

Но что если одна из библиотек зависит по своему функционалу, еще от дополнительных библиотек, в этом случае их так же нужно скачивать и подключать. То есть при использовании нескольких библиотек возникают некоторые неудобства связанные с их установкой.

Поэтому в данном уроке мы с Вами рассмотрим менеджер зависимостей Composer, при помощи которого можно легко скачать и установить необходимые библиотеки.

Установка Composer

Composer – это менеджер зависимостей для интерпретатора языка PHP, если сказать проще – это скрипт, написанный на языке PHP, который скачивает необходимые Вам библиотеки, и автоматически формирует единственный специальный файл, подключив который, Вы подключите все скачанные библиотеки. При этом если необходимые Вам библиотеки зависят от некоторых дополнительных библиотек – они так же будут скачаны автоматически. Скачивание библиотек, осуществляется с официального репозитория пакетов packagist.org.

Как я сказал ранее Composer — это менеджер зависимостей для интерпретатора языка PHP, а значит устанавливается данный инструмент непосредственно в интерпретатор данного языка. При этом, сейчас мы с Вами говорим о интерпретаторе, который установлен на Вашем домашнем компьютере, потому как зачастую, на сервере (на реальном хостинге в интернете) у нас нет доступа к интерпретатору языка PHP. Да и это вовсе не нужно, так как в основном скрипты разрабатываются на домашнем компьютере и переносятся на хостинг по окончанию работы. Конечно, интерпретатор языка PHP у всех может быть установлен по разному, к примеру кто то использует программное обеспечение Denwer, кто то OpenServer, кто отдельную установку PHP, Apache, Mysql, но это совсем не важно так как процесс установки менеджера зависимостей Composer аналогичен для всех случаев.

Перед установкой, давайте ознакомимся с официальным сайтом менеджера зависимостей Composer — https://getcomposer.org/ :

Здесь на странице Documentation приведено подробное описание по установке и работе с данным менеджером (правда, на английском языке).

Composer можно установить на операционную систему Windows двумя способами:

вручную, используя командную строку;

автоматически, используя специальный файл, ссылку на который Вы найдете на странице документации, в разделе установки под ОС Windows.

В данном уроке мы с Вами рассмотрим ручной способ установки инструмента Composer. Сразу же хотел бы отметить, что Сomposer, представляет собой файл composer.phar, который обычно располагается в папке с интерпретатором языка PHP. Поэтому перед установкой желательно просмотреть данную папку, потому как, к примеру в программном обеспечении OpenServer (в модулях PHP), Composer уже установлен.

Итак, запустив веб-сервер, открываем командную строку (напомню, что для Windows 7 командную строку можно открыть, если в поиске меню Пуск ввести cmd), и переходим в папку, в которую установлен интерпретатор языка PHP. Для этого используется команда cd: cd путь к папке

Теперь в соответствии с документацией, необходимо выполнить следующую команду: php -r «readfile(‘https://getcomposer.org/installer’);» | php

Которая, выполнит PHP код readfile(‘https://getcomposer.org/installer’), то есть мы прочитаем удаленный файл. Здесь хотел бы отметить, что в Вашем интерпретаторе, языка PHP, должно быть подключено расширение php_openssl.dll, иначе команда не выполнится.

После выполнения команды мы видим сообщение о том, что установка успешно завершена. Проверить, действительно ли был установлен Composer, можно используя команду, которая покажет его версию: php composer.phar -v

Теперь для удобства работы с ним, давайте выполним еще одну команду: echo @php «%~dp0composer.phar» %*>composer.bat

Данная команда, создаст в папке интерпретатора языка PHP, специальный файл composer.bat, при помощи которого, можно обращаться к менеджеру зависимостей, используя только имя composer, и при этом, находясь в любой папке из под командной строки. Но при этом в системной переменной path, необходимо прописать путь к папке, в которую установлен интерпретатор языка PHP:

Установка необходимых библиотек

Для начала давайте условимся, что для нашего скрипта потребуются следующие библиотеки:

Теперь, необходимо в специальном файле composer.json (данный файл создаем в папке с разрабатываемым скриптом) описать, что вышеперечисленные библиотеки необходимы для работы будущего скрипта:

{ "require": { "slim/slim":"2.*", "twig/twig":"~1.0", "phpbb/phpbb": "3.1.3-RC2" } }

"require" : {

"slim/slim" : "2.*" ,

"twig/twig" : "~1.0" ,

"phpbb/phpbb" : "3.1.3-RC2"

Как Вы видите, данный файл должен содержать объект в виде json строки. У которого, в свойстве require, описаны те библиотеки, от которых зависит будущий скрипт. Причем, require – это в свою очередь так же объект, свойства которого и есть те библиотеки, которые необходимо скачать. Где имя свойства — это название библиотеки, а значение – это версия скачиваемой библиотеки. Причем название состоит из двух подстрок, разделенных /. Строка до разделителя – это имя поставщика, строка после – это название библиотеки.

Названия и версии библиотек, которые необходимо указывать в файле composer.json, приводятся на официальных сайтах, в разделе установка. К примеру, для шаблонизатора Twig, в документации, в разделе Installation, приведена строка, которую я вписал в файл composer.json:

После составления файла composer.json, открываем командную строку, переходим в папку, разрабатываемого скрипта, и выполняем команду: composer install

И сразу же запускается установка необходимых библиотек.

После установки, в папке разрабатываемого скрипта, мы найдем папку vendor, в которую были скачаны все необходимые библиотеки и их зависимости, а так же был сгенерирован файл autoload.php, подключив который Вы подключите все скачанные библиотеки. После этого можно работать с установленными библиотеками.

На этом данный урок завершен. Всего Вам доброго и удачного кодирования!

2014

Как установить Composer на OpenServer ?

Наверное наиболее часто задаваемым вопросом является использование и установка утилиты Composer. Это де-факто стандарт в области менеджеров зависимостей для PHP. При работе с ним можно не бояться об использовании старых библиотек, которые использует ваш проект, ведь Composer установит нужные библиотеки за вас! В этой статье я не буду рассматривать как использовать этот замечательный инструмент, но расскажу как настроить его взаимодействие с OpenServer.

Обычно, при попытки установить Composer на Windows с установленным и запущенным OpenServer"ом вызывает проблему: Composer не хочет устанавливаться по причине ошибки openssl, которая в вашем проекте выключена.Конечно же, при открытии php.ini через openserver вы обнаружите что соблюли все требования, однако Композер все равно будет ругаться.

Решить это можно довольно просто, всего в 3 шага:

  • Шаг 1 - устанавливаем нужные нам версию PHP и Apache в настройках openserver"а.
    Помните! Версия должна быть не ниже PHP 5.3.2!
  • Шаг 2 - В OpenServer открываем: Дополнительно -> Конфигурация -> PHP .....
    Проверяем наличие раскомментированного extension=php_openssl.dll
  • Шаг 3 - Включаем Консоль OpenServer"a: Дополнительно -> Консоль.
    Коммандами консоли windows переходим в папку используемого php. Я использую php-5.5.6 и моя команда выглядит так: cd modules/php/PHP-5.5.6/

    Затем выполняем комманду:

    Php -r "readfile("https://getcomposer.org/installer");" | php

    После чего, если все успешно вы увидите надпись:

    All settings correct for using Composer Downloading... Composer succesfully installed to: /Composer.phar User it: php composer.phar

Готово! Composer установился и набрав комманду:

Php composer.phar -V

Вы должны увидеть запись подобного рода:

Composer version

Echo @php "%~dp0composer.phar" %*>composer.bat

Она создаст.bat файл и в дальнейшем можно будет работать без указания php composer.phar, просто указывая composer Т.е. команда проверки версии (которая была выше) будет выглядеть так:

Composer -V

Что согласитесь гораздо удобнее.


Меня зовут Андрей Николаев , я разработчик-фрилансер с более чем четырехлетним опытом работы в сфере веб-технологий. Последнее время занимаюсь разработкой и поддержкой lowload и midload проектов, разработкой веб-сайтов на платформе 1С-Битрикс, Yii, Laravel . Предоставляю услуги как разработчика сайта, так и консультанта , а при необходимости и менеджера проекта со стороны заказчика.

Обо мне

Имеется восемь основных модификаций программы для различных учебных заведений:
. AVTOR School - для сpедних общеобразовательных школ, лицеев и гимназий;
. AVTOR College - для колледжей, техникумов и профессиональных училищ;
. AVTOR Art College - для училищ искусства и культуры;
. AVTOR High School - для вузов (очная форма обучения);
. AVTOR High School Semestric - для вузов (заочная форма обучения);
. AVTOR M High School Semestric - для военных вузов;
. AVTOR Educational Centers - для учебных центров, УПК и ИПК;
. AVTOR High Shool Pro - для вузов с несколькими удаленными учебными корпусами с учетом времени переезда между ними (очная и заочная формы обучения, сетевая версия).

История создания и развития системы.
. Первая версия программы АВТОР-2 (под MS DOS) была разработана научным сотрудником РГУ Игорем Губенко в апреле 1993 г. Программа изначально предназначалась для составления расписаний в многопрофильном лицее при РГУ с усиленным изучением иностранного языка, информатики и множеством специальных предметов (где занятия разделяются на 2-4 подгруппы и могут объединяться в потоки). Уже первая версия программы позволяла строить корректные расписания.
. Затем программа прошла испытание еще в нескольких школах г. Ростова-на-Дону. Был учтен опыт многих завучей и специфика расписаний различных школ. Программа была существенно усовершенствована и внедрена за 2 года более чем в десяти школах, лицеях и гимназиях.
. К 1996 году автору удалось разработать уникальный алгоритм автоматического построения и оптимизации расписаний, позволивший существенно усилить мощность программы. В том же году выходит первая версия АВТОР-2 для колледжей и для небольшого вуза.
. В 1997-98 гг. автор разрабатывает и успешно внедряет первую версию программы для большого вуза с несколькими учебными корпусами (РГЭУ "РИНХ").
. В 2000 году выходит первая WIN?версия программы AVTOR-2000 для всех видов учебных заведений.
. В 2001 году выпускается версия программы с интерфейсом на трех языках: русском, украинском и английском.
. В 2001 году внедрена в эксплуатацию первая вузовская версия для заочной формы обучения.
. В 2002 году появляется сетевая версия программы для ВУЗа с несколькими рабочими местами и общей базой данных по аудиториям.
. В 2003 году AVTOR-2003 успешно интегрирован в единый пакет с ППП "Plany" (ЮРГУЭС), что позволило автоматизировать ввод базы данных в программу и построить полное расписание этого ВУЗа за 2 часа! В ЮРГУЭС (г.Шахты) 7 учебных корпусов, два из них - далеко расположены. Ранее это же расписание составлялось двумя методистами вручную за 2-3 месяца.
. В 2004 году разработана версия программы AVTOR для военных вузов.
. В 2005 году вышла версия AVTOR для училищ культуры и искусств, а также - для учебных центров.


Клиенты.

В настоящее время программу AVTOR успешно используют более трехсот учебных заведений России, Украины, Белоруссии, Прибалтики и Казахстана. Среди них: Донская Реальная гимназия (СОШ №62), Классический Лицей при РГУ, СОШ №104, №38, №67, №81, №52, №92, №27, №46, №69, №83 (Ростов-на-Дону), СОШ №297, №1117 (Москва), СОШ №315, №17, Гимназия Восточных языков (Киев), СОШ №44 (Запорожье), Тихорецкий техникум ж/д транспорта, Белоярский педколледж, Ростовский Машиностроительный колледж, РГЭУ "РИНХ", ИУБиП, СКАГС, РГАСХМ, РГСУ (Ростов-на-Дону), ЮРГУЭС (Шахты), РГАУ им.Тимирязева (Москва), МУ МВД России (Москва), Иркутский гос.университет, Институт иностранных языков УрГПУ, УрГУ (Екатеринбург), СГСЭУ (Саратов), а также десятки других школ, лицеев, гимназий, колледжей и вузов.

Технические характеристики.
Время работы программы зависит от размерности учебного заведения и мощности компьютера. Полный расчет и оптимизация расписания школы среднего размера со сложными исходными данными (40 классов, 80 преподавателей, из них более 10 совместителей; две смены; дефицит аудиторий) идет около 2-3 минут на компьютере типа Celeron-2000.

AVTOR позволяет:

    строить расписание без "ок он " у классов (учебных групп);

    оптимизировать в расписании "окна" преподавателей;

    учитывать требуемый диапазон дней/часов для классов, для преподавателей и для аудиторий;

    учитывать хаpактеp pаботы и пожелания как штатных сотpудников, так и совместителей-почасовиков;

    оптимально pазмещать занятия по кабинетам (аудиториям) с учетом особенностей классов, предметов, приоритетов пpеподавателей и вместимости кабинетов;

    вводить расписание звонков ;

    устанавливать время перехода (пере e зда) между учебными корпусами;

    оптимизировать количество переходов из кабинета в кабине т , и из корпуса в корпус;

    легко соединять любые классы (учебные групп) в потоки пpи пpоведении любых занятий;

    pазделять классы (учебные группы) пpи пpоведении занятий по иностранному языку, физической культуре, тpуду, информатике (и любым другим предметам) на любое количество подгрупп (до десяти!);

    вводить комбинированные уроки для подгрупп (типа "иностранный/информатика") по любым предметам;

    вводить (помимо основных пpедметов) спецкуpсы и факультативы;

    оптимизировать равномерность и трудоемкость расписания;

    легко и быстро вводить и корректировать исходные данные;

    иметь любое количество вариантов расписаний;

    автоматически преобразовывать расписания при изменении базы данных;

    легко сохранять в архивах, копировать и пересылать по E - mail полные базы данных и варианты расписаний (объм архива полной базы расписания средней школы - 10-30 K , большого ВУЗа - 50-70 K );

    быстро вносить любые необходимые корректировки в расписание;

    находить замены временно отсутствующих преподавателей;

    автоматически контролировать расписание, исключая любые "накладки" и противоречия;

    выводить расписания в виде удобных и наглядных документов: текстовых, Word , HTML , а также файлов dBase и книг Excel ;

    выставлять готовые расписания в локальной сети и на Интернет-страницах для общего доступа.

Отличие от аналогов.
Сравнительный анализ работы программы AVTOR и программ других разработчиков неоднократно проводился специалистами различных учебных заведений. Результаты исследований опубликованы на известных Сайтах в Интернете, а также в докладах на конференциях и мастер-классах. Сделаны выводы, что AVTOR имеет самый мощный алгоритм автоматического составления и оптимизации расписаний: работая в 10-20 раз быстрее аналогов, программа строит более качественные расписания по многим критериям. Например, количество "окон" в расписании преподавателей в 2-3 раза меньше, чем при использовании других программ.
AVTOR - программа с уникальными возможностями. Основные преимущества по сравнению с аналогичными программами СНГ:
. быстpодействие, компактность системных файлов и возможность работы в очень больших учебных заведения со сложными расписаниями;
. высокий уровень автоматизации (размещает 100% возможных занятий);
. высокая производительность: c истема позволяет в течение одного сеанса pаботы создать новое расписание, а затем быстро коppектиpовать, сохpанять, pаспечатывать pазличные ваpианты pасписаний, модифицируя их пpи необходимости в течение всего учебного года;
. мощный автоматизированный РЕДАКТОР РАСПИСАHИЙ, который позволяет легко выполнять ЛЮБЫЕ действия с расписанием (добавление, удаление, перестановка занятий, расчет и оптимизация расписания, смена кабинетов, замена преподавателей и т.д.). При этом программа наглядно и удобно подсказывает различные варианты перестановок (изменений) расписания и сравнивает их качество;
. наличие подробной статистики и объективной оценки качества любого варианта расписания;
. возможность поддержки любого национального языка (по желанию клиента).

Адаптация и настройка программы.
По желанию заказчика AVTOR модифициpуется и настраивается под условия конкретного учебного заведения (с учетом специфики учебного процесса, режима работы, формы документов и т.п.).



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: