Показать сообщение отдельно
Старый 21.12.2016, 15:00   #7  
artkashin is offline
artkashin
Участник
MCBMSS
 
519 / 18 (2) ++
Регистрация: 06.12.2006
Цитата:
Сообщение от Predatore Посмотреть сообщение
И чем же синтаксис Javascript кардинально отличается от шарпового синтаксиса?
Вы же не думаете, что нам вот прям новый язык выкатят, максимум синтаксического сахарку дадут в качестве той же замены BEGIN END на {} и дай Бог, перестанут заставлять ставить двоеточие перед знаком присвоения.
То что нам показали, это всё тот же C/AL, только без устаревшего 20 лет назад интерфейса объявления переменных.
хм.. интересно, почему этот интерфейс объявления переменных "устарел"? на мой взгляд, это одна из фишечек Нава. И переменные типизированные, и код избавлен от хлама. Это одна из фишек, которая позволяет при соблюдении стандартов разработки просто читать код и понимать, как он работает.
Смотришь код Аксапты, а там 30% строк - объявление переменных, 25-40% - обвертки, в виде try catch и exception и всякими ttsbegin с ttscommit, ну а собственно бизнес-логика в оставшихся 30%, дай бог. И она может быть написана как угодно сложно и зачастую без дебаггера не обойтись - ибо там может быть и переопределенные наследниками методы и прочие плюшки для программистов, которые на самом деле - ад для поддержки.

Я это говорю не в претензию к Акс - там много других плюшек, отсутствующих в NAV, да и не так хорошо я ее знаю - а к тому, что вы недооцениваете эту возможность скрывать объявленные переменные с глаз долой. Наряду с готовыми блоками триггеров, в которых просто остается написать свой код, это - одна из приятнейших особенностей навика. Вам не надо писать кучу кода в каком нибудь методе validateWrite для обработки изменения цены, изменения кучи других полей. Вы всегда можете найти код в onValidate условного "Unit Price".

Все-таки, почему же это считается устаревшим, а смешивание объявления переменных с кодом - модным?
на мой взгляд, тут прямая аналогия с css и html.
За это сообщение автора поблагодарили: BIDeveloper (1).