170 похожих чатов

Вот сижу и смотрю на наследование в Java. Пробую сравнить

с TypeScript
Написал код на TypeScript:
https://www.typescriptlang.org/play?#code/MYGwhgzhAECCvQN4CgCQwD2A7CAXATgK7C4b4AUAlEgL5oDmAprgMoECWW9VSaq+zQvizQARHnyd6ogNxo6dZKEgwAQquiMAHrkZYAJjHi9UTVhy5UAXNAlS5p5m0mWwNrIQC2AI0b5K7l6++A5mzlLkYAD8gT5+AbYW9NAAPtAecfgm-ILC0ACMDgrIIMzQ3tAAvOmMAO7Q6lRyJWUQGJ6M4VxV5QB0YUlNSthtpb0gGNy4AJ4ADowYAGa27Z1JlDJAA
TypeScript говорит что тип string, а в реальности там number. Это я делаю что-то не так, или что?

16 ответов

15 просмотров

Ts делает то, что ты написал: соблюдает сигнатуру для перегруженного метода. А вот то, что в реальности там число, отвечает на вопрос "зачем в рантайме информация о типах" и показывает когда от ts может быть вред (ну и в конкретно твоём случае, если я тебя ни в кем не путаю, показывает что в реальности использование ts не гарантирует от ошибок в рантайме) На всякий случай ещё напишу что код нарушает LSP: это нормально для тестового кода, но в проектах такого лучше не допускать

Bruto- Автор вопроса
Алексей Попов
Ts делает то, что ты написал: соблюдает сигнатуру ...

Да, но TS не делает то что я написал. Он мне показывает что там будет string. Не "number | string", а именно "string"

Bruto
Да, но TS не делает то что я написал. Он мне пока...

Ты написал что метод без аргументов возвращает стринг. Дальше ты вызываешь метод без аргументов. На этом полномочия ts всё И хотя ts тут не виноват, кейс хороший. Именно демонстрацией бесполезности ts

Алексей Попов
Ты написал что метод без аргументов возвращает стр...

вы на реальных проектах когда либо перегружали функции TS?

Bruto- Автор вопроса

Ну да, чем больше опыта, тем охотней соглашаюсь что TS не решает проблему. Но как жить без подсказок, особенно объектов у которых большая вложенность?

ArgoNick
вы на реальных проектах когда либо перегружали фун...

На ts нет, на других языках да В том числе потому что перегрузка методов на ts это костыль с чудовищным синтаксисом

Алексей Попов
На ts нет, на других языках да В том числе потому ...

я могу у вас роадмап получить по изучению бэка на ноде?

Bruto
Ну да, чем больше опыта, тем охотней соглашаюсь чт...

Внесу свою лепту в этот холивар) TS использую только для подсказок и описи)

ArgoNick
я могу у вас роадмап получить по изучению бэка на ...

У меня его нет, а на такой вопрос обычно скидывают roadmap.sh/backend

ArgoNick
аа, спасибо а вы не нодером рабоатете?

в настоящий момент нода это основная платформа, для которой я пишу код

ArgoNick
какой фреймворк вы юзаете?

Не один. Самые приятные эмоции у меня вызывает moleculer, самые неприятные nest

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта