|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Здравствуйте, уважаемые коллеги. Есть приложение клиент-сервер для автоматизации в области ЖКХ. Написано на PowerBuilder 8, СУБД ASA 9. В приложении реализована функциональность: 1. Расчет начислений и перерасчетов по услугам для населения: квартплата, мусор, отопление, горячая вода, холодная вода, стоки, электроэнергия. 2. Ручной ввод оплат за эти услуги, загрузка оплат из DBF-файлов (иногда текстовых и экселевских файлов) из банков (обычно у каждого банка своя структура DBF-файла), почты (УкрПочта), предприятий (удержание из зарплаты работников за коммунальные услуги), субсидий. 3. Внесение корректировок по лицевым счетам абонентов (изменения по площади, жильцам, временно выбывшим (армия, тюрьма, отпуск, временно работающие за границей, студенты на время обучения), тарифам, нормам, льготникам, типам собственности). 4. Разнообразные отчеты для бухгалтерии (большинство отчетов реализовано как DataWindow, но некоторые реализованы на FastReport+Delphi как отдельная утилита EXE, т.к. не все отчеты можно реализовать возможностями DataWindow). 5. Обмен данными с отделом субсидий и УТСЗН (Управление Труда и Социальной Защиты Населения) через DBF-файлы - выгрузка льгот для УТСЗН в DBF-файлы указанной ими структуры (потом эти файлы обрабатываются программой ЕДАРП (Единый Державный Автоматизований Реестр Пільговиків)), обмен с отделом субсидий по тарифам, нормам, жильцам и льготникам. 6. Вход в систему пользователей под своим логином и паролем, несложный контроль прав пользователя (кто-то может делать только изменения по ЛС, кто-то только заносить оплаты, кто-то только делать перерасчеты, кто-то вводить показания и т.д.). 7. Внесение показаний по приборам учета (счетчикам отопления, гор. и хол. воды, электроэнергии) как в ручном режиме так и из DBF-файлов банков. Заказчиками являются коммунальные предприятия, бывшие ЖЭКи, ОСМД (Общества Совладельцев Многоквартирных Домов), СЕЗы (Службы Единого Заказчика), управляющие компании. Расчеты начислений, перерасчетов, загрузка и распределение оплат реализовано средствами СУБД с помощью хранимых процедур (ХП). Импорт/экспорт данных реализован с помощью команд Interactive SQL - INPUT, OUTPUT. Все пользователи созданы прямо в БД. Для соединения с БД используется ODBC. Обычно у заказчика выделяется мощный компьютер для БД, для рабочих мест выделяются более слабые компьютеры (некоторые всего с 128 МБ ОЗУ), используется ОС Windows (98, 2000, ХР, 7). Поэтому не всегда толстый клиент шустро работает на таких машинах. При обновлении ПО нужно обновлять все клиентские компьютеры, что не всегда удобно, т.к. часто у заказчиков своих админов нет. Часто заказчики хотят для каждого пользователя свое личное меню в приложении в зависимости от своих прав, это не реализовано. Тоже касается и внешнего вида справочников, редакторов, отчетов (например: 1) бухгалтер по мусору открывая карточку лицевого счета не хочет видеть информацию о площади, нормах по воде, тарифах по другим услугам. 2) похожие отчеты приходится дублировать, т.к. один заказчик хочет видеть один набор колонок, а другой заказчик эти же колонки, но без последней, или те же колонки, но не в таком порядке). Не реализован некий мастер-отчетов, используя который пользователь смог бы создать нужный ему отчет на основе некоторого шаблона. Или один и тот же отчет по подходит нескольким заказчикам, но один заказчик хочет, чтобы сортировка в отчете была по адресу, а другой - по лицевым счетам (была попытка реализовать это показом окна с полями для сортировки, где пользователь мог выбрать необходимые поля для сортировки, но поля там все по английски, как и в самом запросе селект или ХП они названы). Да и сама сортировка не на стороне БД, а на стороне клиента при столь слабых машинах с 128 МБ ОЗУ тормозила. Используется несколько вариантов инсталляции приложения: 1. EXE и PBD файлы, ODBC источник и Interactive SQL на каждой клиентской машине. 2. EXE и PBD файлы на машине, где крутится БД, в общей папке, на клиентских машинах вызывается EXE с компьютера, где крутится БД, ODBC источник и Interactive SQL на каждой клиентской машине. 3. EXE и PBD файлы на машине, где крутится БД, в общей папке, на клиентских машинах настроен удаленный рабочий стол, который подключается к машине, где крутится БД. Сопровождением, программированием и обновлением данного приложения занимался 1 человек. В связи с увеличением кол-ва заказчиков, их пожеланиями в добавлении нового функционала и исправления существующих недостатков на работу был взят еще один программист в помощь тому 1 человеку. Новый программист (джавист) имеет за плечами большой опыт работы с Java, 3-х уровневыми приложениями с использованием серверов приложений (СП), различными доступными фреймверками, неплохо разбирается в SQL, администрировании. Он часто повторяет слова: Java, Сервер приложений, фреймворк, новые технологии. За неимением такого опыта возразить ему трудно. На этом форуме был топик с обсуждением 3-хзвенки . На счет этого джавист сказал следующее: авторДействительно странные. Тем более что это было в 2003 году. Сейчас таких странных мыслей уже ни у кого не возникает. 3х уровневое приложение это как минимум стандарт для больших приложений. Теперь рассматривается возможность переписывания приложения под 3-хзвенку с такими пунктами: 1. Будет тонкий клиент (ТК), сервер приложений (СП) и сама СУБД. 2. ТК без проблем будет работать на слабых машинах с 128 МБ ОЗУ. 3. СУБД будет хранить только данные и индексы, использоваться как хранилище данных, вся бизнес-логика (то что сейчас делается на ХП, триггерах и функциях и работает довольно быстро - расчеты, отчеты, права пользователей) будет перенесена на СП (страшно представить во сколько раз увеличится время расчета начисления по горячей воде, если считать все это на Java, сейчас 10 тыс. лицевых счетов начисляются за 10-15 мин с помощью ХП, и эту ХП еще можно оптимизировать). Как например оптимизировал расчет начисления заработной платы и приводил свои рекомендации и советы на этом форуме ASCRUS. У него 1000 сотрудникам зарплата начислялась на ХП всего за 8 сек - отличный результат. Нашего джависта время расчета не пугает, главное, чтобы считалось правильно. 4. На СП на Java будет использоваться стандарт ANSI-SQL 99, чтобы СП мог поддерживать в будущем не только СУБД ASA 9, но и другие СУБД (FireBird, PostgreSQL и т.д.), т.е. не привязываться к возможностям расширений SQL конкретной СУБД. 5. Пользователей, их права и роли перенести на СП, в БД будет только 1 пользователь. 6. На СП будет реализована возможность занесения показаний контролером через мобильное устройство, использующее современные ноу-хау (например пришел контролер в квартиру с мобильным устройством, снял показания, внес их на клавиатуре своего устройства и они успешно передались в БД). 6. На СП будет реализована возможность отправки смс на мобильный и автодозвон на телефон абонента (мобильный, рабочий, домашний) с информацией о задолженности за коммунальные усулги и т.п.. 7. На СП будет реализована возможность импорта/экспорта XML-файлов в/из БД (есть надежда, что DBF формат скоро умрет и вместо него для общения с банками, организациями, УТСЗН будет использоваться формат XML). 8. На СП будет реализована возможность поддержки веб-интерфейса для абонентов (например абонент дома при наличии интернета зашел на сайт коммунального предприятия под своим логином и паролем, где может посмотреть информацию о своих долгах/переплатах за коммунальные услуги, начислениях и оплатах, а не идти вместо этого в ЖЭК на сверку). Прошу высказаться уважаемых коллег по всему вышенаписанному. Любая критика, советы, рекомендации, реальные примеры успешных переводов на новую 3-х уровнемую технологию приветствуются. Всем спасибо за внимание. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 11:56 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Бред. Производить огромные расчеты на СП фактически высасывая все данные из базы, практически лишая себя гибкости изменения и тюнинга. Уже сто раз все это обговаривалось. А ваш товарищ - настоящий русский программист. Но такая позиция часто встречается у веб-разработчиков. Оказывается им так тяжело понимать простые конструкции языка SQL. Не хочет привязываться к БД или пиши в стандарте ANSI или смени прокладку между клавиатурой и сиденьем. Тем более ASA, которая обеспечивает любые коммуникационные возможности и поддерживает несколько стандартов кода. А версия для WEB еще и бесплатна. Тут надо очень и очень подумать. Что мешает использовать существующие процедуры написав к ним WEB-интерфейс? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 12:44 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
авторЧто мешает использовать существующие процедуры написав к ним WEB-интерфейс? Ничего не мешает. Тот же СП может вызвать ХП, как это сейчас и делает приложение на PowerBuilder. Джавист мотивирует перенос расчетов с SQL на Java тем, что хоть и можно написать расчет на SQL, но он для этого не предназначен, в отличие от высокоуровневых языков типа Java. Или возможно ему трудно самому дописывать/переделывать расчеты на SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 13:08 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lioner1. Будет тонкий клиент (ТК), сервер приложений (СП) и сама СУБД. Тонкий клиент будет жить в браузере? Если ответ положительный, то: lioner2. ТК без проблем будет работать на слабых машинах с 128 МБ ОЗУ. Никаких противоречий не замечаете? lioner4. На СП на Java будет использоваться стандарт ANSI-SQL 99, чтобы СП мог поддерживать в будущем не только СУБД ASA 9, но и другие СУБД (FireBird, PostgreSQL и т.д.), т.е. не привязываться к возможностям расширений SQL конкретной СУБД. А такое требование действительно существует где-то, кроме воображения вашего нового коллеги? lioner5. Пользователей, их права и роли перенести на СП, в БД будет только 1 пользователь. Очередной велосипед с квадратными колесами. Кроме того, рекомендую прикинуть трудоемкость реализации имеющегося функционала на новой платформе. Хотя здравые идеи в реализации нового функционала, безусловно, присутствуют. Если, разумеется, за этими идеями стоит реальный опыт их реализации в паре-тройке проектов. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 13:29 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lionerДжавист мотивирует перенос расчетов с SQL на Java тем, что хоть и можно написать расчет на SQL, но он для этого не предназначен, в отличие от высокоуровневых языков типа Java. Похоже для расчетов ваш коллега собрался решать систему нелинейных дифференциальных уравнений )))) Самый лучший ТК это терминал 25 на 80 ! И дешево и от работы не отвлекает. Развитие происходит по спирали,2-х звенка,3-х звенка, скоро он вам предложит уйти в облака, но всё вернется к истокам хоть и на более высоком уровне. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 13:55 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
авторТонкий клиент будет жить в браузере? Нет, не в браузере. Предполагается, что ТК - это будет легкое приложение на Java, которое будет только отображать справочники, редакторы и отчеты, которые в свою очередь будут формироваться СП. Хотя для этого на слабой машине со 128 МБ ОЗУ должна быть установлена виртуальная Java машина, которая тоже требует ресурсы ОЗУ. И эти затраты ОЗУ предположительно будут меньше затрат ОЗУ, которые использует PowerBuilder для интерпретации библиотек PBD. авторА такое требование действительно существует где-то, кроме воображения вашего нового коллеги? Пока еще не было заказчиков, у которых была своя СУБД, отличная от ASA, но все может быть. Вполне возможно, что появится заказчик, который захочет, чтобы БД была бы например на FireBird или на какой-нибудь другой СУБД. Тут 2 варианта: 1. Весь функционал, который реализован на SQL сейчас для ASA перевести на FireBird и далее поддерживать реализацию для обеих СУБД. 2. Написать функционал на ANSI SQL 99 так, чтобы он работал как на ASA, так и на FireBird. авторОчередной велосипед с квадратными колесами. Когда будет создан сайт, куда любой абонент сможет войти со своим логином и паролем, предполагается хранить этих юзеров не в БД, а на СП, ведь таких юзеров может быть столько же, сколько и лицевых счетов в БД, и каждому такому юзеру нужно дать права на просмотр только своих данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 14:03 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lioner, Попросите джависта (а лучше независимого) оценить объем работ, а потом покажите это тому кто будет оплачивать эти работы. Думаю многие воросы отпадут :) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 14:19 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
авторПопросите джависта (а лучше независимого) оценить объем работ, а потом покажите это тому кто будет оплачивать эти работы. Джавист говорит, что он сам напишет сервер приложений на Java за полгода. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 14:26 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lionerавторТонкий клиент будет жить в браузере? Нет, не в браузере. Предполагается, что ТК - это будет легкое приложение на Java, которое будет только отображать справочники, редакторы и отчеты, которые в свою очередь будут формироваться СП.Я правильно понимаю, что ваш коллега уже имеет опыт реализации клиентских приложений на Java? Поинтересуйтесь, какую платформу или набор библиотек компонентов он предпочитает и какова трудоемкость реализации, например, пары грид/форма редактирования с парой вкладок по сравнению с аналогичной задачей на PB. lioner Хотя для этого на слабой машине со 128 МБ ОЗУ должна быть установлена виртуальная Java машина, которая тоже требует ресурсы ОЗУ. И эти затраты ОЗУ предположительно будут меньше затрат ОЗУ, которые использует PowerBuilder для интерпретации библиотек PBD.Попросите предоставить обоснование. Лучше всего, в виде исполняемого кода. lioner авторА такое требование действительно существует где-то, кроме воображения вашего нового коллеги? Пока еще не было заказчиков, у которых была своя СУБД, отличная от ASA, но все может быть. Вполне возможно, что появится заказчик, который захочет, чтобы БД была бы например на FireBird или на какой-нибудь другой СУБД.Значит, пока такого требования не существует. оригиналНа СП на Java будет использоваться стандарт ANSI-SQL 99, чтобы СП мог поддерживать в будущем не только СУБД ASA 9, но и другие СУБД (FireBird, PostgreSQL и т.д.), т.е. не привязываться к возможностям расширений SQL конкретной СУБД.переводЯ не знаком с SQL и не собираюсь его изучать lioner1. Весь функционал, который реализован на SQL сейчас для ASA перевести на FireBird и далее поддерживать реализацию для обеих СУБД. 2. Написать функционал на ANSI SQL 99 так, чтобы он работал как на ASA, так и на FireBird. Единственно правильный подход, если это экономически целесообразно, использовать вариант 1. Сами-то верите, что вариант 2 возможен? lionerавторОчередной велосипед с квадратными колесами. Когда будет создан сайт, куда любой абонент сможет войти со своим логином и паролем, предполагается хранить этих юзеров не в БД, а на СП, ведь таких юзеров может быть столько же, сколько и лицевых счетов в БД, и каждому такому юзеру нужно дать права на просмотр только своих данных.Это решается немножко другими средствами. lionerДжавист говорит, что он сам напишет сервер приложений на Java за полгода.Попробуйте. Не забудьте через полгода рассказать о результатах. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 15:33 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
PL99lioner Хотя для этого на слабой машине со 128 МБ ОЗУ должна быть установлена виртуальная Java машина, которая тоже требует ресурсы ОЗУ. И эти затраты ОЗУ предположительно будут меньше затрат ОЗУ, которые использует PowerBuilder для интерпретации библиотек PBD.Попросите предоставить обоснование. Лучше всего, в виде исполняемого кода. Не будут, проверено ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 15:53 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
To PL99: авторПоинтересуйтесь, какую платформу или набор библиотек компонентов он предпочитает Eclipse. Spring Framework. авторПопросите предоставить обоснование. Лучше всего, в виде исполняемого кода. Сам хотел бы посмотреть на это чудо программирования на Java. авторЯ не знаком с SQL и не собираюсь его изучать Есть такое дело, он не очень любит SQL. авторЕдинственно правильный подход, если это экономически целесообразно, использовать вариант 1. Сами-то верите, что вариант 2 возможен? Если и придется поддерживать несколько СУБД, то больше склоняюсь к варианту 1. Имеется ввиду, что варианте 2 будут использоваться только стандартные SQL операторы: Select, Insert, Update, Delete. авторЭто решается немножко другими средствами. Если не секрет, подскажите какими ? авторПопробуйте. Не забудьте через полгода рассказать о результатах. Джавист преисполнен энтузиазма и готов к нападению жуткого работуна. О результатах работуна через полгода обязательно доложу. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 17:06 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
spas2001PL99пропущено... Попросите предоставить обоснование. Лучше всего, в виде исполняемого кода. Не будут, проверено Есть подозрения, что при 128 МБ ОЗУ клиент на Java может вообще не запуститься. Сама среда разработки Eclipse загружается очень долго на его рабочем компьютере, где памяти побольше. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 17:13 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lionerДжавист говорит, что он сам напишет сервер приложений на Java за полгода. Учтите что у вас есть существующее приложение которое 1) работает 2) имеет небольшое кол-во известных багов 3) имеет ряд известных юзеру фич, но возможно неизвестных разработчикам А на выходе вы получите приложение которое 1) возможно работает (если разработчик понял правильно ТЗ) 2) имеет кучу неизвестных багов 3) уже не имеет неофициальных фич к которым привык юзер 4) внедряется в забюрократизировнном учреждении (судя по теме ЖКХ) с очень консервативными юзерами предпенсионного возраста (т.е. возможен саботаж внедрения) Никаких шансов за полгода получить что-то что сможет заменить старое приложение. Забиваю себе в календарь вернуться в эту тему через год и поржать :) Вам советую рассчитывать на 2 года неспешного внедрения. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 18:03 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
2 года я получил исходя из формулы: оценка программиста * К. К - коэффициент адекватности программиста. Минимум К=2 - для самых адекватных. Для тех у кого горят глаза при озвучивании оценки сроков - К=4. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 18:16 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Вставлю свои 5-ть копеек. Не забываем о сервере приложений. Как правило это отдельный компьютер (сервер) с хорошим процом и оперативкой. Также надежность системы немного уменьшается, так как появляется 3-е звено, сервер приложений от сети отрубится и усе... Толстоту клиента можно уменьшить, пененеся часть логики на сервер СУБД, но нужно понимать, что тут четкая должна быть документируемость проекта и доступна база средствами проектирования, PowerDesiner например. Насчет неудобства обновления, вы можете часть компонент отрисовывать динамически, в базе хранится, не только сам код sql для datawindow но и способ отрисовки самого отчета. Конструктор присобачить, чтобы сам программист не лазил в код, а конструировал сам отчет с помощью конструктора. О библиотеках проекта и их версии, можно хранить инфу в самой базе, тогда при работе пользователя например раз в 3 часа при несовпадении версии - предупреждать о необходимости обновления. Обновление должно проверяться автоматом при старте приложения и обновляться, как вариант, с сети, куда программист выкладывает исходники. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 20:40 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
To lioner : извините если я совсем не по теме. Такие проекты хорошо затевать в бюджетных организациях. Бюджету можно напилить прилично. А если к Вам через полгода в помощь программистам нужен будет третий ( а он таки будет нужен ) и он окажется лихим спецом по .net можете начинать экранизацию басен дедушки Крылова. Всегда думал что владелец ( работодатель) диктует правила написания кода. Да Powerbuilder не модный нынче язык , но я не поверю что задача автоматизации в области ЖКХ поставит его в тупик. Возможно вам нужно модернизировать ваш билдеровский фреймворк , который у вас наверняка существует. В общем удачи Вам. и ждем новостей через полгода . ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 20:43 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lionerавторПопросите джависта (а лучше независимого) оценить объем работ, а потом покажите это тому кто будет оплачивать эти работы. Джавист говорит, что он сам напишет сервер приложений на Java за полгода. Это значит, что ни единому его слову доверять нельзя, и по возможности от него нужно избавиться :-))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2013, 22:52 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Филиппlionerпропущено... Джавист говорит, что он сам напишет сервер приложений на Java за полгода. Это значит, что ни единому его слову доверять нельзя, и по возможности от него нужно избавиться :-))) Откуда у Филипа такая кровожадность, американская мораль появилась и мозги промыла? Наверное Вашингтон решит Москву бомбить, Филипп буде двумя руками тоже за, ох уж эти янки с наносимой на штыках "демократией"! По делу-пусть средний по сложности 1 блок jav- ист перепишет и вы посмотрите и сравните, с тем, что есть сейчас! :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 09:13 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
lionerавторЯ не знаком с SQL и не собираюсь его изучать Есть такое дело, он не очень любит SQL. На java очень любят ОРМ и судя по озвученному он там будет. Но хороший ОРМ так никто пока и не придумал (чтобы хоть как-то по скорости с native SQL конкурировало). Да, в некоторых случаях удобно работать с базой, как с классами. Но чуть отступаешь от примеров типа Hello World и понимаешь, что без ОРМ гораздо веселее. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 09:16 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Я же говорю, что он настоящий русский программист И уберите свои руки от Фила:) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 10:41 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Локшин Маркlionerпропущено... Есть такое дело, он не очень любит SQL. На java очень любят ОРМ и судя по озвученному он там будет. Но хороший ОРМ так никто пока и не придумал (чтобы хоть как-то по скорости с native SQL конкурировало). Да, в некоторых случаях удобно работать с базой, как с классами. Но чуть отступаешь от примеров типа Hello World и понимаешь, что без ОРМ гораздо веселее. Библиотека Hibernate позволяет отобразить каждую таблицу БД в отдельный класс на Java. При этом джависту не обязательно знать SQL, он будет работать с этими обьектами, а те в свою очередь с помощью своих методов посылать SQL-запросы в базу. Очень удобно, но работает медленнее чем на уровне SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 10:54 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
pandTo lioner : извините если я совсем не по теме. Такие проекты хорошо затевать в бюджетных организациях. Бюджету можно напилить прилично. А если к Вам через полгода в помощь программистам нужен будет третий ( а он таки будет нужен ) и он окажется лихим спецом по .net можете начинать экранизацию басен дедушки Крылова. Всегда думал что владелец ( работодатель) диктует правила написания кода. Да Powerbuilder не модный нынче язык , но я не поверю что задача автоматизации в области ЖКХ поставит его в тупик. Возможно вам нужно модернизировать ваш билдеровский фреймворк , который у вас наверняка существует. В общем удачи Вам. и ждем новостей через полгода . В существующем приложении действительно хватает ошибок и багов, они исправляются с помощью очередных костылей и велосипедов, поэтому джавист предлагает полность все переписать правильно. Большинство нюансов, тонкостей и подводных камней в предметной области ЖКХ уже известны, в отличие от того времени, когда начинался писаться существующий проект. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 10:59 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
Филиппlionerпропущено... Джавист говорит, что он сам напишет сервер приложений на Java за полгода. Это значит, что ни единому его слову доверять нельзя, и по возможности от него нужно избавиться :-))) Сколько по вашему занимает времени написание приложения с нуля на Java для работы с БД, с учетом того, что предметная область и бизнес-логика уже хорошо изучены на практике существующего приложения ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 11:03 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
medoedВставлю свои 5-ть копеек. Не забываем о сервере приложений. Как правило это отдельный компьютер (сервер) с хорошим процом и оперативкой. Также надежность системы немного уменьшается, так как появляется 3-е звено, сервер приложений от сети отрубится и усе... Толстоту клиента можно уменьшить, пененеся часть логики на сервер СУБД, но нужно понимать, что тут четкая должна быть документируемость проекта и доступна база средствами проектирования, PowerDesiner например. Насчет неудобства обновления, вы можете часть компонент отрисовывать динамически, в базе хранится, не только сам код sql для datawindow но и способ отрисовки самого отчета. Конструктор присобачить, чтобы сам программист не лазил в код, а конструировал сам отчет с помощью конструктора. О библиотеках проекта и их версии, можно хранить инфу в самой базе, тогда при работе пользователя например раз в 3 часа при несовпадении версии - предупреждать о необходимости обновления. Обновление должно проверяться автоматом при старте приложения и обновляться, как вариант, с сети, куда программист выкладывает исходники. Спасибо за советы, примем к сведению. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 11:05 |
|
PowerBuilder или Java, приложение клиент-сервер или трехуровневое приложение
|
|||
---|---|---|---|
#18+
spas2001Я же говорю, что он настоящий русский программист Улыбнуло :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2013, 11:23 |
|
|
start [/forum/topic.php?fid=15&msg=38327989&tid=1335326]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
154ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 246ms |
total: | 498ms |
0 / 0 |