Страница 1 из 2

Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 25 дек 2006, 14:31
dzeaman
Есть необходимость написать что-то типа MathPlayer. Для языка типа MathML (но, естественно, не MathML, но это не так важно).

Если кто не в курсе, принцип действия приблизительно такой: в html-код внедряется тэг типа <math>, внутри которого используются тэги, определённые в языке MathML. В браузер встраивается плагин, который такую ботву интерпретирует и, естественно, визуализирует.

Что для этого нужно? Возможно ли и насколько оправдано использование .NET? Обязательно ли использование ActiveX? И, может быть, кто-нибудь подскажет ценную ссылку на бесценную литературу?
Заранее благодарен за любые комментарии =)

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 25 дек 2006, 15:03
Absurd
Нет, браузер плагин я бы писать не стал. Лучше генерировать gif или png файо на стороне сервера

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 25 дек 2006, 15:07
Absurd
А что за язык? TeX ?

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 25 дек 2006, 15:22
dzeaman
Absurd писал(а):Нет, браузер плагин я бы писать не стал. Лучше генерировать gif или png файо на стороне сервера
Не... Это я вообще диплом собираюсь писать =)
Научный хочет, чтоб был именно браузер плагин.
А язык разрабатывается в другом дипломе одногруппником :cool:

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 25 дек 2006, 18:53
Absurd
Значит нужен апплет на Java или .NET. .NET железно связан с ActiveX. Выбор в данном случае небольшой: Java или .NET. Что одногруппник думает?

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 26 дек 2006, 11:30
dzeaman
Думает, что Java - это неизбежные тормоза, которые не позволят визуализировать серьёзный интерфейс.

Значит, дотнет. Тогда сразу вырисовываются несколько проблем:
1. Конечному пользователю нужен будет установленный фреймворк?
2. Где бы почитать, как встроить библиотеку, написанную под дотнет, плагином в IE? То, что я находил гуглом и круглом, написано на старых добрых плюсах и с дотнетом дружит слабо. Стандартные эдд-ины от дотнет вроде б только для офисных приложений. В общем, я совсем чайник в близких отношениях с браузерами =)
3. Сможет ли оно вставить ActiveX до загрузки страницы? (С большой вероятностью сможет, просто я-то об этом ничего не знаю). И опять же - где бы почитать.

Пока что ситуация вырисовывается тускленькая =)

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 26 дек 2006, 12:08
Absurd
dzeaman писал(а):Думает, что Java - это неизбежные тормоза, которые не позволят визуализировать серьёзный интерфейс.
Ну мы, например, 100 SOAP запросов/сек на Java делаем без проблем и ботлнек у кастомера в сервере написанном на С++, который порождает по 12 тредов на каждый входящий запрос.
dzeaman писал(а): Значит, дотнет. Тогда сразу вырисовываются несколько проблем:
1. Конечному пользователю нужен будет установленный фреймворк?
Да, нужен.
dzeaman писал(а): 2. Где бы почитать, как встроить библиотеку, написанную под дотнет, плагином в IE? То, что я находил гуглом и круглом, написано на старых добрых плюсах и с дотнетом дружит слабо. Стандартные эдд-ины от дотнет вроде б только для офисных приложений. В общем, я совсем чайник в близких отношениях с браузерами =)
искал ".NET апплет" на гугле
1. создаешь в студии проект типа class library

2. в нем делаешь класс, наследующий от UserControl и обязательно присвоить ему атрибут guid

3. в свойствах проекта configuration properties -> build ставишь

Register for COM interop = true

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

4. создаешь setup project

5. в свойствах primary output установить Register = vsdprCOM

6. включаешь в зависимости файл .tbl, полученный при компиляции

на этом этапе получили файл setup.msi, который устанавливает компонент клиенту

7. если нужно, чтобы компонент сам устанавливался клиенту, можно преобразовать msi в cab,используя makecab
dzeaman писал(а): 3. Сможет ли оно вставить ActiveX до загрузки страницы? (С большой вероятностью сможет, просто я-то об этом ничего не знаю). И опять же - где бы почитать.
Будет примерно как Flash я думаю.

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 26 дек 2006, 12:38
dzeaman
Absurd писал(а):Ну мы, например, 100 SOAP запросов/сек на Java делаем без проблем и ботлнек у кастомера в сервере написанном на С++, который порождает по 12 тредов на каждый входящий запрос.
Ну... на сотню найдётся 50 человек, кто скажет, что java тормозная, и 50, кто приведёт убедительные доводы в её быстродействии ;) Некоторых ни за что не переубедить
Absurd писал(а):искал ".NET апплет" на гугле
Хм... а вот .NET апплет как раз я искать и не пробовал =)
Все гениальное просто, спасибо

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 26 дек 2006, 13:29
dzeaman
Как я понял, нужен BHO, который подставит при загрузке страницы в коде вместо <math> ... </math> некий ActiveX. Вроде так, ну или во всяком случае точно сойдет как вариант.
Для меня осталась непрозрачной только передача в активиксину куска документа <math> ... </math> (которого, к слову, уже нет - его заменили на <object>...</object>).

Re: Подскажите, какие технологии выбрать для написания интерпретатора

Добавлено: 26 дек 2006, 14:19
Absurd
Html это не Xml - он не расширяется кроме как по резолюции w3c. Можно сохранить файл с описанием формулы в отдельный файл и передавать его через <DATA>