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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.10.2004, 09:19   #1  
gudzon is offline
gudzon
программист
 
1,166 / 324 (13) ++++++
Регистрация: 06.07.2004
Адрес: Москва
? Комментарии удалены?
Добрый день!
По ходу программирования в Axapta появилось предположение что кто-то автоматически удалил все комментарии из кода? Кто? Зачем? На каком этапе? Это только в российской функциональности?
Старый 27.10.2004, 10:04   #2  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Хм... и на основе чего возникло такое предположение, если не секрет ?
В основном код достаточно прозрачен и понятен без комментариев, за исключением нескольких мест, где действительно бывает полезна помошь - например, книги покупок/продаж.
Комментарии удалялись вряд ли - так как если удалять, то все - а я встречал комментарии как разаботчиков российского mbs, так и международного (включая комментарии на датском ).
Старый 27.10.2004, 10:59   #3  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
На самом деле, это близко к истине. Дело в том, что многие баги, поправленные локализаторами (основное кол-во - росийскими ) были поправлены уже MBS на более низких слоях. Так что вместо комментариев //EVGL.... //Valu... //GrVe... //ANVA... и т.п. Теперь либо просто прижившийся код, либо чужие или безличные комментарии... // RU-477-814-QBHL, // SP3 DK-68-603-CCR9....


С Уважением,
Георгий
Старый 27.10.2004, 11:14   #4  
gudzon is offline
gudzon
программист
 
1,166 / 324 (13) ++++++
Регистрация: 06.07.2004
Адрес: Москва
Цитата:
Изначально опубликовано Андре
Хм... и на основе чего возникло такое предположение, если не секрет ?
В основном код достаточно прозрачен и понятен без комментариев, за исключением нескольких мест, где действительно бывает полезна помошь - например, книги покупок/продаж.
Комментарии удалялись вряд ли - так как если удалять, то все - а я встречал комментарии как разаботчиков российского mbs, так и международного (включая комментарии на датском ).
Код становиться прозрачным после очень тесного знакомства с Axapta.
Дело ведь не в понимании кода вообще, а в элементарной экономии времени разработчика. Могу предположить, что кой кому это не выгодно...
С чего я взял что удалили комментарии? Почему в ключевых местах кода ( перед функциями, в начале циклов... ) стоят пустые строки? Только лишь для удобства?
Вряд ли....
Старый 27.10.2004, 11:21   #5  
Hamster is offline
Hamster
Участник
 
687 / 13 (2) ++
Регистрация: 15.05.2003
Talking
>кто-то автоматически удалил все комментарии из кода? Кто? Зачем?

А чтоб потом никто не узнал насколько хорошо KURA или EVGL знали Axapta

Старый 27.10.2004, 12:57   #6  
komar is offline
komar
Шаман форума
Аватар для komar
Ex AND Project
 
5,571 / 600 (32) +++++++
Регистрация: 24.05.2002
Цитата:
Изначально опубликовано Hamster
>кто-то автоматически удалил все комментарии из кода? Кто? Зачем?

А чтоб потом никто не узнал насколько хорошо KURA или EVGL знали Axapta

Понится, в одной компании, в которой мне довелось работать, KURA считался чем-то вроде злого духа - покровителя граблей :-))) все из-за опрометчиво оставленных подписей в комментариях к наиболее выдающимся участкам локализации образца версии 2.1-2.5
Старый 27.10.2004, 12:58   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Re: Комментарии удалены?
Цитата:
Изначально опубликовано gudzon
Добрый день!
По ходу программирования в Axapta появилось предположение что кто-то автоматически удалил все комментарии из кода? Кто? Зачем? На каком этапе? Это только в российской функциональности?
Комментарии есть, конечно.
Info.startup()
SysApplCheck.argumentThePaths()
SysCheckList.*
SysListPanel.addData
и т.п.

Где-то были даже разыернутые описания концепции работы.

Почему комментариев так мало?
Просто исходные разработчики свято верили в рефакторинг и перекрестные ссылки.
http://w8.platonoff.com/refactoring/

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

Надо сказать, что если оставить один слой sys, то именно так и происходит.
Когда слоев много (много объектов), то уже необходимы не комментарии к коду, а описание СЕМЕЙСТВА классов. Так например, для четкой работы программиста необходимо описание концепции работы семейства LedgerVoucher.

А вот такой документации в Аксапте чертовски мало. Именно из-за того, что разрабочики свято верили в рефакторинг.

С российской функциональностью было чуть по-другому...
Старый 27.10.2004, 15:08   #8  
Ruff is offline
Ruff
Дмитрий Ерин
Аватар для Ruff
1C
 
475 / 396 (14) ++++++
Регистрация: 18.09.2003
Адрес: Тула
Re: Re: Комментарии удалены?
Цитата:
Изначально опубликовано mazzy

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

Надо сказать, что если оставить один слой sys, то именно так и происходит.
Угу! А еще один из постулатов рефакторинга гласит следующее:
Цитата:

Extract Method
You have a code fragment that can be grouped together.
Turn the fragment into a method whose name explains the purpose of the method
Теперь берем метод \Classes\CustVendSettle\SettleNow, оставляем слой SYS и смотрим:
1. В начале метода огромный комментарий (см. первый постулат )
2. Код метода состоит из 620-и строк (см. второй постулат)

P.S. Сергей, только не говори, что исключение подтверждает правило. Аксапта с рефакторингом явно не дружат
Старый 27.10.2004, 15:14   #9  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Как раз это - именно исключение.
Кстати говоря, это самый длинный метод во всей Axapta. Если говорить честно, то разработчики все-таки старались разбить код на множество мелких методов. Иногда даже черезчур

С Уважением,
Георгий.
Старый 27.10.2004, 15:22   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Re: Re: Re: Комментарии удалены?
Цитата:
Изначально опубликовано Ruff
Теперь берем метод \Classes\CustVendSettle\SettleNow, оставляем слой SYS и смотрим:
1. В начале метода огромный комментарий (см. первый постулат )
2. Код метода состоит из 620-и строк (см. второй постулат)

P.S. Сергей, только не говори, что исключение подтверждает правило. Аксапта с рефакторингом явно не дружат
Как раз скажу. Как раз исключение и как раз подтверждает.
Для того, чтобы это понять необходомо посмотреть историю этого метода.
Начиная с версии 2.1

В том то и дело, что со временем команда сменилась.
И теперь мало кто вообще понимает что и почему там делается...
Поэтому документация очень и очень нужна.
Старый 27.10.2004, 15:27   #11  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Для того, чтобы это понять необходомо посмотреть историю этого метода.
Угу. Этот код кем только не правился
Старый 27.10.2004, 15:36   #12  
levsha is offline
levsha
Участник
 
22 / 14 (1) ++
Регистрация: 20.10.2003
Адрес: СПб
Re: Re: Комментарии удалены?
Цитата:
Изначально опубликовано mazzy

Где-то были даже разыернутые описания концепции работы.
в 2.5 таким развернутым описанием мог похвастать класс RunBase

Цитата:
Изначально опубликовано mazzy

Один из постулатов рефакторинга говорит, что правильному коду не нужны комментарии. Код должен быть таким, чтобы его можно было читать и понимать как обычный текст.
в приведенной Вами ссылке ничего похожего на первую часть постулата я не увидел... Более того, для прояснения сути присходящего постоянно приводятся uml-диаграммы, которые тем более в код никто помещать не будет. Постулат об отсутствии комментариев больше соответствует идеологии extreme programming, которая стала так популярна у отечественных девелоперов в том числе и благодаря такому заявлению.

Цитата:
Изначально опубликовано mazzy

Надо сказать, что если оставить один слой sys, то именно так и происходит.
Когда слоев много (много объектов), то уже необходимы не комментарии к коду, а описание СЕМЕЙСТВА классов. Так например, для четкой работы программиста необходимо описание концепции работы семейства LedgerVoucher.

А вот такой документации в Аксапте чертовски мало. Именно из-за того, что разрабочики свято верили в рефакторинг.
Действительно, много объектов, которые ни каким образом не структурированы...
Верили бы разработчики свято в рефакторинг, то заложили бы в язык хотя бы разбиение классов на пакеты. А то получается, что и на пакеты не разбить и иерархия классов выше третьего порядка трудно реализуема(с помощью принятой в аксапте практики добавлять к имени предка "_ТакойтоПотомок" в названии класса-потомка) от того, что имя класса ограничено 35-ю символами... Скорее разработчики свято верили в непогрешимость и универсальность своего кода...
Старый 27.10.2004, 15:44   #13  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Постулат об отсутствии комментариев больше соответствует идеологии extreme programming
Если я не позабыл, то рефакторинг является составляющей XP. Так же как и парное программирование и unit-тесты.
Старый 27.10.2004, 15:44   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Re: Re: Re: Комментарии удалены?
Цитата:
Изначально опубликовано levsha
в приведенной Вами ссылке ничего похожего на первую часть постулата я не увидел...
В приведенной ссылке перевод только первой главы.
Найдите книгу.

Рефакторинг и экстремальное программирование - две очень близко идущие ветви.
Но это уже другая тема. Откройте новую, если вам это интересно.

Цитата:
Изначально опубликовано levsha
Скорее разработчики свято верили в непогрешимость и универсальность своего кода...
Или так.


Анекдот.
Сталинские времена. Просмотр в закрытом кремлевском зале нового фильма. Присутствуют: сталин, министр культуры, режиссер, другие отвественные лица. После просмотра все ждут мнения главного.
Сталин: - А почему у главного героя усы как у вождя мирового пролетариата?
... молчание ...
Сталин: - Значит так, актера расстрелять, режиссера расстрелять, министра культуры...
Министр культуры: - Может главному герою усы сбрить?
Сталин: - Или так.
Старый 27.10.2004, 15:47   #15  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Более того, для прояснения сути присходящего постоянно приводятся uml-диаграммы
А вот применение диаграмм - это уже больше к RUP относится. То есть, и в xp не запрещается их использовать, но там действует примерно такое правило: "если есть подозрение (хоть малейшее), что данный документ/схема/диаграмма/коментарий не будут ни разу востребованы - то и делать их не стоит".
Старый 27.10.2004, 15:51   #16  
levsha is offline
levsha
Участник
 
22 / 14 (1) ++
Регистрация: 20.10.2003
Адрес: СПб
Цитата:
Изначально опубликовано Андре

там действует примерно такое правило: "если есть подозрение (хоть малейшее), что данный документ/схема/диаграмма/коментарий не будут ни разу востребованы - то и делать их не стоит".
судя по всему, именно в этом были уверены разработчики Аксапты...
Старый 27.10.2004, 15:53   #17  
Alks is offline
Alks
Участник
 
336 / 41 (2) +++
Регистрация: 23.07.2004
Адрес: г. Новокузнецк
Мне не верится что аксапта (пусть даже когда она была еще 1.0, или даже 0.666) была разработана без единой строчки документирвания структур и связей таблиц, концепций модулей и иерархии их классов и логики их работы.
Судя по тому сколько строк кода в аксапте и тому что она ЕЩЕ РАБОТАЕТ, тонны такой документации всё таки где то существуют. Не может быть что MBS-овцы передают друг другу и следующим поколениям своих разработчиков такие вещи исключительно в устно-сказательной форме.
Почему же они ею не делятся? Думаю это глупый вопрос.
Старый 27.10.2004, 15:58   #18  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
http://w8.platonoff.com/refactoring/

Рефакторинг! Утонем в комментариях. Код - это и есть в данном случае комментарий + грамотное название методов и классов...
Другое дело, что в паре мест они действительно не помешеют...

С Уважением,
Георгий.
Старый 27.10.2004, 16:07   #19  
Hamster is offline
Hamster
Участник
 
687 / 13 (2) ++
Регистрация: 15.05.2003
2 Alks

В европейской штаб-хате MBS наверняка стоит Rose.
И наверняка все закодено в UML, и есть даже драйвер для X++

Не может не быть...
Старый 27.10.2004, 16:08   #20  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано Alks
Мне не верится что аксапта (пусть даже когда она была еще 1.0, или даже 0.666) была разработана без единой строчки документирвания структур и связей таблиц, концепций модулей и иерархии их классов и логики их работы.
Судя по тому сколько строк кода в аксапте и тому что она ЕЩЕ РАБОТАЕТ, тонны такой документации всё таки где то существуют. Не может быть что MBS-овцы передают друг другу и следующим поколениям своих разработчиков такие вещи исключительно в устно-сказательной форме.
Почему же они ею не делятся? Думаю это глупый вопрос.
О... как я верил в это еще год назад.
Фиг, нет у них такой документации.
Действительно нет.
Теги
история развития, комментарий, рефакторинг, стиль программирования

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Управление проектами!? 3oppo DAX: База знаний и проекты 14 16.06.2006 10:56

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:56.