GarikBF
Окт. 7, 2012 13:26:03
Здравствуйте.
Я студент 5-го курса, программист, в этом году нужно защищать диплом. Мы объединились с однокурсниками для создания совместного проекта “Интерактивная обучающая система”. Суть в следующем - есть некая оболочка, в которую можно загружать данные, видео, флеш и т.д. В конечном итоге все это можно сохранять в виде файла-учебника. Также можно открывать готовые файлы-учебники для просмотра. Думаем использовать Python, друг также знаком в Флешом, я немного знаком с Делфи. Проблема в том, что ни он, ни я в Python никогда не работали. Собственно, вопросы:
1) с какой литературой следует ознакомится? Учебников полно, но на изучение всех просто времени не хватит.
2) можно ли совмещать Питон и Флеш в одном проекте, и если да, то где про это можно почитать?
3) возможно следует использовать интегрированный Питон, типа Jython или что-то в этом духе?
4) возможно кто-то может посоветовать похожие проекты для сравнения?
Я не прошу исходников и т.д., мы серьезно хотим сделать эту работу, т.к. очень много плюшек можно получить. Но мало опыта подобного смешивания языков. Буду благодарен за любую помощь. С C/C++ мы знакомы слабо. К декабрю уже стоит предоставить хотя бы какие-то наработки, на конференции надо выступать с проектом.
Спасибо.
doza_and
Окт. 7, 2012 22:05:04
GarikBF
Учебников полно
Просто берете один из них. Ну например Лутца. Остальные пролистать чтобы знать где что можно найти.
GarikBF
можно ли совмещать Питон и Флеш
Да, но обоснуйте зачем вам это надо. Многоязычные проекты намного сложнее моноязычных. Успешная смесь обычно получается только у тех кто в совершенстве владеет всеми языками разработки. Это похоже не ваш случай.
GarikBF
похожие проекты для сравнения
Основная проблема как мне кажется в том что в этом проекте слабо проработана постановка задачи. Вы хотите сделать интерактивную смотрелку контента? Ваши прямые конкуренты IE от микрософт chrom от google и продукты Adobe… Мало того что это не реально но еще и не нужно. Нужна простая базовая идея.
Например:
1 Индивидуальный подход: Система строит профиль пользователя (тупой не тупой какие темы насколько освоил) и подсовывает контрольные вопросы так чтобы добиться максимальной эффективности обучения.
2 Система для быстро обновляющихся областей знаний (юриспруденция, программирование). Это система с автоотваливающимися темами при их устаревании по времени, и формировании отчетов о не покрытых областях знаний, чтобы ответственные лица их пополнили (все понятия должны быть определены поэтому можно проверять полноту).
ну и т.п.
Возьмите для начала wiki
http://docs.pylonsproject.org/projects/pyramid/en/1.4-branch/tutorials/wiki/index.html и добавьте свойства в соответствии с идеей которую вы придумаете.
Совместить можно всё, при достаточном количестве времени и прочих ресурсов. Потребуется уверенное владение C/C++, грамотное исчерпывающее описание API (например NPAPI, если будет использоваться оригинальная закрытая плагинская версия Flash Player'а).
Не совсем понятно, что вы имеете ввиду под учебником. Как было сказано выше, это просмотрщик контента? Какого контента? Вероятно, разумнее всего смотреть в сторону биндинга WebKit'а и реализовывать контент как DHTML. Получится эдакий портативный браузер без выхода в сеть, а черпающий контент (html, css, js, swf) из своих внутренностей. В таком случае Python выполняет роль веб-сервера и собственно связующего весь код приложения.
Можно отказаться от HTML технологий, а делать своими силами рендер и контента. Он получится на несколько порядков более простым и ограниченным чем рендеры HTML и остаётся вопрос потребности Flash'а. В этом случае (в отличие от предыдущего) чисто много кодинга (на Python), а не биндинг (на C/C++) чужих монструозных проектов.
..bw
GarikBF
Окт. 8, 2012 13:17:29
спасибо за ответы.
основная идея нашей системы в том, что человек может сам создавать электронные учебники, т.е. накидывать в конструкторе текст, видео, картинки и т.д., настраивать как ему надо и сохранять. При этом в этой же проге юзер может просматривать созданый им учебник, например, вести по нему пары в институте. Сегодня определялись с выходным расширением - пока остановились на том, что будем создавать свое. Понимаете, у нас очень много вопросов и очень мало времени. Изначально мы отрабатывали идею сделать проект на Дэлфи + Флеш (только потому, что я знаю Дэлфи, а друг знает Флеш + та интерактивность, которой мы хотим добиться, есть на Флеше). Но на Дэлфи-форуме нам посоветовали обратить внимание на Питон, поэтому я создал эту тему.
Мы ведь не совсем глупые, если надо разобраться будет в чем-то - разберемся. Просто у нас сейчас стоит 2 основных вопроса:
1) на чем писать
2) как писать,
а времени очень мало. Сам концепт уже есть, сегодня его утвердили, осталось только это реализовать. Поэтому нужно быстрее определяться на чем и начинать уже изучать что-то, т.к. к декабрю надо будет уже что-то показалть на конференцие.
doza_and
Окт. 8, 2012 21:13:17
GarikBF
человек может сам создавать
Ей богу не понятно. Чем вас PowerPoint не устраивает?
Выкладывайте техзадание. Тогда может что и посоветуем.
Используйте Delphi. У него вроде есть возможность состряпать свой дизайнер форм по типу IDE'шного. Такая фича может пригодиться. Но что касаятся лингвистических преимуществ, то я бы отдал предпочтение Python, особенно в вашем случае, когда требуется экстремальное программирования. Хотя с другой стороны, лучше всё же пользовать язык, который знаешь не просто хорошо, а чувствуешь себя на едине с ним абсолютно комфортно.
Используйте Python. Если вы всё же решите завернуть идею с визульным редактором, а я считаю, что если делать всё по уму, то на прототип потребуется год. Сейчас можно ограничиться своим языком вёрстки учебника, например XML well-formed, например подобием XHTML. Да XML не фонтан какой удобный для ручного составления, но он безпроблемно парсится под любой платформой. В будущем можно заняться редактором, на выходе которого будут XHTML (условно) или скомпилированный проект.
Так же остаётся проблема рендеринга контента. Для Delphi ничего не подскажу, а под Python можно рассмотреть виджеты wxPython, там же имеется виджет для вывода HTML. Ручной рендеринг я бы не брал в расчёт.
Коль уж учебник интерактивный, то потребуется написание сценариев, для Python выбор очевиден, а для Delphi, это должно быть что-то типа Innerfuse Pascal Script или даже Python For Delphi.
..bw
PooH
Окт. 9, 2012 05:24:27
GarikBF
К декабрю уже стоит предоставить хотя бы какие-то наработки, на конференции надо выступать с проектом.
В таких временных рамках надо делать на том, с чем лучше знаком.