|
15.05.2018, 09:25 | #1 |
Участник
|
В джаваскрипте много всяких несуразностей (в качестве примера можно зайти на сайт http://www.jsfuck.com/ который превращает строчку на js в строчку только из скобочек, которая, тем не менее делает то же самое).
НО X++ скорее наследует концепции из C#:
|
|
15.05.2018, 15:10 | #2 |
Banned
|
Цитата:
Я могу простить все недостатки среде программирования и языку только за то что можно работать локально на макбуке 7-8 летней давности. C понтом, в старбаксе Вот что лично меня бесит это все увеличивающееся количество требуемого железа для программирования. Есть чувство что это неестественно. Так не должно быть. Цитата:
Убивает скорость набора кода (это притом, что работаю в метре от сервера с весьма внушительной производительностью; те рахитичные виртуальные машины, что коллеги из Хайдрабада используют, по ощущениям слабее), отладки, компиляции, сборки, а также параноидальные best practices. Да, build занимает около 12 секунд, но само web-приложение перезапускается вдвое дольше. Мука.
|
|
15.05.2018, 16:20 | #3 |
Участник
|
|
|
15.05.2018, 16:37 | #4 |
Moderator
|
Цитата:
Там, кстати, в D365 не сделали какую-то проверку Best practices на эту тему ? |
|
|
За это сообщение автора поблагодарили: S.Kuskov (2). |
15.05.2018, 16:39 | #5 |
Участник
|
|
|
16.05.2018, 02:29 | #6 |
Banned
|
Цитата:
Соответственно и InventTrans и CustTrans это его дети. Все в соответствии с ООП, полиморфизм. Забавно Нечего common использовать тем кто ругается на var |
|
16.05.2018, 09:19 | #7 |
Участник
|
Цитата:
Попробуйте в C# написать X++: Object o; List l; o = l; // номально l = (List)o; // номально l = o as List; // нормально l = o; // ошибка компиляции |
|
16.05.2018, 13:54 | #8 |
Banned
|
Цитата:
InventTrans inventTrans = _custTrans; // должна быть ошибка компиляции InventTrans inventTrans = (СustTrans)common; // должна быть ошибка компиляции Как понимаю вопрос в таком downcast void foo(Common _commonCustTrans) { InventTrans inventTrans = (InventTrans)_commonCustTrans; } Тут ничего не поделать, все законно. Имена переменных ничего не значат, а передается родитель. void foo(Parent _childA) { ChildB childB = (ChildB)_childA; } А вот если передавать конкретный тип, а не common, то да можно жаловаться void foo(ChildA_childA) // вместо common например CustTable _custTable { ChildB childB = (ChildB)_childA; // обязана ругаться } |
|
16.05.2018, 14:00 | #9 |
Участник
|
Цитата:
Цитата:
Как понимаю вопрос в таком downcast
void foo(Common _commonCustTrans) X++: void foo(CustTrans _custTrans)
{
}
Common x;
foo(x); |
|
Теги |
ax7, dynamics 365 for operations, x++ |
|
|