Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2016, 11:42   #1
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию безопасность программы c# от поломок

Всем здравствуйте!
Вопрос такой - Я написала программу на c#, она хорошо работает с Word, Excel файлами (пока что).
Проблема в том, что эта программа будет часто использована другими пользователями, тогда то и могут начаться проблемы. Вдруг программка сломается или кто-нибудь что-нибудь не то нажмет и все полетит.
Подскажите пожалуйста,как обезопасить свою программку от поломок?
Есть ли вообще что-то такое? Или это я сама себе придумала)
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 07.12.2016, 12:00   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Зависит от того что программа делает.
В целом например
  • Иметь опыт (меньше глупых ошибок и лучше понятно где ожидать проблем)
  • Писать автоматические тесты (особенно если программу придется изменять в будущем), использовать TDD и т.п.
  • Тестировать (автоматически и вручную) пытаясь сломать свою программу. Некорректный ввод, файлы и т.п.
  • Если нужны только файлы 2007+ офиса, то лучше взять библиотеку типа ClosedXml, офис например может просто не стоять + так проще
  • Еще .NET может не стоять или старой версии (если старые компы/ОС)... Можно создать инсталятор (InnoSetup например) и в нем это проверять
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.12.2016, 12:10   #3
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Цитата:
Вдруг программка сломается или кто-нибудь что-нибудь не то нажмет и все полетит.
В лицензионном договоре прописываете AS-IS и отказ от гарантий.

Цитата:
Подскажите пожалуйста,как обезопасить свою программку от поломок?
Программу надо тестировать и отлаживать. Плюс элементы устойчивости:
- Объекты и функции должны иметь проверки по входным параметрам.
- А также надо проверять результаты вызываемых функций в вашем случае обращении к переменным, объектам Word, Excel. В данном случае возможна только через отлов ошибок в try-catch-finally.

В сложных случаях вынос неустойчивых функций в отдельный процесс, как то делает браузер.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 07.12.2016 в 12:12.
Pavia вне форума Ответить с цитированием
Старый 07.12.2016, 12:41   #4
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Логи!!! Если программа пишет логи это уже само по себе хорошо.
В целом ключевые моменты программы неплохо протоколировать. Пользователю его можно даже не показывать. Чтобы упростить себе разбор ошибок можно довести до протоколирования действий пользователя. Чтобы потом не получать ответы типа "Я тут открыл, а оно потом само вот так .. и сломалось".

Можно всю программу завернуть в try...catch. В принципе однозначного решения на этот вопрос нету. Ошибка например может даже не от вас зависеть. Тут более важен аспект как программа поведет себя в случае ошибки. Рухнет ли с полным крахом всех данных или как то попытается мягко сохранить, сдампить буферы.. перезагрузится.
Но опять же стоит рационально подходить к этому вопросу. Поскольку разработка подобной системы очень дорого стоит в плане времени и усилий.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 07.12.2016, 12:46   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение
В целом ключевые моменты программы неплохо протоколировать. Пользователю его можно даже не показывать. Чтобы упростить себе разбор ошибок можно довести до протоколирования действий пользователя. Чтобы потом не получать ответы типа "Я тут открыл, а оно потом само вот так .. и сломалось".
Да, но автор же спрашивал про "не ломалась", а не про отладку и исправление поломок

Может у него пользователи на северном полюсе без инета и доставлять обновления сложно
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 07.12.2016 в 12:48.
Alex11223 вне форума Ответить с цитированием
Старый 07.12.2016, 12:51   #6
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию

Да, я так долго делала эту программу, а она вдруг возьмет и сломается, я тогда не переживу!!)))
Вот и спрашиваю чего такого сделать, чтобы она подольше поработала, чтобы пользователи ее не сломали, сама в этом вообще не разбираюсь)
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 07.12.2016, 13:00   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от ya_yanchik-2909 Посмотреть сообщение
сама в этом вообще не разбираюсь
тогда ничего не поможет
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.12.2016, 13:11   #8
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Пользователи - они такие. То весь интернет скачают, то программы так часто используют, что они изнашиваются и ломаются
pu4koff вне форума Ответить с цитированием
Старый 07.12.2016, 13:15   #9
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Да, но автор же спрашивал про "не ломалась", а не про отладку и исправление поломок

Может у него пользователи на северном полюсе без инета и доставлять обновления сложно
ну тогда нужна бригада тестеров-юзеров. с первого раза прогу без глюков?? это надо постараться..
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Безопасность. dirik71 Помощь студентам 1 23.12.2010 10:15
Безопасность e_e_n Безопасность, Шифрование 11 04.07.2010 06:47
Безопасность x_AN777 Помощь студентам 2 08.05.2010 23:30
Безопасность xap4o PHP 4 15.02.2010 00:02