Автор Тема: Выбор инструмента для разработки ПО  (Прочитано 4879 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
  Прошло время первого знакомства с Linux. Узнал насколько интересно и продуктивно использовать всем нам полюбившуюся ОС. Стоять на месте не интересно, да и дальнейшее познание эффективнее будет проходить если заниматься не только установкой, настройкой и вылизыванием системы, но и созиданием.
  Для начала хочется отметить чем занимался раньше. Основное мое направление - 1С (версии 7.7). Никуда от 1С не денишся, бухгалтерия будет всегда и не важно на какой платформе, "восьмерку" тоже подтянем :-).
  Последним моим проектом - была автоматизация хим. лаборатории на том предприятии где я работаю. Строилась система на 1С, благо есть лицензии, но они не бесконечны, да и сводное (для многих читай - бесплатное) ПО является единственным выходом. 1С прекрасный выход для многих и хороший инструмент для разработчика, многие (не только я) с помощью 1С смогли автоматизировать не только бухгалтерию, но и совершенно не связанные с ней направления.

  Посути я разыскиваю инструмент для разработки баз данных. Хочу сразу извиниться за тот факт, что многое буду сравнивать с 1С, но эту область я покрайней мере хоть как то знаю (прошу сильно не пинать). Но это не значит, что не готов узнать что-то еще, более интересное и более прогрессивное.
  В институте первые БД (конечно это все было детство и игрушки) писал на Делфи, но в связи с некоторыми неудобствами и восновном с отсутствием знающих людей, пересел на "ОдынЭску".

  Что бы сильно тут не развозить опишу что же требуется от инструмента разработки. Основные критерии, которые обязательно необходимо учесть:
1) Кроссплатформенность. Это не только возможность создать продукт работающий под несколькими ОС (а именно Linux и Windows), но возможность среды работать под выше озвученными системами.
2) Используемые БД должны быть бесплатны, не только для разработчиков, но и для конечных пользователей. Что бы была обеспечена лицензионная чистота. (Сразу уточняющий вопрос - MySQL является таковым? А то в поиске я немного запутался, мне показалось, что для коммерческого применения все же необходимо приобрести лицензию.)
  Следующие, можно назвать наверное моими хотелками и привычкой:
3) Первое, что мне понравилось в 1С, это возможность в легкую сделать БД сетевой. Если будет возможность быстро создавать сетевые приложения не задумываясь об очереди доступа, одновременном доступе аля как в 1С, очень даже приветствуется. Но быть такая возможность должна.
4) Понимаю, что с правами доступа придется возится именно в той СУБД которую используешь, но может есть продукт в котором эта возможность максимально упрощена.

  Восновном это все. Остальные моменты надеюсь выяснить в процессе обсуждения, если таковые возникнут.
  С средах и языках разработки, как и в СУБД совершенно не силен. Надеюсь, что вы сможете подсказать и рассказать о таковых, их плюсах и минусах. Сдесь просьба советовать и рассказывать, за что буду премного благодарен.
  Пытался найти что-то сам, сначала полез смотреть аналоги 1С. 1L - пациент мертв, Ананас - ситуация немногоим лучше, но совершенно не сетевая (не многопользовательская). Вспомнил Access, может взять ОО + СУБД (на выбор)? Подойдет ли такая связка под те критерии которые я назвал выше. Возможно ли на ней построить серьезную систему, например на 50 пользователей с БД от 10 гигабайт?
  Почитал про Adempiere, вроде система хороша, но литературы на русском очень мало, да и внедрений я накопал не густо. Восновном ковырял что-то уже полуготовое, на манер 1С. Но если вы предложите другие стоящие варианты, буду очень рад ибо я в этом совсем ничего не понимаю. А что начинать учить по сути не важно. Буду пробовать все что смогу, а там что приглянется.

p.s. Холивар прошу не разводить, пустую "балтологию" тоже (извиняюсь если грубо). Для меня это важный вопрос. Хотелось бы поучавствовать в толковой дискуссии, с конструктивными предложениями.

С уважением, Yakoff.
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн ezhyk

  • [ezhyk@localhost~]$
  • Старейшина
  • Ветеран
  • *****
  • Сообщений: 505
  • Карма: 13
  • Пол: Мужской
  • openSUSE 12.1
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #1 : 07 Ноября 2009, 00:45:53 »
Что-то знатоки баз данных затерялись :)
Закину пять копеек :)
Разработкой ПО не балуюсь даже :) но по большинству требований подойдет FireBird. Кроссплатформенная, бесплатная, сетевая, вот только с большими базами не шустрит вроде.
Так как тоже знаком с дельфи - легко освоить после интербейс.
З.Ы. Счас конечно народ набежит обосрет мой пост :(
Я вот все пробую, пробую - а оно не получается =)
С верой в Бога, Царя и Отечество -> на перезагрузку!

Сертификат

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
Re: Выбор инструмента для разработки ПО
« Ответ #2 : 07 Ноября 2009, 01:21:46 »
... но по большинству требований подойдет FireBird. Кроссплатформенная, бесплатная, сетевая, вот только с большими базами не шустрит вроде.
Так как тоже знаком с дельфи - легко освоить после интербейс.

  Судя по - http://ru.wikipedia.org/wiki/Firebird, прочитав "основные характеристики", действительно вариант. Теоретически запас в объеме базы хорош. Должно все работать шустренько. Но проверить можно только на реальном деле.

  Ну, с СУБД понятно, где-то натыкался на Делфи под Linux (образно выражаясь), с разработкой gui под разные ОС проблем не возникнет?
  Как-то меня страшит процесс разработки многопользовательского приложения, так как нифига в этом не понимаю. Вот он, изъян 1Сников. Но с другой стороны, экономия времени на разработку.
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн Zerocool

  • Свирепый и кровожадный черепах
  • Старейшина
  • Общительный человек
  • *****
  • Сообщений: 1 503
  • Карма: 19
  • Пол: Мужской
  • ArchLinux User
    • Торрент-Трекер для Волгателеком Оренбург
Re: Выбор инструмента для разработки ПО
« Ответ #3 : 07 Ноября 2009, 01:47:21 »
Цитировать
Ну, с СУБД понятно, где-то натыкался на Делфи под Linux (образно выражаясь), с разработкой gui под разные ОС проблем не возникнет?
Lazarus же

FreePascal
Ко всему прочему есть всякие Qt-designer и прочие извращения, для гуев :)
Все, что мне нужно - это теплая постель, доброе слово и неограниченная власть...
Я неадекватен по определению, так что не ждите, что я буду себя хорошо вести ;)

Оффлайн urgen

  • ALTLinux 4.0 не так и плохо
  • Постоялец
  • ***
  • Сообщений: 101
  • Карма: 2
  • Пол: Мужской
Re: Выбор инструмента для разработки ПО
« Ответ #4 : 07 Ноября 2009, 02:05:08 »
Ну у Lazarus глюков хватает, MySQL насколько я знаю свободен, потому что его юзают все кому не лень и без каких либо проблем, посмотри в сторону того, что на  Java написано (у меня одногруппник пишет что-то типа EMS MySQL Manager). А вообще, я думаю придется исходить из конкретной задачи, и  там уже искать
Работа, не бойся, я тебя не трону!!!

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
Re: Выбор инструмента для разработки ПО
« Ответ #5 : 07 Ноября 2009, 11:32:56 »
Lazarus же

  Да, именно :-) . Этот вариант у меня на крайний случай, если лучшего (более привычного, удобного на вкус) не найду.

  To urgen. Для меня Java это что то для разработки web, других применений не знаю. В твоем примере EMS (экспресс маил сЁвис) как раз является на мой взгляд таковым. Может я что то не понимаю? На яве можно писать приложения?
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн Tom

  • Старожил
  • ****
  • Сообщений: 299
  • Карма: 7
  • Пол: Мужской
  • OpenSuse 11.1 KDE4
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #6 : 07 Ноября 2009, 12:15:14 »
 ...На яве можно писать приложения?
Можно. На парах сидим и клепаем пограммки на Java. Как раз под линуксом (в консольке) :-). Тебе нужно бужет скачать JDK.

Upd
Yakoff, найди Магвая. Уж он точно расскажет что где и как, тк пишет на всем что компиляется :smoke:
« Последнее редактирование: 07 Ноября 2009, 18:00:36 by Tom »
Обасцал забор админа. Slux извини.

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
Re: Выбор инструмента для разработки ПО
« Ответ #7 : 08 Ноября 2009, 03:18:48 »
Yakoff, найди Магвая. Уж он точно расскажет что где и как, тк пишет на всем что компиляется :smoke:

  Спасибо за подсказку  :-), надо будет его поспрошать  :D .
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн Magvaj

  • Старейшина
  • Ветеран
  • *****
  • Сообщений: 973
  • Карма: 26
  • Пол: Мужской
  • Sabayon 5.1 KDE 4
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #8 : 08 Ноября 2009, 17:49:33 »
Итак- моё видение:

  Что бы сильно тут не развозить опишу что же требуется от инструмента разработки. Основные критерии, которые обязательно необходимо учесть:
1) Кроссплатформенность. Это не только возможность создать продукт работающий под несколькими ОС (а именно Linux и Windows), но возможность среды работать под выше озвученными системами.
2) Используемые БД должны быть бесплатны, не только для разработчиков, но и для конечных пользователей. Что бы была обеспечена лицензионная чистота. (Сразу уточняющий вопрос - MySQL является таковым? А то в поиске я немного запутался, мне показалось, что для коммерческого применения все же необходимо приобрести лицензию.)
  Следующие, можно назвать наверное моими хотелками и привычкой:
3) Первое, что мне понравилось в 1С, это возможность в легкую сделать БД сетевой. Если будет возможность быстро создавать сетевые приложения не задумываясь об очереди доступа, одновременном доступе аля как в 1С, очень даже приветствуется. Но быть такая возможность должна.
4) Понимаю, что с правами доступа придется возится именно в той СУБД которую используешь, но может есть продукт в котором эта возможность максимально упрощена.

1) самое  простое и удобное здесь- использовать Qt с их новомодной студией QtCreator(всё ессно бесплатно, если не продавать прогу собираешься). Осваимается легко, работает шустренько и одинаково во всех платформах. Если не устраивает- есть Gtk(но я его недолюбливаю, на разных платформах работает по-разному, козявится, тормозит)- он щас в плане наворотов помощнее, но навороты сводятся к "чтобы кнопочка анимацию как в WPF поддерживала, да альтернативный текст в наборнике был". С qt и gtk прекрасно работают так же бесплатные студии KDevelop(мой любимчик, но qt пишу именно в QtCreator и советую так делать всем) и любимый явавцами Eclipse. Вроде как недавно была встроена поддержка Qt в NetBeans, но это не точно.

Все студии, кроме QtCreator есть в репозиториях любой уважающей себя системы.

Ссылки для загрузок и инфы:
Qt/QtCreator: http://qt.nokia.com
Gtk: http://www.gtk.org/
KDevelop: http://www.kdevelop.org/
Eclipse: http://eclipse.org/
NetBeans: http://netbeans.org/

2) из бд не советую юзать мускуль- как никак платным стал, да и отважиться на нём содержать базу, посильнее чем сайта я бы не стал... падучая СУБД. Из последнего понравившегося- PostgreSQL. Шустренькая, моЩная, кросплатформенная. Минусы- запутанная система триггеров и хранимок, неудобная система дополнительных групп и ролей пользователя для доступа к базе. Плюсы- можная система скриптования, несколько языков написания триггеров и хранимок, включая си подобный, мощная система автоинкрементов и вообще автоматических полей, куча полезных автоматом обрабатываемых типов. Куча способов администрирования. Всё в исходниках и бинарниках.. Под все платформы... Всё бесплатно ;-)

Ссылки:
PostgreSQL: http://www.postgresql.org/
PgAdmin3: http://www.pgadmin.org/
phpPgAdmin: http://phppgadmin.sourceforge.net/

Также всё доступно через репозитории уважающих себя систем.

3) любая современная субд, кроме sqlite и прочей мелочи имеет возможность быть сетевой. postgreSQL стоит у меня на сервере и содержит базу самого серверного приложения, базу удалённой платёжной системы и базу сайта... глюки или тормоза замечены не были. Одновременный доступ к базе через сервер приложений был максимально с 15 клиентов. Полёт нормальный, ни у кого ничего не блокировалось. Думаю при хороших мощностях сервака выдержит и 10000 и больше клиентов %)

4) права доступа рулить можно как сервером приложений, так и базой- зависит от задачи...

Вообщем, выбирай. Задавай вопросы. Потом отпиши что понравилось- дам русскую документацию на что есть.
"ls /" (C) Козьма Прутков
Вам меня не понять! Я идиот... и я счастлив! :-)

Оффлайн apprentice

  • Администратор
  • Старожил
  • ******
  • Сообщений: 323
  • Карма: 22
  • Пол: Мужской
  • Debian, OS X, iOS
Re: Выбор инструмента для разработки ПО
« Ответ #9 : 08 Ноября 2009, 19:22:42 »
Цитировать
мускуль- как никак платным стал,
O_o ты опять летал во сне?
« Последнее редактирование: 08 Ноября 2009, 19:31:38 by Apprentice »
Листьям древесным подобны сыны человеков! - падайте ниц, ибо осень.

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
Re: Выбор инструмента для разработки ПО
« Ответ #10 : 09 Ноября 2009, 10:50:02 »
1) самое  простое и удобное здесь- использовать Qt с их новомодной студией QtCreator(всё ессно бесплатно, если не продавать прогу собираешься).
  Если ПО будет разработано для нужд компании в которой работаю на данный момент, факт такого использования будет считаться продажей? Как можно обойти момент, когда все таки появится нужда продать ПО конкретному заказчику? Ведь для того и работаем  ;-) .

3) любая современная субд, кроме sqlite и прочей мелочи имеет возможность быть сетевой. postgreSQL стоит у меня на сервере и содержит базу самого серверного приложения, базу удалённой платёжной системы и базу сайта... глюки или тормоза замечены не были. Одновременный доступ к базе через сервер приложений был максимально с 15 клиентов. Полёт нормальный, ни у кого ничего не блокировалось. Думаю при хороших мощностях сервака выдержит и 10000 и больше клиентов %)
  Почитав обзоры, пришел к выводу, что стоит попробовать PostgreSQL. Уже больно хорошая перспектива. А также SQL пользуют где только можно, значит чаще сталкиваться будешь. Вобщем попробую.
  Я по своей неосведомленности, немного не верно описал потребности в сетевых возможностях. Впринципе я понимал, что большенство СУБД сетевые. Мне был интересен момент когда можно БД не вникая в суть разработки сделать многопользовательской. Опять же "как в 1С", сделал базу, разместил ее на общедоступном ресурсе, подключил пользователей и все. Я плохо понимаю еще все эти технологии, поэтому прошу не ругать  :-) .  Не хотелось бы в каждом новом проекте, делать систему контроля: занята ли запись (редактирует ли ее кто, просто читает), одновременный доступ к записи. И прочие вытекающие последствия. Когда баловался на Delphi такие моменты всплывали, там еще нужно предусмотреть было как базу подключить и т.п. С SQL конечно проще, но мнение опытных людей по этому вопросу для меня ВАЖНО. Впринципе этот пункт и не вопрос, так просьба высказать мнение об удобстве использования.

4) права доступа рулить можно как сервером приложений, так и базой- зависит от задачи...

  Опять же задача более-менее ясна. Хочется "аля 1С", но не совсем по простоте. Если настраивать не через разрабатываемое ПО, идет привязка заказчика к разработчику, каждый раз что то приходить делать. И я уже предвижу, что админку придется неизбежно делать. Это не жалоба, да трудно, но хочется экономить время. Мне кажется, что я просто чего-то либо не знаю либо не допонимаю.
  Хотя когда будут наработки, каждый раз изобретать велосибед уже будет не нужно.

Вообщем, выбирай. Задавай вопросы. Потом отпиши что понравилось- дам русскую документацию на что есть.
  Огромное спасибо всем откликнувшимся! Буду пробовать и потом уже спрашивать. Надеюсь, что смогу влиться в ряды разработчиков под Linux.  :xz:
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
Re: Выбор инструмента для разработки ПО
« Ответ #11 : 09 Ноября 2009, 11:14:20 »
 TO Magvaj.
  Хотел спросить, понимаю что не совсем красиво, но если сделать  связку ОО Base + PostgreSQL не совсем глючно будет? Просто ради интереса, да и по ОО литературы вроде навалом, именно русской.
  Еще один вопрос возник. Вернусь к 1С, при изменении конфигурации, внесенные изменения появляются соответственно у всех пользователей. Очень удобно. Я так понимаю, что такой вариант реализовать будет очень сложно. Так ли это? Скорее всего проще web интерфейс сделать? Если не трудно напиши навскидку, коротко в пару предложений возможные способы решения такой задачи.
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн Magvaj

  • Старейшина
  • Ветеран
  • *****
  • Сообщений: 973
  • Карма: 26
  • Пол: Мужской
  • Sabayon 5.1 KDE 4
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #12 : 10 Ноября 2009, 14:38:54 »
Если ПО разработано для нужд компании и не составляется документов о продаже- фактически тебе оплатили УСЛУГИ по разработки ПО. Если компания имеет и исходники, то вообще претензий ноль.

Связка OO Base и PostgreSQL- не вижу смысла... инструменты для постгреса весьма мощны и мультиязычны
"ls /" (C) Козьма Прутков
Вам меня не понять! Я идиот... и я счастлив! :-)

Оффлайн TheMailBee

  • Новичок
  • *
  • Сообщений: 21
  • Карма: 1
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #13 : 11 Ноября 2009, 16:14:36 »
Возможно ли на ней построить серьезную систему, например на 50 пользователей с БД от 10 гигабайт?
Сильное подозрение что для БД от 10 ГБ нужна больее мощная система чем постгри или мускул.
No More Lie - Just Death.

Оффлайн Zerocool

  • Свирепый и кровожадный черепах
  • Старейшина
  • Общительный человек
  • *****
  • Сообщений: 1 503
  • Карма: 19
  • Пол: Мужской
  • ArchLinux User
    • Торрент-Трекер для Волгателеком Оренбург
Re: Выбор инструмента для разработки ПО
« Ответ #14 : 11 Ноября 2009, 16:17:05 »
Oracle ...
Все, что мне нужно - это теплая постель, доброе слово и неограниченная власть...
Я неадекватен по определению, так что не ждите, что я буду себя хорошо вести ;)

Оффлайн Yakoff

  • Ветеран
  • *****
  • Сообщений: 727
  • Карма: 16
  • Пол: Мужской
  • Debian GNU/Linux
Re: Выбор инструмента для разработки ПО
« Ответ #15 : 11 Ноября 2009, 16:35:25 »
Сильное подозрение что для БД от 10 ГБ нужна больее мощная система чем постгри или мускул.

  Если говорить откровенно, это верхний предел моих потребностей. Так сказать брал с запасом. Фактически на текущий момент расклад следующий:
а) пользователей: 15-20 чел.
б) база: 3-4 Гб.

  Потребности всегда растут, нужно немного себя страховать. Если проект будет серьезный (вплане объемов), то и подход будет другим. Хотя встречал SQL базу от 1С на 100 Гб. В нее нужно было платежки с нескольких точек сливать, ничего работала. Но вот есть подазрения, что админы там очень хорошие, серьезный банк всетаки. Я в SQL пока ноль, но думаю админы как-то базу наверное хитро хранят. Так как при таком объеме возникают серьезные проблемы, в сети интернет встречал часто людей которые админят 1С базы в 30 Гб, в 50-60 Гб всего пару раз. Сотня в моей практике единственный случай, но работает на удивление нормально. У людей с базой 50-60Гб жуть, что творится. Одну такую тему находил, причем человек от отчаянья не в одно общество обращялся. Пока следил за темой, решения так и не нашли, потом не знаю.
Хкспронодлн ни себе х.... даже не знал что так можно!
Разработчики 1С, сделайте 1С 7.7 под linux! А 8.Х и так пока сойдет.

Оффлайн Magvaj

  • Старейшина
  • Ветеран
  • *****
  • Сообщений: 973
  • Карма: 26
  • Пол: Мужской
  • Sabayon 5.1 KDE 4
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #16 : 12 Ноября 2009, 18:29:49 »
чтото незаметно что у гугла проблемы с потгре... думаю у них база поболее то 10 гигов ;-)
"ls /" (C) Козьма Прутков
Вам меня не понять! Я идиот... и я счастлив! :-)

Оффлайн Zerocool

  • Свирепый и кровожадный черепах
  • Старейшина
  • Общительный человек
  • *****
  • Сообщений: 1 503
  • Карма: 19
  • Пол: Мужской
  • ArchLinux User
    • Торрент-Трекер для Волгателеком Оренбург
Re: Выбор инструмента для разработки ПО
« Ответ #17 : 12 Ноября 2009, 18:41:53 »
Магвай, у них и ресурсов поболее, да и програмисты с руками (иногда)
Все, что мне нужно - это теплая постель, доброе слово и неограниченная власть...
Я неадекватен по определению, так что не ждите, что я буду себя хорошо вести ;)

Оффлайн mef

  • Старейшина
  • Ветеран
  • *****
  • Сообщений: 796
  • Карма: -65487
Re: Выбор инструмента для разработки ПО
« Ответ #18 : 12 Ноября 2009, 18:51:36 »
Магвай, у них и ресурсов поболее, да и програмисты с руками (иногда)
угу, а еще у них не пострги, а mysql, переработанный и не "цельная" база на одной машине, а малюююсенький кластер.
« Последнее редактирование: 12 Ноября 2009, 18:53:45 by mef »
3.14159265358979323846264338327950288419716939937510582097494

Оффлайн Magvaj

  • Старейшина
  • Ветеран
  • *****
  • Сообщений: 973
  • Карма: 26
  • Пол: Мужской
  • Sabayon 5.1 KDE 4
    • E-mail
Re: Выбор инструмента для разработки ПО
« Ответ #19 : 13 Ноября 2009, 13:58:22 »
угу, а еще у них не пострги, а mysql, переработанный и не "цельная" база на одной машине, а малюююсенький кластер.

значит я перепутал с wiki или каким то ещё крупным проектом...
"ls /" (C) Козьма Прутков
Вам меня не понять! Я идиот... и я счастлив! :-)