Сообщение Re[30]: Поругайте TypeScript/node.js от 30.06.2022 12:07
Изменено 30.06.2022 12:23 Pauel
Re[30]: Поругайте TypeScript/node.js
Здравствуйте, ·, Вы писали:
P>>В Джаве, скажем, если ты не на массивах которые reifable, то из за type erasure случайные "фиксы" то тут, то там.
·>По-моему ты не очень правильно понимаешь, что такое type erasure.
Наоборот Массивы в джаве reifable, это факт. А вот остальные типы — нет, там просто type erasure. Т.е. вопрос в том, как именно ты будешь с этим работать.
P>>TS это лучший из яп которых пруд пруди в ноде/браузере.
·>Не спорю. Но явно не лучший в бэке, и именно по той главной причине, что он поверх js.
JS во многих вопросах обходит и джаву, и дотнет.
·>Можно и иммутабл, просто, как правило, тормознее. Но т.к. нода и так безбожно тормозит, то одним тормозом больше, одним меньше, уже не столь важно, главное чтобы хоть как-то работало, иначе поседеешь на поисках багов.
Ога. "Безбожно тормозит", как выяснилось в этом же треде, в пределах стат погрешности. Исключение — многопоточные вычисления.
P>>Ничего пока что не наломали. Конкуренты типа того же Flow, вот те наломали дров, поскольку взялись именно исправлять жээс.
·>Не наломали по сравнению с другими js-улучшателями, но не по сравнению с другими яп, типа того же c#.
C# уже 20 лет. ТС — всего 10, если считать от экспериментальной версии. Джаве — все 30.
P>>Зачем? С С++ все просто — читай внимательно свою же ссылку.
·>Там явно написано, что нельзя: No, you cannot convert between vectors of different types.
Ты продолжаешь читать только ту часть, что удобная для тебя.
P>>C С# все ровно так же ,как в джаве, только 1 из за отсутствия type erasure ты гарантировано получишь исключение в рантайме в любых типах, а не только массивах, если там не object под капотом
·>В java ты тоже получишь исключение, только в месте приведения типа элемента взятого из коллекции, а не в момент его добавления. Разберись что такое type erasure.
P>>т.е. animals[0] = new Cats() будет иногда работать, а иногда будет кидать исключение
·> Это не будет кидать исключение. Исключение будет кидать Dog d = dogs[0].
Непринципиально, в какой строчке. Важно — из за чего. Т.е. код может будет хромать.
P>>2 типы вида IList никто из фремворка не выбросил, а это означает неявный каст к object и всё, приехали.
·>Не понял, зачем его выбрасывать?
Затем, что он умножает количество ошибок.
P>>В Джаве, скажем, если ты не на массивах которые reifable, то из за type erasure случайные "фиксы" то тут, то там.
·>По-моему ты не очень правильно понимаешь, что такое type erasure.
Наоборот Массивы в джаве reifable, это факт. А вот остальные типы — нет, там просто type erasure. Т.е. вопрос в том, как именно ты будешь с этим работать.
P>>TS это лучший из яп которых пруд пруди в ноде/браузере.
·>Не спорю. Но явно не лучший в бэке, и именно по той главной причине, что он поверх js.
JS во многих вопросах обходит и джаву, и дотнет.
·>Можно и иммутабл, просто, как правило, тормознее. Но т.к. нода и так безбожно тормозит, то одним тормозом больше, одним меньше, уже не столь важно, главное чтобы хоть как-то работало, иначе поседеешь на поисках багов.
Ога. "Безбожно тормозит", как выяснилось в этом же треде, в пределах стат погрешности. Исключение — многопоточные вычисления.
P>>Ничего пока что не наломали. Конкуренты типа того же Flow, вот те наломали дров, поскольку взялись именно исправлять жээс.
·>Не наломали по сравнению с другими js-улучшателями, но не по сравнению с другими яп, типа того же c#.
C# уже 20 лет. ТС — всего 10, если считать от экспериментальной версии. Джаве — все 30.
P>>Зачем? С С++ все просто — читай внимательно свою же ссылку.
·>Там явно написано, что нельзя: No, you cannot convert between vectors of different types.
Ты продолжаешь читать только ту часть, что удобная для тебя.
P>>C С# все ровно так же ,как в джаве, только 1 из за отсутствия type erasure ты гарантировано получишь исключение в рантайме в любых типах, а не только массивах, если там не object под капотом
·>В java ты тоже получишь исключение, только в месте приведения типа элемента взятого из коллекции, а не в момент его добавления. Разберись что такое type erasure.
P>>т.е. animals[0] = new Cats() будет иногда работать, а иногда будет кидать исключение
·> Это не будет кидать исключение. Исключение будет кидать Dog d = dogs[0].
Непринципиально, в какой строчке. Важно — из за чего. Т.е. код может будет хромать.
P>>2 типы вида IList никто из фремворка не выбросил, а это означает неявный каст к object и всё, приехали.
·>Не понял, зачем его выбрасывать?
Затем, что он умножает количество ошибок.
Re[30]: Поругайте TypeScript/node.js
Здравствуйте, ·, Вы писали:
P>>В Джаве, скажем, если ты не на массивах которые reifable, то из за type erasure случайные "фиксы" то тут, то там.
·>По-моему ты не очень правильно понимаешь, что такое type erasure.
Наоборот Массивы в джаве reifable, это факт. А вот остальные типы — нет, там просто type erasure. Т.е. вопрос в том, как именно ты будешь с этим работать.
P>>TS это лучший из яп которых пруд пруди в ноде/браузере.
·>Не спорю. Но явно не лучший в бэке, и именно по той главной причине, что он поверх js.
JS во многих вопросах обходит и джаву, и дотнет.
·>Можно и иммутабл, просто, как правило, тормознее. Но т.к. нода и так безбожно тормозит, то одним тормозом больше, одним меньше, уже не столь важно, главное чтобы хоть как-то работало, иначе поседеешь на поисках багов.
Ога. "Безбожно тормозит", как выяснилось в этом же треде, в пределах стат погрешности. Исключение — многопоточные вычисления.
P>>Ничего пока что не наломали. Конкуренты типа того же Flow, вот те наломали дров, поскольку взялись именно исправлять жээс.
·>Не наломали по сравнению с другими js-улучшателями, но не по сравнению с другими яп, типа того же c#.
C# уже 20 лет. ТС — всего 10, если считать от экспериментальной версии. Джаве — все 30.
P>>Зачем? С С++ все просто — читай внимательно свою же ссылку.
·>Там явно написано, что нельзя: No, you cannot convert between vectors of different types.
Ты продолжаешь читать только ту часть, что удобная для тебя.
P>>C С# все ровно так же ,как в джаве, только 1 из за отсутствия type erasure ты гарантировано получишь исключение в рантайме в любых типах, а не только массивах, если там не object под капотом
·>В java ты тоже получишь исключение, только в месте приведения типа элемента взятого из коллекции, а не в момент его добавления. Разберись что такое type erasure.
P>>т.е. animals[0] = new Cats() будет иногда работать, а иногда будет кидать исключение
·> Это не будет кидать исключение. Исключение будет кидать Dog d = dogs[0].
Непринципиально, в какой строчке. Важно — из за чего. Т.е. код может будет хромать, то валится, то нет, в зависимости от поведения "где то там"
P>>2 типы вида IList никто из фремворка не выбросил, а это означает неявный каст к object и всё, приехали.
·>Не понял, зачем его выбрасывать?
Затем, что он умножает количество ошибок.
P>>В Джаве, скажем, если ты не на массивах которые reifable, то из за type erasure случайные "фиксы" то тут, то там.
·>По-моему ты не очень правильно понимаешь, что такое type erasure.
Наоборот Массивы в джаве reifable, это факт. А вот остальные типы — нет, там просто type erasure. Т.е. вопрос в том, как именно ты будешь с этим работать.
P>>TS это лучший из яп которых пруд пруди в ноде/браузере.
·>Не спорю. Но явно не лучший в бэке, и именно по той главной причине, что он поверх js.
JS во многих вопросах обходит и джаву, и дотнет.
·>Можно и иммутабл, просто, как правило, тормознее. Но т.к. нода и так безбожно тормозит, то одним тормозом больше, одним меньше, уже не столь важно, главное чтобы хоть как-то работало, иначе поседеешь на поисках багов.
Ога. "Безбожно тормозит", как выяснилось в этом же треде, в пределах стат погрешности. Исключение — многопоточные вычисления.
P>>Ничего пока что не наломали. Конкуренты типа того же Flow, вот те наломали дров, поскольку взялись именно исправлять жээс.
·>Не наломали по сравнению с другими js-улучшателями, но не по сравнению с другими яп, типа того же c#.
C# уже 20 лет. ТС — всего 10, если считать от экспериментальной версии. Джаве — все 30.
P>>Зачем? С С++ все просто — читай внимательно свою же ссылку.
·>Там явно написано, что нельзя: No, you cannot convert between vectors of different types.
Ты продолжаешь читать только ту часть, что удобная для тебя.
P>>C С# все ровно так же ,как в джаве, только 1 из за отсутствия type erasure ты гарантировано получишь исключение в рантайме в любых типах, а не только массивах, если там не object под капотом
·>В java ты тоже получишь исключение, только в месте приведения типа элемента взятого из коллекции, а не в момент его добавления. Разберись что такое type erasure.
P>>т.е. animals[0] = new Cats() будет иногда работать, а иногда будет кидать исключение
·> Это не будет кидать исключение. Исключение будет кидать Dog d = dogs[0].
Непринципиально, в какой строчке. Важно — из за чего. Т.е. код может будет хромать, то валится, то нет, в зависимости от поведения "где то там"
P>>2 типы вида IList никто из фремворка не выбросил, а это означает неявный каст к object и всё, приехали.
·>Не понял, зачем его выбрасывать?
Затем, что он умножает количество ошибок.