30.05.2023, 09:35
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,753
|
|
Сообщение от webgraph
|
js я могу написать и запустить прямо в браузере вообще на любом сайте.
|
Я же про скорость продакшн. Не только скорость выполнения, но и все остальное - время загрузки, например...
Тесты, написанные на js в консоле (вообще не представляю, как там можно написать больше 5-7 строк), в код можно перенести и оформить на ts. Все равно ведь в готовый код это переносится не копипастом.
Последний раз редактировалось voraa, 30.05.2023 в 09:42.
|
|
30.05.2023, 09:46
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,753
|
|
Сообщение от webgraph
|
Например, тем, что мы сейчас о них говорим и прямым образом рекламируем их корпорацию. И их продукцию.
|
Так вот почему АвтоВАЗ делает Г! Что бы мы говорили, что это Г, и тем самым рекламировали АвтоВАЗ
|
|
30.05.2023, 10:04
|
|
Профессор
|
|
Регистрация: 14.11.2014
Сообщений: 186
|
|
Сообщение от voraa
|
Я же про скорость продакшн. Не только скорость выполнения, но и все остальное - время загрузки, например...
|
Скорость всё равно ниже. Если провести аналогию, то для JS достаточно одного "ядра" в мозге человека, чтобы обрабатывать информацию, потому что всё происходит и выполняется линейно. А для TS нужно уже несколько "ядер" и ещё несколько потоков. И оперативы в три раза больше.
function getLength<T>(arg: T): number {
return arg.length;
}
Просто франкенштейн какой-то.
Программа должна быть оптимизированной на всех уровнях. Не понимаю зачем использовать какую-то непонятно излишнюю фукциональность, требующую значительно больших мощностей.
Например, у нас есть информация, которая в одном формате весит 1 килобайт, а во втором формате - 1 мегабайт. Вот и спрашивается - нахрена мне второй формат??
Аналогий можно бесконечно приводить.
|
|
30.05.2023, 10:05
|
|
Профессор
|
|
Регистрация: 14.11.2014
Сообщений: 186
|
|
Сообщение от voraa
|
Так вот почему АвтоВАЗ делает Г! Что бы мы говорили, что это Г, и тем самым рекламировали АвтоВАЗ
|
черный пиар - тоже пиар) XD
|
|
30.05.2023, 11:27
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,231
|
|
Сообщение от webgraph
|
ну чуть-чуть-то можно
|
Нет.
Если еще будет мат - тему закрою.
|
|
30.05.2023, 14:46
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
webgraph, фигню говоришь, как обычно.
Во-первых: voraa(и все остальные) говорят про скорость исполнения результирующего кода на клиенте. И она не отличается. Не может отличаться.
Во-вторых: если говорить про скорость работы одного и того же человека с TS, против JS, то она выше, а не ниже. Если у тебя ниже, значит ты просто никогда не работал с TS, мелкие попытки потыкать - тут не играют роли.
В-третьих: в TS мне надо думать на порядок меньше, чем в JS, а освободившиеся мощности всегда можно направить на что-то более полезное.
__________________
29375, 35
|
|
30.05.2023, 15:54
|
Профессор
|
|
Регистрация: 04.12.2012
Сообщений: 3,797
|
|
Сообщение от webgraph
|
function getLength<T>(arg: T): number {
return arg.length;
}
Просто франкенштейн какой-то.
|
Ну так generic бесполезен более, чем полностью, и код содержит ошибку.
Смотришь на это нечто и задаешься вопросом: «А что, собственно, эта хрень в ка-ве аргумента принимает?»
Переписать эту функцию, например, так и все вопросы отпадают (3 варианта на выбор):
function getLength(lengthAwareItem: { length: number }): number;
function getLength(array: unknown[]): number;
function getLength(item: unknown[] | { length: number }): number {
return item.length;
}
|
|
30.05.2023, 16:10
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,753
|
|
Сообщение от webgraph
|
А для TS нужно уже несколько "ядер" и ещё несколько потоков. И оперативы в три раза больше.
|
Вы видимо не совсем представляете, как это работает. Вся эта информация о типах нужна только для ts (и для IDE). В результирующем файле js будет всего одна функция. Как будто были некие вспомогательные комментарии, ts их прочел, учел для проверок все ли в порядке с типами и удалил.
|
|
30.05.2023, 16:31
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,590
|
|
Nexus, если по логике вещей удобно иметь какой-то тип, то в стандартной либе он скорее всего есть, начинай писать - IDE подскажет.)
function getLength(item: ArrayLike<unknown>): number {
return item.length;
}
__________________
29375, 35
|
|
30.05.2023, 17:05
|
|
Профессор
|
|
Регистрация: 14.11.2014
Сообщений: 186
|
|
Сообщение от voraa
|
Вы видимо не совсем представляете, как это работает. Вся эта информация о типах нужна только для ts (и для IDE). В результирующем файле js будет всего одна функция. Как будто были некие вспомогательные комментарии, ts их прочел, учел для проверок все ли в порядке с типами и удалил.
|
О "ядрах" — это была аналогия... Прочитайте ещё раз полностью текст сообщения))
|
|
|
|