воскресенье, июля 19, 2009

N.YUKI>, yet again

Так сказать небольшой to-do лист
  • XML
    • вынесено в отдельный класс
    • может изменять существующие реакции
    • может добавлять реакции
    • может удалять реакции
    • убарть аргумент кол-ва реацкий
      • программа предварительно "проглядывает" сколько элементов "name" существует под "reactions"
    • проверка на ошибочность
      • провреяются одиннаковые имена и команды, однако пока что нет каких либо приоретов скажем на foobar > foo*
        • в случае одинаковых команд - предлагает изменить их
        • в случае одинаковых имен - отключает редактирование
    • добавить head узел в котором будет комментарий к файлу.
    • подгрузка дополнительных реакций из другого XML-файла
    • небольшая скриптовая система - улучшенный мультилайн-сообщения
    • добавление "версии" XML разметки так чтобы програма знала о совместимости
      • скажем три номера: 1.6.7nbc
        • 1 - главный номер - если в будущем XML разметка для бота сильно поменяется то программа старого образца не сможет чиать XML разметки версии 2.4.0
        • 6 - средний нормер. Нет обратной совместимости - связвано с частыми измениями на ранней стадии развития программы - скажем 1.1 это версия которая поддерживала multiline отдельным узлом с аргументом. Новые сборки читать 1.1 смогут но multiline не будут читать, старые прочитать 1.2 где мульилайн идет в обычном респоде возможно смогут, но обработать врядли
        • 7 - минорный номер - обратная совместимость есть - скажем в последней еще не публичной версии кол-во реакций считается самой программой, и параметр count она уже просто игнорит. смена вашего XML файла под новый стандарт необязательно. Если в программе написано что принимает XML файлы версии 1.6.9 то значит она поддерживает все 1.6.х версии файлов старше 1.6.9.
        • nbc - no backward compability - это означает что минорный номер предпологает изменения которые необязательны но могут вызвать failure программы от внесенных изменений - скажем если вы удалите count то старые сборки сделают вам былинный отказ.
        • на данный момент версия - 1.4.1nbc
  • Core
    • продвинутая обработка сообщений
      • в случае /mode пишет MODE
      • в случае /me пишет ACTION
      • в случае обнаружения <internal>*</internal> - запускает внутрипрограмную функцию
        • на данный момент включает\выключает функции
        • синтаксис - функция-пробел-аргументы
      • иначе - тупо privmsg
    • абсрогирование IRC - вынесение отдельным классом с унифицированными командами - возможность добавить XMPP поддержку.

Комментариев нет:

Отправить комментарий