Re[19]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 12:37
Оценка: :)
Здравствуйте, Aviator, Вы писали:

A>И опять ты ничего не понял. Я говорил про юнит тесты, а приведённый пример показывает необходимость функционального тестирования. Оно действительно необходимо, но сначала небольшие куски кода проверяются с помощью юнит тестов. Юнит тесты проверяют соответсвие ожидаемого поведения классов и методов с фактическим. Функциональное тестирование проверяет соответсвие предоставляемой приложением функциональности требованиям ТЗ. Это две разные разницы и совершенно различные сферы ответственности. Даже люди вовлечены разные.


Да нет это ты не понял. Разница в том, что люди вовслечены. Для перечисленных задач требует ручное тестирование. Можно и ручное юнит-тестрирование устроить, принципиальной проблемы нет. Важно тут то, что автоматизировать этот процесс не представляется возможным.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[14]: Оформление работы с БД в корпоративных приложениях -
От: Светлояр Беларусь  
Дата: 25.09.07 13:03
Оценка:
Здравствуйте, kuj, Вы писали:

kuj>Мда... я не завидую вашим разработчикам БД, но еще больше я не завидую вашим разработчикам BLL...


adontz прав, приложение должно разрабатываться по информационной структуре, а не информационная структура по приложению. Вы должны прекрасно понимать, что приложение лишь интерфейс для управления информацией.
Re[15]: Оформление работы с БД в корпоративных приложениях -
От: IT Россия linq2db.com
Дата: 25.09.07 13:05
Оценка: +2
Здравствуйте, adontz, Вы писали:

C>>Ты знаешь, если мне это нужно будет — я точно так же сделаю два класса User и UserDetails. А если у нас только два поля FirstName/LastName — пусть себе живут в одной таблице.


A>Это надо делать не когда нужно, а на всякий случай. Именно это и отличает хорошего специальста, что он разрабатывает продукт не только для сегодняшнего дня, а с учётом возможных расширений.


Таким образом можно насоздавать только монстриков, в которых напихано всего на всякий случай, а то что нужно они делать не умеют.
... << RSDN@Home 1.2.0 alpha rev. 771>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[16]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:13
Оценка:
Здравствуйте, IT, Вы писали:

A>>Это надо делать не когда нужно, а на всякий случай. Именно это и отличает хорошего специальста, что он разрабатывает продукт не только для сегодняшнего дня, а с учётом возможных расширений.


IT>Таким образом можно насоздавать только монстриков, в которых напихано всего на всякий случай, а то что нужно они делать не умеют.


Я имел ввиду не добавлять функциональность, а оставлять возможность безболезненного добавления функциональности.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[15]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:16
Оценка: +1 -1
Здравствуйте, Светлояр, Вы писали:


kuj>>Мда... я не завидую вашим разработчикам БД, но еще больше я не завидую вашим разработчикам BLL...


С>adontz прав, приложение должно разрабатываться по информационной структуре,


С чего Вы взяли, что БД это информационная структура приложения? БД это самый нижний уровень для хранения информации. Вот и все и нечего тут выдумывать.

С>Вы должны прекрасно понимать, что приложение лишь интерфейс для управления информацией.


Это не так. Приложение это интерфейс для решения конкретных бизнес-задач, а не для управления информацией. Понятие информация вообще на столько абстрактное, что не понятно к чему Вы его приплели.
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[23]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:16
Оценка:
Здравствуйте, adontz, Вы писали:



kuj>>Где там явный вызов функции и чем это отличается от CREATE TABLE?


A>Явный вызов там MessageBox.__ctor.

Точно так же, как и CREATE TABLE явно императивный оператор означающий: создай мне таблицу с такой-то структурой. Точно так же как и MyObject.CreateAnotherObject(AnotherObjectParams p);

Разница только в синтаксисе.

A>От CreateTable это отличается тем, что ты декларируешь результат — таблицу, но не знаешь как она будет создана, каки функции будут вызваны и будут ли вызваны вообще.

А Вы знаете какие функции будут вызваны в конструкторе MessageBox? Честно-честно?

Короче, Вы НЕ знаете что такое декларативное программирование. Если Вы считаете CREATE TABLE декларативным программированием, то вопросов больше нет. Пробелы в Вашем образовании я восполнять не собираюсь.
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[20]: Оформление работы с БД в корпоративных приложениях -
От: Aviator  
Дата: 25.09.07 13:16
Оценка:
Здравствуйте, adontz, Вы писали:

A>Да нет это ты не понял. Разница в том, что люди вовслечены. Для перечисленных задач требует ручное тестирование. Можно и ручное юнит-тестрирование устроить, принципиальной проблемы нет. Важно тут то, что автоматизировать этот процесс не представляется возможным.


В юмор однозначно. Про "ручное юнит тестирование" это твоё изобретение?
Re[24]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:18
Оценка:
Здравствуйте, kuj, Вы писали:

kuj>А Вы знаете какие функции будут вызваны в конструкторе MessageBox? Честно-честно?

Как минимум будет вызван сам конструктор.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[21]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:19
Оценка:
Здравствуйте, adontz, Вы писали:

kuj>>То есть ХП уже не тестируемые вовсе? Как полярно у Вас поменялось мнение... Надо же.


A>То есть научись читать по-русски. Для тебя предложенияе с двумя запятыми уже проблема.


Вы сперва определитесь можно ли тестировать ХП или нет. "Не не полностью" это не русский язык. Это называется двойное отрицание.
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[21]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:20
Оценка: :))
Здравствуйте, Aviator, Вы писали:

A>>Да нет это ты не понял. Разница в том, что люди вовслечены. Для перечисленных задач требует ручное тестирование. Можно и ручное юнит-тестрирование устроить, принципиальной проблемы нет. Важно тут то, что автоматизировать этот процесс не представляется возможным.


A>В юмор однозначно. Про "ручное юнит тестирование" это твоё изобретение?


А почему бы и нет? Например можно прослушивать все расространённые слоги оценивая качество синтезации речи, прежде чем переходить к фразам. Ты вообще увидел сейчас что-то незнакомое и выдал какое-то истеричное "ха-ха". Да, бывает и ручное юнит-тестирование если критерий корректности нельзя проверить автоматически. Вообще напиши что-то сложнее склада, потом и поговорим.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[21]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:21
Оценка:
Здравствуйте, adontz, Вы писали:

A>>нифига ты не тестируешь логику. А все тесты наверняка сводятся к проигрыванию пары сценариев на подготовленной базе


A>Сценариев не пара. Логика тестируется. Телепатию в сад.


Ну так расскажите нам КАК Вы тестируете логику? Мы не телепаты — понять Вас без слов не можем.
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[5]: Оформление работы с БД в корпоративных приложениях -
От: kejroot  
Дата: 25.09.07 13:21
Оценка: +1
Здравствуйте, Aviator, Вы писали:

A>Вы ошибаетемсь, большинство знаний подчерпывается из литературы, примеров в инете, опен сурс проектов и форумов. Далеко не у каждого есть возможность поучиться у коллег .


кстати, Kazna4ey, вы читали?:


    М. Фаулер: Архитектура корпоративных программных приложений
    Издательство:
    Цена: 557р.



    Э. Гамма, Р. Хелм, Р. Джонсон: Приемы объектно-ориентированного проектирования. Паттерны проектирования
    Издательство: Питер
    Цена: 199р.



    М. Фаулер: Рефакторинг. Улучшение существующего кода
    Издательство:
    Цена: 492р.



    С. Макконнелл: Совершенный код
    Издательство: Русская Редакция
    Цена: 481р.


все можно найти в электроннм виде нарусском
Re[22]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:23
Оценка:
Здравствуйте, kuj, Вы писали:

kuj>Вы сперва определитесь можно ли тестировать ХП или нет.


Можно, но не всегда. Как правило — можно.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[18]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:24
Оценка: -1
Здравствуйте, adontz, Вы писали:


A>>Не тестируемые это как? Объяснение с примером в стулию. У вас что, поведение кода непредсказуемое? Ну тогда тут вообще нечего обсуждать .


A>Не тестируемые, значит что ты НЕ можешь автоматически проверить корректность кода.


Если Вы не можете проверить корректность кода, значит Вы просто неправильно этот код написали. Вот и все.

A>Код, который с помошью OpenGL визуализирует карту страны и траекторию движения автомобилей на ней. Ты должен просто сесть и помотреть "то" на экране нарисовано или "не то".

Ндааааааа.... Это сильно...

A>Как ты в юнит-тесте проверишь благозвучность синтезированной речи?

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

A>Нельзя проверить, что HTML правильно отображается на экране, надо просто открыть и посмотреть.

5 баллов...
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[22]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:25
Оценка:
Здравствуйте, kuj, Вы писали:

kuj>Ну так расскажите нам КАК Вы тестируете логику? Мы не телепаты — понять Вас без слов не можем.


Создаётся некоторая предопределённая база (схема+данные). Натравляется ХП. Проверяется, что данные после исполнения ХП соответствуют ожидаемым. Я не думал, что такие вещи надо объяснять.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[20]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:27
Оценка: -1
Здравствуйте, adontz, Вы писали:


A>>И опять ты ничего не понял. Я говорил про юнит тесты, а приведённый пример показывает необходимость функционального тестирования. Оно действительно необходимо, но сначала небольшие куски кода проверяются с помощью юнит тестов. Юнит тесты проверяют соответсвие ожидаемого поведения классов и методов с фактическим. Функциональное тестирование проверяет соответсвие предоставляемой приложением функциональности требованиям ТЗ. Это две разные разницы и совершенно различные сферы ответственности. Даже люди вовлечены разные.


A>Да нет это ты не понял. Разница в том, что люди вовслечены. Для перечисленных задач требует ручное тестирование. Можно и ручное юнит-тестрирование устроить, принципиальной проблемы нет. Важно тут то, что автоматизировать этот процесс не представляется возможным.


Ручное юнит тестирование. Ей Богу, не поленюсь, соберу все Ваши перлы из этого топика распечатаю и повешу на стену в офисе. Будет народу с утра настроение поднимать.
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[19]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:28
Оценка:
Здравствуйте, kuj, Вы писали:

A>>Не тестируемые, значит что ты НЕ можешь автоматически проверить корректность кода.

kuj>Если Вы не можете проверить корректность кода

Могу. Не могу сделать это автоматически. кроме того понятие корректности может быть не детерминированным. Благозвуность речи не тот пораметр, который можно свети к Да/Нет.

A>>Код, который с помошью OpenGL визуализирует карту страны и траекторию движения автомобилей на ней. Ты должен просто сесть и помотреть "то" на экране нарисовано или "не то".

kuj>Ндааааааа.... Это сильно...

Ещё бы, ты ведь дальше своего носа ничего не видел, всё новое тебя удивляет.

kuj>Кто Вам сказал, что юнит-тесты должны проверять благозвучность речи?


А где я тут сказал юнит-тесты? Я тут о тестрировании вообще. Ты как всегда что-то не в тему ляпнул.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[13]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:34
Оценка: -1
Здравствуйте, adontz, Вы писали:

kuj>>Все верно. Потому я и считаю, что в случае корпоративных приложений БД следует использовать исключительно как хранилище информации — без хранимых процедур и триггеров.


A>Вот это и называется фанатично верить в технологию.


Это называется знать реалии жизни.

A>Есть КУЧА задач, где юнит-тестирование в частности и тестирование вообще не возможно и разглядывание кода (если повезёт, логов) единственный метод отладки. И несмотря ни на что эти задачи успешно решаются.


Нету никакой кучи задач. Юнит-тесты это не что-то из ряда фантастики, а вполне конкретная методология автоматического тестирования кода, которой вот уже много-много лет. Вы о ней НИЧЕГО не знаете, но продолжаете спорить, выставляя себя дураком.

Разберитесь сначала, изучите, а потом спорьте.

kuj>>В том то и дело, что прогон раз в сутки часто не достаточно. В идеале тесты должны прогоняться после малейшего изменения. Потому и необходимо столь жесткое разделение на слои и домены: хранилище — DAL — BLL — ...


A>Идеалист-маньяк Тест после каждого коммита в крупном проекте требует огромной по вычислительной мощности инфраструктуры компиляции и тестрирования.


Ну так идете и разберитесь с юнит-тестированием, а так же с прицнипами DDD.
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[20]: Оформление работы с БД в корпоративных приложениях -
От: kuj  
Дата: 25.09.07 13:40
Оценка: -1
Здравствуйте, adontz, Вы писали:


A>>>Не тестируемые, значит что ты НЕ можешь автоматически проверить корректность кода.

kuj>>Если Вы не можете проверить корректность кода

A>Могу. Не могу сделать это автоматически. кроме того понятие корректности может быть не детерминированным. Благозвуность речи не тот пораметр, который можно свети к Да/Нет.


Есть вполне конкретные алгоритмы синтезирования с вполне конкретными детерменированными состояниями. Благозвучность речи, удобство и юзабилити интерфейса пользователя и т.д. — это все проверяется людьми-тестерами.
И вообще какое это все имеет отношение к корпоративным приложениям? Мы говорим о невозможности тестирования ХП в отличии от тестирования CLR-эквивалента.

A>>>Код, который с помошью OpenGL визуализирует карту страны и траекторию движения автомобилей на ней. Ты должен просто сесть и помотреть "то" на экране нарисовано или "не то".

kuj>>Ндааааааа.... Это сильно...

A>Ещё бы, ты ведь дальше своего носа ничего не видел, всё новое тебя удивляет.


Сильно то, что Вы не понимаете ни разу что такое юнит-тестирование.

kuj>>Кто Вам сказал, что юнит-тесты должны проверять благозвучность речи?


A>А где я тут сказал юнит-тесты? Я тут о тестрировании вообще. Ты как всегда что-то не в тему ляпнул.


Вот те раз приехали! Мы ему об автоматическом тестировании кода с помощью юнит-тестов, а он нам ахинею про "тестирование вообще".
... << RSDN@Home 1.2.0 alpha rev. 746>>
Re[14]: Оформление работы с БД в корпоративных приложениях -
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.09.07 13:43
Оценка: -1
Здравствуйте, kuj, Вы писали:

A>>Есть КУЧА задач, где юнит-тестирование в частности и тестирование вообще не возможно и разглядывание кода (если повезёт, логов) единственный метод отладки. И несмотря ни на что эти задачи успешно решаются.

kuj>Нету никакой кучи задач.

Например, синхронизация многопоточных приложений не поддаётся тестированию. Учи матчасть.
A journey of a thousand miles must begin with a single step © Lau Tsu
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.