OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Понедельник, 13 Май, 2024 09:14

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу Пред.  1, 2
Автор Сообщение
СообщениеДобавлено: Пятница, 16 Март, 2007 11:31 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2450
Откуда: Россия, Томск
Vlad писал(а):
Чем данный подход отличается от обычного логирования?

Да, мало чем отличается. Но одно преимущество есть: этим пользоваться гораздо проще, чем каждый раз создавать аналогичную локальную процедуру с длинным выводом в StdLog. Более общее решение и более компактное. Кроме того, вывод в обычный журнал производится сразу, по мере поступления информации, а DevLocalWatch вывод производит по окончании работы. В результате обычный журнал может существенно замедлять работу тестируемого алгоритма, что в некоторых ситуациях может быть неприемлемо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 16 Март, 2007 11:35 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2450
Откуда: Россия, Томск
rv82 писал(а):
Илья Ермаков писал(а):
Если цикл настолько сложен, что требует отладки, может, стоит инвариант записать и формально вывести? :-)

Если честно, с трудом себе представляю, о чём идёт речь...
Ух очень я привык к Смолтоку. А с КП слишком мало "общался", так что некоторые вещи в нём пока непонятны.

Кто может популярно объяснить человеку про инварианты? Я и сам бы с удовольствием послушал формальное определение. Или ссылку дайте, что почитать. А то пользоваться, вроде, умею, а объяснить толково - не могу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 16 Март, 2007 13:54 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
rv82 писал(а):
Если честно, с трудом себе представляю, о чём идёт речь...
Ух очень я привык к Смолтоку. А с КП слишком мало "общался", так что некоторые вещи в нём пока непонятны.

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

Для знакомства с инвариантом цикла могу предложить INTUIT.RU: http://www.intuit.ru/department/se/pbmsu/5/ - хотя мне года два назад это объяснение не понравилось. Я лично разобрался окончательно этой осенью, когда готовил по этой теме лекции для своего "Программного конструирования" в ОГУ - и разобрался по конспектам лекций Info21 на физфаке МГУ, за что ему огромное спасибо. Очень надеюсь, у него когда-нибудь дойдут руки довести свои материалы до публичного вида! :-)

Есть очень хорошая брошюрка Р. Бейбера "Программное обеспечение без ошибок: приемы и секреты создания правильных программ". Издавалась в 1996 г., библиографическая редкость - совершенно случайно этой осенью я ее купил в Москве в Доме книги... Я ее давно хочу пересканировать, для общего пользования. Постараюсь сегодня это, наконец, сделать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 17 Март, 2007 01:09 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Брошюрку отсканировал, загнал в PDF.
Скачивайте здесь:
http://ermakov.metasystems.ru/download/ ... Errors.pdf (6,5M)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 17 Март, 2007 07:07 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2450
Откуда: Россия, Томск
Илья Ермаков писал(а):
Брошюрку отсканировал, загнал в PDF.

Отсутствуют страницы 12, 13.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 17 Март, 2007 11:32 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Сейчас поправлю!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 17 Март, 2007 12:20 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Выложил верный вариант!


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB