|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
tygra Так вы все-же займетесь решать именно задачи компании, или будете решать задачи технологий разработки модульных приложений? А то уже проблемы, непонятки. А дальше сколько их будет? Естественно решать задачи компании. Но сейчас поставлена задача разработки новой программы. Как раз есть повод и возможность прекратить творящееся на данный момент безобразие (с разнообразием "одинаковой" инф. в разных базах). Разрабатывать новую программу, которая охватит решения сразу всех существующих на сегодня (наших) программ нереально. Ни по срокам ни по выделенным финансам. Поэтому есть желание (проектируя эту новую задачу), сразу предусмотреть возможность, что бы если в следующем году будут деньги на переделку еще одной программы - новую разработку просто "присоеденить" к основе (вот этой самой оболочке). tygra Еще раз спрошу, может скажете: что вас смущает в обычной разработке в отличие от модульной, которая, по вашему заблуждению, чудом решит все проблемы сама? Непредсказуемость. 1.того, что понадобится в будущем. 2.того, что другой разработчик не захочет ковырятся в чужих исходниках, если нам понадобится "добавить" еще одну "программку". ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 09:02 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ASCRUSУ меня складывается такое впечатление, что мы все тут говорим о неком комплексном модульном движке, который позволяет управлять и присоединять модули на всех уровнях системы (БД с бизнес-логикой, клиенты, отчеты), а автор топика всего лишь скромно имел ввиду создание обычного Plug-in у клиентской части. Если это так, то на данном форуме такое обсуждение вообще бессмысленно, это чисто техническое решение построения клиентской части и никакого отношению к разработке информационных систем не имеет. Такой вопрос лучше задавать на форуме Delphi, там полно спецов, которые делали такие вещи. Скорее всего так оно и исть. То-то я не мог понять почему возникают такие заумные дискуссии (никого обидеть не хочу). Пойду ка я на форум Delphi ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 09:09 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Делать упор на плагины не стОит. Это не очень простая задача (нужна очень детальная проработка интерфейсов обмена данными, соглашения и т.п.). В процессе развития(эволюционирования) системы неизбежны масштабные переделки интерфейсов. Это настоящий снежный ком переделок высокой сложности. Хотя возможность подключения внешних модулей-плагинов безусловно полезна, но должна быть вспомогательным механизмом, а не главным. Фсё ИМХО. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 10:24 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPА почему это называется "иерархия"? Может просто "функциональные возможности"? потому что верхние уровни разрабатываются средствами нижних причем приоритет за непосредственными "детьми". т.е. спуск вниз только при неообходимости. впрочем все это условно. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 10:51 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Ворчун Естественно решать задачи компании. Но сейчас поставлена задача разработки новой программы. Как раз есть повод и возможность прекратить творящееся на данный момент безобразие (с разнообразием "одинаковой" инф. в разных базах). Разрабатывать новую программу, которая охватит решения сразу всех существующих на сегодня (наших) программ нереально. Ни по срокам ни по выделенным финансам. Поэтому есть желание (проектируя эту новую задачу), сразу предусмотреть возможность, что бы если в следующем году будут деньги на переделку еще одной программы - новую разработку просто "присоеденить" к основе (вот этой самой оболочке). И при чем тут модули? Найдите место, где в вашей программе они нужны? Вы странно мыслите - если не модули, значит "охватить сразу все" Добавлять формы и меню в уже готовый проект вы не умеете чтоли? Ни разу не пробовали? :)) авторНепредсказуемость. 1.того, что понадобится в будущем. 2.того, что другой разработчик не захочет ковырятся в чужих исходниках, если нам понадобится "добавить" еще одну "программку". А вы надеестесь с помощью плагина присоединить программу, автор которой писал ее отдельно от предыдущих ваших разработок? Т.е. вы хотите все-равно иметь зоопарк разных программ, но объединенных одним главным оконом и тешить себя мыслью, якобы это одна программа ??? Тогда зачем вы вообще беретесь переписывать - и так все программы объединены одной большой, ОС. :) Не понимаете вы чего-то, совсем не понимаете. И результат будет очень плохой, если начнете чего-то делать, так и не поняв, что нужно. Присоединюсь к многим остальным - не нужны вам модули, гимору будет много, толку - никакого -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 10:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVДавайте попробуем определить "базовую часть" этого самого универсального интерфейса. * Главное меню согласно прав -да * Унифицированное ведение справочников с возможностью быстрого создания новых -да * Беспроблемное создание и увязка новых таблиц - только не таблиц, а сущностей, объектов, событий и.т.д. * Система разграничения прав - да * Отчётные возможности. Встроенный Репортер. Экспорт в популярные форматы -да * Унифицированный интерфейс (фильтры, поиск, навигация)-да * Набор простых диалогов.-да * Создание кастомных форм ввода.-да * Унифицированный импорт/экспорт-да * Возможность обращения к внешним источникам данных (хотя бы для этой же СУБД)-да * Возможность подключения новых модулей DLL (как дополнительная возможность)-да, и не только DLL + библиотеки стандартных функций и процедур Все это имеет универсальный характер. Далее идут проблемно-ориентированнные настраиваемые модули: - учётного характера - планирование - расчеты - и т.д ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 11:01 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
А 1C вам чем не сгодится? Менюшки, справочники, формочки, высокоуровневый язык, отчеты, запросы, хорошая поддержка ядра.... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 12:09 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
нелюбитель 1CА 1C вам чем не сгодится? Менюшки, справочники, формочки, высокоуровневый язык, отчеты, запросы, хорошая поддержка ядра.... С 1С у меня личная несовместимость. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 13:16 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
tygra И при чем тут модули? Найдите место, где в вашей программе они нужны? Вы странно мыслите - если не модули, значит "охватить сразу все" Добавлять формы и меню в уже готовый проект вы не умеете чтоли? Ни разу не пробовали? :)) Пробовали. В ~30% исправление ошибок (добавление новых возможностей) порождает новые ошибки, пусть и мелкие, но все же. Да-да, знаю, надо грамотнее работать. Но исхожу из того, что есть. [quot tygra] А вы надеестесь с помощью плагина присоединить программу, автор которой писал ее отдельно от предыдущих ваших разработок? Нет. Не присоеденить, а разработать заново. С учетом новых требований/возможностей, которые и определит первый разработчик (даст бог, он же все это и будет делать дальше ) tygra Т.е. вы хотите все-равно иметь зоопарк разных программ, но объединенных одним главным оконом и тешить себя мыслью, якобы это одна программа ??? Тогда зачем вы вообще беретесь переписывать - и так все программы объединены одной большой, ОС. :) Программы действительно будут разные (вернее будут выполнять свою узкоспециализированную работу) но выполнены в едином стиле, по одним правилам (надеюсь это все же реализуемо, даже если разрабатывают разные программисты?). tygra Не понимаете вы чего-то, совсем не понимаете. И результат будет очень плохой, если начнете чего-то делать, так и не поняв, что нужно. Я конечно многого не понимаю. Но каждое обращение на форум дает мне дополнительное понимание. Потому и выставляю свои вопросы на всеобщее обсуждение. Я то однозначно получу пользу. Правда иногда приходится кое-что в себе... душить. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 13:36 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторПрограммы действительно будут разные (вернее будут выполнять свою узкоспециализированную работу) но выполнены в едином стиле Бред. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 13:39 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Так вы и не ответили - чем вам поможет модульность -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 13:47 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунНет. Не присоеденить, а разработать заново. С учетом новых требований/возможностей, которые и определит первый разработчик (даст бог, он же все это и будет делать дальше ) Так вы заново с нуля все разрабатываете ? Понятно. Опять таки при разработке любой "первой" программы из вашего списка неизбежно появятся наработки, которые можно использовать в дальнейших разработках. Механизм доступа к данным, интерфейсные элементы и т.д. Будете из них как из кирпичей строить новый софт. Т.о. программы сами собой получатся "в едином стиле, по одним правилам", это неизбежно (если правильно организуете процесс и выделите эти общие компоненты.) Вот и все. Смысла заморачиваться с запускальщиком плагинов по прежнему не вижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 13:47 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
aagимхо, одна из особенностей общих решений та, что первый проект никогда не может окупится (считая стоимость разработки общего механизма + проекта). В принципе. Я бы еще понял точку зрения "не должна окупиться". Но "не может"... имхо это утверждение, которое не имеет шанса быть верным. Простой пример: возьмите общее решение и десять похожих проектов, для которых оно окупилось. Теперь представьте себе, что это десять этапов одного проекта. По Вашей логике, оно тут же должно стать неокупающимся. aagПотому что общий механизм разрабатывается для класса задач. Для одного проекта его возможности должны быть излишни. Никто не заставляет разрабатывать излишние возможности раньше, чем они понадобятся. С моей точки зрения, самое большое искусство разработчика - делать свою работу так, чтобы с одной стороны не создавать самому себе проблем в будущем, чтобы сделанное можно было легко развивать в любом направлении, а с другой - чтобы это не приводило к заметному удорожанию сегодняшней работы. В моем случае разработка этого общего механизма оказалась весьма растянутой по времени. То есть я делал достаточно маленькое, быстроокупающееся нечто, оно распространялось, накапливался опыт применения этого нечто, и это позволяло сделать следующий эффективный шаг. По сути автоматизировалось то, что назрело, что было очевидно (по крайней мере для меня). aagА самая большая сложность в его разработке - угадать этот класс задач, его требования и ограничения и соблюсти баланс между возможностями механизма/сложностью его использования. Это, безусловно, зависит от таланта проектировщика, но еще все равно требуется что-то типа удачи, таланта предвидения... Со многим согласен, хотя у меня сложилось впечатление, что Вы говорите о более глобальном и жестком решении, нежели имею в виду я. Однако, я бы хотел обратить внимание на другой момент. Я обычно ставлю во главу угла конструктивность мышления. С моей точки зрения, мысль может быть формально неверной, но при этом конструктивной, ведущей к правильным результатам и такая мысль ценнее, нежели верная, но бесполезная. Так вот, с моей точки зрения конструктивно считать, что удачи не существует, а существует талант, может быть неочевидный для окружающих. aagЯ лично предпочитаю нарабатывать решения, удобные для использования в каждом случае. Безусловно. И из них постепенно и складывается такой вот общий механизм. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 14:02 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
sergey888 авторПрограммы действительно будут разные (вернее будут выполнять свою узкоспециализированную работу) но выполнены в едином стиле Бред. Почему? Что общего между программой для канцелярии (секретарь регистрирует входящие документы) и архивом жилого фонда? Зачем секретарю инф. кто чем владеет? Да можно разграничением прав ограничить доступ секретаря к "запретной" инф. в пределах одного приложения. А можно вообще не загружать лишнего. Может это просто дело вкуса? Хотя если с "dll" нет критичных проблем (собственно в этом и вопрос был), то я бы предпочел разбить разработку на мелкие, независимые задачи. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 15:14 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунПочему? Что общего между программой для канцелярии (секретарь регистрирует входящие документы) и архивом жилого фонда? [со вздохом] Советую по крайней мере вести все в одной БД. Потом будет меньше проблем. Честно-честно. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 16:53 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
tygraТак вы и не ответили - чем вам поможет модульность -- Tygra's --Можно я отвечу? Модульность позволяет наращивать систему во время ее жизни, не трогая другие, уже работающие модули. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 17:17 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant ВорчунПочему? Что общего между программой для канцелярии (секретарь регистрирует входящие документы) и архивом жилого фонда? [со вздохом] Советую по крайней мере вести все в одной БД. Потом будет меньше проблем. Честно-честно.И что получится с одной БД, когда Вы будете добавлять все новые задачи? Лучьше иметь однотипные БД на каждую прикладную задачу, или на группу сходных прикладных задач. При этом, конечно, система должна позволять автоматически поддерживать однотипные процедуры во всех базах данных, используемых в системе. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 17:19 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPИ что получится с одной БД, когда Вы будете добавлять все новые задачи? и что же с ней получится ? PVPЛучьше иметь однотипные БД на каждую прикладную задачу, или на группу сходных прикладных задач. . Почему лучше ? У пользователя стоит 3 програмки, давайте его заведем в трех базах ? А потом он уволился - не забыть посмотреть в трех местах ? PVPПри этом, конечно, система должна позволять автоматически поддерживать однотипные процедуры во всех базах данных, используемых в системе. Ну вот, уже какие-то странные требования к системе. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 17:27 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant PVPИ что получится с одной БД, когда Вы будете добавлять все новые задачи? и что же с ней получится ? То же самое, что и с одной процедурой, если программирование всех новых задач делать в ней одной, где нибудь в средине, вместо того, что бы делать новые процедуры для новых задач. Конечно, если процедура (база) элементарная, то можно и не создавать новых. Принцип модульнусти Вы признаете только в автомобилестроении? Или еще и в разработке процедур? Может следует распространить его и базы данных? Если расширить термин "база данных" за пределы его опередения в SQL, то это не только набор таблиц, процедур и всего остального, что мы используем в программировании, но и составляющие базы данных. Например, вся база данных системы состоит из базы администратора, базы учета материалов, базы учета зарплаты, и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2006, 11:15 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant PVPЛучьше иметь однотипные БД на каждую прикладную задачу, или на группу сходных прикладных задач. . Почему лучше ? У пользователя стоит 3 програмки, давайте его заведем в трех базах ? А потом он уволился - не забыть посмотреть в трех местах ? PVPПри этом, конечно, система должна позволять автоматически поддерживать однотипные процедуры во всех базах данных, используемых в системе. Ну вот, уже какие-то странные требования к системе.Внимательнее промотрите контекст, тему топика. И вопросы отпадут сами собой. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2006, 11:18 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPПринцип модульнусти Вы признаете только в автомобилестроении? Или еще и в разработке процедур? Может следует распространить его и базы данных? Насколько я понимаю, Вы говорите о "базах данных" в mssql-ном смысле, аналоге ораклового "схема". Если так - принцип модульности в плане разнесения разных подсистем в разные схемы имеет право на существование, но в то же время имеет ряд практических неудобств, главное из которых - нет возможности легко менять названия схем (баз), в которых лежат модули. А это допустимо только для самописной системы, но не для [человеческой] тиражируемой. Сразу представляется, как гениальный разработчик распихивает свое приложение по схемам [common], [buh], [store], и как это начинает конфликтовать с приложением другого разработчика в той же БД. Да, согласен, можно сделать нормально. Но... знаете, сколько в мире существует независимо написанных файлов, например, OraQuery.pas? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2006, 20:05 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Очень позитивный топик! Поддерживаю идею универсального интерфйса и хранилища. По этой теме пишу диплом. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2006, 13:02 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
adiskПо этой теме пишу диплом. лучше бы Вы по этой теме написали унивесальное хранилище и универсальный интерфейс ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2006, 17:29 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVP tygraТак вы и не ответили - чем вам поможет модульность -- Tygra's --Можно я отвечу? Модульность позволяет наращивать систему во время ее жизни, не трогая другие, уже работающие модули. Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 09:52 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant PVPЛучьше иметь однотипные БД на каждую прикладную задачу, или на группу сходных прикладных задач. . Почему лучше ? У пользователя стоит 3 програмки, давайте его заведем в трех базах ? А потом он уволился - не забыть посмотреть в трех местах ? А у меня предполагался такой компромис: База СПРАВОЧНИК (общие данные для всех приложений) и будет содержать в том числе табл.ПОЛЬЗОВАТЕЛЬ (они ведь едины в пределах организации) и решать правами на какие приложения пользователь обладает. А главным делом оболочки будут две задачи - работа с БД СПРАВОЧНИК и подключение всех остальных приложений в единую средУ (естественно учитывая права пользователя). А "персональные" данные каждое приложение хранит в своей БД. А вот теперь интересно обсудить плюс/минус хранения "персональных" данных отдельных приложений в одной БД или в различных. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 10:09 |
|
|
start [/forum/topic.php?fid=33&msg=33622668&tid=1549393]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
184ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 240ms |
total: | 534ms |
0 / 0 |