AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.01.2004, 16:13   #21  
Юрий_imported is offline
Юрий_imported
Участник
 
4 / 10 (1) +
Регистрация: 12.01.2004
Спасибо, очень подробный ответ. Я бы даже сказал, что вы провели некоторое мини-исследование в области лингвистики и программирования, что не может не радовать.
P.S.
Очень хороший форум...
Старый 14.01.2004, 16:28   #22  
komar is offline
komar
Шаман форума
Аватар для komar
Ex AND Project
 
5,571 / 600 (32) +++++++
Регистрация: 24.05.2002
Цитата:
Сообщение от Ruff
Ведь никто не будет спорить, что b-- - dead code?
Вот и читай после этого Best Practices... То есть, верь после этого людям! Написано-то складно, а на деле...
Я буду спорить. Компилятор не может проверять логику, он может проверять только правила. Например, попробуйте встать на мето компилятора - по какому правилу он может определить такое понятие, как "избыточность" кода? То есть если начать писать алгоритм проверки "is never reached" проверить можно, а "never used" - нечто неформализуемое (о чем и свидетельствует данная дискуссия.
Вопрос в том, чего мы пытаемся добиться при использовании Best Practice - если читаемости кода, то оба варианта, с которых вся дискуссия началась, вполне читаемы и понятны - нету тут однозначно "лучшего".
По поводу взглядов на то, что есть "идеальное" программирование есть интересная статья (или как это называется) http://www.catb.org/~esr/jargon/html/story-of-mel.html - может, я и не прав, но такое программирование, хоть и вызывает восхищение у авторов, у меня его почему-то не вызывает...
__________________
All information in this post is strictly confidential. If you have read it in error, please forget it immediately.
Старый 15.01.2004, 08:26   #23  
Ruff
Гость
 
n/a
Не во всем согласен.
Во-первых, в том примере, который я привел, строка b-- - это именно "never reached". Два ретурна в условном операторе проверить довольно просто. Поверьте, я не высасываю из пальца - я писал компиляторы... Для этого даже не нужно специальных ухищрений - все само всплывет на этапе семантического анализа (а при использовании некоторых способов - даже на этапе синтаксического анализа).
А во-вторых, что касается избыточности кода (опять же, что понимать под этом термином ), то существуют и на это способы оптимизации (например, см. http://www.codenet.ru/progr/optimize/ccode.php). Вот пример из статьи с удалением "лишнего" цикла (компилятором):
Код:
   int x;

       x = 0;
       for( i = 0; i < 5; i++ )  /* Цикл не должен генерироваться*/
           k5 = x + j5;
Хотя, абсолютно согласен, что вообще-то оптимизация - это уже забота программиста.
Старый 15.01.2004, 12:33   #24  
Антон Солдатов_imported is offline
Антон Солдатов_imported
Участник
 
79 / 10 (1) +
Регистрация: 10.11.2003
Цитата:
Сообщение от Ruff
оптимизация - это уже забота программиста.
... и средств, которые он использует. Например, для Java(да и не только) понаписано куча различных утилит, причесывающих код, по заданным шаблонам + куча шаблонов(легко модифицируемых!), как для внешнего вида(например, для датско-русского кода аксапты был бы неплох единый корпоративный стандарт хотя бы с точки зрения внешнего вида[комментарии, скобки, расположение переносов, одинаковые оступы и т.д.])..
__________________
WBR, Anton
 


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:16.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.