И снова о программном обеспечении....
Дата: 23.07.2007 12:54:12
Воропаеву Юрий.
В принципе, не важно на каком языке будет написан начальный продукт. Главное, что бы он отвечал всем требованиям, которые ему предьявляются на этапе проектирования и разработки. И, желательно, что бы имел запас в области доработки/модернизации. А для вас, как для конечных потребителей, еще и стоимость разработки и обслуживания.
При разработке программы вы изначально разрабатываете алгоритмы работы, которые либо работают нормально, либо работают с ошибками. И смена версий языка разработки (т.е. наличие технической потдержки разработчиков языка программирования) на это практически не влияет.
В нашем случае, можно сказать, что для разработки подойдут любые языки программирования Delphi, C, C#, Visual Basic, Java. Все они, на текущий момент, позволяют разработать ПО, соответствующее Требованиям.
Касательно 1С. На 1С нельзя разработать независимый программый продукт, который сможет функционировать без 1С. Причина - 1С является интерпретатором. Что это такое... Программистом разрабатывается код, который самой оболочкой 1С превращается в некие действия. Нет оболочки - код исполнять (интерпретировать) некому.
Работая с 1С в течении, пожалуй уже 9 лет, я только с десяток раз, встречал сбои самой 1С, которые были вызваны сторонними причинами (обрыв сети, выключение питания, закрытие доступа к серверу и т.п.). И только в 2 или 3 случаях это были очень серьезные проблемы, из-за которых пришлось помучится.
Да, были проблемы с 1С такого плана, что неверное работали некоторые механизмы выборки данных и приходилось возвращаться на старые версии, но... Явных повреждений данных по вине 1С не было.
Причины устойчивости крупных систем (Delphi, C, C#, Java, 1C) думаю очевидны - слишком большое число пользователей и по этой причине фирмы, выпускающие такие программные продукты, выполняют колосальный объем по их тестированию на устойчивость и корректность работы.
Кроме этого, наиболее приемлемым вариантом организации работы является создание архивных копий данных, которые позволяют свести потери данных к минимому.