|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Есть такая задумка. Разработать оболочку в которую на принцыпах плагинов можно внедрять любую начинку. Одна из обязательных баз - база справочников (АДРЕСА и КЛИЕНТЫ и пр.служебные таблицы). А затем добавляем любую функциональность. Каждый модуль (плагин) самостоятелен в пределах своей задачи (грубо говоря отделная программа работающая в общей среде). Это позволит постепенно перевести все самостоятельные задачи (разные программы) к единообразию, не прерывая работу организации. Нашел разработчика, который вроде правильно понимает мою идею, но пока таких проектов не выполнял. Интересует может кто сталкивался с подобной задачей, какие подводные камни ждут впереди, и может подобный вопрос подымался на форуме? (инструментарий: Delphi+MS SQL Server) >< и Вам туда же >< ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 17:08 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 17:16 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Ворчункакие подводные камни ждут впереди, и может подобный вопрос подымался на форуме? Подводные камни примерно такие: долго-долго разрабатывать Единый Универсальный Интерфес Реализующий Любую Функциональность. А потом окажется что реальная задача не "натягивается" на ваш engine Вообще, подобного рода начинания - одно из любимейших развлечений программистов. Задача руководителя проекта их отлавливать и душить на корню. Извините что так резко, но наболело. Постоянно вижу такие идеи, постоянно. PS: здравое зерно тут есть, но задач где это реально нужно _очень_ мало, да и то, в них это требуется в минимальном обьеме ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 17:26 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
AviantЕдиный Универсальный Интерфес Реализующий Любую Функциональность == среда программирования + среда исполнения + библиотеки. Пришли к тому, от чего пытаемся уйти. Знакомый круг... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 17:38 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Плохая у вас задумка. Потратите время, много времени, потом окажется, что чего-то нет, что-то не так, что-то совсем нельзя. Так что присоединюсь к общему мнению : М.Голованов среда программирования + среда исполнения + библиотеки Это ваш выход в светлое будущее :) -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 17:46 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
М.Голованов AviantЕдиный Универсальный Интерфес Реализующий Любую Функциональность == среда программирования + среда исполнения + библиотеки. Пришли к тому, от чего пытаемся уйти. Знакомый круг... Полностью солидарен. У нас к примеру так и есть - есть общая для всех проектов платформа под сервер и тесно интегрированная платформа под клиентскую часть. На их базе быстро разрабатываются проекты или новые модули к проектам. Вся синхронизация общих частей кода БД между проектами, а так же установленных у клиентов проектов, идет через собственную самописную систему синхронизации версий схем БД и файлов клиентской части через веб-сервисы. В принципе с учетом наработок любой проект поднимается на ура, тут важнее ТЗ и взаимосвязи существующих и новых модулей системы - здесь нам сервер позволяет проводить гибкую политику от ведения модулей в единой БД (с разделением по овнерам) и разделенных БД, связанных репликацией, в зависимости от поставленной задачи. Таким образом имея на руках проверенный временем сервер, ПО для построения клиентской части и собственные повторно используемые библиотеки, проверенные временем как раз имеем единый универсальный интерфейс, позволяющий максимально быстро реализовывать задачи, сосредотачиваясь исключительно только на бизнес-логике и особенностях построения удобного интерфейса под конкретные проекты. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 17:47 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунНашел разработчика, который вроде правильно понимает мою идею, но пока таких проектов не выполнял. Интересует может кто сталкивался с подобной задачей, какие подводные камни ждут впереди? У меня есть опыт удачной реализации подобной идеи. Метрика удачности - моими разработками пользуются до сих пор, через несколько лет после того, как я ушел из этой фирмы, в том числе в новых проектах. С моей точки зрения, основной и гигантский подводный камень этого подхода - мало кто способен хорошо решить такую задачу (давайте считать, что я сделал себе комплимент). При этом те, кто способны, как правило уже заняты более непосредственно денежными задачами. Разработка технологии и инструментов программирования - задача, существенно отличающаяся от разработки прикладных решений. Тот, кто делает это, должен одновременно: а) Быть хорошим постановщиком, проектировщиком б) Быть хорошим разработчиком в) Иметь высокую технологическую культуру. Фактически это намного более сложная задача, чем обычная разработка сравнимого объема, и обычная технология вида "вы подумали, объяснили мысль, обычный программист детализировал и сделал" приводит к недостаточно хорошему результату. Хочется пожелать Вам удачи, но объективно говоря более вероятно, что результат пополнит ряды кривых велосипедов. Как минимум надо понимать следующее. У Вас уже есть хороший универсальный инструмент, подходящий для решения ваших задач. Вы можете доработать его для того, чтобы лучше (меньшими усилиями) решать некоторые более типовые для вашего случая задачи. Но! Эта доработка, эта технология, не должна мешать универсальности инструмента, не должна делать решение нетиповой задачи более сложным. Иначе этот инструмент просуществует ровно до первого столкновения с реальностью. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 18:22 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунИнтересует может кто сталкивался с подобной задачей, какие подводные камни ждут впереди много человеко-лет разработки, если можно это назвать подводным камнем. И еще, прежде чем разрабатывать интерфейсы для построения систем, нужно на себе испытать внедрение таких систем в разных областях и не раз, чтобы понимать какие задачи вообще возникают. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 18:45 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarerУ меня есть опыт удачной реализации подобной идеи. Метрика удачности - моими разработками пользуются до сих пор, через несколько лет после того, как я ушел из этой фирмы, в том числе в новых проектах. <skipped> Как минимум надо понимать следующее. У Вас уже есть хороший универсальный инструмент, подходящий для решения ваших задач. Вы можете доработать его для того, чтобы лучше (меньшими усилиями) решать некоторые более типовые для вашего случая задачи. Но! Эта доработка, эта технология, не должна мешать универсальности инструмента, не должна делать решение нетиповой задачи более сложным. Иначе этот инструмент просуществует ровно до первого столкновения с реальностью. Вы хорошо сказали. Более того, я почти согласен с вашим критерием "удачности". Попробую обьяснить почему "почти" Дело в том, что у меня у самого есть успешно реализованый подобный механизм и им тоже пользуются уже несколько лет, после моего ухода из компании :) Но. Спрашивая сейчас самого себя, а стоило ли тратить на него силы и средства, я не могу (сам себе) однозначно ответить "да, стоило." Т.е. сейчас разработка есть и она хороша постольку, поскольку ей пользуются. Но мне кажется, что я мог потратить свое время в той компании с бОльшей пользей. Например не была реализована значительная часть функциональности в результате чего был потерян важный клиент. Я мог бы это сделать, но я писал engine. Так что я бы избегал излишнего упрощения при оценке необходимости подобной разработки (смотрите! в фирме NN такое есть и им давно пользуются) И уж точно не доверял бы подобные вещи человеку без опыта построения аналогичных систем, это уже к автору топика. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2006, 18:52 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Сорри, что пропал, рабочий день короткий, а дома Интренета нет. Наверное выбрал неудачное название. Мне нужна софтина универсальная не для всех, а именно для моих задач (вернее моих клиентов), которые я отлично знаю, и которые много-много лет уже работают. Сначала на dBase, теперь на MS SQL. Но они все какие-то разношерстые, написаны разными людьми, когда просто была необходимость срочно уйти от ДОСа. Попробуйте под Win2K или WinXP поработать с ДОС-программами и поймете почему надо было уходить :(. Плюс, вернее минус - все программы используют к примеру СВОЮ таблицу АДРЕС. Соответственно в каждой БД дублированные данные (и ошибки в каждой тоже свои). Вот и хочется разработать оболочку с едиными справочниками, ну и соответственно интерфейс всех программ однообразить. А принцип плагинов нужен, чтоб переписывать программы можно было постепенно, не спеша. Но поскольку я пока с плагинами не сталкивался вот и опасаюсь неизвестного. Мож идея имеет какое потенциальное ограничение? не очевидное мне умозаключительно. tygraПлохая у вас задумка. Потратите время, много времени, потом окажется, что чего-то нет, что-то не так, что-то совсем нельзя. Вот этого и опасаюсь. Мож в новом свете есть поправки к Вашим высказываниям? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 09:11 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Более правильный путь - спроектировать универсальную базу, залить туда все данные, а уж к к универсальной базе можно написать обычный интерфейс. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 09:30 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
sergey888Более правильный путь - спроектировать универсальную базу, залить туда все данные, а уж к к универсальной базе можно написать обычный интерфейс. Ну, универсальную базу может врядли, а вот база хранящая общие данные для разных программ (адреса, клиенты, пользователи, исполнители, ...) очень нужна. Отдельная. Чтоб возможные неудачные разработки других программ не могли ее испортить. Обычный интерфейс мне кажется здесь не подойдет. Как я понимаю - обычный, это когда для добавление дополнительной функциональности (к примеру, в организации решили компьютеризировать работу канцелярии - по сути небольшая отдельная программка) придется заново перелопачивать программу. Значит есть вероятность появления новых ошибок в отлаженной и проверенной программе. Я же хочу, чтоб добавление новых программ (модулей) никак не затрагивало ядра. К примеру как встраиваются переводчики в текстовые редакторы (Pragma, Stylus). Только еще проще. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 09:55 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ASCRUSПолностью солидарен. В свою очередь, полностью солидарен. Так и надо жить. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 10:21 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунЯ же хочу, чтоб добавление новых программ (модулей) никак не затрагивало ядра. Когда сосздадите такое ядро, которое будет способно обеспечивать работу любой новой функциональности, сообщите пож-та. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 10:25 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant Единый Универсальный Интерфес Реализующий Любую Функциональность. А потом окажется что реальная задача не "натягивается" на ваш engine Должна быть иерархия инструментария: 1. базовые средства (языки, системы программирования и разработки) 2. универсальные модули (написаны на 1) (ведение справочников, генераторы экранных форм, генераторы отчетов. стандартные функции и процедуры и т.д.) 3. проблемно-ориентированные модули (разработаны на 2+1) (решение типовых прикладных задач) Конкретная система разрабатывается (по убыванию приоритета): 3 - используются готовые решения + 2 - настраиваются универсальные модули + 2+1 - разрабатываются дополнителные алгоритмы и полностью оригинальные модули При таком подходе ЛЮБАЯ задача "натягивается" на ваш engine ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 10:29 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Автору: Вполне посильная задача. Как Вы заметили, многие уже проделывали эту работу. Более того ! Это, ИМХО единственно правильный путь для работы в отрасли учётных (не только торгово-бухгалтерских) систем широкого назначения. Неуспехи в этой области говорят лишь о неподготовленности команд к такой работе, отсутствию реально конструктивных и живучих идей. Чего греха таить, многие разработчики имеют очень поверхностное представление о будущей области применения системы. 80% возможностей среды разработки и СУБД не используются, зато потом раздаются возгласы "Это ацтой ! Тупик !". А ЧТО НЕ ТУПИК ? SAP ? NAVISION/AXAPTA ? 1C ? На каждый из этих пунктов можно найти аргумент "Это ацтой !". И причём справедливый аргумент ! Времена студенческих самописок из 10-20 таблиц уходят в прошлое. Пришли времена РАЗРАБОТЧИКОВ, а не кодеров. Как Вы возможно заметили у меня тоже есть подобная наработка :) Ушло менее 1 чел/года (70% готовности). Очень проста в освоении и легко отчуждаема. Может являться надстройкой над любой другой системой (СУБД MSSQL) Инструментарий тождественен Вашему :) Респект to ASCRUS, softwarer, iscrafm ! Пессимизма остальных не разделяю. Хотя без знаний и опыта соваться в это рискованно. Возможно это и есть источник пессимизма ? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 10:47 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
IMHO лично я в техническом плане никаких проблем решения задачи не вижу, разве что лично считаю MSSQL не самым подходящим сервером для такой задачи, по причине его одноплатформенности и недоразвитости TSQL, что приведет к тому, что какая то часть логики, да окажется на клиенте или теперь новомодных хранимых процедурах C#. Я лично вижу проблемы в другом - это в разработке методологии подходов проектирования такого класса задачи, где необходимо все до мелочей продумать, задать самому себе множество вопросов и найти множество правильных ответов, не противоречащих друг другу в различных аспектах. К примеру - как в БД правильно организовать взаимосвязи обьектов различных модулей, какое архитектурное решение принять для случаев, когда новый присоединяемый модуль имеет дополнительные расширения информации на существующую в других модулях, на которые он ссылается. Ну и т.д. - только начать копать для себя ТЗ, как думаю вопросов будет много много страниц. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:01 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
sergey888 Когда сосздадите такое ядро, которое будет способно обеспечивать работу любой новой функциональности, сообщите пож-та. Не хотелось особо углубляться, но придется. Все намного проще (на первый взгляд). "Ядро" - это всего лишь форма с некоторыми общими пунктами меню, на которой по принципу MDI-интерфейса открываются все программы (модули). Для запуска конкретной программы есть всплывающая панель (навигатор), "меню" которого формируется при запуске ядра и зависит от того какие модули находятся в папке Plugins и прав пользователя. А вся функциональность каждой отдельно взятой программки реализована в конкретном модуле. Т.е. когда я хочу добавить новую "программу" в этот комплекс, я в папку Plugins добавляю независимую от других программ dll-ку и все. Никто никому не мешает и т.п. Я вот только не знаю насколько полноценны возможности dll-к. Программы достаточно просты. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:16 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Ворчун, все о чем Вы пишите делается в ISCRA, она именно по таким принципам и построена, сплошные плагины: 1. "Я же хочу, чтоб добавление новых программ (модулей) никак не затрагивало ядра." 2. "принцип плагинов нужен, чтоб переписывать программы можно было постепенно, не спеша." Хотите потратить 30 человеко-лет собственных + кучу денег на оплату сторонних компонент? Уверяю Вас, сделать взаимодействие иногда вроде бы даже несовместимых вещей задача не тривиальная. Задумка у Вас правильная, но если нет опыта таких разработок - лучше не начинайте, возьмите полностью готовое. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:26 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVАвтору: Вполне посильная задача. Как Вы заметили, многие уже проделывали эту работу. Как Вы возможно заметили у меня тоже есть подобная наработка :) Ушло менее 1 чел/года (70% готовности). Очень проста в освоении и легко отчуждаема. Может являться надстройкой над любой другой системой (СУБД MSSQL) Инструментарий тождественен Вашему :) Хотя без знаний и опыта соваться в это рискованно. Возможно это и есть источник пессимизма ? Полюбопытствовал Вашими темами (Вызов ф-ции из DLL в главной форме приложения). Выходит не зря меня мучают сомнения. Не все так гладко на практике. Разработчик прислал первые наброски. dll-ки подгружаются. В пределах модуля выполняются несложные задачи - подключение к тестовой БД и отображение информации. Посмотрим как пойдет. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:26 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Что-то получается, что автор и остальные говорят малость о разном. Или все о разном ;) Я отвечал (и не только я) подозревая, что вы хотите что-то такое, такое универсальное и готовое, которое потом не требует программирования а просто настраивается каким-то образом для показа и изменения данных. Т.е. берется эта вещь, коннектится к любой БД, вы где-то чего-то настраиваете и получаете самогенерирующийся интерфейс к этой БД. Но оказывается, что вам то нужно не это. Вам нужно просто возможность динамически подключаемых модулей системы. которые все-равно разрабатываются, а не настраиваются. Ну это реализовано много где. Я лично делаю все в одном ехе, который сам по себе включает все, что есть. Но я не вижу тут каких-то особых проблем. Собственно, к самой по себе разработке это имеет посредственное отношение - один раз делается механизм подключения модулей, все остальное как всегда. -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:36 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVА ЧТО НЕ ТУПИК ? SAP ? NAVISION/AXAPTA ? 1C ? Их тоже, как и Ворчуна, мучили подобные вопросы. Поэтому в основе тот же "универсальный" интерфейс, разной степени универсальности , качества и объема загружаемых модулей. Всегда удивляло умение людей делать кучу ненужных вещей, чтобы получать 4ГБ (!!!!) инсталляции. Респект! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:41 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Ну и еще авторОбычный интерфейс мне кажется здесь не подойдет. Как я понимаю - обычный, это когда для добавление дополнительной функциональности (к примеру, в организации решили компьютеризировать работу канцелярии - по сути небольшая отдельная программка) придется заново перелопачивать программу. С чего бы вам перелопачивать программу? Вы добавляете туда новый функционал - и все, остально не трогаете. авторЗначит есть вероятность появления новых ошибок в отлаженной и проверенной программе. Только в той части, которую вы меняли. Какая разница, как вы загрузили изменеия, хоть сразу, хоть модулем, если в них ошибка, то они ни там ни там не будут работать, но в любом случае остальную функциональность не затронут. авторЯ же хочу, чтоб добавление новых программ (модулей) никак не затрагивало ядра. К примеру как встраиваются переводчики в текстовые редакторы (Pragma, Stylus). Только еще проще. А смысл то в чем? Что такое "ядро"? Получается, что ничего - нет ядра, есть оболочка, которая загружает разные dll. И все. автор"принцип плагинов нужен, чтоб переписывать программы можно было постепенно, не спеша." Почему вы так думаете? Переписывайте неспеша без плагинов, что вам мешает? Я так думаю, вы что-то немного не понимаете. То, что вы предлагаете, никак не влияет на вашу цель:Это позволит постепенно перевести все самостоятельные задачи (разные программы) к единообразию, не прерывая работу организации. Постепенно можно перевести даже при разработке одной большой общей программы. Ваши предложения этому никак не поспособствуют. Ну только усложнят жизнь в несколько раз :)) -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:44 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
sergey888Когда сосздадите такое ядро, которое будет способно обеспечивать работу любой новой функциональности, сообщите пож-та. Здесь его можно скачать (11МБ) , или почитать о нем (pdf, 1.8МБ) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 11:50 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
iscrafmХотите потратить 30 человеко-лет собственных + кучу денег на оплату сторонних компонент? Уверяю Вас, сделать взаимодействие иногда вроде бы даже несовместимых вещей задача не тривиальная. Задумка у Вас правильная, но если нет опыта таких разработок - лучше не начинайте, возьмите полностью готовое. Возможно по Московским меркам правильнее купить готовое. Но у нас ситуация другая. Да и не интересно мне предлагать такое. Я 10 лет зря что ли боролся с этими программами. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 12:04 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Это не только по московским меркам, это по меркам рациональности :) Успехов в разработке! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 12:12 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунПолюбопытствовал Вашими темами (Вызов ф-ции из DLL в главной форме приложения). Выходит не зря меня мучают сомнения. Не все так гладко на практике. Разработчик прислал первые наброски. dll-ки подгружаются. В пределах модуля выполняются несложные задачи - подключение к тестовой БД и отображение информации. Посмотрим как пойдет. 1) еще раз советую не делать этого вообще. Сосредоточтесь лучше на интенграции функциональности, обмена данными между программами. В перспективе - общей программы. Это гораздо, гораздо важнее чем "запускальщик" библиотек. 2) если пп 1 не подходит - поискать готовое (с исходниками !). 3) если пп 2 не подходит то обязать разработчика ваять свое "ядро" для _реальных_ библиотек, а не тестовых. Иначе вы вырастите хорошего, опытного разработчика с красивым резюме и знанием тучи технологий, но будете долго гадать куда же ушел год разработки. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 12:33 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
AviantПопробую обьяснить почему "почти" Дело в том, что у меня у самого есть успешно реализованый подобный механизм и им тоже пользуются уже несколько лет, после моего ухода из компании :) Но. Спрашивая сейчас самого себя, а стоило ли тратить на него силы и средства, я не могу (сам себе) однозначно ответить "да, стоило." Я понимаю такую постановку вопроса и согласен с ней. Да, может так получиться. В сформулированных мной требованиях этот пункт подразумевается там, где говорится о хорошем проектировщике и технологической культуре; именно это определяет эффект от проекта и его соотношение с себестоимостью. Я безусловно согласен с тем, что всегда существуют задачи, которые дешевле решить уникально, нежели пытаться обобщить. Я безусловно полагаю, что далеко не все коллективы просто готовы к разработке и внедрению такой технологии. Но полагаю, что при правильном применении этот подход может и должен дать действительно хороший результат. В моем случае было существенное граничное условие - мое руководство, будучи весьма посредственными разработчиками, ко всему, что само не могло сделать, относилось с огромным подозрением, поэтому протолкнуть через них можно было только явно выгодную вещь. Практически все, что я делал, окупалось на первом же проекте, иначе у меня просто не было шанса это сделать. AviantНапример не была реализована значительная часть функциональности в результате чего был потерян важный клиент. У меня к сожалению ситуация обратная. Очень вкусный клиент был потерян из-за того, что в свое время начальство отказалось от предлагаемого мной обобщения, а когда появилась необходимость в нем, запросила за переделку такую цену, что клиент завершил переговоры. AviantТак что я бы избегал излишнего упрощения при оценке необходимости подобной разработки (смотрите! в фирме NN такое есть и им давно пользуются) И уж точно не доверял бы подобные вещи человеку без опыта построения аналогичных систем, это уже к автору топика. Тут согласен. Мне кажется, плясать следует именно от разработчика, который может это сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 13:11 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Ну, универсальную базу может врядли, а вот база хранящая общие данные для разных программ (адреса, клиенты, пользователи, исполнители, ...) очень нужна. Отдельная. Чтоб возможные неудачные разработки других программ не могли ее испортить. Обычный интерфейс мне кажется здесь не подойдет. Как я понимаю - обычный, это когда для добавление дополнительной функциональности (к примеру, в организации решили компьютеризировать работу канцелярии - по сути небольшая отдельная программка) придется заново перелопачивать программу. Значит есть вероятность появления новых ошибок в отлаженной и проверенной программе. Я же хочу, чтоб добавление новых программ (модулей) никак не затрагивало ядра. К примеру как встраиваются переводчики в текстовые редакторы (Pragma, Stylus). Только еще проще. ---------------- если у вас в общей базе справочников стоит триггер который проверяет чтоб у вносимого юр.лица был валидный ИНН, к примеру, то никакие другие программы туда невалидный ИНН не смогут внести. Задача решена, ничего писать не надо. Никаких вызовов длл и пр. Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 13:50 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024 если у вас в общей базе справочников стоит триггер который проверяет чтоб у вносимого юр.лица был валидный ИНН, к примеру, то никакие другие программы туда невалидный ИНН не смогут внести. Задача решена, ничего писать не надо. Никаких вызовов длл и пр. А есть у Вас список всех валидных ИНН? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 14:02 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024если у вас в общей базе справочников стоит триггер который проверяет чтоб у вносимого юр.лица был валидный ИНН, к примеру, то никакие другие программы туда невалидный ИНН не смогут внести. Задача решена, ничего писать не надо. Вот типичное "тестовое" решение, которое "работает" как раз до момента внедрения. А потом оказывется, что все программы не допускают "невалидного" ИНН, а одна может позволить завести клиента вообще без ИНН. Но его потом требуется заполнить, если с этим юр. лицом заключается договор. Ага ? К автору топика. Поэтому я и написал выше - займитесь лучше устранением подобного рода функциональных нестыковок, а не интерфейсными рюшечками. Это сложнее и важнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 14:06 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
А есть у Вас список всех валидных ИНН? --------- это просто пример. (12 цифр из номера инспекции, счётчкика и контрольной суммы в двух последних цифрах, вроде так, могу ошибаться) Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 14:07 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Вот типичное "тестовое" решение, которое "работает" как раз до момента внедрения. А потом оказывется, что все программы не допускают "невалидного" ИНН, а одна может позволить завести клиента вообще без ИНН. Но его потом требуется заполнить, если с этим юр. лицом заключается договор. Ага ? -------------------- так если принято решения что ИНН должен быть везде и проверяется это в единой базе то даже если какая-то из систем будет хранить где-то в своей базе невалидные данные - в общую они не попадут. Т.е. принято решение и оно исполняется не в каждой отдельной системе а в общей базе. Разумеется в той системе в которой можно вводить невалидные данные будет проблема которйю придётся решать. Но единые данные будут валидными т.к. проверяются не зависимо от остальных систем Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 14:11 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant 1) еще раз советую не делать этого вообще. Сосредоточтесь лучше на интенграции функциональности, обмена данными между программами. В перспективе - общей программы. Это гораздо, гораздо важнее чем "запускальщик" библиотек. Между программами нечем меняться (пока по крайней мере). Каждая для своих целей. Только справочники общие. Aviant 2) если пп 1 не подходит - поискать готовое (с исходниками !). не встречал такого, да еще чтоб под наши задачи. А что-то универсальное (так, вообще) не нравится. Aviant 3) если пп 2 не подходит то обязать разработчика ваять свое "ядро" для _реальных_ библиотек, а не тестовых. Иначе вы вырастите хорошего, опытного разработчика с красивым резюме и знанием тучи технологий, но будете долго гадать куда же ушел год разработки. Программа пишется с нуля. Просто для проверки/согласования идеи используем подключение к тестовым базам ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 14:47 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024 если у вас в общей базе справочников стоит триггер который проверяет чтоб у вносимого юр.лица был валидный ИНН, к примеру, то никакие другие программы туда невалидный ИНН не смогут внести. Задача решена, ничего писать не надо. Никаких вызовов длл и пр. Правильно общая БД и будет себя обслуживать "сама". А длл - это маленькая программка ослуживающая итоговый журнал СВОИХ данных. К примеру - абон.отдел использует общую базу адресов и клиентов для наполнения СВОЕГО журнала - кто(клиент), какую работу, когда заказал, выполнена или нет и т.д. А регистратор используя общую БД ведет СВОЙ журнал, что по такому-то адресу зарегестрирован такой-то клиент, тогда-то, с долей.... Т.е. у каждой программулины есть "персональные" данные (итоговые), которые строятся в том числе используя общую БД (клиенты и адреса) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 14:57 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2 softwarer имхо, одна из особенностей общих решений та, что первый проект никогда не может окупится (считая стоимость разработки общего механизма + проекта). В принципе. Потому что общий механизм разрабатывается для класса задач. Для одного проекта его возможности должны быть излишни. А самая большая сложность в его разработке - угадать этот класс задач, его требования и ограничения и соблюсти баланс между возможностями механизма/сложностью его использования. Это, безусловно, зависит от таланта проектировщика, но еще все равно требуется что-то типа удачи, таланта предвидения... Я лично предпочитаю нарабатывать решения, удобные для использования в каждом случае. Однако то, что спрашивал автор, собственно, к такому механизму отношения не имеет. Это обычная, хорошая практика - разделения модулей. 2 iscrafm Алгоритм проверки ИНН разработан МНС; поищите в Консультанте. 2 1024 Что-то я запутался в ваших обьяснениях; но валидность ИНН не связана с обязательностью его ввода. Т.е., должно быть так - если ИНН есть, он должен проверяться. Но - если таковы требования - его может и не быть. Например, нерезидент или он еще не успел в налоговой зарегистрироваться. Nobody faults but mine... (LZ) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 15:12 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2 1024 Что-то я запутался в ваших обьяснениях; но валидность ИНН не связана с обязательностью его ввода. Т.е., должно быть так - если ИНН есть, он должен проверяться. Но - если таковы требования - его может и не быть. Например, нерезидент или он еще не успел в налоговой зарегистрироваться. ------------- да причём тут ИНН? Нужны общие справочники - положить их в одну БД. Написать триггеры проверки. И данные в этих справочниках будут соответствовать установленным правилам. Проблемы синхронизации данных когда в одной системе одни правила а в другой другие будут решаться в едином хранилище а не размазываться по нескольким. В разных системах данные могут быть разными а едином хранилище они будут соответствовать установленным правилам т.к. без этого они туда не попадут Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 15:24 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Перечитав топик, думаю меня интересует все же ответ на такой вопрос (к тем кто реализовывал длл). Могут ли возникнуть проблемы при обращении к общей БД, отличные, чем если бы это была обычная программа. А если я захочу перед регистрацией адреса за клиентом (БД "Архив") запросить инф. нет ли ареста по этому адресу (БД "Аресты")? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 15:29 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2 Ворчун Так вы все-же займетесь решать именно задачи компании, или будете решать задачи технологий разработки модульных приложений? А то уже проблемы, непонятки. А дальше сколько их будет? В итоге через год вы получите что-то, отточенное технологически, но не решающее собственно задач фирмы, ни модульно, никак. Еще раз спрошу, может скажете: что вас смущает в обычной разработке в отличие от модульной, которая, по вашему заблуждению, чудом решит все проблемы сама? -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 17:14 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Давайте попробуем определить "базовую часть" этого самого универсального интерфейса. Предполагаем, что он служит задачам учётного характера. Итак: * Главное меню согласно прав. * Унифицированное ведение справочников с возможностью быстрого создания новых. * Беспроблемное создание и увязка новых таблиц. * Система разграничения прав. * Отчётные возможности. Встроенный Репортер. Экспорт в популярные форматы. * Унифицированный интерфейс (фильтры, поиск, навигация) * Набор простых диалогов. * Создание кастомных форм ввода. * Унифицированный импорт/экспорт * Возможность обращения к внешним источникам данных (хотя бы для этой же СУБД) * Возможность подключения новых модулей DLL (как дополнительная возможность) Всё перечисленное позволяет создать новую учётную конфигурацию за очень сжатый срок. Затраты времени только на смысловую часть (запросы, отчёты, формы, права, новые таблицы). ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 17:39 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунЕсть такая задумка. Разработать оболочку в которую на принцыпах плагинов можно внедрять любую начинку. … А затем добавляем любую функциональность. Каждый модуль (плагин) самостоятелен в пределах своей задачи (грубо говоря отделная программа работающая в общей среде). Это позволит постепенно перевести все самостоятельные задачи (разные программы) к единообразию, не прерывая работу организации. Интересует может кто сталкивался с подобной задачей, какие подводные камни ждут впереди, и может подобный вопрос подымался на форуме? (инструментарий: Delphi+MS SQL Server) Есть такая разработка, живая, много раз апробированная – БАС . Как раз инструментарий на Delphi+MS SQL Server. Один и тот же BAS.exe, одна и таже структура базы данных используются для различных задач. BAS.exe один для всех, а база данных одна для каждого прикладного модуля, плюс две общие базы: администора и системная. На этом построены совершенно разные, с виду, прикладные модули. В бухгалтерии это Зарплата, Учет материалов, основные фонды, партнеры (поставщики, покупатели, и др.), финансы, бухучет. Есть учет производстве, экономическая подготовка производства. Другое направление – работа с населением – разные коммунальные предприятия и платежи населения с распределенной базой данной между поставщиками, банками, кассами, расчетным центром и ЖЭКами. ВорчунОдна из обязательных баз - база справочников (АДРЕСА и КЛИЕНТЫ и пр.служебные таблицы). Обязательные базы – это системные. Все прикладные справочники надо размещать в базе данных специализированного модуля. Ворчун, не верте скептикам. Это возможно, и такой инструментарий очень удобен для использования в различных областях. Если эта затея серьезная, приглашаю в приват. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 17:41 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Господа,универсальный интерфейс конечно хорошо,когда оно надо :) Но давайте попробуем посмотреть на тему универсального интерфейса чуть с другой стороны. По сути его цель - добавлять какие-либо поля к формам отображения,ввода и прочим при появленииновых параметров сущностей. Почему бы нам так не спроектировать структуру данных,чтобы она подразумевала добавление атрибутов как добавление новых записей в соответствующие таблицы и разработать интерфейс так,чтобы его не дорабатывать путем заполнения хитрейших интерфейсных справочников?! Примеры: 1. Для справочника номенклатурных позиций пмсм (главное без флейма обойтись) замечательно подходит уже успевшая набить оскомину всем "модель" Тенцера. Интерфейс делается один раз: слева панель с экземплярами объектов, справа при выборе конкретного объекта появляется аналог дельфийского ValueListEditor с двумя полями: имя атрибута и, соответствнно, его значение 2. Для описания взаимоотношений с клиентами строим структуру,позволяющую описать реальный мир на основе так называемых ролей, отношений и прочего. Например,для описания того,что кто-то является банком кого-то не обязателно в таблице всех субъектов прибавлять ссылку на другого субъекта, но банка, а достаточно ввести такое понятие как роль "банк" и ввести отношение типа "является банком".Далее в таблицу, описывающую отношения субъектов (причем она должна быть продумана так, чтобы в одном отношении конкретного типа могли участвовать хоть 10 субъектов), пишутся соответствующие записи. 3. для описания договоров не бьем в таблицу договоров все его стороны, а делаем структуру БД так,чтобы для каждого типа договора был определен список типов субъектов, которые участвуют в данном виде договора, а для конкретного договора заполняем табличку "Субъекты, принимающие участие в договоре." 4.Для описания набора булевских признаков группировки конкретного объекта используем стандартное дерево с иерархическим перечнем групп P.S.Иногда это не возможно (ну например в случае добавления каких-либо числовых атрибутов), но в большинстве случаев грамотное проектирование БД спасает от лишнего гемороя по проектированию универсальных вещей. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 17:47 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
грамотное проектирование БД спасает от лишнего гемороя по проектированию универсальных вещей. ----------- да. А от незнания простых вещей начинается "хранение объектов в базе" и прочие хмл сериализации Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 17:52 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
мод Aviant Единый Универсальный Интерфес Реализующий Любую Функциональность. А потом окажется что реальная задача не "натягивается" на ваш engine Должна быть иерархия инструментария: 1. базовые средства (языки, системы программирования и разработки) 2. универсальные модули (написаны на 1) (ведение справочников, генераторы экранных форм, генераторы отчетов. стандартные функции и процедуры и т.д.) 3. проблемно-ориентированные модули (разработаны на 2+1) (решение типовых прикладных задач) Конкретная система разрабатывается (по убыванию приоритета): 3 - используются готовые решения + 2 - настраиваются универсальные модули + 2+1 - разрабатываются дополнителные алгоритмы и полностью оригинальные модули При таком подходе ЛЮБАЯ задача "натягивается" на ваш engineА почему это называется "иерархия"? Может просто "функциональные возможности"? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 17:52 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ShtockГоспода,универсальный интерфейс конечно хорошо,когда оно надо :) Но давайте попробуем посмотреть на тему универсального интерфейса чуть с другой стороны. По сути его цель - добавлять какие-либо поля к формам отображения,ввода и прочим при появленииновых параметров сущностей. Почему бы нам так не спроектировать структуру данных,чтобы она подразумевала добавление атрибутов как добавление новых записей в соответствующие таблицы и разработать интерфейс так,чтобы его не дорабатывать путем заполнения хитрейших интерфейсных справочников?! Примеры: 1. Для справочника номенклатурных позиций пмсм (главное без флейма обойтись) замечательно подходит уже успевшая набить оскомину всем "модель" Тенцера. Интерфейс делается один раз: слева панель с экземплярами объектов, справа при выборе конкретного объекта появляется аналог дельфийского ValueListEditor с двумя полями: имя атрибута и, соответствнно, его значение 2. Для описания взаимоотношений с клиентами строим структуру,позволяющую описать реальный мир на основе так называемых ролей, отношений и прочего. Например,для описания того,что кто-то является банком кого-то не обязателно в таблице всех субъектов прибавлять ссылку на другого субъекта, но банка, а достаточно ввести такое понятие как роль "банк" и ввести отношение типа "является банком".Далее в таблицу, описывающую отношения субъектов (причем она должна быть продумана так, чтобы в одном отношении конкретного типа могли участвовать хоть 10 субъектов), пишутся соответствующие записи. 3. для описания договоров не бьем в таблицу договоров все его стороны, а делаем структуру БД так,чтобы для каждого типа договора был определен список типов субъектов, которые участвуют в данном виде договора, а для конкретного договора заполняем табличку "Субъекты, принимающие участие в договоре." 4.Для описания набора булевских признаков группировки конкретного объекта используем стандартное дерево с иерархическим перечнем группКак только Вы пытаетесь применить прикладные особенности различных приложений к разработке универсального инструментального средства, то это средство сразу же перестает быть универсальным. Например, в конкретной реализации не требуются ни партнеры, ни договора, ни... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 18:07 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
С Вашим высказыванием не спорю (если я правильно понимаю,что разговор ушел в создание платформы разработки ИС),но все-таки:как много Вы знаете учетных систем где нет ни договоров, ни партнеров :) Просто у меня тоже есть настраиваемый построитель интерфейсов, но не все вещи решать надо именно на нем... Понятно,что пользователю бывает все равно (привожу реальный пример из жизни), что при добавлении нового поля к справочнику замеров клиента (там компания по производству одежды) мы добавляем либо поле в таблице замеров и мы ему пересобираем модуль, либо мы в нашем средстве автоматом добавляется в таблицу это поле и в этом же средстве что-то делается для добавления его в формы ввода, либо есть грамотный Конструктор замеров, при заполнении справочника которого не добавляются столбцы в таблицу замеров (она фиксирована:код замера (ссылка на шапку замера), код параметра замера, его числовое значение), а лишь при добавлении нового замера в интерфейсе ввода мастер ввода предъявляет новое значение из справочника и пользователь вводит его значение. Но мне,как программеру,не хочется писать либо автогенератор процедур,либо переписывать их ручками, а затем перекомпиливать инвалидные объекты и прочее прочее прочее (и главное не забыть про отчеты, в которых новые данные автоматически подтянутся сами)... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 19:18 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
To 1024: А это к чему "да. А от незнания простых вещей начинается "хранение объектов в базе" и прочие хмл сериализации "? Я вроде бы такого не писал?Или это Вы просто вслух размышляете? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 19:20 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
это не вам, это тем кто делает сложные вещи из простых Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 19:26 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Тогда сорри за наезд:лежим'c, гриппуем'c и бросаемся на всем. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2006, 19:43 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
У меня складывается такое впечатление, что мы все тут говорим о неком комплексном модульном движке, который позволяет управлять и присоединять модули на всех уровнях системы (БД с бизнес-логикой, клиенты, отчеты), а автор топика всего лишь скромно имел ввиду создание обычного Plug-in у клиентской части. Если это так, то на данном форуме такое обсуждение вообще бессмысленно, это чисто техническое решение построения клиентской части и никакого отношению к разработке информационных систем не имеет. Такой вопрос лучше задавать на форуме Delphi, там полно спецов, которые делали такие вещи. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2006, 06:34 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#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 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторА вот теперь интересно обсудить плюс/минус хранения "персональных" данных отдельных приложений в одной БД или в различных.Что такое персональные данные ? Где грань между персональным и общим (с учётом того, что логика системы постоянно дорабатывается, перегруппируется, дополняется) ???? Система должна иметь стратегию развития. Универсальной стратегии не существует. Предложенная Вами стратегия имеет массу недостатков,т.к. модульность не панацея. Хранение данных в разных БД может быть оправдано: 1. При больших объёмах. Прошлые периоды лежат отдельно и нужны редко 2. Высокие требования по безопасности 3. Наличие коробочных систем, вмешаться в работу которых проблематично 4. Наличие мощного OLAP-анализа (пересекается с п.1). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 10:21 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSV Что такое персональные данные ? Где грань между персональным и общим (с учётом того, что логика системы постоянно дорабатывается, перегруппируется, дополняется) ???? Система должна иметь стратегию развития. Универсальной стратегии не существует. Предложенная Вами стратегия имеет массу недостатков,т.к. модульность не панацея. Хранение данных в разных БД может быть оправдано: 1. При больших объёмах. Прошлые периоды лежат отдельно и нужны редко 2. Высокие требования по безопасности 3. Наличие коробочных систем, вмешаться в работу которых проблематично 4. Наличие мощного OLAP-анализа (пересекается с п.1). Персональные (для приложения) - итоговые данные, которые используются только в этом приложении (клиент - коммунальное предприятие, поэтому мои примеры из их области). Например. Канцелярия - регистрирует входящие/исходящие документы и отметку о выполнении. Архив - хранит информацию о владельцах собственности. Абонотдел - принимает заявки на регистрацию правоустанавливающих документов (сроки, деньги...). Вообщем каждое приложение содержит итоговые данные "не нужные" другому приложению. Хотя все приложения используют в том числе "общие" данные (АДРЕСА, КЛИЕНТЫ, USER-ы, ОТДЕЛЫ...). Система конечно не коробочная (заказная), но потенциально есть другие заказчики, которым необходима лишь частичная функциональность. И не исключено что другому заказчику в одном из модулей потребуется, что-то слегка изменить. Мне кажется в моем варианте (предполагаемом) это будет легче реализовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 11:00 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarerНасколько я понимаю, Вы говорите о "базах данных" в mssql-ном смысле, аналоге ораклового "схема". Если так - принцип модульности в плане разнесения разных подсистем в разные схемы имеет право на существование, но в то же время имеет ряд практических неудобств, главное из которых - нет возможности легко менять названия схем (баз), в которых лежат модули. А это допустимо только для самописной системы, но не для [человеческой] тиражируемой. Сразу представляется, как гениальный разработчик распихивает свое приложение по схемам [common], [buh], [store], и как это начинает конфликтовать с приложением другого разработчика в той же БД.А по-мему, так проблема распихивания своих обновлений по уже существующим работающим систем, которые позволяют на местах делать различные доработки, существует не зависимо от того, на чем эта система основана. Даже если она узкоспециализированная программа, то обновления разработчика, каким бы гениальным он не был, могут столкнуться с конфликтами, вызыванными месными доработками. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:20 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Я говорю о базах MSSQL сервера до версии 2005. softwarerНасколько я понимаю, Вы говорите о "базах данных" в mssql-ном смысле, аналоге ораклового "схема". Базы в mssql-ном смысле (во всяком случае до версии 2005) это не аналоги оракловских схем. Если я правильно понимаю (поправьте), между таблицами находямися в разных оракловских схемах можно поставить внешний ключ. Между таблицами в разных базах MSSQL нельзя. Есть и другие ограничения. PVPТо же самое, что и с одной процедурой, если программирование всех новых задач делать в ней одной, где нибудь в средине, вместо того, что бы делать новые процедуры для новых задач. Вы считаете что разрастание кода процедуры и количества объектов базы суть одно и тоже ? PVPПринцип модульнусти Вы признаете только в автомобилестроении? Или еще и в разработке процедур? Может следует распространить его и базы данных? Что в вашем понимании принцип модульности и чем именно он нарушается, когда объекты, относящиеся к разным, но частично пересекающимся предметным областям находятся в одной БД ? Поясните пожалуйста также почему вы не усматриваете нарушения "принципа модульности" в том, что эти базы находятся в одном сервере БД. PS: прямо вот сейчас у меня в базе, в которой изначально "жил" один банковский опердень находятся объекты аж трех систем. Все они тоже изначально были никак не связаны, ага. В итоге несколько лет мучений по интеграции, написания каких-то сервисов, отслеживающих взаимосвязи, запускающих импорт-экспорт и устраняющих ошибки в разсогласованых данных. Потом долгий и мучительный рефакторинг по объединению всего в одно целое, проблемы с переходом на новые, "единые" данные, общую безопасность и т.п. Вот цена ошибки. А общего по большому счету у систем всего ничего - клиентская база. И чаще всего не пересекающася. И все системы используются совершенно разными людьми для совершенно разных целей. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:27 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ВорчунА у меня предполагался такой компромис: База СПРАВОЧНИК (общие данные для всех приложений) и будет содержать в том числе табл.ПОЛЬЗОВАТЕЛЬ (они ведь едины в пределах организации) и решать правами на какие приложения пользователь обладает. А главным делом оболочки будут две задачи - работа с БД СПРАВОЧНИК и подключение всех остальных приложений в единую средУ (естественно учитывая права пользователя). А "персональные" данные каждое приложение хранит в своей БД. А вот теперь интересно обсудить плюс/минус хранения "персональных" данных отдельных приложений в одной БД или в различных.Это не компромис. Это уход выдвинутой идеи. Здесь нарушается принцип модульности. К этой общей базе Вам придется обращаться за доработками каждый раз, когда делаете новую задачу. Потому что в новой задаче будет или справочник, или еще что нибудь такое, чего не было в предыдущих. Попробуйте поработать в этом же направлении, только в не делая отдельную специальную базу. Для этого у Вас в каждой базе может быть блок, отвечающий за справочники. Он одинавый для всех задач. Процедуры для работы с ним, а также форма (формы) клиентского модуля также одинаковы. Зачем тогда справочники сбрасывать в одну общую базу? Оговорюсь, на всякий случай. Я далек от того, что принцип модульности можно выполнить на все сто процентов. Это как в одном анегдоте - все не выйдет, но стремиться к этому следует. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:28 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSV авторА вот теперь интересно обсудить плюс/минус хранения "персональных" данных отдельных приложений в одной БД или в различных.Что такое персональные данные ? Где грань между персональным и общим (с учётом того, что логика системы постоянно дорабатывается, перегруппируется, дополняется) ???? Система должна иметь стратегию развития. Универсальной стратегии не существует. Предложенная Вами стратегия имеет массу недостатков,т.к. модульность не панацея. Хранение данных в разных БД может быть оправдано: 1. При больших объёмах. Прошлые периоды лежат отдельно и нужны редко 2. Высокие требования по безопасности 3. Наличие коробочных систем, вмешаться в работу которых проблематично 4. Наличие мощного OLAP-анализа (пересекается с п.1). Поддерживаю ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:30 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant PVPТо же самое, что и с одной процедурой, если программирование всех новых задач делать в ней одной, где нибудь в средине, вместо того, что бы делать новые процедуры для новых задач. Вы считаете что разрастание кода процедуры и количества объектов базы суть одно и тоже ? Да, это имеет один характер развития, нагромождения и последствий. Процедура может расти сколь угодно в длину при элементарной логие - последовательное выполнение независимых блоков. Но при сложной логике процедуры - ее рост приведет к ее неуправляемости. То же самое с базой данных. При простом накоплении элементарных объектов, не связанных или мало связанных между совой - ради бога. Но при сложных взаимосвязях - после некоторого предела с этой базой не собладает даже ее разработчик, не говоря уже о сторонних программистах, пытающихся в нее добавить еще что нибудь. "Универсальная база" - она первоначально сложнее, чем простые специализированные, но ее сложность практически не растет при расширении функционала системы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:37 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant PVPПринцип модульнусти Вы признаете только в автомобилестроении? Или еще и в разработке процедур? Может следует распространить его и базы данных? Что в вашем понимании принцип модульности и чем именно он нарушается, когда объекты, относящиеся к разным, но частично пересекающимся предметным областям находятся в одной БД ? Поясните пожалуйста также почему вы не усматриваете нарушения "принципа модульности" в том, что эти базы находятся в одном сервере БД. Я не усматриваю в этом нарушений принципа модульности. Если это типовая таблица с типовым набором процедур, связей, триггеров, и весь этот набор в комплекте добавляется в базу данных при появлении какой либо новой задачи в том же состове (или почти в том же), то это и есть модуль. Так же наращивать количество однотипных баз данных или количество однотипных таких модулей в одной базе данных (в терминологии SQL 2000) - это один и тот же подход. Я не возвражаю ни против какого. Просто у меня практическая реализация - это наращивание баз данных. Наверное, поэтому я все время на это и сбиваюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:43 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPЭто не компромис. Это уход выдвинутой идеи. Здесь нарушается принцип модульности. К этой общей базе Вам придется обращаться за доработками каждый раз, когда делаете новую задачу. Потому что в новой задаче будет или справочник, или еще что нибудь такое, чего не было в предыдущих. Попробуйте поработать в этом же направлении, только в не делая отдельную специальную базу. Для этого у Вас в каждой базе может быть блок, отвечающий за справочники. Он одинавый для всех задач. Процедуры для работы с ним, а также форма (формы) клиентского модуля также одинаковы. Зачем тогда справочники сбрасывать в одну общую базу? Действительно, лучше для каждой задачи поддерживать свой набор справочников. Актуальных. Главное не забывать вовремя вносить изменения. PVPОговорюсь, на всякий случай. Я далек от того, что принцип модульности можно выполнить на все сто процентов. Это как в одном анегдоте - все не выйдет, но стремиться к этому следует. Продолжая вашу аналогию с автомобилестроением - почему в автомобиле только один аккумулятор ? Не лучше ли сделать у каждого агрегата свой. Ну чтобы "модульность" не нарушалась. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 12:50 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant PVPОговорюсь, на всякий случай. Я далек от того, что принцип модульности можно выполнить на все сто процентов. Это как в одном анегдоте - все не выйдет, но стремиться к этому следует. Продолжая вашу аналогию с автомобилестроением - почему в автомобиле только один аккумулятор ? Не лучше ли сделать у каждого агрегата свой. Ну чтобы "модульность" не нарушалась.А разве во всех автомобилях только один аккумулятор? Не ужели нет таких, где для разных узлов есть отдельные? Например в электромобилях. Я бы поставил отдельный для сигнализации, например, в запорожце. Общий отключил, потому что там замок зажигания не надежен, а дополнительный передает мне сигнал, когда кто то пытается угнать машину. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 13:02 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPА разве во всех автомобилях только один аккумулятор? Не ужели нет таких, где для разных узлов есть отдельные? Например в электромобилях. Я бы поставил отдельный для сигнализации, например, в запорожце. Общий отключил, потому что там замок зажигания не надежен, а дополнительный передает мне сигнал, когда кто то пытается угнать машину. Вот именно, _иногда_ есть и несколько аккумуляторов, но как я понял из ваших слов PVPЯ далек от того, что принцип модульности можно выполнить на все сто процентов. Это как в одном анегдоте - все не выйдет, но стремиться к этому следует. надо стремиться к тому, чтобы у каждого узла, в котором используется электричество был свой. Есть еще куда развиваться конструкторской мысли :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 13:14 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVP Это не компромис. Это уход выдвинутой идеи. Здесь нарушается принцип модульности. К этой общей базе Вам придется обращаться за доработками каждый раз, когда делаете новую задачу. Потому что в новой задаче будет или справочник, или еще что нибудь такое, чего не было в предыдущих. Попробуйте поработать в этом же направлении, только в не делая отдельную специальную базу. Для этого у Вас в каждой базе может быть блок, отвечающий за справочники. Он одинавый для всех задач. Процедуры для работы с ним, а также форма (формы) клиентского модуля также одинаковы. Зачем тогда справочники сбрасывать в одну общую базу? А этот блок отвечающий за справочники обслуживает свои справочники, или все же обращается за данными в общий справочник? Если только свои - то так у нас построено сейчас и разногласия в справ. АДРЕСА очень удручают. Одна улица в разл. справ. к примеру называется 10-Линия, 10-ая Линия, 10-я Линия. Хлопотно это все вылавливать. Вот и хочется этого избежать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2006, 14:26 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2 softwarer авторПростой пример: возьмите общее решение и десять похожих проектов, для которых оно окупилось. Теперь представьте себе, что это десять этапов одного проекта Мне сложно представить десять этапов одного проекта, настолько однотипных, что в них можно применить одно решение. Но, если такой проект есть, то в рамках нашей дискуссии правильнее рассматривать его именно как десять проектов. И тогда при хорошем общем решении, после первого, скажем, этапа оно должно окупится и моя логика не нарушается :) В остальном же с Вами согласен. Я всегда считал, что если до конца требования неясны (по обьективным причинам), надо идти к сложному от простого. А не замахиваться на мега-систему, осознав после что впустую убухали кучу времени. Хотя - удача все же существет. Иначе придется признать, что талантливые люди никогда не терпели неудач. 2 PVP авторПри простом накоплении элементарных объектов, не связанных или мало связанных между совой - ради бога. Но при сложных взаимосвязях - после некоторого предела с этой базой не собладает даже ее разработчик, А при сложных взаимосвязях в десятках баз, он (разработчик) конечно же, легко справится? Опасное заблуждение. Сложные взаимосвязи - это либо следствие неудачного проектирования (см пост Aviant), либо - они сложные в реальности, таковы требования бизнеса и се ля ви. И в последнем случае от разделения на базы проще они не станут. 2 Ворчун автор...разногласия в справ. АДРЕСА очень удручают... Если речь идет не о картографической системе (а как я понимаю, у вас обычная учетная), то адреса не есть самостаятельная сущность. ЭТо только атрибут чего-то. И соответсвенно, плясать надо от того, как он появляется в системе, и допустимо ли вообще занесение его в единый справочник. Nobody faults but mine... (LZ) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2006, 12:49 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPА по-мему, так проблема распихивания своих обновлений по уже существующим работающим систем, которые позволяют на местах делать различные доработки А кто говорит о такой проблеме? Откуда Вы ее взяли? Я о такой не говорил и в виду не имел. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2006, 14:18 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
AviantБазы в mssql-ном смысле (во всяком случае до версии 2005) это не аналоги оракловских схем. Разумеется, не точные аналоги. Но это самая близкая аналогия, которую можно найти; если точнее, насколько я понимаю, база в mssql-ном смысле имеет некоторые черты ораклового понятия schema, некоторые черты ораклового понятия tablespace и некоторые собственные. Ключевым здесь является то, что насколько я понимаю, можно написать код модульной системы, где каждый модуль сидит в собственной mssql-ной базе, это будет работать в общей среде (например, под одной оболочкой) и не будет "явно идиотским" решением. При оракловом же смысле слова "база" это будет явным идиотизмом - в связи с чем я собственно и хотел прояснить смысл сказанного. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2006, 14:31 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
aagЕсли речь идет не о картографической системе (а как я понимаю, у вас обычная учетная), то адреса не есть самостаятельная сущность. ЭТо только атрибут чего-то. И соответсвенно, плясать надо от того, как он появляется в системе, и допустимо ли вообще занесение его в единый справочник. Я думаю, что для Бюро Технической Инвентаризации АДРЕС являеется самостоятельной сущностью. И правильное его написание - одна из немаловажных задач (вся же работа с БД начинается с поиска адреса). Поэтому и хочется, что б это был единый справочник. С момента постановки вопроса прошерстил немного форум по вопросу написания больших систем и в т.ч. с использованием dll. Понял, что за 3 прошедших года (интересная дискуссия [162316] от 2 апреля 2003 ) ЗДЕСЬ каждый (ну или почти) так и остался при своем мнении. Кстати интересно LSV, в итоге какой путь избрали Вы? В принципе я не против одной БД. На сегодня меня подталкивают избрать самую большую БД (в плане наличия наибольшего совпадения однотипных таблиц) как опорную и к ней потихоньку "наращивать" остальные приложения, т.е. все новые разработки. Для ясности ситуации - я не разработчик, но мне приходится решать правильный ли путь предлагает программист. Даже поручив разработку специализированной фирме ситуация останется та же. Правильно ли ОНИ сделали я увижу только после начала эксплуатации и написания новых приложений. Поэтому и интересует мнение тех, кто уже прошел этот путь. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2006, 10:28 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant Ворчункакие подводные камни ждут впереди, и может подобный вопрос подымался на форуме? Подводные камни примерно такие: долго-долго разрабатывать Единый Универсальный Интерфес Реализующий Любую Функциональность. А потом окажется что реальная задача не "натягивается" на ваш engine Задач таких -- море. Практически любая лабуда учетная. Я этим долго занимался и у нас не один проек был сделан на этом деле. Но тут нельзя увлекаться, надо четко разграничить, что можно и нужно делать через универсальный интерфейс, а что нельзя. Например, нельзя писать самоконфигурируемые формы которые могут по данным себя конфигурировать и все на свете редактировать. Легче, проще и надежнее , и эффективнее в смысле эргономики GUI, написать это в лоб, явным образом, как обычную форму. Мы пытались делать т.н. универсальные формы несколько раз, кажется три, -- итог - практически полный ноль во всех случаях. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 10:40 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
MasterZivНо тут нельзя увлекаться, надо четко разграничить, что можно и нужно делать через универсальный интерфейс, а что нельзя. Например, нельзя писать самоконфигурируемые формы которые могут по данным себя конфигурировать и все на свете редактировать. Легче, проще и надежнее , и эффективнее в смысле эргономики GUI, написать это в лоб, явным образом, как обычную форму. Мы пытались делать т.н. универсальные формы несколько раз, кажется три, -- итог - практически полный ноль во всех случаях. Да, я об этом и говорил. Проблема в том, что программисты ни разу в жизни не писавшие такие вещи не могут сходу поверить в бессмысленность затеи. И идеи универсальных форм на основе каких-то мета данных появляются раз за разом. С другой стороны, почти в каждой учетной задаче можно выделить кусочек, где некая универсальность возможна. Я обычно поступаю так: в новом проекте обязательно найдется молодой горячий парень со "свежей" идеей универсализации всего и вся. Вот ему и даю сделать этот кусочек. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 12:54 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Aviant Да, я об этом и говорил. Проблема в том, что программисты ни разу в жизни не писавшие такие вещи не могут сходу поверить в бессмысленность затеи. И идеи универсальных форм на основе каких-то мета данных появляются раз за разом. Это действительно сложно в проектировании и реализации. Но нет ничего невозможного. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 13:57 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
iscrafmЭто действительно сложно в проектировании и реализации. Но нет ничего невозможного. Невозможного - ничего. Вопрос упирается в целесообразность. Если довести эту идею до конца, получится просто новая Delphi, ничем не лучше старой кроме того, что от начала и до конца написана собственными руками. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 14:29 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
MasterZivМы пытались делать т.н. универсальные формы несколько раз, кажется три, -- итог - практически полный ноль во всех случаях.Вывод - если у нас не получилось, то это невозможно и не нужно. А если где то сделали и используется, то мы этого не замечаем и не хотим замечать, потому что этого не может быть. AviantДа, я об этом и говорил. Проблема в том, что программисты ни разу в жизни не писавшие такие вещи не могут сходу поверить в бессмысленность затеи. И идеи универсальных форм на основе каких-то мета данных появляются раз за разом.А как на счет тех программистов, которые это реализовали и используют? При этом очень эффективно. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 14:30 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarerНевозможного - ничего. Вопрос упирается в целесообразность. Если довести эту идею до конца, получится просто новая Delphi, ничем не лучше старой кроме того, что от начала и до конца написана собственными руками. Сделать новую Delphi конечно же целью не является :). Другие критерии целесообразности. Упростить разработку сложных взаимосвязанных приложений и упростить сопровождение, снизить затраты на управление ЖЦ приложений. Вот такие цели конечно достигаются. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 14:40 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Мы пытались делать т.н. универсальные формы несколько раз, кажется три, -- итог - практически полный ноль во всех случаях.Значит плохо пытались... Глупо переводить в универсальность все формы проекта. Но 80% форм можно перевести на универсальность. Справочники, списки (в т.ч. шапка/строки) - идеальные кандидаты для универсальных форм. В примере моя универсальная форма (уже показывал). В её основе 1 или 2 SQL-запроса + метаданные. Вместо запроса может быть ХП с параметрами. Форма может быть простым списком, деревом, шапка/строками, панель/список. Есть поиск. Можно добавлять сложные фильтры. Из любой колонки можно вызвать другую форму/отчёт/процедуру и т.п. Каждая колонка может быть настроена согласно безопасности, а также раскрашена по условию. ЗЫ: Всё на Delphi. Всего 2-3тыс. строк кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 14:50 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Пример формы панель/список. Не пинайте за кривизну. Просто перед снимком дал признак форме "как панелька". Можно использовать для документов шапка/строки. Каждый контрол может иметь свой цвет, координаты и порядок обхода. По умолчанию - сверху вниз (как на рисунке). Допустимы рисунки, кнопки, радиогруппы и Мемо. Всё может быть как лукап или ДриллДаун. А вы говорите, что универсальность - миф. НЕ МИФ ! 70% системы укладывается в эту ЕДИНСТВЕННУЮ ФОРМУ. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 14:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
iscrafm Упростить разработку сложных взаимосвязанных приложений и упростить сопровождение, снизить затраты на управление ЖЦ приложений. Вот такие цели конечно достигаются. Достигаются. И ключевой момент, с которым, полагаю, Вы согласитесь - достигаются при правильно выбранном уровне универсализации. "Излишняя универсальность" мешает им ничуть не меньше, нежели недостаточная. Что есть правильный уровень - думаю, не удастся описать конструктивно (иначе, чем "тот, при котором достигаются названные цели"). Надо смотреть по месту и много думать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 14:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Я вот думал, в каком случае может понадобиться "универсальный" интерфейс? Ну, например если люди клепают отчеты (типа очень много отчетов). У каждого отчета - свои параметры, следовательно своя форма. Ну или часто появляются каки-либо новые сущности (или новые типы). Кстати, простые формы легко могут быть описаны XML. Результатом работы - тоже может быть XML. XML может быть разложен по нескольким таблицам (XML Sredding). Базы из большой тройки - Oracle, MS SQL, DB2 - позволяют это делать. (Только что-то это сильно напоминает Web-приложения. ) Но в любом случае, любое приложение выиграет если будет позволять строить (и даже генерировать) произвольные пользовательские формы. Т.е. хранить описание форм в виде XML в базе данных и иметь единственный exe который эту всю байду обрабатывает. Не знаю найдутся ли смельчаки, которые смогут (и возьмутся) профессионально все это реализовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:03 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Продолжение: Есть ещё вспомогательная лукап-формочка для просмотра картинок(bmp,gif,jpg), текстов или произвольных файлов (вызывается их просмотр по умолчанию). Для учётных задач перечисленных выше возможностей вполне достаточно. Скептики заткнулись ??????????? Вопросы про реальность универсальности будут ???????????? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:07 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
iscrafmСделать новую Delphi конечно же целью не является :). Другие критерии целесообразности. Упростить разработку сложных взаимосвязанных приложений и упростить сопровождение, снизить затраты на управление ЖЦ приложений. Вот такие цели конечно достигаются.Поддерживаю. Целиком и полностью. Здесь примеры десятков форм , сделанных на основе универсального интерфейса. LSVНо 80% форм можно перевести на универсальность.У меня другая статистика. Из десятков задач и сотен форм только один раз потребовалась разработка специальной формы, когда делали программу приема платежей от населения - здесь были слишком высокие требования к реактивности и удобству интерфейса. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:10 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarerДостигаются. И ключевой момент, с которым, полагаю, Вы согласитесь - достигаются при правильно выбранном уровне универсализации. "Излишняя универсальность" мешает им ничуть не меньше, нежели недостаточная. Что есть правильный уровень - думаю, не удастся описать конструктивно (иначе, чем "тот, при котором достигаются названные цели"). Надо смотреть по месту и много думать. Я с Вами полностью согласен. И на счет выбора уровня универсализации и насчет много думать. Варианты типа "молодой горячий парень" быстренько набросает не проходят. Особенно если система используется в промышленном масштабе на многих разнородных проектах. А для одного проекта вероятней всего городить такое не следует. Как говориться "Delhi рулит". ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:14 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2gardenman Про генерацию новых форм тоже думал. Пока у меня есть возможность хранить описание форм (*.dfm) в базе. Набор визуальных контролов достаточно широкий, хотя не произвольный. Все контролы на форме юзают фиксированный набор процедур и функций. Это ещё более расширяет возможности системы в сторону универсальности. Теперь заказчик может не трогая разработчика сам что-то добавить или изменить. В принципе ничто не мешает быстро построить "с нуля" совершенно новую учётную систему НЕ ПЕРЕПИСЫВАЯ ЕХЕ. До скриптов, расширяющих функционал пока руки не дошли, хотя было бы прикольно Также предполагаю подключение плагинов в виде DLL. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:19 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
gardenmanНо в любом случае, любое приложение выиграет если будет позволять строить (и даже генерировать) произвольные пользовательские формы. Т.е. хранить описание форм в виде XML в базе данных и иметь единственный exe который эту всю байду обрабатывает. Не знаю найдутся ли смельчаки, которые смогут (и возьмутся) профессионально все это реализовать. Реализовано. Здесь отвечал на подобный вопрос достаточно подробно. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:19 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
gardenmanЯ вот думал, в каком случае может понадобиться "универсальный" интерфейс? Ну, например если люди клепают отчеты (типа очень много отчетов). У каждого отчета - свои параметры, следовательно своя форма. Ну или часто появляются каки-либо новые сущности (или новые типы). Да просто, для разработки новых приложений в той области, для которой предназначен этот инструментарий. gardenmanНо в любом случае, любое приложение выиграет если будет позволять строить (и даже генерировать) произвольные пользовательские формы. Т.е. хранить описание форм в виде XML в базе данных и иметь единственный exe который эту всю байду обрабатывает. Не знаю найдутся ли смельчаки, которые смогут (и возьмутся) профессионально все это реализовать.Могу сказать об этом в прошедшем времени - нашлись такие, которые это реализовали. http://www.softbas.com.ua/viewpage.php?url=pages/bas/product/instr/index.html ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:21 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2 iscrafm и PVP: Респект коллеги ! Общими усилиями мы развенчали миф о нецеллесообразности и нереальной трудоёмкости построения элементов универсального интерфейса. Разумеется речь не шла о универсальности на абсолютно все случаи жизни, но как показывает жизнь для стандартных СУБД-задач это вполне посильно не только миникомандам, но даже мастерам-одиночкам. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:35 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVОбщими усилиями мы развенчали миф о нецеллесообразности и нереальной трудоёмкости построения элементов универсального интерфейса. Разумеется речь не шла о универсальности на абсолютно все случаи жизни, но как показывает жизнь для стандартных СУБД-задач это вполне посильно не только миникомандам, но даже мастерам-одиночкам. Я бы не был таким оптимистом. Трудоемкость разработки очень высокая. У нас она заняла около 15 человеко-лет. Я не верю в то, что одиночка, даже супер гений, может реализовать это сам. Существует масса черновой работы, время выполнения которой не почти не зависит от больших способностей исполнителей - это прежде всего апробация. Также масса работы по доводке программы до программного продукта. А еще же, во премя разработки надо тратить время и на добывание денег. Они ведь с неба не сыпятся. В таком составе, как была сделана БАС и при "хозрасчетных" источниках финансирования, я бы больше за такую разработку не взялся. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:49 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
gardenmanНе знаю найдутся ли смельчаки, которые смогут (и возьмутся) профессионально все это реализовать.А вообщем, наверное, Вы правы. За эту работу могут взяться либо очень опытные специалисты, либо начинающие, еще не битые, но очень способные и очень самоуверенные. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 15:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
gardenmanКстати, простые формы легко могут быть описаны XML. Я не вижу особого смысла в XML, когда есть DFM. gardenmanНо в любом случае, любое приложение выиграет если будет позволять строить (и даже генерировать) произвольные пользовательские формы. Т.е. хранить описание форм в виде XML в базе данных и иметь единственный exe который эту всю байду обрабатывает. Хм. Во-первых, "т.е." чуть сильно сказано. Во-вторых, стоит упомянуть, что этот подход называется "тонкий клиент" и само собой, решит далеко не все задачи (первый приходящий в голову пример - форма телефонного справочника, ловившая извещение о приходе-уходе сотрудников (проходе через турникеты)). Такой подход безусловно возможен, и безусловно имеет свою применимость, где-нибудь в области веб-интерфейса. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:01 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторЯ бы не был таким оптимистом. Трудоемкость разработки очень высокая. У нас она заняла около 15 человеко-лет. Я не верю в то, что одиночка, даже супер гений, может реализовать это сам у меня заняло полгода в качестве хобби http://]http://sss1024.narod.ru/ver.htm сделать из этого коммерческий продукт конечно гораздо сложнее. Собсно сюда пишу именно потому что говорунов немеряно а задача для нормального разработчика не такая уж сложная. Не имеющая отношения к коммерческой успешности. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:07 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:08 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarer gardenmanКстати, простые формы легко могут быть описаны XML. Я не вижу особого смысла в XML, когда есть DFM. gardenmanНо в любом случае, любое приложение выиграет если будет позволять строить (и даже генерировать) произвольные пользовательские формы. Т.е. хранить описание форм в виде XML в базе данных и иметь единственный exe который эту всю байду обрабатывает. Хм. Во-первых, "т.е." чуть сильно сказано. Во-вторых, стоит упомянуть, что этот подход называется "тонкий клиент" и само собой, решит далеко не все задачи (первый приходящий в голову пример - форма телефонного справочника, ловившая извещение о приходе-уходе сотрудников (проходе через турникеты)). Такой подход безусловно возможен, и безусловно имеет свою применимость, где-нибудь в области веб-интерфейса. Основной недостаток WEB интерфейса - закрыл окно браузера - введенные данные накрылись медным тазом. Необходим опять же WEB-server. Грубо говоря - трехзвенка получается. А тут другая идея на поверхности - форма (вместе с дефолтными данными) может быть не только из WEB сервера получена, но и из любого сограненного на диске XML файла, из базы данных, по почте, или из менеджера очередей (если он был отвалидирован с помощью соответствующей XML-схемы). Самое ужасное в WEB-интерфейсе - это его ублюдочность и тормознутость. Попробуте реализовать paging или загрузить в ComboBox справочник в 10000 опций - не думаю что с таким грузом юзеры будут пищать от восторга. Т.е. нужна гибкость (у WEВ тоже не очень) + перфоменс. И, опять же - это не для сложных форм, а для простых. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:16 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
2 softwarer А что такое DFM, можно ссылочку? (неграмотный я) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:18 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024 http://sss1024.narod.ru/ver.htm ссылка покорябалась 1024Собсно сюда пишу именно потому что говорунов немеряно а задача для нормального разработчика не такая уж сложная. Не имеющая отношения к коммерческой успешности.Пока не видно выхода. Не плохо было бы сделать сслылку на какую нибудь прикладную программу, построенною на этой основе. А пока до практики дело не дошло, эти заявления не обоснованы. Так, просто, "я знаю, что я сделаю". Об этом я и говорил. Набросать картинки, вывести что то на экран - это не задача. За недельку можно сбецать. А вот что бы это все заработало - это совсем другое дело. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:18 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024Собсно сюда пишу именно потому что говорунов немеряно а задача для нормального разработчика не такая уж сложная. Не имеющая отношения к коммерческой успешности.Согласен. Зачот. Для серийного продукта элементы универсального интерфейса - необходимая вещь. И чем проще тем лучше. И без фанатизма. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:19 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторСамое ужасное в WEB-интерфейсе - это его ублюдочность и тормознутость. Попробуте реализовать paging или загрузить в ComboBox справочник в 10000 опций вместо "WEB-интерфейсе" можно подставить "delphi-интерфейс" например. Или "Motif-интерфейс" Но правильно называть это "плохой интерфейс". А кал можно сделать на чём угодно. Плохому танцору всегда что-то мешает ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:20 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторПока не видно выхода. Не плохо было бы сделать сслылку на какую нибудь прикладную программу, построенною на этой основе. А пока до практики дело не дошло, эти заявления не обоснованы. ну здрасте. Программка лежит, работает. Я на этой разработке сделал две мелкие системы (вне работы). Делать из этой разработки второй аксес или повербилдер задача совершенно другого масштаба ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:24 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVДля серийного продукта элементы универсального интерфейса - необходимая вещь. И чем проще тем лучше. И без фанатизма.LSV, без фанатизма здесь ни чего не выйдет. Он необходим. Реалисты, люди с холодной головой, берут что то раскрученное, и спойно зарабатывают бабки. Имеют два выходных и в пять часов идут домой. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:24 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Должен быть хотябы один фанат, потом заразить остальных в команде. Единственное лекарство - жены и дети. Которые хотят денег и видеть вас дома. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:26 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024 авторСамое ужасное в WEB-интерфейсе - это его ублюдочность и тормознутость. Попробуте реализовать paging или загрузить в ComboBox справочник в 10000 опций вместо "WEB-интерфейсе" можно подставить "delphi-интерфейс" например. Или "Motif-интерфейс" Но правильно называть это "плохой интерфейс". А кал можно сделать на чём угодно. Плохому танцору всегда что-то мешает Естественно это правда. Стандартыми контролами и стандартными фичами, которые идут с тем же .Net путевую прогу не написать. Придется свои контролы разрабатывать или модифицировать (если получится) чужие. Для учетной системы нужно ведь не просто понятие "поле ввода", а нужно понятие "поле ввобда корреспондента" с прицепленным справочником и т.д. и т.п. Пусть таких контролов будет 2-3 десятка, и пусть они будут написаны конкретно (типа С++) и XML их будет тока склеивать. Таким образом получим пефоменс как у двузвенки и гибкость как у веб. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:30 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторпусть они будут написаны конкретно (типа С++) щас как раз работаю с системкой в которой интерфейс написан на "конкретном ц++". Такого гуана я давно не встречал 8) 1ц - все контролы стандартные (единожды написанные разработчиками 1ц). Без хмл. Есть беспрецедентное количество внедрений и людей неплохо рубящих на системе бабки. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:34 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024 авторПока не видно выхода. Не плохо было бы сделать сслылку на какую нибудь прикладную программу, построенною на этой основе. А пока до практики дело не дошло, эти заявления не обоснованы. ну здрасте. Программка лежит, работает. Я на этой разработке сделал две мелкие системы (вне работы). Делать из этой разработки второй аксес или повербилдер задача совершенно другого масштабаЕще раз ходил. Все равно не понял. Может не то искал. Почему то вспомнил о старых Clipper-FOX-овских экранных формах с Say-Get. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:34 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
ну и ладно. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:36 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024Но правильно называть это "плохой интерфейс". А кал можно сделать на чём угодно. Плохому танцору всегда что-то мешает В этом Вы правы, но забыли раскрутить цепочку размышлений в другую сторону. Если все равно делать плохой интерфейс, можно воспользоваться преимуществами метода, не внося дополнительных недостатков. Итого, для веба - годится. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:36 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarer 1024Но правильно называть это "плохой интерфейс". А кал можно сделать на чём угодно. Плохому танцору всегда что-то мешает В этом Вы правы, но забыли раскрутить цепочку размышлений в другую сторону. Если все равно делать плохой интерфейс, можно воспользоваться преимуществами метода, не внося дополнительных недостатков. Итого, для веба - годится.Конечно. Для чего то плохой, а для чего то хороший. Если бы он был всегда плохим, то о нем бы уже забыли. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:39 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
1024 авторпусть они будут написаны конкретно (типа С++) щас как раз работаю с системкой в которой интерфейс написан на "конкретном ц++". Такого гуана я давно не встречал 8) 1ц - все контролы стандартные (единожды написанные разработчиками 1ц). Без хмл. Есть беспрецедентное количество внедрений и людей неплохо рубящих на системе бабки. И примерно такое же количество людей которые плюются на 1с. Сам же говорил - что кал можно производить при помощи любых подручных средств. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:39 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVPЕсли бы он был всегда плохим, то о нем бы уже забыли. Слово "плохой" употребил мой собеседник, и я отвечаю ему в его терминологии. Соответственно, предлагаю если обсуждать этот эпитет, то не со мной. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:44 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
и плавно подходим к тому что написание чего-то своего универсального необязательно будет сложнее использования имеющегося и мейнстримного. В ряде случаев это будет оправдано, иногда слишком дорого. По ситуации смотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:45 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarer PVPЕсли бы он был всегда плохим, то о нем бы уже забыли. Слово "плохой" употребил мой собеседник, и я отвечаю ему в его терминологии. Соответственно, предлагаю если обсуждать этот эпитет, то не со мной.Да здесь вроде бы ничего обидного не должно быть. "плохой" или "хороший" - это термины относительные, неопределенные. Я только это имел ввиду. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 16:48 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVP LSVДля серийного продукта элементы универсального интерфейса - необходимая вещь. И чем проще тем лучше. И без фанатизма.LSV, без фанатизма здесь ни чего не выйдет. Он необходим. Реалисты, люди с холодной головой, берут что то раскрученное, и спойно зарабатывают бабки. Имеют два выходных и в пять часов идут домой.Речь шла про фанатизм при разработке универсальности. Эдак можно идею довести до абсурда, если прикрутить десять скриптовых языков, сто СОМ-объектов и интерфейсов, события, оповещения, запутанное наследование и т.п. ИМХО, единственный способ сделать жизнеспособную систему, это сделать её ПРОСТОЙ. Чтоб и разработчики не напрягались, разбирая свой же код, и специалист заказчика мог за пару часов сделать нужные изменения. Именно из-за избыточной сложности САПы, OEBSы, Акзапты и пр. никогда не станут системами для широких масс. Система должна помогать делать сложное простым, а не из простого делать сложное. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 19:13 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVИменно из-за избыточной сложности САПы, OEBSы, Акзапты и пр. никогда не станут системами для широких масс. однако, ни прибавить, не отнять ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2006, 19:23 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
PVP LSVОбщими усилиями мы развенчали миф о нецеллесообразности и нереальной трудоёмкости построения элементов универсального интерфейса. Я бы не был таким оптимистом. Трудоемкость разработки очень высокая. У нас она заняла около 15 человеко-лет. Я не верю в то, что одиночка, даже супер гений, может реализовать это сам. Точно не удачное название топика. Так далеко уходят рассуждения... А по поводу очень высокой трудоемкости - отвечу почему я оптимист в этом плане: 1."Свои" приложение я знаю очень хорошо (за 10 лет то). 2.Половина из этих приложений схожи по структуре (упрощает дело) 3.Есть немалый опыт разработки (я правда только руководил) и внедрения (порядка 12 приложений). 4.Задачи достаточно простые. Типичный пример - разработка последнего приложения заняла 3 месяца, одним программистом (правда до этого мы с ним успели поработать и притереться ) + месяц на доводку и внедрение. 5.На сегодня этот программист ведет разработку уже 4-го приложения. Т.е. мы уже неплохо "притерлись" и понимаем друг-друга. Приложения уже используют одинаковые интерфейсные правила. К сожалению нынешние сроки разработки не позволяют заниматься изучением длл, поэтому разработка снова ведется "как раньше". Но уже есть первая польза от общения на форуме. Новое приложение имея самостоятельную клиентскую часть, будет работать с одной из существующих БД ("пристыкуется" к ее данным) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2006, 10:43 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSVИменно из-за избыточной сложности САПы, OEBSы, Акзапты и пр. никогда не станут системами для широких масс. Система должна помогать делать сложное простым, а не из простого делать сложное. Насколько я смотрел, у той же Аксапты инструмент для разработки весьма прост, он не сложнее того же C#.NET. Но вот объем созданного функционала, для модификации которого надо разбираться во всех тонкостях взаимодействия частей - это да... К сожалению, такова, похоже, участь любой крупной учетной системы. Сложность системы отражает сложность управления и учета и изменить это можно, лишь упрощая автоматизируемую модель, что, в свою очередь, ведет к ухудшению качества автоматизации. Мелких фирм по количеству всегда будет больше, сложный учет там не нужен, и ,естественно, ни SAP ни Axapta там не нужны. На базе инструментария Аксапты можно бы было сделать отличную несложную систему - полноценного конкурента 1С, но этому мешает ценовая политика MS. И в итоге, для сложной системы квалификация всегда будет необходима, даже если человек будет программировать машину, рассказывая ей в микрофон правила документооборота. И сложных систем всегда будет меньше по количеству, чем простых, это просто объективный процесс. Хотел бы еще спросить, а известен ли кому фреймворк для разработки с возможностью полноценного ООП, где код, написанный вышестоящей инстанцией мог бы содержаться в базовых классах (как в Аксапте) ? Ведь это главное (ИМХО), чего не хватает среде 1С - возможности разработчикам прикладной системы изолироваться от специалистов текущей поддержки, и сравнительно безболезненно проводить обновления функционала на уровне разработчика. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2006, 07:00 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Предлагаю ознакомится с моей системой www.dbosystem.com ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2006, 12:02 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Ознакомился (я и раньше следил за Вашим творчеством). Учитывая темпы развития, на уровень полноценного промышленного фреймворка Вы выйдете лет через 10-15. Увы, один в поле не воин... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2006, 18:00 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Old NickПредлагаю ознакомится с моей системой А с чем там знакомиться? Какие то классы, справочники и пр. Нафига они мне нужны. Сделайте с помощью Вашей тулзы какой-нибудь реальный работающий проект, например простой склад. Но чтобы он был лучше и удобнее, чем существующие аналоги и тогда предлагайте с ним знакомиться. Если увижу, что с помощью Вашей тулзы я смогу усешно клепать один проект за другим, то я ее у Вас куплю(за хорошие деньги), а Дельфи выкину на помойку. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2006, 21:15 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Да, в неделю у меня выходит в лучшем случае часов 5, а то и вообще ничего. Найти спонсора не умею, умею программить, но не умею продавать. Сделать прикладную задачу: обязательно сделаю, но лет через 10-15, когда закончу. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2006, 11:05 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Old Nick...Сделать прикладную задачу: обязательно сделаю, но лет через 10-15, когда закончу. :-)Ваш сарказм в свой же адрес немного непонятен. Потребителям не нужны ИМЕННО ФРЕЙМВОРКИ. Им нужны РЕШЕННЫЕ ЗАДАЧИ. Задачи можно решать с помощью фреймворка. Ваша задача как автора ДОКАЗАТЬ ЧТО ЗАДАЧА С ПОМОЩЬЮ .... РЕШАЕТСЯ БЫСТРО И ПРОСТО. Для этого просто необходим простой и понятный пример. Пока примера нет, успех ф/в, пусть даже реально удачного, утопичен. Это и есть "гибель удачного продукта из-за неудачного менеджмента". ... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2006, 15:46 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Все очень просто: 1. Я никогда не буду менеджером. Это противоречит моей сущности. Надеюсь встретить на своем пути толкового менеджера и создать тандем. Если этого не будет, значит продукт умрет. 2. Прикладной продукт я сделаю только после того, как найду заказчика, без него фантазировать какое-то абстрактное приложение не имеет смысла. 3. До появления первого процессора микросхемы создавали со встроенным алгоритмом, то же самое, что сейчас пишут всякие приложения баз данных со встроенным алгоритмом. В конце концов одному умному человеку пришло в голову, что конструкции команд повторяются и из микросхем можно выделить общие блоки, которые выполняют постоянные конструкции команд. В результате появился первый процессор, это было в силиконовой долине. Попробуйте проследить аналогию. Если вам нужно для того, чтобы понять, что фреймворк способен облегчить разработку прикладных приложений нужен пример, то вам фреймворк не нужен. Он понадобится только тем программистам, которые сами понимают пользу такой программы. И поверьте, таких программистов не мало. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2006, 01:28 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
softwarerУ меня есть опыт удачной реализации подобной идеи. Метрика удачности - моими разработками пользуются до сих пор, через несколько лет после того, как я ушел из этой фирмы, в том числе в новых проектах. А возможно где-то почитать подробности Вашей реализации такой системы (если уж не потрогать ее руками, что вряд ли)? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2006, 11:45 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
авторЕсли вам нужно для того, чтобы понять, что фреймворк способен облегчить разработку прикладных приложений нужен пример, то вам фреймворк не нужен.Фреймворки безусловно нужны ! Однако всегда хочется убедиться, что ИМЕЕНО ЭТОТ ФРЕЙМВОРК, то что в данный момент нужно. 1С, САП, АХ..... тоже не что иное как проблемно-ориентированные фрейворки, но всем ли они подходят (не касаясь вопроса стоимости) ?????? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2006, 10:31 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
LSV авторЕсли вам нужно для того, чтобы понять, что фреймворк способен облегчить разработку прикладных приложений нужен пример, то вам фреймворк не нужен.Фреймворки безусловно нужны ! Однако всегда хочется убедиться, что ИМЕЕНО ЭТОТ ФРЕЙМВОРК, то что в данный момент нужно. 1С, САП, АХ..... тоже не что иное как проблемно-ориентированные фрейворки, но всем ли они подходят (не касаясь вопроса стоимости) ?????? Они ориентировані на прикладную математику. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 00:34 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Есть у меня подобный проект )))) как раз среда программирования + среда исполнения + генератор отчетов. Заморожен, правда, ибо не хватает ни рук ни времени ни сил (((. Задумывался как некий инструмент, интегрирующийся в в одну из популярных нынче БД и расширающий функционал имеющейся системы, либо построения новой системы с нуля. Среда разработки - а ля Дельфи. Язык программирования - интерпретирующий Object Pascal. В общем куча идей хотелось заложить в эту штуку, от менеджера управления проектами до CASE-средств)))). Если интересно кому - давайте забацаем, вот тока ноут починю ))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 09:20 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Пара_ДоксЕсть у меня подобный проект )))) ДА У ВСЕХ ЕСТЬ ТАКИЕ ПРОЕКТЫ !!! Все по молодости баловались, а потом появилось три важных фактора 1 - семья 2 - как следствие 1, хочется уходить домой в 18 3 - опыт и знание последствий увлечения разработкой универсальных интерфейсов с генератором отчетов и интеграцией кейс средств. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 10:35 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Один1 1 - семья 2 - как следствие 1, хочется уходить домой в 18 3 - опыт и знание последствий увлечения разработкой универсальных интерфейсов с генератором отчетов и интеграцией кейс средств. Пытался связь уловить, но не уловил. Как связано то что Вы написали с case-продуктами и их разработкой? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 13:06 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Один1 Я вот тоже не врубился в п.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 13:12 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
iscrafm Один13 - опыт и знание последствий увлечения разработкой универсальных интерфейсов с генератором отчетов и интеграцией кейс средств. Пытался связь уловить, но не уловил. Как связано то что Вы написали с case-продуктами и их разработкой? Пара_Докс как раз среда программирования + среда исполнения + генератор отчетов <skipped> В общем куча идей хотелось заложить в эту штуку, от менеджера управления проектами до CASE-средств)))) плох тот программист, который не писал свою операционную систему (С) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 13:25 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Один1 плох тот программист, который не писал свою операционную систему (С) Вот как раз по молодости и пробовали, Линукса не получилось )))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 13:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
А я почему то считал, что Case средства и должны были стать тем самым "Универсальным интерфейсом" ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 14:22 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Один1 Что сказать то хотите? Или упражняетесь в поговорках? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 14:25 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
iscrafmЧто сказать то хотите? Или упражняетесь в поговорках? Я уже сказал все что хотел. Желаю дальнейших успехов в развитии ISCRA Framework ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 14:46 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
andbaryА я почему то считал, что Case средства и должны были стать тем самым "Универсальным интерфейсом" Должны были, но до сих пор не стали. Думаю, что рано или поздно станут. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 14:49 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Один1 Я уже сказал все что хотел. Желаю дальнейших успехов в развитии ISCRA Framework Спасибо. Сам Framework давно готов, развивается по мелочам. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.05.2006, 15:06 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
может вот этот подойдет? http://bitec.ru/index.php?id=53 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.05.2006, 17:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Что-то все замолчали. Можно я скажу? Я тоже разрабатывал такую систему. И тоже считаю, как и все: "моя самая лучшая из приведенных выше". ;) Только ньюанс один. Пытаюсь сменить место работы. И готов за работу в хорошем коллективе продаться вместе с исходниками. Так никто даже и не смотрит на нее. "Ну, делал - молодец, типа плюс тебе" или "У нас своя такая" или "нахрен она нужна, можно и в Делфи формы накидать". То есть, создается впечатление, смысла в подобных системах мало. Даже для производителей. А закзчику тем более все-равно, где КИС собирается, в конфигураторе или в живой код все хреначится. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 06:28 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
R7 Так никто даже и не смотрит на нее. "Ну, делал - молодец, типа плюс тебе" или "У нас своя такая" или "нахрен она нужна, можно и в Делфи формы накидать". Если для для разработки некой информационной системы Ваш программа хуже, чем Дельфи, то действительно - "нахрен она нужна". Если лучше, то это надо уметь показать. Покажите мне(ссылочку) - я выскажу свое мнение более взвешенно. R7 То есть, создается впечатление, смысла в подобных системах мало. Даже для производителей. Я считаю, что если система хороша, с ней легче зарабатывать деньги, то ее заметят. R7 А закзчику тем более все-равно, где КИС собирается, в конфигураторе или в живой код все хреначится. Естественно, такие системы нужны исполнителю. Меня, как заказчика, абсолютно не интересует, какой отверткой пользуется автослесарь - для меня важен конечный результат. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 09:50 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
Всё что приводилось до сих пор - весьма специфичные вещи - они недостаточно гибки. Кто-то зацикливается на MS SQL (T-SQL) (значит оракл, ДБ2 и пр. уже не катят), кто-то вляпывает pascal в формы. Это опять же устанавливает ограничения. Отсутствует гибкость, товарищи. А нужна гибкость аналогичная браузеру. Ведь указывая URL в браузере мне все равно с помощью чего (читай, на какой базе) генерится форма. Нужен универсальный компонент. Работать должен везде. Стандарты должны быть описаны и не зависить от какой-либо компании (даже если это очнь большая компания). Из всех языков для этой цели кактит только XML. Вобщем меня пока-что ничто из представленного не поразило. Вывод - ниша пуста, кто-то ее может занять. Шансы есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 10:59 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
gardenmanВсё что приводилось до сих пор - весьма специфичные вещи - они недостаточно гибки. :) gardenmanНужен универсальный компонент. Работать должен везде. gardenmanВывод - ниша пуста, кто-то ее может занять. Шансы есть. Ждем-ждем. Дерзайте ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 11:18 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
777777777 А это не коммерческий продукт. Сайта нет. Думаю заняться описанием серьезно. Вот сделал набросок пока: axsystem.narod.ru Сумбурно. И еще из похожих описалов фразы повставлял. :) Просто подходили на 100%. Потом поменяю. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 11:58 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
gardenman кто-то вляпывает pascal в формы. Это опять же устанавливает ограничения. Отсутствует гибкость, товарищи. Ну с этим не могу согласится. Во первых это и есть гибкость, в во вторых - такие системы без интерпретаторов чразу в урну. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 12:01 |
|
Разработка универсального интерфейса
|
|||
---|---|---|---|
#18+
R7 gardenman кто-то вляпывает pascal в формы. Это опять же устанавливает ограничения. Отсутствует гибкость, товарищи. Ну с этим не могу согласится. Во первых это и есть гибкость, в во вторых - такие системы без интерпретаторов чразу в урну. Конечно согласен, но, тут палка о двух концах. Будите слишком навороченный интерпретатор делать - ничего хорошего не выйдет. Универсальность исчезнет. Перфоменс упадет. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2006, 12:05 |
|
|
start [/forum/topic.php?all=1&fid=33&tid=1549393]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
178ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 289ms |
0 / 0 |