Список задач Задача Проверка решения Система DCES Клиентская часть Серверная часть Плагин на Java Плагин на php.

Презентация:



Advertisements
Похожие презентации
1 2 InputBox(Приглашение$, Заголовок$,[ПоУмолчанию])
Advertisements

Java: графический интерфейс пользователя. Swing и AWT AWT – Abstract Window Toolkit, единственный инструментарий для визуального интерфейса до 1998 года;
Web - сервисы. Веб-служба, веб-сервис (англ. web service) идентифицируемая веб-адресом программная система со стандартизированными интерфейсами.англ.веб-адресоминтерфейсами.
Работа с пакетом ArcView 3.2a. При запуске установленной системы ArcView 3.2 а перед вами откроется окно приложения ArcView – окно проекта. При запуске.
@ Гимназия 4 Александрова Юлия Владимировна 2010 год ТЕСТ по теме «Компьютер для начинающих»
Интегрированная среда разработки языкаVisual BasicИнтегрированная среда разработки языкаVisual BasicИнтегрированная среда разработки языкаVisual BasicИнтегрированная.
Язык программирования Java Дмитриев Андрей Владиславович 2007.
Работа с файлами Сазонов Д.О. ПМиЭММ Часть 2. Тема занятия: Работа с файлами через потоки Для реализации файлового ввода/вывода, необходимо включить в.
ДЕЛЕГАТЫ Лекция 7 1. Зачем нужны делегаты 2 И данные, и код располагаются в памяти компьютера по определенным адресам. Передача адресов данных в C# происходит.
Сокеты TCP/IP Лекция Понятие сокета Если требуется получить доступ к сетевым операциям низкого уровня (класс URL обеспечивает выполнение только.
Система управления обучением «Moodle» Бесстрашнова Янина Константиновна.
КОНФИДЕНЦИАЛЬНО. Предназначено только для партнеров с подпиской о неразглашении. Корпорация Майкрософт не дает никаких гарантий, явных или подразумеваемых.
Запуск Word: Пуск Программы Word, или с рабочего стола:
Приказы по сотрудникам. Приказы. Меню. Файл. Показываются все изменения добавления и удаления. Кто когда и что делал.
Java: современные технологии разработки ПО Вашенков О.Е. ООО «РСС», разработчик ПО.
Электронная почта Лекция Алейникова И. Б.. Цели занятия Узнать основные функции электронной почты Научится открывать для себя почтовый ящик на почтовом.
Файловая система организация данных Подготовка к ГИА(ОГЭ) по информатике Задания А 4.
«Система дистанционного обслуживания клиентов» (СДОК)
Язык программирования Java Андрей Дмитриев ©2009.
Процесс создания презентации состоит из следующих действий: выбор общего оформления; изменение цветовой схемы; выбор разметки слайдов; добавление новых.
Транксрипт:

Список задач

Задача

Проверка решения

Система DCES Клиентская часть Серверная часть Плагин на Java Плагин на php

Система DCES Общие компоненты для всех соревнований: Регистрация пользователей Передача данных Шифрование данных в процессе обмена Сообщения об ошибках И другое

Плагин клиенской и серверной части Клиентский плагин Отображение задачи Возможность ввода решения Передача решения Прием ответа от сервера и реакция на него Серверный плагин Проверка решения участника

Процесс разработки клиентского плагина Разработка плагина клиента с использованием подключенного DCES API Отладка его с помощью эмулятора

Методы плагина стороны клиента //плагин должен вернуть JPanel, на котором он рисуется public JPanel getPanel(); //вызывается, когда пользователь переключается на плагин public void activate(); //Вызывается, когда пользователь переключается с этого плагина на какой-то другой public void deactivate(); } //Установить заголовок задачи. Заголовки задач чаще всего располагаются на кнопках выбора задач public void setTitle(String title); //Посылка решения участника и получение ответа. Ответ и решение имеют тип HashMap. Плагины стороны клиента и сервера сами определяют, что содержится в этих HashMap. Метод бросает исключение, если отослать решение не удалось. Плагин не должен говорить пользователю, что что-то не так, система сама отображает всю информацию об ошибках. Плагин должен лишь принять к сведенью факт, что решение не было отослано public HashMap submitSolution(HashMap solution) throws GeneralRequestFailureException; //Это каталог, в котором хранится условие задачи. Условие автоматически //загружается с сервера. Плагин сам ответственен за //содержимое этого каталога, и должен знать в каких файлах какую информацию искать. //Писать или читать что-то вне этого каталога крайне не рекомендуется public File getProblemFolder(); //Каждая задача имеет имя, установленное при настройке контеста. Метод возвращает имя задачи. public String getProblemName();

Клиентский плагин Отсылает "answer" => Получает в ответ "result"=>"accepted" "result"=>"wrong answer"

Отладка плагина public class TestPlugin { public static void main(String[] args) { //создаем эмуляцию сервера //создаем эмулятор сервера ServerPluginEmulator serverEmulator = new MYServerPluginEmulator(); //создаем окно для отладки PluginBox box = new PluginBox( Main.class, //класс с отлаживаемым плагином serverEmulator, "Задача"); //делаем так, чтобы после закрытия окна программа закрывалась box.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //показываем окно на экране box.setVisible(true); }

Отладка плагина Состав класса MYServerPluginEmulator(); Правильный ответ Имя папки с заданием для вывода Сравнение полученного ответа от плагина с верным Генерация ответа плагину обратно