ic1496
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Цитата: Цитата:А вообще, пора уже механизм плагинов делать (Far, и т.п.), а то один Вы походу не справляетесь... | Угу... и кто их писать будет? У SatMap не так много поклонников, а те, что могли бы помочь, после получения ими нужной фичи, тихо исчезают в подполье | Ну, опыт показывает, что почти все программы на плагинной архитектуре очень успешны. Far, Miranda, Emacs ... Может можно начать с простого? Не городить очень сложный механизм, а вынести функционально целые части в DLLки и опубликовать интерфейс? То, что каждый напишет по одной DLLке, не страшно, курочка по зернышку клюет, а аппетит приходит во время еды. Чем больше возможностей, тем больше у программы пользователей, чем больше пользователей, тем больше они понапишут плагинов, пойдет цепная реакция! Пример 1, кэш. DLL драйвер стореджа. Имеет функции ЗаписатьТайтл(), ПрочитатьТайтл(), УдалитьТайтл(), ПолучитьБитмапЗаполнения(). Кладешь в эту DLL свой код работы с одной SQLite базой и забываешь. Кто хочет странного -- пишет свой MegaAdvancedTitleRouter, который автоматически сортирует воду отдельно, сушу отдельно. Импорта из GoogleMV надо? Садись, пиши DLL, работы на один день... Пример 2, путевые точки. DLL должна отпарсить файл понимаемого ей формата и сдать назад в программу готовый массив структур по каждой точке. У меня вот фотоаппарат со встроенным GPSом. Обязуюсь написать DLL загрузки путевых точек, которая будет грузить директорию геотегированных фотографий как вейпоинты. Пример 3, треки. Аналогично путевым точкам. Пример 4, GPS. А вот он тебе не нужен и лень его делать? А и не делай. Посадочное место и крепежные отверстия только предусмотри (Callback функцию ПередатьТекущиеКоординаты(), остальное сами сотворим. А кто захочет слежение за удаленным объектом, сам туда же вкрутит. Кстати, может быть те, кто готов что-либо приписать откликнуться, и relictus увидит, что нас не так и мало? |