Автор24

Информация о работе

Подробнее о работе

Страница работы

Разработка системы планировщика заданий на примере реализации задачи периодического построения отчетов

  • 37 страниц
  • 2018 год
  • 24 просмотра
  • 0 покупок
Автор работы

ksfei121

В основном сосредоточен на продажу готовых своих личных работ по символическим ценам.

850 ₽

Работа будет доступна в твоём личном кабинете после покупки

Гарантия сервиса Автор24

Уникальность не ниже 50%

Фрагменты работ

ВВЕДЕНИЕ 3
1. ОБЗОР 5
1.1 Обзор аналогов 5
1.2 Классификация систем 8
1.3 Пример использования в программных продуктах… 10
2. ТЕХНОЛОГИИ 11
3. АНАЛИЗ 16
4. РЕЗУЛЬТАТ РАБОТЫ 22
4.1 Проектирование… 22
4.2 Компонента “Memory”… 23
4.3 Адаптеры… 25
4.4 Компонента “Deligate”… 28
4.5 Компонента “Consumer”… 29
ГЛОССАРИЙ 31
ЗАКЛЮЧЕНИЕ 34
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 36
ПРИЛОЖЕНИЕ 37

1.1 Обзор аналогов
Осознание необходимости создания системы выполнения периодических заданий обоснованно увеличивающимся количеством продуктов, решающих проблемы в направление расписаний, и исследований, производимых в данной области.
Выполнение заданий – это параметризуемый процесс. Ряд программ имеют функциональность благодаря которой можно задать параметры, изменяющие поведение системы при выполнении задач.
Разработчики продукта Microsoft создали модуль под названием cron[8] (планировщик задач) - программное обеспечение, часто называемое сервисом операционной системы, производящее запуск программ в зависимости от различных параметров, например:
1. Наступление определенного времени

2. Переход системы в некоторое состояние (бездействие, режим ожидания)
3. Вызов выполнения администратором операционной системы

В планировщике имеются некоторые настройки.
...

1.2 Классификация систем
Существуют несколько классификаций систем периодического выполнение заданий:
1. По реализации

2. По параметризации

Классификация по реализации представляет из себя разделение на платформы для которых созданы решения. Примером платформ является: дополнения для фреймворков, консольные приложения, браузерные решения. Второй классификацией является разделения реализаций по
1. Реализация параметризируемых заданий

2. Реализация программных единоразовых задач

3. Реализация программных периодических задач

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

1.3 Пример использования в программных продуктах
Youtrack - Информационная система (dashboard), разработанная для помощи, как командам разработчиков, так и менеджерам проектов. В представленной программе существуют 17 разных генерируемых отчетов. Они делятся на отчеты о ходе работ и отчеты о состоянии проекта.
Планировщик задач Windows – в версиях ОС Windows до XP включительно представленные сервис планировался использовать, для операций совершаемых конечным пользователем. Начиная с Windows Vista данное программное обеспечение широко используется самой ОС для администрирования устройства (дефрагментации разделов жёсткого диска, тестирования компонентов, индексирования файлов и т. д.). Параллельно для Windows создан и независимый планировщик NnCron.
Теоретическая и практическая значимость проблем периодического выполнения параметризируемых задач и определили выбор темы диплома, его цель и задачи.
2.
...

2. ТЕХНОЛОГИИ

Для создания приложения использовались такие технологий как:

1. PHP 5.6

2. NGINX

3. Symfony

4. VueJs

5. RabbitMQ

6. Composer

PHP - это распространенный язык программирования не имеющий определенного назначения, с открытым исходным кодом. Архитектура PHP создана специальным образом для разработки продукта любого предназначения. PHP может удовлетворить потребности программистов любого уровня. PHP поддерживает несколько режимов работы:
1. FCGI

2. CLI

FCGI - общий интерфейс шлюза, стандарт, описывающий, каким образом веб-сервер, в нашем случае nginx должен взаимодействовать с программами (скриптами), как веб-сервер должен передавать параметры HTTP-запроса, как должны отдавать результат своей работы веб-серверу. Программу работающую с веб-сервером по протоколу CGI обычно называют шлюзом, на 5 рисунке представлена схема взаимодействия в FCGI режиме.
...

4.1 Проектирование
Перед началом разработки программного продукта была разработана архитектура удовлетворяющая следующий критериям[7]:
1. Гибкость системы – необходимо, чтобы часть разрабатываемого программного продукта можно было изменить, дополнить без особых усилий. Чем быстрее и удобнее можно внести изменения в существующий функционал, чем меньше проблеми ошибок это вызовет - тем гибче и система.
2. Расширяемость системы - возможность добавлять в программный продукт новый функционал, не изменяя ее основной структуры.
3. Тестируемость - код, который в большей степени склонен к тестированию, содержит меньше ошибок и стабильнее работать.
4. Возможность повторного использования – возможность использования, фрагментов программы повторно в других системах.
Рисунок 5 – Схема взаимодействия

Система разработанная в рамках данной дипломной работы состоит из нескольких подсистем, в дальнейшим они будут называться компонентами.
...

4.2 Компонента “Memory”
Компонента “Memory” создана для хранения задач. При разработке данной части программного продукта был выявлен набор свойств задач, использующихся в схожих по назначению системах:
1. Дата последнего запуска(runDate)

2. Время между запусками задач(cycleTime)

3. Дата первоначального запуска(date)

4. идентификатор задачи(identificator)

5. консольная команда(command)

6. опции запускаемой команды(options)

Взаимодействие различных классов внутри компоненты первоначально описалось на уровне интерфейсов[1]. Каждый из интерфейсов имеет свой уровень ответственности. Компонента состоит из основной части, интерфейс которой называется TaskMemory, предназначающийся для взаимодействия с задачами, и части для ее конфигурации, интерфейс которой называется TaskMemoryConfig. В реализации интерфейса TaskMemory существуют такие методы как:
1.
...

4.3 Адаптеры
В реализованом программном продукте процесс формирования задач
может осуществляться тремя способами:

1. Используя адаптер

2. Используя аннотацию

3. Используя командную строку

При разработке, в определенный момент времени может понадобиться формирование задач в ходе выполнения кода, для этого была разработана библиотека взаимодействия с компонентой “Memory” под названием “TaskMemoryPHPImpl”. Так как взаимодействие с “Momry” производиться через интерфейс командной строки, то была реализована сериализация обьекта Task, из библиотеки “CommandBuilder” , в строковое представление. К примеру для сохранения задач используя командную строку необходимо выполнить php taskMemory.php -m="save" -i="test" -t="120" -d="1527173011"
-c="php /some/path/script.php -f -flag=test". А для сохранение вышесказанной задачи из программного кода необходимо сформировать обьект Task и передать его в метод save библиотеки “TaskMemoryPHPImpl”.
...

4.4 Компонента “Deligate”
После того как задачи были добавлены в хранилище, необходимо инициализировать их запуск. Для этого была разработана компонента “Deligate“, которая использует RabbitMQ. Главным плюсом использования посредника сообщений, как RabbitMQ[9], является - отправитель, посредник и получатель могут быть на разных физических/виртуальных машинах, которые могут быть даже разделены локализационно.
Инициализация запуска происходит седующим образом:

1. Происходит запрос в “Memory“ для получения списка всех задач.

2. Отсеивание тех задач , которые необходимо запустить

3. Добавление задачи в RabbitMQ

4. Посылается запрос на обновление информации о задаче в хранилище или ее удаление(если в настройках задачи не задана периодичность).

Рисунок 10 – Результата работы “Deligate”

На 10 рисунке показан результат деятельности скрипта “Deligate”. В административной панели RabbitMQ можно увидеть, что сообшение успешно добавлено в очередь.
...

ГЛОССАРИЙ

Архитектура системы
Принципиальная организация системы, воплощенная в её элементах, их взаимоотношениях друг с другом и со средой, а также принципы, направляющие её проектирование.
Аннотация

Аннотации используются для анализа кода, компиляции или выполнения. Аннотируемы пакеты, классы, методы, переменные и параметры. Выглядит как @ИмяАннотации , предваряющее определение переменной, параметра, метода, класса, пакета.
Бандл

Бандл по своему смыслу близок к понятию плагина, но с важным отличием: весь функционал в симфони предоставляется бандлами (видимо подразумевается что "функции ядра", как таковые не доступны прикладному программисту, т.е. ядро лишь руководит бандлами, напр., их загрузкой).
Веб сервер

Веб-сервер включает в себя несколько компонентов, которые контролируют доступ веб-пользователей к размещенным на сервере файлам, как минимум
— это HTTP-сервер.
...

ЗАКЛЮЧЕНИЕ

Тема автоматизации выполнения повседневных или единоразовых задач обслуживания на компьютере становится, с течением времени, всё более актуальной. Чем больше функций разрабатывается в определенном программной продукте, тем больше выявляется задач по обслуживанию. Но компьютер - на то он и машина, чтобы брать наиболее рутинную работу на себя, оставляя для человека лишь разрешенные действия. Функциональность периодического выполнение заданий является неотьемлемой частью систем любого размера. В рамках данной выпускной квалифицированной работы были выявлены и проанализированы системы имеющие частичную функциональность периодического выполнение заданий. Проанализированы такие программные продукты как :
1. Cron

2. Scheduled

3. RabbitMQ

4. JMSJobQueueBundle

Так же был приведен пример применения периодического выполнения заданий:
1. Youtrack

2.
...

1. Денис Колисниченко. PHP и MySQL. Разработка Web-приложений - М.: ПитерСПб 2017. - 814 c.
2. Информационный блок для работы на занятии [Электронный ресурс] - https://www.metod-kopilka.ru/page-4-1-13-9.html
3. Кетов Дмитрий Владимирович. Внутреннее устройство операционной системы Linux. – М.: Paiter, 2017 . – 428 с.
4. Крейг Уоллс Spring в действии. – М.: ПитерСПб, 2013 – 752 с.

5. Фримен Э., Робсон Э. Head First. Паттерны проектирования. Обновленное юбилейное издание - М.: ПитерСПб, 2018 . - 656 с.
6. Линн Бейли, Майкл Моррисон. Head First PHP & MySQL: A Brain- Friendly Guide - М.: ПитерСПб, 2008. - 774 c.
7. Мэтт Зандстра. PHP Objects, Patterns, and Practice, Second Edition - М.: Zend 2014. 1-е изд. - 576 с.
8. Cron , систематический запуск задач [Электронный ресурс] - http://help.ubuntu.ru/wiki/cron
9. RabitMQ очереди выполнения задач [Электронный ресурс] https://www.cloudamqp.com/blog/2017-12-29-part1-rabbitmq-best- practice.html
10. Linux (CentOS/Debian). Level 1. Administration and security fundamentals (администрирование unix систем)

Форма заказа новой работы

Не подошла эта работа?

Закажи новую работу, сделанную по твоим требованиям

Согласен с условиями политики конфиденциальности и  пользовательского соглашения

Фрагменты работ

ВВЕДЕНИЕ 3
1. ОБЗОР 5
1.1 Обзор аналогов 5
1.2 Классификация систем 8
1.3 Пример использования в программных продуктах… 10
2. ТЕХНОЛОГИИ 11
3. АНАЛИЗ 16
4. РЕЗУЛЬТАТ РАБОТЫ 22
4.1 Проектирование… 22
4.2 Компонента “Memory”… 23
4.3 Адаптеры… 25
4.4 Компонента “Deligate”… 28
4.5 Компонента “Consumer”… 29
ГЛОССАРИЙ 31
ЗАКЛЮЧЕНИЕ 34
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 36
ПРИЛОЖЕНИЕ 37

1.1 Обзор аналогов
Осознание необходимости создания системы выполнения периодических заданий обоснованно увеличивающимся количеством продуктов, решающих проблемы в направление расписаний, и исследований, производимых в данной области.
Выполнение заданий – это параметризуемый процесс. Ряд программ имеют функциональность благодаря которой можно задать параметры, изменяющие поведение системы при выполнении задач.
Разработчики продукта Microsoft создали модуль под названием cron[8] (планировщик задач) - программное обеспечение, часто называемое сервисом операционной системы, производящее запуск программ в зависимости от различных параметров, например:
1. Наступление определенного времени

2. Переход системы в некоторое состояние (бездействие, режим ожидания)
3. Вызов выполнения администратором операционной системы

В планировщике имеются некоторые настройки.
...

1.2 Классификация систем
Существуют несколько классификаций систем периодического выполнение заданий:
1. По реализации

2. По параметризации

Классификация по реализации представляет из себя разделение на платформы для которых созданы решения. Примером платформ является: дополнения для фреймворков, консольные приложения, браузерные решения. Второй классификацией является разделения реализаций по
1. Реализация параметризируемых заданий

2. Реализация программных единоразовых задач

3. Реализация программных периодических задач

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

1.3 Пример использования в программных продуктах
Youtrack - Информационная система (dashboard), разработанная для помощи, как командам разработчиков, так и менеджерам проектов. В представленной программе существуют 17 разных генерируемых отчетов. Они делятся на отчеты о ходе работ и отчеты о состоянии проекта.
Планировщик задач Windows – в версиях ОС Windows до XP включительно представленные сервис планировался использовать, для операций совершаемых конечным пользователем. Начиная с Windows Vista данное программное обеспечение широко используется самой ОС для администрирования устройства (дефрагментации разделов жёсткого диска, тестирования компонентов, индексирования файлов и т. д.). Параллельно для Windows создан и независимый планировщик NnCron.
Теоретическая и практическая значимость проблем периодического выполнения параметризируемых задач и определили выбор темы диплома, его цель и задачи.
2.
...

2. ТЕХНОЛОГИИ

Для создания приложения использовались такие технологий как:

1. PHP 5.6

2. NGINX

3. Symfony

4. VueJs

5. RabbitMQ

6. Composer

PHP - это распространенный язык программирования не имеющий определенного назначения, с открытым исходным кодом. Архитектура PHP создана специальным образом для разработки продукта любого предназначения. PHP может удовлетворить потребности программистов любого уровня. PHP поддерживает несколько режимов работы:
1. FCGI

2. CLI

FCGI - общий интерфейс шлюза, стандарт, описывающий, каким образом веб-сервер, в нашем случае nginx должен взаимодействовать с программами (скриптами), как веб-сервер должен передавать параметры HTTP-запроса, как должны отдавать результат своей работы веб-серверу. Программу работающую с веб-сервером по протоколу CGI обычно называют шлюзом, на 5 рисунке представлена схема взаимодействия в FCGI режиме.
...

4.1 Проектирование
Перед началом разработки программного продукта была разработана архитектура удовлетворяющая следующий критериям[7]:
1. Гибкость системы – необходимо, чтобы часть разрабатываемого программного продукта можно было изменить, дополнить без особых усилий. Чем быстрее и удобнее можно внести изменения в существующий функционал, чем меньше проблеми ошибок это вызовет - тем гибче и система.
2. Расширяемость системы - возможность добавлять в программный продукт новый функционал, не изменяя ее основной структуры.
3. Тестируемость - код, который в большей степени склонен к тестированию, содержит меньше ошибок и стабильнее работать.
4. Возможность повторного использования – возможность использования, фрагментов программы повторно в других системах.
Рисунок 5 – Схема взаимодействия

Система разработанная в рамках данной дипломной работы состоит из нескольких подсистем, в дальнейшим они будут называться компонентами.
...

4.2 Компонента “Memory”
Компонента “Memory” создана для хранения задач. При разработке данной части программного продукта был выявлен набор свойств задач, использующихся в схожих по назначению системах:
1. Дата последнего запуска(runDate)

2. Время между запусками задач(cycleTime)

3. Дата первоначального запуска(date)

4. идентификатор задачи(identificator)

5. консольная команда(command)

6. опции запускаемой команды(options)

Взаимодействие различных классов внутри компоненты первоначально описалось на уровне интерфейсов[1]. Каждый из интерфейсов имеет свой уровень ответственности. Компонента состоит из основной части, интерфейс которой называется TaskMemory, предназначающийся для взаимодействия с задачами, и части для ее конфигурации, интерфейс которой называется TaskMemoryConfig. В реализации интерфейса TaskMemory существуют такие методы как:
1.
...

4.3 Адаптеры
В реализованом программном продукте процесс формирования задач
может осуществляться тремя способами:

1. Используя адаптер

2. Используя аннотацию

3. Используя командную строку

При разработке, в определенный момент времени может понадобиться формирование задач в ходе выполнения кода, для этого была разработана библиотека взаимодействия с компонентой “Memory” под названием “TaskMemoryPHPImpl”. Так как взаимодействие с “Momry” производиться через интерфейс командной строки, то была реализована сериализация обьекта Task, из библиотеки “CommandBuilder” , в строковое представление. К примеру для сохранения задач используя командную строку необходимо выполнить php taskMemory.php -m="save" -i="test" -t="120" -d="1527173011"
-c="php /some/path/script.php -f -flag=test". А для сохранение вышесказанной задачи из программного кода необходимо сформировать обьект Task и передать его в метод save библиотеки “TaskMemoryPHPImpl”.
...

4.4 Компонента “Deligate”
После того как задачи были добавлены в хранилище, необходимо инициализировать их запуск. Для этого была разработана компонента “Deligate“, которая использует RabbitMQ. Главным плюсом использования посредника сообщений, как RabbitMQ[9], является - отправитель, посредник и получатель могут быть на разных физических/виртуальных машинах, которые могут быть даже разделены локализационно.
Инициализация запуска происходит седующим образом:

1. Происходит запрос в “Memory“ для получения списка всех задач.

2. Отсеивание тех задач , которые необходимо запустить

3. Добавление задачи в RabbitMQ

4. Посылается запрос на обновление информации о задаче в хранилище или ее удаление(если в настройках задачи не задана периодичность).

Рисунок 10 – Результата работы “Deligate”

На 10 рисунке показан результат деятельности скрипта “Deligate”. В административной панели RabbitMQ можно увидеть, что сообшение успешно добавлено в очередь.
...

ГЛОССАРИЙ

Архитектура системы
Принципиальная организация системы, воплощенная в её элементах, их взаимоотношениях друг с другом и со средой, а также принципы, направляющие её проектирование.
Аннотация

Аннотации используются для анализа кода, компиляции или выполнения. Аннотируемы пакеты, классы, методы, переменные и параметры. Выглядит как @ИмяАннотации , предваряющее определение переменной, параметра, метода, класса, пакета.
Бандл

Бандл по своему смыслу близок к понятию плагина, но с важным отличием: весь функционал в симфони предоставляется бандлами (видимо подразумевается что "функции ядра", как таковые не доступны прикладному программисту, т.е. ядро лишь руководит бандлами, напр., их загрузкой).
Веб сервер

Веб-сервер включает в себя несколько компонентов, которые контролируют доступ веб-пользователей к размещенным на сервере файлам, как минимум
— это HTTP-сервер.
...

ЗАКЛЮЧЕНИЕ

Тема автоматизации выполнения повседневных или единоразовых задач обслуживания на компьютере становится, с течением времени, всё более актуальной. Чем больше функций разрабатывается в определенном программной продукте, тем больше выявляется задач по обслуживанию. Но компьютер - на то он и машина, чтобы брать наиболее рутинную работу на себя, оставляя для человека лишь разрешенные действия. Функциональность периодического выполнение заданий является неотьемлемой частью систем любого размера. В рамках данной выпускной квалифицированной работы были выявлены и проанализированы системы имеющие частичную функциональность периодического выполнение заданий. Проанализированы такие программные продукты как :
1. Cron

2. Scheduled

3. RabbitMQ

4. JMSJobQueueBundle

Так же был приведен пример применения периодического выполнения заданий:
1. Youtrack

2.
...

1. Денис Колисниченко. PHP и MySQL. Разработка Web-приложений - М.: ПитерСПб 2017. - 814 c.
2. Информационный блок для работы на занятии [Электронный ресурс] - https://www.metod-kopilka.ru/page-4-1-13-9.html
3. Кетов Дмитрий Владимирович. Внутреннее устройство операционной системы Linux. – М.: Paiter, 2017 . – 428 с.
4. Крейг Уоллс Spring в действии. – М.: ПитерСПб, 2013 – 752 с.

5. Фримен Э., Робсон Э. Head First. Паттерны проектирования. Обновленное юбилейное издание - М.: ПитерСПб, 2018 . - 656 с.
6. Линн Бейли, Майкл Моррисон. Head First PHP & MySQL: A Brain- Friendly Guide - М.: ПитерСПб, 2008. - 774 c.
7. Мэтт Зандстра. PHP Objects, Patterns, and Practice, Second Edition - М.: Zend 2014. 1-е изд. - 576 с.
8. Cron , систематический запуск задач [Электронный ресурс] - http://help.ubuntu.ru/wiki/cron
9. RabitMQ очереди выполнения задач [Электронный ресурс] https://www.cloudamqp.com/blog/2017-12-29-part1-rabbitmq-best- practice.html
10. Linux (CentOS/Debian). Level 1. Administration and security fundamentals (администрирование unix систем)

Купить эту работу

Разработка системы планировщика заданий на примере реализации задачи периодического построения отчетов

850 ₽

или заказать новую

Лучшие эксперты сервиса ждут твоего задания

от 3000 ₽

Гарантии Автор24

Изображения работ

Страница работы
Страница работы
Страница работы

Понравилась эта работа?

или

25 июля 2020 заказчик разместил работу

Выбранный эксперт:

Автор работы
ksfei121
4.7
В основном сосредоточен на продажу готовых своих личных работ по символическим ценам.
Купить эту работу vs Заказать новую
0 раз Куплено Выполняется индивидуально
Не менее 40%
Исполнитель, загружая работу в «Банк готовых работ» подтверждает, что уровень оригинальности работы составляет не менее 40%
Уникальность Выполняется индивидуально
Сразу в личном кабинете Доступность Срок 1—6 дней
850 ₽ Цена от 3000 ₽

5 Похожих работ

Дипломная работа

Диплом Нейросети "Распознавание сервированных блюд с использованием нейронных сетей" сдан на 5 + исходный код

Уникальность: от 40%
Доступность: сразу
249 ₽
Дипломная работа

Разработка програмного обеспечения для предоставления государственных услуг через портал

Уникальность: от 40%
Доступность: сразу
2800 ₽
Дипломная работа

Разработка компьютерного демонстрационного эксперемента по физике на флеше

Уникальность: от 40%
Доступность: сразу
2800 ₽
Дипломная работа

Разработка AMR-специалиста отдела снабжения предприятия малого бизнеса

Уникальность: от 40%
Доступность: сразу
2800 ₽
Дипломная работа

Разработка WEB-cистемы "АРМ сотрудник УМО" средствами ASP.NET версии 4.0 и СУБД Microsoft SQL сервер

Уникальность: от 40%
Доступность: сразу
2800 ₽

Отзывы студентов

Отзыв Геннадий Полушкин об авторе ksfei121 2018-04-25
Дипломная работа

Автор молодец, просто работа не нужна больше

Общая оценка 5
Отзыв Lesha об авторе ksfei121 2014-06-17
Дипломная работа

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

Общая оценка 5
Отзыв user13484 об авторе ksfei121 2016-05-11
Дипломная работа

Большое спасибо, все замечательно!

Общая оценка 5
Отзыв vovikluch об авторе ksfei121 2014-06-24
Дипломная работа

очень хороший автор Спасибо за работу

Общая оценка 5

другие учебные работы по предмету

Готовая работа

Принципы работы нейросетей. Виды и принципы работы нейросетей

Уникальность: от 40%
Доступность: сразу
300 ₽
Готовая работа

Рисунок нарисованный в Visual Studio на C++ MFC-приложение

Уникальность: от 40%
Доступность: сразу
200 ₽
Готовая работа

Шифрование C# - AES; WPF.

Уникальность: от 40%
Доступность: сразу
3000 ₽
Готовая работа

Зачётная работа по предмету Web-инженеринг. Сайт

Уникальность: от 40%
Доступность: сразу
100 ₽
Готовая работа

парсинг Python

Уникальность: от 40%
Доступность: сразу
2000 ₽
Готовая работа

Вращающиеся кольца ( Торы )

Уникальность: от 40%
Доступность: сразу
400 ₽
Готовая работа

Парсинг веб-сайта elibrary на Python

Уникальность: от 40%
Доступность: сразу
15000 ₽
Готовая работа

Шифрование текста с Аутентификацией каждого пользователя, на основе алгоритма AES - 128 битного ключа, реализованного на WPF

Уникальность: от 40%
Доступность: сразу
400 ₽
Готовая работа

Разработка приложения, определяющего связность неориентированного графа

Уникальность: от 40%
Доступность: сразу
660 ₽
Готовая работа

Разработка прикладного программного обеспечения «Клавиатурный тренажер»

Уникальность: от 40%
Доступность: сразу
1350 ₽
Готовая работа

АИС сети автосалонов, C# и MS SQL. База данных.

Уникальность: от 40%
Доступность: сразу
500 ₽
Готовая работа

-

Уникальность: от 40%
Доступность: сразу
490 ₽