Помогите определится с платформой
От: rsoft  
Дата: 17.11.05 08:56
Оценка:
1. Начинаю изучать Java. Т.к. считаю, что быстрее всего изучить язык — это писать какое либо приложение, решил написать программку для наших клиентов (на Java разумеется). Опыт программирования имеется на Delphi и когда-то, лет 7 назад писал на C++ под ДОС.

2. Постановка задачи: Программа для просмотра базы данных рекламных щитов. Т.к. база относительно большая, то клинтская часть должна иметь локальную копию базы данных. При подключении к интернету надо синхронизировать локальную базу с серверной (MS SQL). Во время работы необходимо кэшировать на локальном диске фотографии щитов и их схемы расположения, скачанные из интернета.

3. Вопрос, какие технологии лучше использовать для написания этой программы?
Для клиента:
-Java application (Applet я так понимаю не подходит, т.к. нужен доступ к дискам компьютера);
-GUI — SWT, Swing, AWT?
-Локальная база — HSQLDB? (нужны возможности SELECT)

Для сервера: 1-й вариант напрямую подключатся к MS SQL, 2-й вариант делать это через скрипт (PHP,Perl,JSP)

Вот... вкратце...

P.S. Например на Delphi я бы использовал VCL для GUI, Embedded Firebird в качестве локальной БД, ну и FastReport (если понадобится отчетность генерить). На сервере написал бы скрипт на PHP, который бы делал синхронизацию с базой MSSQL. Напрямую давать доступ к корпоративному MS SQL, не хочется.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Помогите определится с платформой
От: Blazkowicz Россия  
Дата: 17.11.05 09:16
Оценка:
Здравствуйте, rsoft, Вы писали:

R>2. Постановка задачи: Программа для просмотра базы данных рекламных щитов. Т.к. база относительно большая, то клинтская часть должна иметь локальную копию базы данных. При подключении к интернету надо синхронизировать локальную базу с серверной (MS SQL). Во время работы необходимо кэшировать на локальном диске фотографии щитов и их схемы расположения, скачанные из интернета.


R>3. Вопрос, какие технологии лучше использовать для написания этой программы?

R>Для клиента:
R>-Java application (Applet я так понимаю не подходит, т.к. нужен доступ к дискам компьютера);
Да и не понятно зачем здесь нужен апплет? Апплет помогает в создании расширеной функциональности на клиенте для вэб приложения. Аналогии — ActiveX, DHTML.

R>-GUI — SWT, Swing, AWT?

Swing если хочется не мучатся с девелопментом.
SWT и AWT в голом виде практически не нужны для Standalone решений.
Выбор можно делать меджу Swing и Eclipse RCP (JFace, SWT). Eclipse RCP в отличие от Swing это хороший набор готовых решений. Но разработка с использованием SWT не такая простая и, как бы это сказать, "приятная" для девелопера.

R>-Локальная база — HSQLDB? (нужны возможности SELECT)

ИМХО, зависит от требований к клиенту. На самом деле много чего можно прикрутить. HSQLDB, по-моему подходит только для тестовых целей. Эффекстивно работать он не будет. Можно использовать любую копмактную SQL БД.

R>Для сервера: 1-й вариант напрямую подключатся к MS SQL, 2-й вариант делать это через скрипт (PHP,Perl,JSP)

R>P.S. Например на Delphi я бы использовал VCL для GUI, Embedded Firebird в качестве локальной БД, ну и FastReport (если понадобится отчетность генерить). На сервере написал бы скрипт на PHP, который бы делал синхронизацию с базой MSSQL. Напрямую давать доступ к корпоративному MS SQL, не хочется.

Не знаю есть ли смысл в серверном скрипте. Может лучше пользователя настроить и права раздать соответствующие на сервере?
Re: Помогите определится с платформой
От: tavr  
Дата: 17.11.05 09:54
Оценка:
Здравствуйте, rsoft, Вы писали:

R>Для клиента:

Swing/AWT или Eclipse RCP
R>-Локальная база — HSQLDB? (нужны возможности SELECT)
любая на твой вкус

R>Для сервера: 1-й вариант напрямую подключатся к MS SQL, 2-й вариант делать это через скрипт (PHP,Perl,JSP)

используй сервлет
если не хочешь устанавливать jre на сервере — используй php или прямой коннект к базе

R>P.S. Например на Delphi я бы использовал VCL для GUI, Embedded Firebird в качестве локальной БД, ну и FastReport (если понадобится отчетность генерить). На сервере написал бы скрипт на PHP, который бы делал синхронизацию с базой MSSQL. Напрямую давать доступ к корпоративному MS SQL, не хочется.

jdbc есть и для Firebird
Re[2]: Помогите определится с платформой
От: rsoft  
Дата: 17.11.05 10:21
Оценка:
Здравствуйте, Blazkowicz, Вы писали:

B>Да и не понятно зачем здесь нужен апплет? Апплет помогает в создании расширеной функциональности на клиенте для вэб приложения. Аналогии — ActiveX, DHTML.

Да. Это я понимаю, просто размышлял в слух, мало ли, я ведь только начинаю изучать Java.

R>>-GUI — SWT, Swing, AWT?

B>Swing если хочется не мучатся с девелопментом.
B>SWT и AWT в голом виде практически не нужны для Standalone решений.
B>Выбор можно делать меджу Swing и Eclipse RCP (JFace, SWT). Eclipse RCP в отличие от Swing это хороший набор готовых решений. Но разработка с использованием SWT не такая простая и, как бы это сказать, "приятная" для девелопера.
Мне бы VCL... Хех... RCP начал смотреть, тока пока не понял, что надо, что бы потом программа работала без eclipse

R>>-Локальная база — HSQLDB? (нужны возможности SELECT)

B>ИМХО, зависит от требований к клиенту. На самом деле много чего можно прикрутить. HSQLDB, по-моему подходит только для тестовых целей. Эффекстивно работать он не будет. Можно использовать любую копмактную SQL БД.
Беда в том, что я их не знаю, т.е. я даже не знаю какие они есть, первое что я нашел был HSQLDB...

R>>Для сервера: 1-й вариант напрямую подключатся к MS SQL, 2-й вариант делать это через скрипт (PHP,Perl,JSP)

R>>P.S. Например на Delphi я бы использовал VCL для GUI, Embedded Firebird в качестве локальной БД, ну и FastReport (если понадобится отчетность генерить). На сервере написал бы скрипт на PHP, который бы делал синхронизацию с базой MSSQL. Напрямую давать доступ к корпоративному MS SQL, не хочется.

B>Не знаю есть ли смысл в серверном скрипте. Может лучше пользователя настроить и права раздать соответствующие на сервере?

Так конечно проще будет, но я боюсь за безопасность сервера, т.к. это еще и контроллер домена. Хотя, может и зря беспокоюсь...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Помогите определится с платформой
От: Lucker Беларусь http://lucker.intervelopers.com/
Дата: 17.11.05 10:24
Оценка:
Здравствуйте, rsoft, Вы писали:

B>>Не знаю есть ли смысл в серверном скрипте. Может лучше пользователя настроить и права раздать соответствующие на сервере?

R>Так конечно проще будет, но я боюсь за безопасность сервера, т.к. это еще и контроллер домена. Хотя, может и зря беспокоюсь...

Конечно зря. Ты кто? Программист! Твоя задача — писать программы. А беспокоиться о безопасности должен кто? Правильно — админ.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[3]: Помогите определится с платформой
От: Blazkowicz Россия  
Дата: 17.11.05 10:29
Оценка:
Здравствуйте, rsoft, Вы писали:

B>>Выбор можно делать меджу Swing и Eclipse RCP (JFace, SWT). Eclipse RCP в отличие от Swing это хороший набор готовых решений. Но разработка с использованием SWT не такая простая и, как бы это сказать, "приятная" для девелопера.

R>Мне бы VCL... Хех... RCP начал смотреть, тока пока не понял, что надо, что бы потом программа работала без eclipse
Ну сморя что ты подразумеваешь под "работать без eclipse". Без платформы Eclipse это работать естественно не будет. Но и лишних плагинов (IDE и т.п.) в конечно приложении тоже не будет. То есть ты разрабатываешь несколько своих плагинов. А на выходе получаешь приложение со своими планинами и их зависимостями. На самом деле не так и много.
С другой стороны можно не заморачиватся и взять Swing.

B>>ИМХО, зависит от требований к клиенту. На самом деле много чего можно прикрутить. HSQLDB, по-моему подходит только для тестовых целей. Эффекстивно работать он не будет. Можно использовать любую копмактную SQL БД.

R>Беда в том, что я их не знаю, т.е. я даже не знаю какие они есть, первое что я нашел был HSQLDB...
На форуме обсуждали — поищи. Тот же мускул наверняка можно настроиьт чтобы не жрал много ресурсов и таскать его с приложением.

B>>Не знаю есть ли смысл в серверном скрипте. Может лучше пользователя настроить и права раздать соответствующие на сервере?

R>Так конечно проще будет, но я боюсь за безопасность сервера, т.к. это еще и контроллер домена. Хотя, может и зря беспокоюсь...

По-моему это уже совсем оффтопик для этого форума.
Re[2]: Помогите определится с платформой
От: rsoft  
Дата: 17.11.05 10:31
Оценка:
Здравствуйте, tavr, Вы писали:

T>Здравствуйте, rsoft, Вы писали:


R>>-Локальная база — HSQLDB? (нужны возможности SELECT)

T>любая на твой вкус
гм.. вкуса пока нет... Мне нужна максимально легкая, локальная встраиваемая БД, видимо написанная тоже на Java

R>>Для сервера: 1-й вариант напрямую подключатся к MS SQL, 2-й вариант делать это через скрипт (PHP,Perl,JSP)

T>используй сервлет
T>если не хочешь устанавливать jre на сервере — используй php или прямой коннект к базе
Попробую прямой коннект к MSSQL.

R>>P.S. Например на Delphi я бы использовал VCL для GUI, Embedded Firebird в качестве локальной БД, ну и FastReport (если понадобится отчетность генерить). На сервере написал бы скрипт на PHP, который бы делал синхронизацию с базой MSSQL. Напрямую давать доступ к корпоративному MS SQL, не хочется.

T>jdbc есть и для Firebird
Да, забыл сказать, что в идеале было бы сделать кроссплатформенного клиента, и что бы у него не надо было ничего устанавливать, кроме JRE... А для запуска использовать Java Web Start. С этой точки зрения Firebird не подойдет(по всей видимости)
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: Помогите определится с платформой
От: rsoft  
Дата: 17.11.05 10:33
Оценка:
Здравствуйте, Lucker, Вы писали:

L>Здравствуйте, rsoft, Вы писали:


B>>>Не знаю есть ли смысл в серверном скрипте. Может лучше пользователя настроить и права раздать соответствующие на сервере?

R>>Так конечно проще будет, но я боюсь за безопасность сервера, т.к. это еще и контроллер домена. Хотя, может и зря беспокоюсь...

L>Конечно зря. Ты кто? Программист! Твоя задача — писать программы. А беспокоиться о безопасности должен кто? Правильно — админ.

Если бы... Приходится заниматься всем и программы писать, и сервера ставить, ну и еще много чего... короче, как в народе называют "эникейщик"...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Помогите определится с платформой
От: korostoff Россия  
Дата: 17.11.05 12:00
Оценка:
Здравствуйте, rsoft, Вы писали:

R>Да, забыл сказать, что в идеале было бы сделать кроссплатформенного клиента, и что бы у него не надо было ничего устанавливать, кроме JRE... А для запуска использовать Java Web Start. С этой точки зрения Firebird не подойдет(по всей видимости)


Посмотри Apache Derby. У это БД есть два варианта работы: как обыкновенный БД сервер, и как встроееная в приложение БД.
Re: Помогите определится с платформой
От: Аноним  
Дата: 05.12.05 20:00
Оценка:
Здравствуйте, rsoft, Вы писали:

Т.к. база относительно большая, то клинтская часть должна иметь локальную копию базы данных. При подключении к интернету надо синхронизировать локальную базу с серверной (MS SQL).

Абсолютно неправильный подход. Причем здесь величина базы и желание иметь локальную копию ? Зачем это ? Современные клиент-серверные СУБД не требуют наличия локальной копии данных на клиенте!
Re: Помогите определится с платформой
От: Tourist Россия  
Дата: 06.12.05 12:05
Оценка: 1 (1)
Здравствуйте, rsoft, Вы писали:

R>2. Постановка задачи: Программа для просмотра базы данных рекламных щитов. Т.к. база относительно большая, то клинтская часть должна иметь локальную копию базы данных. При подключении к интернету надо синхронизировать локальную базу с серверной (MS SQL). Во время работы необходимо кэшировать на локальном диске фотографии щитов и их схемы расположения, скачанные из интернета.


На сколько жесткое требование разрабатывать офлайн-приложение с периодеческим подключением к интернету? Или на столько плохо все с интернетом у ваших клиентов, помойму сейчас уже все фирмы имеют нормальные каналы.
Помойму тут скорей проще писать простую систему на основе трех-звенной архитектуре (БД — Servlet\JSP — браузер), без всяких dekstop решений.
Re[3]: Помогите определится с платформой
От: srr Россия  
Дата: 07.12.05 05:48
Оценка:
R>>>-GUI — SWT, Swing, AWT?
B>>Swing если хочется не мучатся с девелопментом.
B>>SWT и AWT в голом виде практически не нужны для Standalone решений.
B>>Выбор можно делать меджу Swing и Eclipse RCP (JFace, SWT). Eclipse RCP в отличие от Swing это хороший набор готовых решений. Но разработка с использованием SWT не такая простая и, как бы это сказать, "приятная" для девелопера.
R>Мне бы VCL... Хех... RCP начал смотреть, тока пока не понял, что надо, что бы потом программа работала без eclipse
Так если любитель Borland то почему бы не использовать JBuilder — вполне комфортный переход с delphi.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.