Re[11]: Ошибок не делает тот, кто ничего не делает
От: sc Россия  
Дата: 28.03.07 15:07
Оценка:
Здравствуйте, FDSC, Вы писали:

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


sc>>причем логи должны писаться и самими модулями, а не только тестами.

sc>>т.е. проект должен иметь достаточно мощную и удобную подсистему логирования.

FDS>А что понимается под "удобной" системой логирования?

FDS>Я имею ввиду, какие функции должны быть у этой системы, что бы она была удобной?
Да, удобная, понятие растяжимое
Ну хотя бы чтобы логи были достаточно детальными (хотя это и от программиста сильно зависит), анализ логов должен быть удобным (возможно отдельная тулза), уровень логирования должен настраиваться при запуске, чтобы логи не много ресурсов отъедали, ну и чтобы легко и компактно можно было вставлять логирование в код.
Кроме того, что программист пишет в лог руками, необходимо добавить автомат. логи типа вход/выход в/из ф-ции, стек вызовов и др. полезную инфу
Re[3]: Ребят, я понимаю, что вам смешно, но проблема правда
От: VladD2 Российская Империя www.nemerle.org
Дата: 28.03.07 17:37
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Вместо того, чтобы смеяться, лучше бы подсказали, что я не так делаю... а то я уже скоро на Nemerle и Scheme начну писать лучше, чем на C# .


Чтобы сказать что ты делаешь не так надо с тобой поработать бок о бок.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Ребят, я понимаю, что вам смешно, но проблема правда
От: FDSC Россия consp11.github.io блог
Дата: 28.03.07 18:02
Оценка:
Здравствуйте, VladD2, Вы писали:

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


FDS>>Вместо того, чтобы смеяться, лучше бы подсказали, что я не так делаю... а то я уже скоро на Nemerle и Scheme начну писать лучше, чем на C# .


VD>Чтобы сказать что ты делаешь не так надо с тобой поработать бок о бок.


Спасибо за разъяснение.

Я просто нетерпелив и , как всегда, в плохом настроении, поэтому и пишу, что C# слишком сложен, Nemerle слишком сложен. А на самом деле, спроси меня про любимый Delphi, я и там найду, что покритиковать Так что не обращайте на меня особо внимания.

На самом деле всё нормально.
Re[2]: Как Вы боретесь с ошибками?
От: Sinclair Россия https://github.com/evilguest/
Дата: 29.03.07 04:18
Оценка: +1
Здравствуйте, FDSC, Вы писали:

FDS>Вообще, когда используешь C# и .NET постоянно используешь сразу несколько компонентов. Обязательно надо что-то куда-то создать, записать, передать интерфейс и т.п. Куча служебных действий, иногда создаётся впечатление, что вернулся в assembler. Всё время думаешь о коде, а не о программе.

А ты не мог бы привести примеры этих "служебных действий", которые были тебе не нужны на С++?
По моим впечатлениям, код на С# обычно компактнее кода на С++.
1.2.0 alpha rev. 655
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[7]: Ошибок не делает тот, кто ничего не делает
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.03.07 08:44
Оценка: +1 -1 :))
Здравствуйте, bkat, Вы писали:

B>Но мой опыт таков, что внедрение юнит-тестов всегда оправдывало себя.

B>Затраты, на самом деле, не велики, а польза есть.

О, напиши юнит-тесты к Янусу, а потом мы посмотрим, какой процент известных ошибок ты ими поймаешь. Что то мне подсказывает, что очень маленький.
... << RSDN@Home 1.2.0 alpha rev. 675>>
AVK Blog
Re[8]: Ошибок не делает тот, кто ничего не делает
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 29.03.07 09:13
Оценка: +3 -1 :)
Здравствуйте, AndrewVK, Вы писали:

AVK>О, напиши юнит-тесты к Янусу,


Если изначально программа не проектировалась из расчета, что там будут unit-тесты, то именно юнит тесты написать уже не получится.

AVK>а потом мы посмотрим, какой процент известных ошибок ты ими поймаешь. Что то мне подсказывает, что очень маленький.


Кстати, какой процент известных ошибок помогла поймать статическая типизация?
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[9]: Ошибок не делает тот, кто ничего не делает
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.03.07 10:23
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

AVK>>О, напиши юнит-тесты к Янусу,


ANS>Если изначально программа не проектировалась из расчета, что там будут unit-тесты, то именно юнит тесты написать уже не получится.


Знакомая отмазка.

AVK>>а потом мы посмотрим, какой процент известных ошибок ты ими поймаешь. Что то мне подсказывает, что очень маленький.


ANS>Кстати, какой процент известных ошибок помогла поймать статическая типизация?


Неизвестно. Те, что поймали, их никто из тех, кто их поймал не регистрировал.
... << RSDN@Home 1.2.0 alpha rev. 675>>
AVK Blog
Re[10]: Ошибок не делает тот, кто ничего не делает
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 29.03.07 10:55
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>>>О, напиши юнит-тесты к Янусу,


ANS>>Если изначально программа не проектировалась из расчета, что там будут unit-тесты, то именно юнит тесты написать уже не получится.


AVK>Знакомая отмазка.


Это реальность жизни. С большой долей вероятности юнит-тесты нельзя написать ввиду отсутсвия самих юнитов.

Если тебе интересно, то приведи мне пример модуля из юнита, а я скажу тебе как на него написать юнит-тест.
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[11]: Ошибок не делает тот, кто ничего не делает
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.03.07 11:18
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

AVK>>Знакомая отмазка.


ANS>Это реальность жизни.


Реальности жизни это тонны написанного кода. Переписывание их тебе никто не оплатит.

ANS> С большой долей вероятности юнит-тесты нельзя написать ввиду отсутсвия самих юнитов.


А что такое юниты в твоем понимании? И как определить их наличие/отсутствие?
... << RSDN@Home 1.2.0 alpha rev. 675>>
AVK Blog
Re[8]: Ошибок не делает тот, кто ничего не делает
От: bkat  
Дата: 29.03.07 11:29
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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


B>>Но мой опыт таков, что внедрение юнит-тестов всегда оправдывало себя.

B>>Затраты, на самом деле, не велики, а польза есть.

AVK>О, напиши юнит-тесты к Янусу, а потом мы посмотрим, какой процент известных ошибок ты ими поймаешь. Что то мне подсказывает, что очень маленький.


К Янусу писать не буду.
За "спасибо" не работаю

Ну и потом может вы и в самом деле сделали что-то принципиально новое
в разработке продуктов, что в итоге "старые" методы тестирования у вас
либо принпиально не применимы, либо дают нулевой эффект.
Может вы вообще все формально, на основании формальных же спецификаций, верифицируете
Я этого знать не могу

Кстати, если уж говорить об ошибках,
то важно еще учитывать, о каких ошибках идет речь
и об эффективности поиска ошибок.
Одно дело потрать год на обнаружение ошибок.
А другое дело за месяц найти те же самые ошибки.
Уверен, что целенаправленный поиск багов, в том числе с помощью юнит-тестов,
делает процесс поиска багов более эффективным,
Re[9]: Ошибок не делает тот, кто ничего не делает
От: Sinclair Россия https://github.com/evilguest/
Дата: 29.03.07 11:30
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:
ция?
Это невозможно подсчитать, т.к. все эти ошибки так и не покинули лабораторию.
1.2.0 alpha rev. 655
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[12]: Ошибок не делает тот, кто ничего не делает
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 29.03.07 11:32
Оценка:
Здравствуйте, AndrewVK, Вы писали:

ANS>>Это реальность жизни.

AVK>Реальности жизни это тонны написанного кода. Переписывание их тебе никто не оплатит.

А я и несобираюсь его переписывать. Но люди иногда и пишут новый код. А со старым кодом, кроме тестеров никто не поможет.

ANS>> С большой долей вероятности юнит-тесты нельзя написать ввиду отсутсвия самих юнитов.


AVK>А что такое юниты в твоем понимании? И как определить их наличие/отсутствие?


То для чего можно написать юнит-тест То есть кусок кода, который можно выполнить не инициализируя всего приложения. Где-то так.
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[9]: Ошибок не делает тот, кто ничего не делает
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.03.07 11:40
Оценка: +1
Здравствуйте, bkat, Вы писали:

B>Ну и потом может вы и в самом деле сделали что-то принципиально новое

B>в разработке продуктов, что в итоге "старые" методы тестирования у вас
B>либо принпиально не применимы, либо дают нулевой эффект.

Да нет, дело не в принципиально новом у нас, а в том, что старые методы, они далеко не для всего подходят.

B>Уверен, что целенаправленный поиск багов, в том числе с помощью юнит-тестов,

B>делает процесс поиска багов более эффективным,

Вопрос только в одном — покрет ли повышение эффективности поиска багов затраты на написание юнит-тестов и модификацию их при рефакторинге системы. Для меня ответ совсем не очевиден, и я бы сильно поостерегся советовать использовать юнит-тестирование без понимания специфики конкретного проекта.
... << RSDN@Home 1.2.0 alpha rev. 675>>
AVK Blog
Re[3]: Никак. Я их не делаю.
От: red_dragon Украина  
Дата: 29.03.07 11:44
Оценка:
Здравствуйте, Tilir, Вы писали:

T>В целом да. Тяжко покрыть юнит-тестами драйвер на сях/ассемблере.


А в чем проблема?
Re[12]: Ошибок не делает тот, кто ничего не делает
От: aka50 Россия  
Дата: 29.03.07 11:56
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Здравствуйте, Andrei N.Sobchuck, Вы писали:


AVK>>>Знакомая отмазка.

Чтобы приложение было можно оттестировать unit тестами, нужно проектировать близко к IoC.

ANS>>Это реальность жизни.

AVK>Реальности жизни это тонны написанного кода. Переписывание их тебе никто не оплатит.
Никто и не говорит о переписывании... но вот начинать новый проект (или модуль к старому)
лучше бы с мыслью о UT в голове...

ANS>> С большой долей вероятности юнит-тесты нельзя написать ввиду отсутсвия самих юнитов.

AVK>А что такое юниты в твоем понимании? И как определить их наличие/отсутствие?
Это примерно то, на что распадается приложение, которое проектируется с использованием паттерна IoC. Если приложение не проектировалось изначально под IoC, прикрутить потом IoC — себе дороже.
Re[10]: Ошибок не делает тот, кто ничего не делает
От: Mirrorer  
Дата: 29.03.07 12:02
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Вопрос только в одном — покрет ли повышение эффективности поиска багов затраты на написание юнит-тестов и модификацию их при рефакторинге системы. Для меня ответ совсем не очевиден, и я бы сильно поостерегся советовать использовать юнит-тестирование без понимания специфики конкретного проекта.


Допустим стартует новый проект. Каким он должен быть чтобы юнит тесты были недостаточно эффективными ?

Я учавствовал в проекте, в котором юнит тесты начали писать на этапе активного багфиксинга. Процент выловленных багов благодаря юнит тестам был где-то 20%. Я вполне допускаю что для другого проекта этот показатель мог быть как 60% так и 0. А вот для нового проекта мне почему-то кажется что использование юнит тестов будет эффективным по умолчанию. Может я ошибаюсь
"Если Вы отличаетесь от меня, то это ничуть мне не вредит — Вы делаете меня богаче". Экзюпери
Re[10]: Ошибок не делает тот, кто ничего не делает
От: bkat  
Дата: 29.03.07 12:11
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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


B>>Ну и потом может вы и в самом деле сделали что-то принципиально новое

B>>в разработке продуктов, что в итоге "старые" методы тестирования у вас
B>>либо принпиально не применимы, либо дают нулевой эффект.

AVK>Да нет, дело не в принципиально новом у нас, а в том, что старые методы, они далеко не для всего подходят.


Дак понятно, что серебрянных пуль нету.

B>>Уверен, что целенаправленный поиск багов, в том числе с помощью юнит-тестов,

B>>делает процесс поиска багов более эффективным,

AVK>Вопрос только в одном — покрет ли повышение эффективности поиска багов затраты на написание юнит-тестов и модификацию их при рефакторинге системы. Для меня ответ совсем не очевиден, и я бы сильно поостерегся советовать использовать юнит-тестирование без понимания специфики конкретного проекта.


Да, для каждого проекта надо решать заново, что и как тестируется.
Это даже надо заранее планировать.
Юнит-тестирование — это один из "тулов" обеспечения качества.
О нем надо знать и при необходимости осознанно пользоваться.
Советовать этим пользоваться всегда и при любых условиях так не разумно,
на мой взгляд, как и "сильно остерегаться советовать использовать".
Членам РСДН стоит вообще быть осторожным с советами, потому что к ним прислушиваются
Re[13]: Ошибок не делает тот, кто ничего не делает
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.03.07 12:13
Оценка:
Здравствуйте, aka50, Вы писали:

AVK>>>>Знакомая отмазка.

A>Чтобы приложение было можно оттестировать unit тестами, нужно проектировать близко к IoC.

Янус спроектирован таким образом. Только проблема там в другом месте.

AVK>>А что такое юниты в твоем понимании? И как определить их наличие/отсутствие?

A>Это примерно то, на что распадается приложение, которое проектируется с использованием паттерна IoC. Если приложение не проектировалось изначально под IoC, прикрутить потом IoC — себе дороже.

Да, ребяты. Вопросов больше не имею.
... << RSDN@Home 1.2.0 alpha rev. 675>>
AVK Blog
Re[10]: Ошибок не делает тот, кто ничего не делает
От: red_dragon Украина  
Дата: 29.03.07 12:26
Оценка: -2
Здравствуйте, AndrewVK, Вы писали:

AVK>Вопрос только в одном — покрет ли повышение эффективности поиска багов затраты на написание юнит-тестов и модификацию их при рефакторинге системы. Для меня ответ совсем не очевиден, и я бы сильно поостерегся советовать использовать юнит-тестирование без понимания специфики конкретного проекта.


Проведение рефакторинга системы без юнит-тестов — это bugs*bugs при котором bugs -> infinity
Re[14]: Ошибок не делает тот, кто ничего не делает
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 29.03.07 12:30
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Янус спроектирован таким образом. Только проблема там в другом месте.


О да. Просвети нас, чем же именно уникален Янус?
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.