All streams
Search
Write a publication
Pull to refresh
14
0
Владимир Паронджанов @Parondzhanov

Разработчик Автор книг

Send message
Там нет главного маршрута. Его нельзя назначить, потому что это исказит спецификацию.
Чепуха.
А тем, кому оно слишком сложно, стоит перейти в более простые профессии — в поэты, например, или в управдомы
Это предложение не реалистично. Программистов не хватает. В программисты идут не только после вузов, но и после средних учебных заведений и из других мест, например, врачи без ИТ-образования.

Кроме того, ваше предложение негуманно и нарушает права человека.
Если вы руководитель, вы вправе уволить слабого работника, но вы не вправе руководить его судьбой.

Я считаю, что нельзя проводить дискриминацию и упрекать людей за отсутствие знаний, способностей и т.д.
Отрицание свободно читается в логических выражениях и не создаёт проблем.
У меня нет сомнений, что для вас действительно нет проблем. Но ведь вы сейчас высказываетесь от имени миллионов, предполагая, что у них нет проблем, точно так же, как и у вас, не так ли?

Человек по доброй воле пришел в профессию. Моя позиция: ему можно и нужно помочь.
Но вообще, вот вам пример кода без «нет»: if user IsRegular:

Здесь все правильно. Замечаний нет.
текстовые языки умеют существовать без логического отрицания
Нет, не могут.
что делать, если все маршруты равнозначны, равноправны и равноблагоприятны
Назначаете любой.
Но. Наверно в вашем случае лучше упорядочить по привычной схеме слева направо.

Получится: налево, прямо, направо.
Хоть какой-то порядок будет.
Возможно, вы придумете что-нибудь поумнее.
Главное, чтоб был не хаос, а порядок.

Правило хорошей хозяйки гласит: если постараться, порядок всегда можно навести.
с «обычным знаком not» ровно та же ситуация.
Нет.
А зачем после ответа «нет» на вопрос «Том пошёл за кладом?» ещё раз задавать тот же вопрос, ожидая ответ «да»
Потому что этого требует (визуальная) математика.

Поясняю. Был проведен эксперимент, а именно: что будет, если удалить все логические связки в формуле «Исключающее ИЛИ»?

Ход эксперимента подробно описан в главе во всех деталях.

Результат показал, что после удаления связок получилось плохо (математически правильно, но громоздко и непонятно).

Поэтому вы совершенно справедливо, говорите, что с if лучше и понятнее.

В конце главы сделан вывод, что решение на вашей картинке плохое. Поэтому оно отброшено и сохранен обычный знак xor (в любом начертании).
Основной маршрут — это неудачный исход, издевательски называемый разработчиком ДУРАКОНа «happy path»?

Нет, не так. Я уже устал вас поправлять.

1. Не основной маршрут, а главный маршрут, или царский путь.

2. Главный маршрут — это наиболее благоприятный маршрут, наилучший из возможных маршрут (happy path).

Но вы не избавились от знака отрицания. Знак как был так и остался.

Знак отрицания ! вы заменили на знак отрицания Not. Здесь против вас выступают уже не ИТ-гуру Эдвард Йодан, а лингвисты и филологи.

В обоих случаях плохо. Проблема как была, так и осталась.

Я уже не говорю, что у вас слитное написание Not в сложном слове без пробелов.
Простите, но так писали несколько тысяч лет назад, когда люди еще не изобрели пробел.
У вас, правда не палеогафия, а Camel case, но все-таки.

Мы ведь говорим не только о логике, но и об удобочитаемости и эргономике, верно?
разработчики 1 и 2 рано или поздно договорятся друг с другом. Мирить их будет не ДРАКОН, а начальник.
Здесь нет никаких проблем.
С xor разговор особый.
См. здесь Глава 17. Логическая функция
«Исключающее ИЛИ» Работающее содержание в начале книги
бывают алгоритмы с равно благоприятными маршрутами.
Вы правы. Бывают.
И что в этом случае делать?
Главный маршрут разработчик назначает по своему усмотрению и помещает его на шампур ветки или шампур примитива.
У вас не указан пункт «ошибки в спецификации». Они очень неприятны. ДРАКОН помогает их найти и устранить.

Поставьте себя на место исполнителя. Заказчик (не всегда грамотный и не всегда понимающий, чего он хочет) принес вам толстый талмуд и просит согласовать и утвердить.

Это трудная работа. Адски трудная. Найти и удалить все ошибки в спецификации практически невозможно. возникает острейшая проблема взаимопонимания между заказчиком и исполнителем.

Достичь взаимопонимания между заказчико и испонителем очень трудно.
Почему? В частности. потому, что текст не может обеспечить то, что нужно.
Если в спецификации имеются части написанные на ДРАКОНе, достигается вау-эффект и положение коренным меняется.

По остальным вашим пунктам надо говорить отдельно по каждому.
Вероятность тут ни при чем.
он необязательно один. Их может быть несколько
Это неважно.
Главный маршрут назначает разработчик по своему усмотрению.
Главный маршрут обязательно идет по шампуру — жирная линия highlighted, happy path
А в чём проблема логического отрицания и зачем его нужно удалять? Вы никак не можете дать формулировку проблемы.
Проблема такова (причем не я ее придумал, это сделали мэтры).

Как известно, логическое отрицание представляет определенную трудность для понимания.

В связи с этим Эдвард Йодан советует:
«Если это возможно, избегайте отрицаний в булевых [логических] выражениях. Представляется, что их понимание представляет трудность для многих программистов».
Подчеркну: трудность вызывает не само отрицание, а именно знак (логическая связка) отрицания
При текстовом программировании избавиться от связки отрицания невозможно.
А в ДРАКОНе это делается элементарно: перестановкой Да и Нет.
главный — это всегда да? или главный — это всегда нет?
Ни то, ни другое. Главный маршрут — это наиболее благоприятный, самый лучший маршрут алгоритма (happy path).
Тогда попробуйте хотя бы сформулировать эту проблему, формализовать её.
Это обычное логическое отрицание.
Текстовое программирование не может обойтись без логических отрицаний.

А ДРАКОН легко удаляет связку логического отрицания, переставляя знаки Да и Нет.
Нет, она есть, но возможно вы ее не видите. А я вижу.
Согласен с вами. Это действительно так.
Уточню. смотреть надо не на подписи к стелкам, так как в ДРАКОНе стрелок нет (они используются только в цикле Стрелка (while, do while, loop with the test in the middle) и еще одна-единственная стрелка силуэта.

А куда смотреть?

ДРАКОН показывает все без исключения маршруты алгоритма от начала до конца.

ДРАКОН позволяет проследить их пальцем, не отрывая палец от экрана или бумаги. И даже продемонстрировать маршруты на анимации.

Метки Да и Нет у иконы Вопрос нужны для того, чтобы упорядочить алгоритм и соблюдать законы порядка:
1. Главный маршрут идет по шампуру

2. Все маршруты подчиняются правилу: чем правее, тем хуже (или иному правилу порядка).

3. Устраняют паразитные знаки инверсии, которые являются проклятием (неизлечимой проказой) текстового программирования.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity