LINUX.ORG.RU

Пакет для экзаменации ZExam - ваше мнение


0

1

Кратко, что к чему.

Пишу набор программ для проведения компьютерных экзаменов. Другие аналогичные программы меня не удовлетворили, потому что они требовали либо X с Qt'шными либами, либо апач (или какой другой вебсервер), либо jre. У меня же возникла задача сделать программу с как можно меньшим числом зависимостей. В итоге программа будет зависеть только от одной библиотеки - libconfig / libconfig++.

Будет две консольные программы - сервер, который загружает тест, пользователей, слушает порт, отдает тест, принимает ответы, подсчитывает результат, сохраняет статистику и т.д;

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

Помимо этого будет билдер - ГУИ для создания тестов и списков пользователей; reader для статистики (запланировано) - ГУИ для чтения результатов теста.

Доп. инфа на лоркоде (http://lorcode.org/forum/viewtopic.php?t=101).

Есть ли здесь потенциальные пользователи этой программы? Интересно ваше мнение по этому поводу.

★★

Вещь полезная, особенно в школах (помнится нас пытались тестировать на каком-то html/js позоре, который легко ломался в блокноте). Меня просили для местного центра образования такое заимплементить - налабал на плюсах за один вечер, будучи школьником (правда не клиент-серверное).

yoghurt ★★★★★
()

Данное ПО изобретают в тысячах школ/вузов каждый год по всей стране. Сам писал, видел как другие пишут.

simple_best_world_web_master
()

> Другие аналогичные программы меня не удовлетворили, потому что они требовали либо X с Qt'шными либами, либо апач (или какой другой вебсервер), либо jre.

Так и не понял, почему ни одно из этих решений тебе не подходит.

У меня же возникла задача сделать программу с как можно меньшим числом зависимостей.


Чего ради? зачем?

Manhunt ★★★★★
()

Сейчас написано ядро для тестирования и базовый builder на qt 4.7. С помощью последнего в сочетании работы с ядром уже можно создавать тесты. Ядро тоже написано на Qt.

меня не удовлетворили, потому что они требовали либо X с Qt'шными либами

В итоге программа будет зависеть только от одной библиотеки - libconfig / libconfig++.

не понятно, поясни пожалуйста

pseudo-cat ★★★
()
Ответ на: комментарий от pseudo-cat

Да, наверху инфа устаревшая.

Я перешел от Qt к STL + libconfig, что и написано постом ниже на лоркоде. Это было вызвано необходимостью устранить инсталляции доп. ПО для работы zexam.

Устранение лишних зависимостей - магистральная цель zexam. Чтобы можно было, имея, например, на флешке бинарники клиента и сервера, в любой компьютерной аудитории провести тестирование/экзамен, не устанавливая никаких дополнительных программ (qt, apache, jre etc).

bk_ ★★
() автор топика
Ответ на: комментарий от bk_

> Устранение лишних зависимостей - магистральная цель zexam. Чтобы можно было, имея, например, на флешке бинарники клиента и сервера, в любой компьютерной аудитории провести тестирование/экзамен, не устанавливая никаких дополнительных программ (qt, apache, jre etc).

В таком случае экзамен должен поставляться в виде готового набора html-файлов. Из зависимостей остается только броузер.

Платформо-зависимые бинари сюда никак не вписываются.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

щито? приходит препод с хтмл-файлами, говорит студентам - откройте их в браузере и пощелкайте кнопки.

А на запросы хто будет отвечать? Нужен вебсервер.

Проще написать кроссплатформенный пакет на переносимом С, который будет весить пару метров, чем тянуть километровый апач.

Платформо-зависимые бинари сюда никак не вписываются.

WTF? простая перекомпиляция на нужной платформе уже не работает?

bk_ ★★
() автор топика
Ответ на: комментарий от bk_

кого волнуют 5 мегабайт? (у меня где-то так выходило)

note173 ★★★★★
()
Ответ на: комментарий от bk_

> А на запросы хто будет отвечать? Нужен вебсервер.

Зачем? оО Ява-скрипта тут хватит с огромной лихвой.

Проще написать кроссплатформенный пакет на переносимом С


Переносимость Си заканчивается там, где начинается UI. Дальше - в лучшем случае - тулкиты.

Проще написать кроссплатформенный пакет на переносимом С, который будет весить пару метров, чем тянуть километровый апач.


Если уж так хочется (не ясно для чего) веб-сервер, то «переносимый и кроссплатформенный» nginx.exe весит меньше 2х мегабайт.

Manhunt ★★★★★
()
Ответ на: комментарий от bk_

> я знаю, но размер?

Что - размер? Попробуй найти в магазине флешку рамером меньше 100 Мб.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

По твоему, все студенты долбоебы и не найдется умника, который взламает яваскрипт?

bk_ ★★
() автор топика
Ответ на: комментарий от Manhunt

nginx.exe весит меньше 2х мегабайт.

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

bk_ ★★
() автор топика
Ответ на: комментарий от bk_

Ты не видишь различий между zexam и moodle?

Ты спрашивал про нужность пользователям, а не про уникальность.

Пользователь - максимум один, уникальность - несомненна, как и у нахрен никому не нужного "автомобиля с минимальным числом шурупов".

mclaudt
()
Ответ на: комментарий от bk_

> По твоему, все студенты долбоебы и не найдется умника, который взламает яваскрипт?

Во-первых этот умник заслуживает пятерку.
Во-вторых, обфусцированный скрипт за разумное время не разобрать.

Manhunt ★★★★★
()
Ответ на: комментарий от bk_

> Его можно просто заменить на свой.

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

Manhunt ★★★★★
()
Ответ на: комментарий от bk_

> А тому умнику пятерку не получить.

Есть простое правило: если человек очень хорош в каком-то деле, не нужно по-вахтёрски клевать ему мозги всякой левой хренотенью. Даже если ты всю свою жизнь тратишь на вдалбливание этой хренотени в головы студентов.

В частности, не нужно человека, способного читать и понимать обфусцированный JS, гнобить за незнание философии/химии/матана/whatever. Он _уже_ заслужил красный диплом любого ВУЗа.

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

Нет ни малейших причин прикрывать лазейки от людей такого уровня.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

Абсолютно не согласен.

Человек пришел сдавать конретный предмет, а не выпендриваться перед преподавателем, что он лучше знает яваскрипт. Если он в нем и разбирается - флаг ему в руки, но предмет он будет сдавать на равне со всеми, если предмет, конечно, не веб-программирование.

Считаю полной глупостью делать движок теста на яваскрипте, каким бы обфусцированным он не был.

bk_ ★★
() автор топика
Ответ на: комментарий от bk_

> Абсолютно не согласен. Человек пришел сдавать конретный предмет, а не выпендриваться перед преподавателем

Предметов в ВУЗе много, не все они этому человеку интересны. А ты из вахтерства сделал себе идол: по параноидальным соображениям отказываешься от элегантного и платформонезависимого веб-интерфейса.

Считаю полной глупостью делать движок теста на яваскрипте


Глупость - это делать убогий велосипед на нуждающемся в перекомпиляции Си. Еще бОльшая глупость - это фанатично избегать сторонних библиотек. Действительно, «автомобиль с минимальным числом шурупов». Более продуктивных занятий не придумал себе?

Manhunt ★★★★★
()
Ответ на: комментарий от bk_

Бгг, вижу, ты окуклился :D Беги-беги, прячься от здравого смысла головой в песок. Неудачник.

Manhunt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.