25.05.2023, 20:26
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
voraa, это он для C# ругается, перетыкни на ts - норм сгенерит.)
__________________
29375, 35
|
|
26.05.2023, 14:04
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
Сообщение от voraa
|
В котором, меня интересует лишь пара полей.
Сколько времени уйдет на точное описание на ts такого объекта
|
если тебе нужна пара полей, то достаточно описать только их
type MyType = {
a: string;
b: number;
};
const jsonObj = {
a: 'aaa',
b: 123,
c: 456,
d: {...}
};
function f(p: MyType) {
console.log(p.a.toUpperCase(), p.b.toFixed()); // проверка типов, автокомплит и т.д.
}
f(jsonObj); // в параметр типа MyType передали jsonObj, где дохрена всего "лишнего"
|
|
26.05.2023, 18:02
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
Alexandroppolus, по секрету скажу: если совсем лень - можно прям энтот json использовать как тип. Да, вместо абстрактных string там будут конкретные значения, но если ты только читаешь и не пишешь - то тебе пофигу.)
__________________
29375, 35
|
|
26.05.2023, 21:33
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
Aetae,
Ну это если мы заимпортили json или прямо вручную создали объект-литерал. Для загруженного объекта тип будет unknown или даже any..
|
|
27.05.2023, 07:22
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
Alexandroppolus, это очевидно(вроде). TS работает на этапе компиляции, откуда ему знать что ты там когда-нибудь в рантайме загрузишь...
__________________
29375, 35
|
|
29.05.2023, 03:01
|
Новичок на форуме
|
|
Регистрация: 29.05.2023
Сообщений: 4
|
|
Сообщение от Aetae
|
Какие тебе аргументы? Такие которые скажут, что ты - молодец и можешь дальше ничего нового не изучать, и сидеть на жопе ровно? Хрен тебе.
Я в своё время тоже возмущался и "не понимал", пока не взялся за реальный проект, так что и тебе никакие разумные доводы не помогут кроме дела. Прирост в скорости в два раза, в полёте мысли без отвлечений и загрузки в память мусора не имеющего отношения к контексту проблемы - это всё для тебя пустой звук пока не познаешь на себе.
|
Я думал, что программист по складу ума должен уметь приводить аргументы в виде сухих фактов - бенчей, статы и прочих цифр.
А истеричное " Родишь — поймешь попробуешь — поймёшь" - говорит не в пользу специалиста...
Сообщение от Aetae
|
Мусора - знаний о всех структурах, схемах и потоках данных в не релевантных частях большого приложения. Тебе не надо разбирать что-то кроме куска кода с которым ты работаешь, когда TS следит за входящими и исходящими данными за тебя.
|
Вот это уже лучше, появилась конкретика.
Сообщение от Aetae
|
Если ты топишь за ванилу, потому что главное - это скорость работы программы, а всё остальное презренно и ничтожно - пиши на ассеблере и не приставай к адекватным людям. Может быть даже закончишь за свою жизнь один какой-нибудь суперскоростной микропроект.
|
Как же хочется взять и обидеть таким "скорость-не-главное" продвинутым погромистам. Но увы, это уже борьба с ветряными мельницами, копроэкономика сделала своё дело. Страница входа в ЛК застройщика - сначала сожри 10 метров скриптов. Явно "продвинутые погромисты" сэкономили своё время и мозговые клетки. За счёт времени и нервов пользователей. А как пытаешься что-то с этим сделать - сразу визг "преждевременная оптимизация".
Последний раз редактировалось ksa, 29.05.2023 в 12:48.
Причина: Убрал мат...
|
|
29.05.2023, 03:10
|
Новичок на форуме
|
|
Регистрация: 29.05.2023
Сообщений: 4
|
|
Сообщение от voraa
|
Не помню, что бы когда либо передавал объект вместо строки. Может я уникум, но ошибки типизации у меня крайне редки. Не припомню, когда делал.
|
У меня те же мысли. Смысл загромождать код ради "спасения" от ошибок, которых у меня даже не бывает? Дешёвым недокодерам, может, и помогает, а мне - мешает. И да, я сейчас работаю с "большой кодовой базой" без тупоскриптов, о ужос. Никто не умирает. Со временем узнал проект так, что подсказки практически не нужны. Но я на одном продукте работаю. Тем, кто часто скачет по проектам, видимо, заходит.
Последний раз редактировалось Uzasny, 29.05.2023 в 05:13.
|
|
29.05.2023, 09:36
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
Цитата:
|
Тем, кто часто скачет по проектам, видимо, заходит.
|
Конечно. С TS тебе буквально ничего не надо знать о проекте. Если тебе нужно поправить один файл, то тебе нужно открыть и править только один этот файл. За всё что приходит и всё что уходит отвечает тайпскрипт, тебе вообще не интересен контекст всего остального говна. Это просто кайф.
Цитата:
|
Как же хочется взять и обидеть таким "скорость-не-главное" продвинутым погромистам.
|
Если пипл хайвает, если бизнес хавает, то зачем я должен "страдать за народ"? Я прекрасно умею писать оптимизированный код, только он никому не нужен.
__________________
29375, 35
Последний раз редактировалось ksa, 29.05.2023 в 12:47.
Причина: Убрал мат...
|
|
29.05.2023, 09:47
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,753
|
|
Получается замкнутый круг. Сначала быстро пишем неоптимальный код, получая запредельные всякие FCP, LCP. Потом хватаемся за голову и тратим время, больше чем сэкономили на коде, что бы оптимизировать их.
|
|
29.05.2023, 10:16
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
Сообщение от voraa
|
Получается замкнутый круг. Сначала быстро пишем неоптимальный код, получая запредельные всякие FCP, LCP. Потом хватаемся за голову и тратим время, больше чем сэкономили на коде, что бы оптимизировать их.
|
Так, да не так. Мы сначала быстро пишем 100500 неоптимальных проектов, один из них выстреливает, и вот тогда - тратим время, больше чем сэкономили на коде одного, но несоизмеримо меньше чем сэкономили на всех остальных.
Ну и вообще это отхождение от темы, т.к. TS ровно никак не влияет на производительность, ибо компилируется в JS практически 1 к 1.
Вот Ангуляр и Рекат - да, влияют, ибо требуют много ручного труда для производительности, а реакт аж в документации пишет " никогда не оптимизируйте, потом когда будет узкое место там и пофиксите", что делает реакт на деле самым тормозным из всех, при вполне нормальной возможности оптимизации.
В Vue с оптимизацией дело куда лучше, потому что она работает по умолчанию, но кривые руки всё равно никто не отменял.)
__________________
29375, 35
Последний раз редактировалось Aetae, 29.05.2023 в 16:14.
|
|
|
|