The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Фреймворк Turbo прекращает использование языка TypeScript"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Фреймворк Turbo прекращает использование языка TypeScript"  +/
Сообщение от opennews (??), 08-Сен-23, 10:30 
Давид Хейнемейер Ханссон (David Heinemeier Hansson), автогонщик и автор веб-фреймворка Ruby on Rails, объявил о прекращении поддержки языка программирования TypeScript в коде развиваемого им проекта Turbo и переходе на использование чистого JavaScript начиная с выпуска Turbo 8, без задействования строгой типизации.  Уход от использования TypeScript во фреймворке Turbo не повлияет на возможность применения  TypeScript  в клиентском коде или подключение библиотек, написанных на TypeScript...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=59729

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 08-Сен-23, 10:30   +4 +/
> В Turbo применяется концепция построения интерактивных web-приложений "HTML-over-the-wire", при которой сервер вместо использования JSON напрямую отправляет клиенту HTML-код. Отмечается, что реализованный подход позволяет минимизировать использование JavaScript в web-приложении, обеспечить высокую производительность и упростить процесс доработки приложений.

Это как в HTMX?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #150

3. Сообщение от Анонимemail (3), 08-Сен-23, 10:33   +/
Компании стало тяжело поддерживать свои проекты на двух похожих языках, так как экосистема тоже отличается, хоть и не значительно.

Решение понятное, но грубое.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #20

4. Сообщение от Аноним (4), 08-Сен-23, 10:33   +2 +/
Руби не стал топчиком и это не станет)
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #7

7. Сообщение от Аноним (7), 08-Сен-23, 10:35   +/
топчик это эликсир
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #13

10. Сообщение от Аноним (10), 08-Сен-23, 10:38   +10 +/
Турбой не пользуюсь, но решение одобряю. Понакрутили обёрток вокруг обёрток.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #19, #169

13. Сообщение от User (??), 08-Сен-23, 10:47   +2 +/
"... но пользоваться им я конечно не буду"(Ц)?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #73

14. Сообщение от Аноним (19), 08-Сен-23, 10:47   –2 +/
> Давид Хейнемейер Ханссон (David Heinemeier Hansson), автогонщик

что?) у этого драйвера ещё страничка на вики есть, полюбому самописная

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #15

15. Сообщение от Аноним (19), 08-Сен-23, 10:55   +1 +/
хотя, он Ли Ман выиграл, что уже неплохо
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

16. Сообщение от Вирт (?), 08-Сен-23, 10:56   +22 +/
У гонщиков и javascript разработчиков особый склад ума.

Гонщики: сейчас и так сойдет, все равно к концу сезона машине нужен будет капитальный ремонт.

javascript разработчи: "укажите тип аргумента функции, чтобы Number вместо String туда не засунули" - нафига, к концу месяца еще пять раз перепишем с нуля.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #60, #91, #205

18. Сообщение от Уася (?), 08-Сен-23, 10:58   –21 +/
Типы не нужны. Они только запутывают и усложняют не только код но и логику.

В будущем появятся инструменты которые сами будут майнить типы и не добавлять дополнительный уровень оверхеда коим щас является турескрипт

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #25, #56, #66, #74, #102, #196, #207

19. Сообщение от Аноним (19), 08-Сен-23, 10:58   –3 +/
а дюшей метелкиным пользуешься?))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #35

20. Сообщение от Аноним (20), 08-Сен-23, 11:02   +5 +/
Svelte тоже перешел недавно на JS+JSDoc с типам, и там была интересная дискуссия, о том что библиотеки вообще следует делать только на чистом JS, чтобы например при каких-то ошибках тебе указывало точно на номер строки, а не пыталось из скомпилированного из Тайпскрипта представления найти где же это было в оригинале.

Вот тут он пришел к главному фанату раста на ютюбе и объяснился. https://www.youtube.com/watch?v=zPOHY-cZ1wE

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #22, #162, #216

21. Сообщение от Аноним (21), 08-Сен-23, 11:08   +3 +/
>избавляет разработчиков от выкрутасов с типами, производимых для удовлетворения капризов компилятора TypeScript

Это они еще не видели, какие выкрутасы нужны для удовлетворения компилятора Rust...

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #23, #47

22. Сообщение от Аноним (1), 08-Сен-23, 11:09   +/
> главному фанату раста

Да вроде уже перестал фанатеть.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #44

23. Сообщение от Аноним (25), 08-Сен-23, 11:11   +4 +/
яваскрипт без тайпскрипта все равно, что сишка, в которой все указатели -- void*
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #24, #41

24. Сообщение от Уася (?), 08-Сен-23, 11:12   –1 +/
Это как к буханке к которой добавили антены
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

25. Сообщение от Аноним (25), 08-Сен-23, 11:26   +34 +/
> Типы не нужны

У вас [object Object] новых сообщений.

> Они только запутывают и усложняют не только код но и логику

Пользователь undefined лайкнул ваш пост от Invalid Date.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #36, #40, #101

26. Сообщение от Аноним (26), 08-Сен-23, 11:28   +5 +/
>сервер вместо использования JSON напрямую отправляет клиенту HTML-код.

Хоть кто-то адекватный в JS-сообществе!

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #45

27. Сообщение от Аноним (27), 08-Сен-23, 11:28   +1 +/
Не знаю. Загрязняет гимнастикой с типами? Я наоборот как то привык к строгому объявлению типа void Func(int X), чем потом в теле этой функции наковыривать жуткие конструкции типа if typeof(X) = string then...
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #30, #42

29. Сообщение от Аноним (30), 08-Сен-23, 11:42   +1 +/
Правильным курсом идёт товарищ!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #133, #51, #54, #117

30. Сообщение от Аноним (30), 08-Сен-23, 11:43   +2 +/
а сразу написать на javascript религия не позволяет?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

35. Сообщение от Аноним (35), 08-Сен-23, 12:02   +3 +/
Только Стасом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

36. Сообщение от Аноним (35), 08-Сен-23, 12:03   –8 +/
Что не так? Возьми да поправь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #214

40. Сообщение от Бывалый смузихлёб (?), 08-Сен-23, 12:40   +3 +/
Только тайпскрипт это не исправляет )
Разве что геммора добавит
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #50

41. Сообщение от Аноним (41), 08-Сен-23, 12:46   –1 +/
Да же не рядом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

42. Сообщение от Бывалый смузихлёб (?), 08-Сен-23, 12:51   –2 +/
ну это у тебя с архитектурой что-то не так
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

44. Сообщение от Растобой (?), 08-Сен-23, 12:56   +/
Это он просто обиделся немного. Отойдёт и снова вернётся)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

45. Сообщение от Аноним (45), 08-Сен-23, 13:00   +1 +/
Отправляет HTML, а внутри него script тег, а там jQuery. Как в старые добрые
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #64, #77

47. Сообщение от Аноним (47), 08-Сен-23, 13:03   +/
> какие выкрутасы нужны для удовлетворения компилятора Rust...

Это не для удовлетворения компилятора, это для вразумления твоей порочной логики построения приложений. Не теми путями задачу решаешь с точки зрения безопасности, корявыми. Это легко понять, оглядываясь потом на свалку CVE и убытки от ошибок. Используй раст и со временем мозги вправятся, начнешь думать над решением задачи как дОлжно и не будешь замечать того компилятора. А может и не вправятся (мозги), тогда будешь растохейтить на опеннете.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #49

49. Сообщение от 1 (??), 08-Сен-23, 13:11   +/
> и со временем мозги вправятся, начнешь думать над решением задачи как дОлжно и не будешь замечать того компилятора

Прям как про армию. А потом будешь удивляться
"- Раз они такие умные, почему строем не ходят ?"

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #85, #87

50. Сообщение от Аноним (25), 08-Сен-23, 13:12   +3 +/
Исправлять должен не тайпскрипт, а разработчик. Тайпскрипт лишь указывает, где ты присваиваешь ежика зайчику.

> Разве что геммора добавит

В больших проектах гемором будет отсутствие тайпчекера, так как абсолютно любое изменение будет на авось. Впрочем, в хелловорлд-проектах на максимум 50 lines of code -- да, можно обойтись без тайпскрипта.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #63

51. Сообщение от Аноним (51), 08-Сен-23, 13:14   –1 +/
Колеблющаяся типизация. На самом деле, похоже, дятел владел английским, это "строго-типизированный" против "свободно-типизированный". Термина слабая типизация не существует как такового, ты его только что придумал.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #92

54. Сообщение от Вопрашающий (?), 08-Сен-23, 13:29   +1 +/
> и теперь антоним строгой типизации какой? - Слабая

Ласковая типизация :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #58

56. Сообщение от YetAnotherOnanym (ok), 08-Сен-23, 13:34   +1 +/
> Типы не нужны. Они только запутывают и усложняют не только код но и логику.

А ты тонкий. Даже с чувством юмора.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #103

58. Сообщение от YetAnotherOnanym (ok), 08-Сен-23, 13:40   +/
"Попустительская"
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54

60. Сообщение от BeLord (ok), 08-Сен-23, 13:59   +/
Это пока им не выдвинули требования поддерживать их поделки лет 20, с ответственностью за качество кода-)))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #78, #119

61. Сообщение от BeLord (ok), 08-Сен-23, 14:01   –1 +/
Так и не понял, в чем проблема строгой типизации, кроме лени разрабов, других причин пока не увидел.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #67, #72, #115, #160

63. Сообщение от Бывалый смузихлёб (?), 08-Сен-23, 14:04   –6 +/
Кто-то, уровнем чуть выше самого новичкового новичка и так об этом в курсе
Вдобавок, весь код в конечном счёте блоками проходит через ведущего разработчика или кто там сидит на бочк... на репе и принимает реквесты
Отдельная проблема тайпскрипта в том, что нередко приходится делать конкретные исключения. Для строк ли, блоков ли или целых файлов
И в итоге код, помимо всего прочего тайскриптового мусора, обрастает ещё и тоннами директив к нему

> В больших проектах гемором будет отсутствие тайпчекера,
> так как абсолютно любое изменение будет на авось.

В любых сколь-нибудь серьёзных проектах где более одного разработчика, есть какой-нибудь ведущий/старший программист, который чётко отслеживает каждый коммит и пинает ж.еппы
Вдобавок, код, который не протестирован локально и, желательно, тестировщиком, вообще не должен попадать в основные ветви, есть ли тайпскрипт или нет

Есть баг/доработка - есть работа проггера - есть тестирование что поправилось но и ничего не отвалилось - есть реквест в репу - есть ведущий программист что глядит код и требует переписать даже если по пробелам что-то не сходится

> Впрочем, в хелловорлд-проектах на максимум 50 lines of code --
> да, можно обойтись без тайпскрипта.

На тайпскрипте те хеллоу и ворды разве что и писать
Ибо совершенно неприлично развязывают проггеру руки в плане беспредельного го.мнокода с обилием всевозможных наследований и прочих радостей псевдо-ООП с лишним слоем абстракций и зависимостей

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50 Ответы: #69

64. Сообщение от th3m3 (ok), 08-Сен-23, 14:07   –1 +/
Нафига? На странице может вообще не быть js! Достали его пихать везде, где надо и не надо.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #76

65. Сообщение от Tron is Whistling (?), 08-Сен-23, 14:07   –4 +/
Абсолютно поддерживаю. Язык изначально слабо типизирован, и все эти костыли для студентов первого курса - костылями и останутся.

В PHP отряды смузи вот тоже пытаются типизацию навесить, им сложно видите ли иначе, в зачатках разума логика не умещается. Всё это приводит только к раздуванию кода бессмыслицей и снижению производительности.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #71, #98

66. Сообщение от OpenEcho (?), 08-Сен-23, 14:09   +/
> В будущем появятся инструменты которые сами будут майнить типы

вы про джэнерики слышали? а они уже пришли...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #75, #113

67. Сообщение от OpenEcho (?), 08-Сен-23, 14:22   +1 +/
> Так и не понял, в чем проблема строгой типизации, кроме лени разрабов, других причин пока не увидел.

Если бы строгая типизация была бы на уровне самого языка, то понятно, а вот делать вид что типизация и потом компилить в  не типизированный язык, - это костыль, еще одна не принудитильная абстракция, которая в конечом результате попадает в браузеры как не типизированнйы код

Простыми словами - ананизм, подмена реального процесса фикцией

Я не против пользы типизации, но не проще ли тогда уже писать на настоящем языке, который от рождения типизирован и компилить в тот же WASM понимаемый браузерами, - и волки и овцы (типизация и скорость) целы и сыты вместо того чтоб овцам прикидываться волками

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #70, #90, #125, #197

69. Сообщение от Аноним (25), 08-Сен-23, 14:30   +5 +/
> весь код в конечном счёте блоками проходит через ведущего разработчика

Который помнит все сотни тысяч строк проекта, верно? В голове удерживает всё то, что едва-едва умещает тайпскрипт в RAM, да? Я же говорю: твой уровень -- хелловорлд, а с по-настоящему крупными проектами >1,000,000 LoC ты не сталкивался.

> Отдельная проблема тайпскрипта в том, что нередко приходится делать конкретные исключения
> в итоге код, помимо всего прочего тайскриптового мусора, обрастает ещё и тоннами директив к нему

Именно тайпскриптовые исключения -- это редкость. Гораздо чаще (на нашем - раз в 20 чаще) приходится глушить именно eslint, а не тайпскрипт. Тонны директив -- это признак того, что ваш проект провалился просто потому, что никто толком не продумывает типы, или все владеют тайпскриптом на каком-то чудовищно начальном уровне.

> с обилием всевозможных наследований и прочих радостей псевдо-ООП с лишним слоем абстракций и зависимостей

Тебя заставляют пользоваться классами? У нас они только там, где их зачем-то требуют third_party-либы. Наследованиям есть альтернатива -- композиция. Про "псевдо-ООП" бабушке своей рассказывай.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #110

70. Сообщение от Аноним (25), 08-Сен-23, 14:37   +1 +/
> компилить в тот же WASM

Веб-приложения, активно взаимодействующие с DOM, будут тормозить в WASM-варианте. That's right, ты не ослышался: JavaScript работает существенно быстрее WASM, если требуется активно работать с DOM.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #84, #135

71. Сообщение от Критик (?), 08-Сен-23, 14:45   –2 +/
Все там хорошо с типами! Более того, прошли времена, когда все эти новомодные фреймворки могли что-то ускорить или улучшить, даже тот же jQuery уже не нужен, ванильный чистый JavaScript можно удобно и комфортно все что тебе надо и при том работает без тормозов, в отличии от ваших тубо.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #116, #129

72. Сообщение от Tron is Whistling (?), 08-Сен-23, 14:56   +/
Проблема в том, что смузи с сахарком вокруг типов оборачивается кучей тайпкастов и конверсий там, где их не надо. Это в лучшем случае. В худшем - необходимостью дублировать код под каждый тип, либо городить темплейты, но последнее не про жс.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #185

73. Сообщение от Наме (?), 08-Сен-23, 15:05   –3 +/
Так мы и рубями не пользуемся. Зачем? Есть бидон, глагне, тупоскрипт и сисиплюс для людей
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #83

74. Сообщение от Наме (?), 08-Сен-23, 15:07   +/
ТипЫ типа вас не нужны, в будущем будут аннигилированы автоматически
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

75. Сообщение от Аноним (75), 08-Сен-23, 15:07   +/
Они за дверью, стесняются постучать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #138

76. Сообщение от Наме (?), 08-Сен-23, 15:10   –1 +/
Только 99% фич типа активных форм и навигации без круглосуточной перезагрузки всей страницы немножк не работают, а так может не быть, конечно, особенно если это страница "сайт заблокирован во имся специальной чебуречной операции"
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64

77. Сообщение от Наме (?), 08-Сен-23, 15:11   +/
И всё это заинлайнено так, что без сумасшедших регулярок фиг разложишь чтобы просто взять полезный пэйлоад у (ч)удаков, которые не умеют в человеческий API
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #96, #114

78. Сообщение от Анонимemail (78), 08-Сен-23, 15:13   +/
Да, когда нам выдвинули: реально пришлось на TS перейти. В больших проектах даже ES6 не спас, только добавлял трудности поддержки IE (хорошо что уже помер).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60

81. Сообщение от nonstop (?), 08-Сен-23, 15:22   +1 +/
Вот это нужно в рамку и на стену повесить:

> избавляет разработчиков от выкрутасов с типами,
> производимых для удовлетворения капризов компилятора

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #88

83. Сообщение от User (??), 08-Сен-23, 15:25   –1 +/
> Так мы и рубями не пользуемся. Зачем? Есть бидон, глагне, тупоскрипт и
> сисиплюс для людей

Ну вот да. Разве что крестов нету - есть C#/java

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

84. Сообщение от Аноним (47), 08-Сен-23, 15:26   +/
Как там сейчас не знаю, а пару лет назад читал, что да, васм, чтобы использовать DOM, пока еще дергает яваскрипт ибо своего механизма не имел. В таком случае конечно будет тормозить. Но там в планах было реализовать прямое обращение к DOM, без JS-прокси. Вот когда реализуют - тогда заживем. Но там много чего еще было в планах.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70 Ответы: #173

85. Сообщение от Аноним (47), 08-Сен-23, 15:36   +/
Да, хорошие аналогии - они на вес золота. А чего не привел в пример в плане вправки мозгов, допустим, какую-нибудь музыкальную консерваторию, где всё строго и по науке (раст) супротив дворовой гитары с пацанами, где ори во всё горло что хошь и как хошь (си)? Конечно, во дворе с пацанами ЗНАЧИТЕЛЬНО лучше и веселее - напрягаться не надо и весело и можно матерные песенки Юры Хоя (Клинских) орать и в любой момент петуха пустить - все вместе поржёте.

Да, критические CVEшки многа-многа лучше - они такие мягонькие, тепленькие, ламповые. А главное - кормят долго и надежно. Плевать, что пользователи страдают.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49

86. Сообщение от Golangdev (?), 08-Сен-23, 15:40   +/
> В качестве причины прекращения использования TypeScript упоминается то, что этот язык мешает автору при разработке и делает трудными вещи, которые должны быть простыми. Недовольство касается не только наличия дополнительной стадии компиляции TypeScript, но и того, что данный язык загрязняет код "гимнастикой с типами".
> Компания 37signals, которая курирует разработку проекта, полностью перешла на использование чистого JavaScript в клиентском коде и внутренних библиотеках. Использование чистого JavaScript не только значительно улучшает читаемость кода, но и избавляет разработчиков от выкрутасов с типами, производимых для удовлетворения капризов компилятора TypeScript.

Люто поддерживаю. TypeScript нужен далеко не всегда. Лично наблюдал как в последние 5 лет использование TS становилось не то карго-культом, не то сектой.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #104

87. Сообщение от Аноним (47), 08-Сен-23, 15:56   +1 +/
> Прям как про армию

Нет, здесь прям как про арифметику.

ты написал 2+2=5. Нет, вправляет тебе мозги раст, 4 и никак иначе. Вот такая тут аналогия. И твои мухлёванные доказательства обратного и горбатые аналогии - от лукавого. Раст не от всего тебя ограничивает, а только от техник программирования, чреватых ошибками. Всё. Дальше твори, что хочешь. Это как в свое время был переход в создании программ от DOS к Windows/Linux. Что угодно и как угодно, как в ДОСе, с машиной уже не сделаешь, как-никак защищенный режим и куча ограничений, но творить, в определенных рамках ("в песочнице"), можешь что угодно. Если же ты постоянно вылезаешь за выделенную память или пытаешься напрямую работать с железом - ну, значит ты что-то делаешь неправильно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49

88. Сообщение от YetAnotherOnanym (ok), 08-Сен-23, 15:57   –1 +/
У автора этой формулировки явно припекает от любых попыток навести в коде порядок с типами.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81

90. Сообщение от Аноньимъ (ok), 08-Сен-23, 16:57   +3 +/
> Если бы строгая типизация была бы на уровне самого языка, то понятно, а вот делать вид что типизация и потом компилить в  не типизированный язык, - это костыль

Примерно ВСЕ современные языки это делают, включая С, С++, Расты, Хаскели и все прочие.
Какая разница во что оно там копилирует? Типы это разновидность документации кода, при грамотной реализации дающая кучу возможностей для автоматического анализа валидности и выявления ошибок.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67

91. Сообщение от Number вместо String (?), 08-Сен-23, 17:09   +/
+,!! и `${}` если боишься, что засунут не то и слишком ленив писать гарды. двоечник
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #106

92. Сообщение от leap42 (ok), 08-Сен-23, 17:26   –1 +/
> Колеблющаяся типизация. На самом деле, похоже, дятел владел английским, это "строго-типизированный"
> против "свободно-типизированный". Термина слабая типизация не существует как такового,
> ты его только что придумал.

Вы прост 0 книг прочли на языке, на котором написано 100% материалов по CS.

https://en.wikipedia.org/wiki/Strong_and_weak_typing

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #93

93. Сообщение от Аноним (51), 08-Сен-23, 17:37   –2 +/
О чём и речь. У этого слова есть 2 значения: хрупкий и немощный. Которое из них можно перевести как "слабый"? Вот это уж точно дебич какой-то придумал.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92 Ответы: #124

94. Сообщение от FF (?), 08-Сен-23, 17:43   +/
видимо надоело ждать, пока вебпак соберёт
Ответить | Правка | Наверх | Cообщить модератору

96. Сообщение от Аноним (96), 08-Сен-23, 17:48   +/
Библиотек по разбору хтмл целый миллион, какие регулярки?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77

98. Сообщение от Аноним (98), 08-Сен-23, 18:07   –2 +/
PHP вообще следовало бы остановиться на 4 версии по синтаксису, и допиливать только то, что под капотом для ускорения и латания безопасности. Сейчас пыха уже сложнее чем java, а популярность падает с каждым годом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65

101. Сообщение от Аноним (-), 08-Сен-23, 19:27   +/
ща, он ещё раз IOOSOO подумает..)))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

102. Сообщение от Илья (??), 08-Сен-23, 19:40   +/
Типы нужны для рефакторинга.

Js разработчикам это не нужно, у них можно раз в год выкидывать и с нуля переписывать

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

103. Сообщение от Аноним (-), 08-Сен-23, 19:40   +/
> Типы не нужны. Они только запутывают и усложняют не только код но и логику.
> А ты тонкий. Даже с чувством юмора.

и не говори, у меня бдешка, которая вебприложуху обслуживает, уже минут двадцать под столом катается))) ладно хоть на тестовом всё в морду льётся - на продакшене так целый юнит 24/7 на варлог сажать надо, ну или админов косоглазых брать сразу)))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56

104. Сообщение от Фонтан Энтропии (ok), 08-Сен-23, 19:43   +/
В какие средние и большие проекты ты бы не стал брать тайпскрипт и почему?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86 Ответы: #130

105. Сообщение от Sergey (??), 08-Сен-23, 19:44   +/
> При использовании Turbo логика работы приложения не размазывается по фронтэнду и бэкенду, а определяется только на сервере с использованием языка программирования, наиболее удобного для разработчика. Браузер же занимается только обработкой готового HTML.

Упс. Э... Не понял ... В браузере не нужно будет включать этот дурацкий JS ? Возврат к началу WEBa.

Ответить | Правка | Наверх | Cообщить модератору

106. Сообщение от Вирт (?), 08-Сен-23, 20:08   +/
> +,!! и `${}` если боишься, что засунут не то и слишком ленив писать гарды

Зачем? Завтра ведь нужно будет на другой фреймворк переписать, чтобы быть в тренде и этой функции уже не будет.
Это Javascript, baby, это javascript baby.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #91

109. Сообщение от Аноним (109), 08-Сен-23, 20:27   +/
Просто он автогонщик, а не программист.
Ответить | Правка | Наверх | Cообщить модератору

110. Сообщение от Аноним (-), 08-Сен-23, 20:29   +/
> а с по-настоящему крупными проектами >1,000,000 LoC ты не сталкивался.
> Тебя заставляют пользоваться классами? У нас они только там, где их зачем-то требуют third_party-либы.

лол, а как ими не пользоваться-то? так можно и 2,000,000 ск проекты выдавать))))
я, правда не спец в жб, так, пых-самоучка))

> Наследованиям есть альтернатива -- композиция.

а вот за наводку на композицию и агрегацию спасибо, что-то подобное интуитивно и приходило. мож ещё строчек в проекте урезать смогу - знакомство с классами в своё время очень помогло, надо посмотреть))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

112. Сообщение от BrainFucker (ok), 08-Сен-23, 21:46   +3 +/
Меня этот внезапный всплеск интереса к строгой типизации немного удивил. Вдруг его скакой-то стати стали тащить и в питон, и в php, и в JS, вынуждая разработчиков заниматься лишней рутиной. Всеми этими оптимизациями должен заниматься компилятор сам. В эпоху, когда вот-вот можно будет писать программы на естественном языке, эти шаги назад выглядят странно.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #120, #126, #208

113. Сообщение от jt3k (ok), 08-Сен-23, 22:02   +/
Дженерики то тут при чём? Автор про нейросети писал и инструменты на их основе. В жабаскриптах нет женериков.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #136

114. Сообщение от jt3k (ok), 08-Сен-23, 22:08   +/
Для чего вам в интерфейсной либе парсить хтмл для извлечения данных? Присылайте сразу данные и проблема решена.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77

115. Сообщение от jt3k (ok), 08-Сен-23, 22:16   +/
Предлагаю вам залезть в их репу и почитать что на этот счёт пишет сам автор. Нужно быть всегда честными с самим собой тайпскрипт увеличивает сложность. А где сложность там и баги, вне зависимости от того есть там тайпскрипт или нет)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61

116. Сообщение от jt3k (ok), 08-Сен-23, 22:18   +/
Технология турбо поправде крутая, и очень отзывчивая. Вы не правы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

117. Сообщение от COBA (?), 08-Сен-23, 22:38   +/
Ну в python например утиная.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #155

118. Сообщение от Аноним (119), 08-Сен-23, 22:51   +/
Моё почтение, у него стальные яйца. Тайпскрипт не даёт выигрыш в качестве кода. А вот штат разработчиков гарантированно увеличит
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #143, #158

119. Сообщение от Аноним (119), 08-Сен-23, 23:07   +/
Большой проект нужно резать на маленькие кусочки. И все прекрасно поддерживается.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60

120. Сообщение от Адмунь (?), 08-Сен-23, 23:38   –2 +/
В строгой типизации нет ничего плохого, особенно там где она опциональна. Это в перспективе даёт возможность конвертации в что-нибудь типа Си и запуска на стиральной машине. Например в PHP типизация сделана очень грамотно и ты сам без каких либо проблем можешь решать использовать её или нет. Чего к сожалению не скажешь про JS, тайпскрипт там это сейчас культ, хотя и законченному идиоту понятно - это приводит к бойлерплейт коду, раздуванию проекта, куче @ts-error-ignore, красным подчёркиваниям потому что тип ещё не добавили т.к. апи новое и прочее и прочее. Ts - рак на планете и надо от него избавляться. кто поумнее - уже давно понял это. Браузеры не про это, они про чистый Js.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #131, #177, #178

121. Сообщение от jt3k (ok), 08-Сен-23, 23:47   +3 +/
Никогда не использовал турбо, но любое изменение с .ts на .js — это большое изменение, потому что теперь ни у кого нет возможности притворяться, что TypeScript — это что-то хорошее.
Ответить | Правка | Наверх | Cообщить модератору

124. Сообщение от Аноним (124), 09-Сен-23, 00:55   +/
В английском ты разбираешься так же, как и в программировании...
https://translate.google.com/?sl=en&tl=ru&text=weak&op=trans...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93 Ответы: #128

125. Сообщение от fuggy (ok), 09-Сен-23, 00:58   +1 +/
Решение удивительное. Первый раз наверно вижу, когда большой проект с развитием переходит с типизированного обратно на динамический язык. Ломать не строить, как говорится. Это оказывается просто убрать все типы из кода, когда уже система отлажена, но вот в обратную сторону проставить типы это много времени работ.
Я понимаю использовать динамический язык, для небольших стартапов, где не выстрелило - выкинуть не жалко. В больших проектах в статически типизированных языках, ошибки найти сразу на этапе компиляции, что экономит много времени на отладку, и что невозможно на динамически типизированных языках.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #137

126. Сообщение от fuggy (ok), 09-Сен-23, 01:08   +1 +/
Интересно, а как работают автоматические рефакторинги/исправление для динамического javascript? Мне интересно. Если они и есть, то инструменту всё равно нужно выводить типы. И гораздо проще искать проблемы в коде, когда мы точно знаем что функция принимает. А так функция может принимать и строку, и число, и массив, и объект с неизвестными полями, какую информацию может извлечь инструмент из этого? Никакую.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #157

128. Сообщение от Аноним (51), 09-Сен-23, 01:12   +/
Ну GT то конечно показатель. А как ты переведёшь weakly?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124

129. Сообщение от Аноним (-), 09-Сен-23, 01:17   +/
>Все там хорошо с типами!

да непонятно вообще что за проблема с типами такая))) если нужно что-то конкретное для бд или продакшена какого - объявляй и чек/конверт на инпут вешай классом, делов-то. а не где неважно - там неважно. у них там, по ходу, нигде ничего такого нет - вот и топят.

>Более того, прошли времена, когда все эти новомодные фреймворки могли что-то ускорить или улучшить, даже тот же jQuery уже не нужен, ванильный чистый JavaScript можно удобно и комфортно все что тебе надо и при том работает без тормозов, в отличии от ваших тубо.

ну когда осваиваешь язык и приёмы на уровне выше группы разрабов фреймворка - тогда да, но раньше - не всегда. а если ты гуру от бога - можно чей и вообще своей язык накатать, что все ахнут)))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

130. Сообщение от Аноним (-), 09-Сен-23, 01:30   –1 +/
так вроде же можно так же описать классы на жс и использовать их, в чём конкретно преимущество тс?

я вот свой проект вылизал, вроде бы, на пыхе, смотрю теперь в сторону динамического обновления, подтягиваний и тп, но чёт ничего убедительного не нахожу в использовании подобного - на жс же можно всё сделать, через те же сокеты, библиотеками всякими для начала и тп - зачем всякие *скрипты, аяксы, джейквери и тп тащить?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104

131. Сообщение от Аноним (-), 09-Сен-23, 01:32   –1 +/
> Например в PHP типизация сделана очень грамотно и ты сам без каких либо проблем можешь решать использовать её или нет.

+

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120

133. Сообщение от Аноним (133), 09-Сен-23, 02:05   +/
Я тоже поддерживаю. Классы в ES6 завезли, так что подождать немного и будет там все что сейчас есть в TypeScript.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

135. Сообщение от OpenEcho (?), 09-Сен-23, 03:21   +/
> ты не ослышался: JavaScript работает существенно быстрее WASM, если требуется
> активно работать с DOM.

А зачем в веб-морде а.к.а ЮаЙ, активно работать?
Люди(способность человеческой реакции) способны фиксировать что-то быстрее чем 25 кадров в секунду ?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70 Ответы: #174, #183

136. Сообщение от OpenEcho (?), 09-Сен-23, 03:26   +/
> Автор про нейросети писал...

Сорри, но я не телепат


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #113

137. Сообщение от OpenEcho (?), 09-Сен-23, 04:07   +/
> В больших проектах в статически типизированных языках...

TypeScript - не язык, а прослойка между реальным языком и чуваком/чувихой, думающ(ий/ей) что они пишут на типизированном языке. Имитация. Анонизм.

Не, там есть позитив от типов, однозначно, но пока это не на уровне языка, а так, - в имитации, то сколько волка не корми, все равно как у ишака не вырастет. Вот когда ТайпСкрипт будет JIT-том в браузере/ноде, вот тогда его можно будет воспринимать как взрослого


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125

138. Сообщение от OpenEcho (?), 09-Сен-23, 04:12   +/
> Они за дверью, стесняются постучать.

не пускайте, им дашь волю, и опять типизация боком

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75 Ответы: #194

143. Сообщение от Аноним (143), 09-Сен-23, 05:23   –1 +/
> Тайпскрипт не даёт выигрыш в качестве кода.

Именно. У хорошего _внимательного_ разраба, который не пялится одним глазом в ютубчик, редко бывают детские ошибки с [object Object]. А если бывают, то мгновенно отлавливаются при тестировании.

Но нет - из-за 95% кривоглазов изволь нагромождать кода в несколько раз больше. А кривоглазы тем временем косячат другими способами.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118 Ответы: #163

150. Сообщение от Аноним (150), 09-Сен-23, 07:07   +2 +/
Когда-то деды называли это Ajax.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #152

152. Сообщение от Аноним (152), 09-Сен-23, 07:28   +1 +/
ASP.NET WebForms же.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #150 Ответы: #168

153. Сообщение от Аноним (152), 09-Сен-23, 07:32   +/
Типы должны быть в самом JS. Сделали директиву use strict — можно сделать и use typed. Сразу производительность подскочит, целый пласт обработок из интерпретатора можно будет выбросить.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #165, #191

155. Сообщение от leap42 (ok), 09-Сен-23, 07:46   +/
> Ну в python например утиная.

Утиность ортогональна силе. В python сильная динамическая.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #117

157. Сообщение от Sergey (??), 09-Сен-23, 09:48   +/
Вообще то остановить прогу и глянуть какой тип это просто.

И вообще строгая типизация это как раз для кода а не человнка, так код будет работать быстрее.
Он сразу выделит нужную память.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #126 Ответы: #190

158. Сообщение от Sergey (??), 09-Сен-23, 09:51   +/
Он дает выигрышь в зарплате.
За место одного правильного с большой зп и который может уйти заболеть. Можно нанять троих с зарплатой в 3 раза меньше и пугать их что одного скоро сократят и у нас очередь за забором.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118 Ответы: #164

160. Сообщение от leap42 (ok), 09-Сен-23, 10:13   +/
> Так и не понял, в чем проблема строгой типизации, кроме лени разрабов,
> других причин пока не увидел.

Маловато опыта значит)

Представьте себе python код, который обрабатывает входной json десятком if. Т.е. там очень сильно что угодно может быть: строка, массив, объект, массив объектов, объект, набитый объектами, в которых могут быть массивы. А теперь представьте как я переписываю это на Go с сильной статической типизацией. Мне нужен тип под каждый частный случай, сможете посчитать сколько именно типов мне нужно?) Конечно благодаря композиции и хитрому анмаршалингу я могу свести кучу частных случаев к общим, но постоянно думаю о том, что лучше бы писал это на node.js 😄

p.s. оно так приходит с фронта, и это бизнес-логика, на данном этапе её не поменять
p.p.s. я знаю, что можно как быдло-кодеру всё бросить в вонючую нетипизировонную яму, но мне нужно работать с полями, так что отказ от нормальных типов лишь отсрочит боль, но в общем, её станет больше, оно того не стоит

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #175, #201

162. Сообщение от Аноним (-), 09-Сен-23, 11:18   +1 +/
> Svelte тоже перешел недавно на JS+JSDoc с типам, и там была интересная дискуссия,
> о том что библиотеки вообще следует делать только на чистом JS, чтобы

...чтобы наслаждаться багами сразу в либе, а ошибки - какие ошибки, если типов нет, в самом деле? И на все остальные ошибки - тоже забить, так кодить еще проще будет! :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

163. Сообщение от Ko (?), 09-Сен-23, 12:10   +/
Однажды обратил внимание как джуны делаю задачу. Берет функцию/компонент и методом научного тыка подбирает параметры. Благодаря js это сделать очень просто. Вот только на ревью это хорошо видно. Как котенку указав на ка..ашку через какое то время такая привычка пропадает. А вот на тайпскрипте будет красивая ка..ашка которую так просто не распознаешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #143

164. Сообщение от Ko (?), 09-Сен-23, 12:21   +/
Одного не заменить на троих, такой вот парадокс. А вот где 3 на одну лампочку там и появляется бюрократия где можно без нее
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #158 Ответы: #167, #209

165. Сообщение от Вася (??), 09-Сен-23, 12:30   +/
Есть JSDoc, удобная штука. А TS имеет смысл возможно только в очень крупных проектах с тоннами кода...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #153

166. Сообщение от VladSh (?), 09-Сен-23, 13:31   +1 +/
По моему, лучше бы Dart взяли, это сейчас самый лаконичный язык для веба.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #193

167. Сообщение от Sergey (??), 09-Сен-23, 15:06   +/
Увы в реальной жизни наоборот.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #164

168. Сообщение от Аноним (-), 09-Сен-23, 17:00   +/
Delphi forms же, ну. Какие еще asp.net'ы?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #152

169. Сообщение от Аноним (-), 09-Сен-23, 17:04   +/
> Турбой не пользуюсь, но решение одобряю. Понакрутили обёрток вокруг обёрток.

Их накрутили не от хорошей жизни. А заметив что если проект становится крупным, без типов баги начинают задалбывать - а дебажить это все становится почти невозможно. Хотя конечно откатить и вспомнить почему это было - вариант. А потом охренеть с такого дебага и перейти обратно :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

172. Сообщение от Assador (ok), 09-Сен-23, 18:56   –1 +/
Ох уже эти пляски с фреймворками… Фреймворк на фреймворке сидит и фреймворком погоняет… Я вчера несколько часов потратил на поиск ошибки в системе, которую пилим на Vue. Проблема, как оказалось, в том, что у вьюшного reactive с Array-евским filter не было глубокого человеческого взаимопонимания. Простите за нытьё )
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #219

173. Сообщение от cheshirekot (ok), 09-Сен-23, 20:18   +/
А там до сих пор все так же...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #84

174. Сообщение от cheshirekot (ok), 09-Сен-23, 20:19   +/
Там речь об оверхеде по полсекунды при обращении к DOM. Реально, даже кожаный мешок заметит
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #135 Ответы: #199

175. Сообщение от Аноним (175), 09-Сен-23, 21:07   +/
Ну так надо сразу делать нормально, а не вываливать данные как попало, расчитывая что на той стороне как-нибудь разберутся.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #160 Ответы: #202

177. Сообщение от Tron is Whistling (?), 09-Сен-23, 22:14   +/
> в PHP типизация сделана очень грамотно

Угу. Особенно при отсутствии оверлоуда.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120

178. Сообщение от Tron is Whistling (?), 09-Сен-23, 22:15   +/
Прежде чем делать попытку в строгую типизацию - надо механику обеспечить.
Оверлоуд, темплейты. Короче сделать из пыха плюсы, но зачем, они уже есть.
А иначе это унылый костыль для недоглядов. К тому же производительность сажающий в хлам.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120 Ответы: #186

183. Сообщение от Аноним (183), 10-Сен-23, 02:01   +/
> Люди(способность человеческой реакции) способны фиксировать что-то быстрее чем 25 кадров в секунду ?

Фиксировать и реагировать способны до 120 кадров точно. Выше хз, не проверял.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #135 Ответы: #198

185. Сообщение от Аноним (-), 10-Сен-23, 02:31   +/
так где не надо - там и не надо) если мы говорим про юзеринпут/парсеры/апи - надо, это понятно, а то в лучшем случае данные не зайдут, в худшем, если тип в бд не установлен, к примеру, может немаленькая такая часть системы отвалиться, если не вся сразу, и ищи потом кто-куда

а если мы говорим про внутреннюю логику, которая уже за этим барьером выше - там уже и не нужно, если кодить правильно

так какой правильный ответ?))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #189

186. Сообщение от Аноним (-), 10-Сен-23, 02:33   +/
на плюсах сразу вебприложухи писать начинающим стартаперам?)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #178

189. Сообщение от Tron is Whistling (?), 10-Сен-23, 10:32   +/
Правильный ответ - в заголовке новости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #185

190. Сообщение от Tron is Whistling (?), 10-Сен-23, 10:34   +/
Для компилируемых языков верно.
С JIT всё сложно.
А в интерпретаторах и псевдокоде - сводится к дополнительной проверке типа в вызовах. В итоге код работает совершенно не быстрее.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157

191. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 14:52   +/
Есть такой proposal https://github.com/tc39/proposal-type-annotations

Правда там вроде js просто игнорит типы, а проверка возлагается на отдельные утилиты (как typescript). Примерно как аннотации в питоне

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #153

192. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 14:54   –1 +/
Еще один не смог ослилить типы. При этом стоит учесть, что в typescript достаточно гибок в этом плане.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #210

193. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 14:55   +1 +/
Его для веба вообще кто-то использует? Кроме как для flutter его нигде нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #166

194. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 14:58   +/
> им дашь волю, и опять типизация боком

В нормальных языках на них можно ограничения наложить, а не как в С++ (и да, концепты все еще не решают всех проблем).

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #138

196. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 15:01   +/
> В будущем появятся инструменты которые сами будут майнить типы

С разморозкой. Уже есть flow от запрещенной соц. сети. Правда у них все как обычно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

197. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 15:03   +/
> Если бы строгая типизация была бы на уровне самого языка, то понятно, а вот делать вид что типизация и потом компилить в  не типизированный язык, - это костыль, еще одна не принудитильная абстракция, которая в конечом результате попадает в браузеры как не типизированнйы код

Эмм. Ну большинство языков компилятся в асм, который в конечом результате попадает на процессор как не типизированный код.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #200

198. Сообщение от OpenEcho (?), 10-Сен-23, 15:03   –1 +/
> Фиксировать и реагировать способны до 120 кадров точно. Выше хз, не проверял.

Это вы про игрульки? так там вы видите больше строб-эффект...

Вообще это довольно конфюзная тема, не определившись,  что все оперирют одинаковыми терминами и одинаково их понимают, то разговор об этом может уйти в очень далекие дебри.

Самый простой метод, - собрать мультивибратор с duty cycle 50%  и подцепить к нему светодиод и начать накручивать частоту до тех пор пока переключения перестанут фиксироваться глазом-о-мозгом.  Восприятие частоты обновления картинки глазом может быть очень высоким, но само видение, точнее восприятие мозгом - этом совсем другое. Именно поэтом в свое время даже запретили изпользовать эффект 25 кадра в рекламе, - т.к. на башку влиять можно "невидимо"

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #183

199. Сообщение от OpenEcho (?), 10-Сен-23, 15:32   +/
> Там речь об оверхеде по полсекунды при обращении к DOM. Реально, даже
> кожаный мешок заметит

По сравнению с нынешними даже банковскими сайтами, где все моргает, дергается по несколько секунд пока появится что-то - так пол секунды это просто ракета...

ВАСМ, не замена ЖС, и их все же можно скрестить, получив максимальную выгоду от обоих, как пример:
https://age-wasm.ey.r.appspot.com/

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #174

200. Сообщение от OpenEcho (?), 10-Сен-23, 15:49   +/
> Ну большинство языков компилятся в асм, который в конечом результате попадает на процессор как не типизированный код.

Мы ехали, ехали и наконец приехали...

Копилится в основном не в асм, а в опкоды процессора, где вообще-то весь сыр-бор именно изза него, - процессора, где все привязанно к жестким типам.

Для справки:
https://cse.unl.edu/~goddard/Courses/CSCE351/IntelArchitectu...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #197

201. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 17:20   +/
> Представьте себе python код, который обрабатывает входной json десятком if. Т.е. там очень сильно что угодно может быть: строка, массив, объект, массив объектов, объект, набитый объектами, в которых могут быть массивы.

У нормальных АПИ есть схема ответа и из схемы можно сгенерить типы. В том же питоне популярен pedantic из-за возможности проверки.

> конечно благодаря композиции и хитрому анмаршалингу я могу свести кучу частных случаев к общим, но постоянно думаю о том, что лучше бы писал это на node.js

Просто тебе нужен не JSON, а protobuf или другой формат.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #160

202. Сообщение от Вы забыли заполнить поле Name (?), 10-Сен-23, 17:21   +/
> Ну так надо сразу делать нормально, а не вываливать данные как попало,
> расчитывая что на той стороне как-нибудь разберутся.

Дык это сложно: нужно поддерживать совместимость. А так никто не знает, что завтра будет в ответе.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #175

204. Сообщение от nc (ok), 11-Сен-23, 09:01   +/
Давно уже пора принять TS в качестве очередного стандарта ecmascript и внедрить в браузеры. Меньше будет оберток вокруг оберток, и если людям так уж хочется писать на скриптовых языках, так хоть пусть они будут типизированные.
Но наверное гугл с майкрософтом никак договориться не могут, у гугла же вроде свой язык какой-то был, dart?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #211

205. Сообщение от ti (?), 11-Сен-23, 10:12   +/
Руби не без строгой типизации и там принято везде использовать TDD. Турбо, по своей сути - это фронтовая часть Рельс(руби фреймворка). Странно не использовать строгую типизацию на бэке и использовать на фронте.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #206

206. Сообщение от ti (?), 11-Сен-23, 10:13   +/
*Руби без строгой типизации и там принято везде использовать TDD
fix
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #205

207. Сообщение от microcoder (ok), 11-Сен-23, 21:35   +/
Будущее уже давно здесь, это Python! Никакой тебе типизации, только АННОТАЦИИ к типам!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #215

208. Сообщение от microcoder (ok), 11-Сен-23, 21:38   +/
> Вдруг его скакой-то стати стали тащить и в питон

В питоне нет и не тащат строгую типизацию. В Питоне АННОТАЦИИ, это совсем другое

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #213

209. Сообщение от Аноним (209), 12-Сен-23, 01:27   +/
Читал давно историю, как девушке отказали в повышении ЗП, а после её ухода наняли троих на те же обязанности. Правда, это было не в айти, и должности её не знаю
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #164

210. Сообщение от Аноним (209), 12-Сен-23, 01:34   –1 +/
Еще один плавает без типов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #192

211. Сообщение от Аноним (209), 12-Сен-23, 01:35   –1 +/
Чем вам Java не зашла?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #204

212. Сообщение от ikombemail (ok), 12-Сен-23, 08:01   –1 +/
Просто пора уже реализовать нативное выполнение TS как в браузерах, так и на сервере, а не компилить в JS, и забыть JS как страшный сон.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #217

213. Сообщение от BrainFucker (ok), 12-Сен-23, 10:11   +/
Я в курсе, питону при исполнении кода они пoфиr, но суть та же, эта лишняя возня и зacиpaниe кода вдруг стало популярно и это стали тащить в проекты.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #208

214. Сообщение от Аноним (-), 12-Сен-23, 19:09   +/
> Что не так? Возьми да поправь.

Для этого надо найти где это происходит. Без типов то это довольно веселое начинание.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36

215. Сообщение от Аноним (-), 12-Сен-23, 19:10   +/
Он как раз и падает в рантайме все время, не хуже JS. Весьма характерно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #207

216. Сообщение от Аноним (216), 14-Сен-23, 20:42   +/
Для решения подобной проблемы существуют Source Map
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #218

217. Сообщение от Аноним (217), 16-Сен-23, 19:02   +/
Вокруг столько типизированных языков, зачем вы приперлись обсирать javascript?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #212

218. Сообщение от ван (??), 19-Сен-23, 12:03   +/
создадим проблему и создадим инструмент её решения
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #216

219. Сообщение от trippybara (ok), 27-Сен-23, 20:37   +/
А как ты добился, что тебе нужна реактивность при использовании filter?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #172


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру