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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.11.2008, 14:55   #1  
NetBus is offline
NetBus
Участник
 
200 / 85 (3) ++++
Регистрация: 08.07.2005
Адрес: Москва
Зачем нужен BP если ему не кто не следует? на примере
axapta 3.0 sp5
настройки проверка Best Practices уровень предупреждения "Все"
берем девственно чистый класс PopupMenu (sys) делаем проверку и имеем отступлений от BP 39 штук. Я понимаю, что
Conformance
The Axapta standard application and all external certified solutions should conform to the best practices described herein, as should any solution or customization.
But - - - it is a professional software engineering discipline to know when to follow the rules, standards and guidelines given, and when not to. There are situations where solutions other than those described here are better. Please make a note (its best practice!) in your design documents or a comment in the program code when and why you decide not to follow these best practices.
The conformance cannot be measured absolutely, but it will be practical to use a 95/5 percent guideline:
95% of the solution conforms to the Axapta Application Development Best Practices.
5% does not conform due to documented decisions.

Но на 18 методов 39 отступлений от BP!? Это норма или я чего то не понимаю?
Старый 19.11.2008, 14:58   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Axapta 3.0 - это плохой пример. DAX2009 уже на дворе. Вы бы еще в 2.5 померяли.
За это сообщение автора поблагодарили: AlexSD (1), belugin (2).
Старый 19.11.2008, 17:05   #3  
coolibin is offline
coolibin
Участник
 
264 / 68 (3) ++++
Регистрация: 07.04.2005
Цитата:
Сообщение от EVGL Посмотреть сообщение
Axapta 3.0 - это плохой пример. DAX2009 уже на дворе. Вы бы еще в 2.5 померяли.
Было бы интересно узнать, сколько этот же класс даст ошибок в DAX2009? У кого под рукой есть, может проверите?
Старый 19.11.2008, 17:15   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от coolibin Посмотреть сообщение
Было бы интересно узнать, сколько этот же класс даст ошибок в DAX2009? У кого под рукой есть, может проверите?
0.
Миниатюры
Нажмите на изображение для увеличения
Название: 1.PNG
Просмотров: 398
Размер:	103.6 Кб
ID:	3957  
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: coolibin (1).
Старый 19.11.2008, 17:18   #5  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,738 / 404 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от mazzy Посмотреть сообщение
0.
а чем объясняется? упрощением требований в BP или учитыванием всех требований в реализации класса?
Старый 19.11.2008, 17:21   #6  
coolibin is offline
coolibin
Участник
 
264 / 68 (3) ++++
Регистрация: 07.04.2005
Цитата:
Сообщение от ice Посмотреть сообщение
а чем объясняется? упрощением требований в BP или учитыванием всех требований в реализации класса?
Надо так понимать, что вопрос риторический?
Старый 19.11.2008, 17:59   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от ice Посмотреть сообщение
а чем объясняется? упрощением требований в BP или учитыванием всех требований в реализации класса?
класс особо не переписывался.
там добавилась только одна константа в тексте.
и в каждом методе добавились комментарии.

Я приложил XPO этого класса из ax2009
и проект с классами проверки BestPractice
(оба файла сконвертировал из UTF-8 в Ansi, чтобы можно было импортировать в ax3.0)

Попробуйте сравните что там изменилось.
Может что толковое найдете.
Вложения
Тип файла: xpo Class_PopupMenu.xpo (14.9 Кб, 269 просмотров)
Тип файла: rar SharedProject_ax2009sysBPcheck.rar (76.5 Кб, 83 просмотров)
__________________
полезное на axForum, github, vk, coub.
Старый 19.11.2008, 18:05   #8  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,738 / 404 (17) +++++++
Регистрация: 23.03.2006
спасибо

загрузил только класс в 3.0, проверил в BP (все), ситуация с ошибками ни сколько не изменилась...как и предполагалось

Последний раз редактировалось ice; 19.11.2008 в 18:26.
Старый 19.11.2008, 18:16   #9  
petr is offline
petr
Участник
Соотечественники
 
561 / 201 (8) ++++++
Регистрация: 30.05.2005
Адрес: Швейцария
После того как отсутстве ошибок BP стало обязательно для стандартного функционала (я так понимаю (Ax4.0 SP1) - появился макрос SysBPCheckIgnore в котором (в достаточно извращенной форме) перечисленны все "неисправленные" несооветсвия BP в стандарте. Всего около 1400 записей.

При проверке на соответсвие BP если в этом макросе эта ошибка перечислена то вместо ошибки создается предупреждение, таким образо "ошибок" BP в стандарте после Ax40SP1 нет.

Насколько нужна проверка соответсвиям BP каждый решает для себя сам. Я например при помощи BP проверяю не забыл ли создать метку для пользовательского сообщения (мы используем минимум два языка - метки обязательны), или например можно забыть сделать первичный ключ неизменяемым AllowEdit=true, что тоже не очень хорошо, при переходе на 5-ку проверка BP поможет при модификации исходного приложения к новой фиче - сайты.

Вообщем есть несколько достаточно важных моментов, когда проверка BP поможет избежать ошибки (или потенциальной ошибки) в коде. Единственное эта проверка реально может помочь, когда в стандарте ошибок уже нет и при приверке в окне компилятора видны только свои ошибки, а не 5 своих и 200 стандартных (как это было в тройке)
За это сообщение автора поблагодарили: gl00mie (2).
Старый 19.11.2008, 18:22   #10  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Просто некоторые ошибки стали ворнингами. BP-ворнинги допустимы, а BP - ошибки нет. Это централизовано контроллируется.
Старый 19.11.2008, 18:22   #11  
petr is offline
petr
Участник
Соотечественники
 
561 / 201 (8) ++++++
Регистрация: 30.05.2005
Адрес: Швейцария
Кроме того в четверке появилось магическое заклинание // BP Deviation Documented, и еще проверка BP пропускает некоторые системные классы при проверке (не на 100% уверен, но по-моему так). Например WinAPI.

Иначе весь WinAPI будет в // BP Deviation Documented, т.к. в нем каждая строка (почти) не соотвтетвует BP

Последний раз редактировалось petr; 19.11.2008 в 18:27.
Старый 19.11.2008, 19:55   #12  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Не будьте наивны. Не ведитесь на пропаганду.

Там в опциях пользователя есть параметры компилятора (уровень проверки) и так называемые Best Practices. Начиная с 4.0 по умолчанию в BP отображаются только ошибки, и не отображаются предупреждения. Это там кто-то так умышленно сделал, чтобы на стандартном приложении не лезли ошибки в неимоверном количестве.

Была на эту тему дискуссия. Жаль, найти не получается...

Вот она .

Косячок в классе InventAdj_Cancel (fetchMode)
Изображения
 
__________________
С уважением,
glibs®
Старый 19.11.2008, 20:22   #13  
Jabberwocky is offline
Jabberwocky
Microsoft Dynamics
Аватар для Jabberwocky
Сотрудники Microsoft Dynamics
 
274 / 307 (11) ++++++
Регистрация: 02.09.2005
Адрес: Москва
"Суббота для человека, а не человек для субботы." (с) BP служит одной единственной цели - указать на явные наружения рекомендаций на декларативном уровне (в метаданных) и, ВОЗМОЖНО, проблемные участки в коде, для последующего отдельного анализа и, ВОЗМОЖНО, редизайна. Т.е. эти рекомендации никогда не носили безусловного характера, равно как и слепое последование им не гарантирует высочайшего качества программного кода. К слову, объявление // BP Deviation Documented лишь подчеркивает, что разработчик проанализировал этот участок кода и отклонение от BP оставлено здесь намеренно.
__________________
You should use Bing before asking dumb questions.

Последний раз редактировалось Jabberwocky; 19.11.2008 в 20:24.
Старый 19.11.2008, 20:22   #14  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от glibs Посмотреть сообщение
Не будьте наивны. Не ведитесь на пропаганду.
По-моему, совершенно нормальный компромисс - почистить самые серьезные отклонения, несерьезные сделать рекомендациями.

Зато теперь можно не пускать в систему код, который не соответствовует стандарту качества. Мне кажется, лучше соблюдать несколько менее строгий стандарт, чем нарушать идеальный.
Старый 19.11.2008, 23:16   #15  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Сообщение от belugin
...
По-моему, совершенно нормальный компромисс - почистить самые серьезные отклонения, несерьезные сделать рекомендациями.
...
А-ля Mazzy

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

Ну отклонение от рекомендаций. Это типа уже проблемой не считается? То есть решение проблем путем признания их не проблемами? Тут уже некто пошутил насчет выпуска новых продуктов путем придумывания новых названий старым. IMHO это туда же.

По поводу философии.

IMHO, ВР... ну это можно образно сравнить с культурой. Вот есть, например, этикет. Можно же руками есть в столовой? Удобно ведь. Ну или вот пример получше. Неряшливо одеваться. Очень хорошая тема. Тот же дрес-код на многих форумах и в повседневном общении сколько вопросов вызывает. Ну или вот еще. Можно бумажку или какой другой мусор (бычек от сигареты, например) на улице под ноги бросить (по улице у нас, надеюсь, все ходили хоть когда-нибудь)?

Так и ВР. Естественно, на 100 процентов соблюдать не получится. И все по-разному к этому относятся. Зависит от того, как он сам себя ведет (так же, как и с культурой: культурный человек рядом с некультурным себя чувствует дискомфортно, а если наоборот — то очень даже ничего, некультурный рядом с некультурным тоже вполне нормально). Кто-то может бросить бумажку на улице, а кто-то донесет до мусорницы. Причем первый не будет считать, что что-то "не так".

Меня иногда от некоторого кода подташнивает. Но я замечал, что другие смотрят на него вполне нормально. Некоторым даже нравится.

Зачем нужно стремиться следовать ВР с прикладной точки зрения уже много обсуждали.

С общефилософской т.з. вопрос можно свести к тому же: "Нужно ли быть культурным?"

Вы бы как ответили на такой вопрос ?

Я подозреваю, что по этому вопросу мнения разошлись бы так же, как и в случае с ВР или дрес-кодом.
__________________
С уважением,
glibs®
Старый 19.11.2008, 23:30   #16  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от glibs Посмотреть сообщение
По поводу философии.

IMHO, ...
Бурчание в стиле glibs

По делу:
1. правила проверки BP писали программисты
2. разные
3. правила дополнялись в течение длительного времени
__________________
полезное на axForum, github, vk, coub.
Старый 20.11.2008, 01:31   #17  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от petr Посмотреть сообщение
Насколько нужна проверка соответсвиям BP каждый решает для себя сам.
Цитата:
Сообщение от glibs Посмотреть сообщение
Ну отклонение от рекомендаций. Это типа уже проблемой не считается? То есть решение проблем путем признания их не проблемами?
IMHO, ВР... ну это можно образно сравнить с культурой. Вот есть, например, этикет. Можно же руками есть в столовой? Удобно ведь. Ну или вот пример получше. Неряшливо одеваться. Очень хорошая тема. Тот же дрес-код на многих форумах и в повседневном общении сколько вопросов вызывает.
Так и ВР. Естественно, на 100 процентов соблюдать не получится. И все по-разному к этому относятся.
А вот ничего подобного BP - это не культура, и отклонения от BP - это не [обязательно] беcкультурье. Не так давно читал одну очень занимательную книгу из новой серии Ms Press (кто бы мог подумать?!) Best Practices Книга называется Microsoft® Office SharePoint® Server 2007 Best Practices. Поскольку название серии и самой книги, так сказать, обязывает, то в ней есть, кроме прочего, и рассуждения касаемо BP:
Цитата:
Best Practices versus Design
As you’ll see when you read this book, there is a fine line between best practices and design decisions. Best practices tend to be built on the proper use of the technology, taking into account what the technology does, what it does not do, and what it was intended to do. Design decisions tend to account for how that technology can fit into the current culture and how it will map to meeting the business and technology requirements. At some point, design concepts and best practices are intermingled. At other times, best practices are presented with a notation that other design choices might be possible and might be the best choice given a different scenario.
Старый 20.11.2008, 07:53   #18  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Сообщение от gl00mie
...
BP - это не культура
...
fit into the current culture
...
Не часто встретишь такие прикольные аргументы .
__________________
С уважением,
glibs®
Старый 19.11.2008, 20:33   #19  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от glibs Посмотреть сообщение
Не будьте наивны. Не ведитесь на пропаганду.

Там в опциях пользователя есть параметры компилятора (уровень проверки) и так называемые Best Practices.
Ой. "Не виноватая я"
Да, после включения настроек на максимум видно 53 отклонения от BP
__________________
полезное на axForum, github, vk, coub.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Зачем нужна таблица RHRMVirtualNetworkTable? Didukh84 DAX: Программирование 8 23.05.2008 09:45
Нужен ли кому-нить экспорт-импорт Ax<->1C ax_probe DAX: Администрирование 18 17.03.2005 13:30
Сводное планирование (что если...) Андре DAX: Функционал 7 09.10.2003 15:21
Модель "Что Если" ... 2b4fITin DAX: Функционал 2 19.09.2003 11:11
можно ли в аксапте выписать счет-фактуру, если товар оплачен VladimirS DAX: Функционал 5 19.08.2002 12:09

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

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

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