1.1, Аноним (1), 10:30, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
> В Turbo применяется концепция построения интерактивных web-приложений "HTML-over-the-wire", при которой сервер вместо использования JSON напрямую отправляет клиенту HTML-код. Отмечается, что реализованный подход позволяет минимизировать использование JavaScript в web-приложении, обеспечить высокую производительность и упростить процесс доработки приложений.
Это как в HTMX?
| |
1.3, Аноним (3), 10:33, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Компании стало тяжело поддерживать свои проекты на двух похожих языках, так как экосистема тоже отличается, хоть и не значительно.
Решение понятное, но грубое.
| |
|
2.20, Аноним (20), 11:02, 08/09/2023 [^] [^^] [^^^] [ответить]
| +5 +/– |
Svelte тоже перешел недавно на JS+JSDoc с типам, и там была интересная дискуссия, о том что библиотеки вообще следует делать только на чистом JS, чтобы например при каких-то ошибках тебе указывало точно на номер строки, а не пыталось из скомпилированного из Тайпскрипта представления найти где же это было в оригинале.
Вот тут он пришел к главному фанату раста на ютюбе и объяснился. https://www.youtube.com/watch?v=zPOHY-cZ1wE
| |
|
3.162, Аноним (-), 11:18, 09/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Svelte тоже перешел недавно на JS+JSDoc с типам, и там была интересная дискуссия,
> о том что библиотеки вообще следует делать только на чистом JS, чтобы
...чтобы наслаждаться багами сразу в либе, а ошибки - какие ошибки, если типов нет, в самом деле? И на все остальные ошибки - тоже забить, так кодить еще проще будет! :)
| |
|
|
|
|
|
4.73, Наме (?), 15:05, 08/09/2023 [^] [^^] [^^^] [ответить]
| –3 +/– |
Так мы и рубями не пользуемся. Зачем? Есть бидон, глагне, тупоскрипт и сисиплюс для людей
| |
|
5.83, User (??), 15:25, 08/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Так мы и рубями не пользуемся. Зачем? Есть бидон, глагне, тупоскрипт и
> сисиплюс для людей
Ну вот да. Разве что крестов нету - есть C#/java
| |
|
|
|
|
1.10, Аноним (10), 10:38, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +10 +/– |
Турбой не пользуюсь, но решение одобряю. Понакрутили обёрток вокруг обёрток.
| |
|
2.169, Аноним (-), 17:04, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Турбой не пользуюсь, но решение одобряю. Понакрутили обёрток вокруг обёрток.
Их накрутили не от хорошей жизни. А заметив что если проект становится крупным, без типов баги начинают задалбывать - а дебажить это все становится почти невозможно. Хотя конечно откатить и вспомнить почему это было - вариант. А потом охренеть с такого дебага и перейти обратно :)
| |
|
1.14, Аноним (19), 10:47, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
> Давид Хейнемейер Ханссон (David Heinemeier Hansson), автогонщик
что?) у этого драйвера ещё страничка на вики есть, полюбому самописная
| |
1.16, Вирт (?), 10:56, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +22 +/– |
У гонщиков и javascript разработчиков особый склад ума.
Гонщики: сейчас и так сойдет, все равно к концу сезона машине нужен будет капитальный ремонт.
javascript разработчи: "укажите тип аргумента функции, чтобы Number вместо String туда не засунули" - нафига, к концу месяца еще пять раз перепишем с нуля.
| |
|
2.60, BeLord (ok), 13:59, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Это пока им не выдвинули требования поддерживать их поделки лет 20, с ответственностью за качество кода-)))
| |
|
3.78, Аноним (78), 15:13, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Да, когда нам выдвинули: реально пришлось на TS перейти. В больших проектах даже ES6 не спас, только добавлял трудности поддержки IE (хорошо что уже помер).
| |
3.119, Аноним (119), 23:07, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Большой проект нужно резать на маленькие кусочки. И все прекрасно поддерживается.
| |
|
|
3.106, Вирт (?), 20:08, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> +,!! и '${}' если боишься, что засунут не то и слишком ленив писать гарды
Зачем? Завтра ведь нужно будет на другой фреймворк переписать, чтобы быть в тренде и этой функции уже не будет.
Это Javascript, baby, это javascript baby.
| |
|
2.205, ti (?), 10:12, 11/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Руби не без строгой типизации и там принято везде использовать TDD. Турбо, по своей сути - это фронтовая часть Рельс(руби фреймворка). Странно не использовать строгую типизацию на бэке и использовать на фронте.
| |
|
3.206, ti (?), 10:13, 11/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
*Руби без строгой типизации и там принято везде использовать TDD
fix
| |
|
|
1.18, Уася (?), 10:58, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –21 +/– |
Типы не нужны. Они только запутывают и усложняют не только код но и логику.
В будущем появятся инструменты которые сами будут майнить типы и не добавлять дополнительный уровень оверхеда коим щас является турескрипт
| |
|
2.25, Аноним (25), 11:26, 08/09/2023 [^] [^^] [^^^] [ответить]
| +34 +/– |
> Типы не нужны
У вас [object Object] новых сообщений.
> Они только запутывают и усложняют не только код но и логику
Пользователь undefined лайкнул ваш пост от Invalid Date.
| |
|
|
4.214, Аноним (-), 19:09, 12/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Что не так? Возьми да поправь.
Для этого надо найти где это происходит. Без типов то это довольно веселое начинание.
| |
|
|
4.50, Аноним (25), 13:12, 08/09/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
Исправлять должен не тайпскрипт, а разработчик. Тайпскрипт лишь указывает, где ты присваиваешь ежика зайчику.
> Разве что геммора добавит
В больших проектах гемором будет отсутствие тайпчекера, так как абсолютно любое изменение будет на авось. Впрочем, в хелловорлд-проектах на максимум 50 lines of code -- да, можно обойтись без тайпскрипта.
| |
|
|
6.69, Аноним (25), 14:30, 08/09/2023 [^] [^^] [^^^] [ответить] | +5 +/– | Который помнит все сотни тысяч строк проекта, верно В голове удерживает всё то,... большой текст свёрнут, показать | |
|
7.110, Аноним (-), 20:29, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> а с по-настоящему крупными проектами >1,000,000 LoC ты не сталкивался.
> Тебя заставляют пользоваться классами? У нас они только там, где их зачем-то требуют third_party-либы.
лол, а как ими не пользоваться-то? так можно и 2,000,000 ск проекты выдавать))))
я, правда не спец в жб, так, пых-самоучка))
> Наследованиям есть альтернатива -- композиция.
а вот за наводку на композицию и агрегацию спасибо, что-то подобное интуитивно и приходило. мож ещё строчек в проекте урезать смогу - знакомство с классами в своё время очень помогло, надо посмотреть))
| |
|
|
|
|
|
2.56, YetAnotherOnanym (ok), 13:34, 08/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Типы не нужны. Они только запутывают и усложняют не только код но и логику.
А ты тонкий. Даже с чувством юмора.
| |
2.66, OpenEcho (?), 14:09, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> В будущем появятся инструменты которые сами будут майнить типы
вы про джэнерики слышали? а они уже пришли...
| |
|
|
4.138, OpenEcho (?), 04:12, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Они за дверью, стесняются постучать.
не пускайте, им дашь волю, и опять типизация боком
| |
|
3.113, jt3k (ok), 22:02, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Дженерики то тут при чём? Автор про нейросети писал и инструменты на их основе. В жабаскриптах нет женериков.
| |
|
2.74, Наме (?), 15:07, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
ТипЫ типа вас не нужны, в будущем будут аннигилированы автоматически
| |
2.102, Илья (??), 19:40, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Типы нужны для рефакторинга.
Js разработчикам это не нужно, у них можно раз в год выкидывать и с нуля переписывать
| |
2.207, microcoder (ok), 21:35, 11/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Будущее уже давно здесь, это Python! Никакой тебе типизации, только АННОТАЦИИ к типам!
| |
|
3.215, Аноним (-), 19:10, 12/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Он как раз и падает в рантайме все время, не хуже JS. Весьма характерно.
| |
|
|
1.21, Аноним (21), 11:08, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
>избавляет разработчиков от выкрутасов с типами, производимых для удовлетворения капризов компилятора TypeScript
Это они еще не видели, какие выкрутасы нужны для удовлетворения компилятора Rust...
| |
|
2.23, Аноним (25), 11:11, 08/09/2023 [^] [^^] [^^^] [ответить]
| +4 +/– |
яваскрипт без тайпскрипта все равно, что сишка, в которой все указатели -- void*
| |
2.47, Аноним (47), 13:03, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> какие выкрутасы нужны для удовлетворения компилятора Rust...
Это не для удовлетворения компилятора, это для вразумления твоей порочной логики построения приложений. Не теми путями задачу решаешь с точки зрения безопасности, корявыми. Это легко понять, оглядываясь потом на свалку CVE и убытки от ошибок. Используй раст и со временем мозги вправятся, начнешь думать над решением задачи как дОлжно и не будешь замечать того компилятора. А может и не вправятся (мозги), тогда будешь растохейтить на опеннете.
| |
|
3.49, 1 (??), 13:11, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> и со временем мозги вправятся, начнешь думать над решением задачи как дОлжно и не будешь замечать того компилятора
Прям как про армию. А потом будешь удивляться
"- Раз они такие умные, почему строем не ходят ?"
| |
|
4.85, Аноним (47), 15:36, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Да, хорошие аналогии - они на вес золота. А чего не привел в пример в плане вправки мозгов, допустим, какую-нибудь музыкальную консерваторию, где всё строго и по науке (раст) супротив дворовой гитары с пацанами, где ори во всё горло что хошь и как хошь (си)? Конечно, во дворе с пацанами ЗНАЧИТЕЛЬНО лучше и веселее - напрягаться не надо и весело и можно матерные песенки Юры Хоя (Клинских) орать и в любой момент петуха пустить - все вместе поржёте.
Да, критические CVEшки многа-многа лучше - они такие мягонькие, тепленькие, ламповые. А главное - кормят долго и надежно. Плевать, что пользователи страдают.
| |
4.87, Аноним (47), 15:56, 08/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Прям как про армию
Нет, здесь прям как про арифметику.
ты написал 2+2=5. Нет, вправляет тебе мозги раст, 4 и никак иначе. Вот такая тут аналогия. И твои мухлёванные доказательства обратного и горбатые аналогии - от лукавого. Раст не от всего тебя ограничивает, а только от техник программирования, чреватых ошибками. Всё. Дальше твори, что хочешь. Это как в свое время был переход в создании программ от DOS к Windows/Linux. Что угодно и как угодно, как в ДОСе, с машиной уже не сделаешь, как-никак защищенный режим и куча ограничений, но творить, в определенных рамках ("в песочнице"), можешь что угодно. Если же ты постоянно вылезаешь за выделенную память или пытаешься напрямую работать с железом - ну, значит ты что-то делаешь неправильно.
| |
|
|
|
1.26, Аноним (26), 11:28, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +5 +/– |
>сервер вместо использования JSON напрямую отправляет клиенту HTML-код.
Хоть кто-то адекватный в JS-сообществе!
| |
|
2.45, Аноним (45), 13:00, 08/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Отправляет HTML, а внутри него script тег, а там jQuery. Как в старые добрые
| |
|
3.64, th3m3 (ok), 14:07, 08/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Нафига? На странице может вообще не быть js! Достали его пихать везде, где надо и не надо.
| |
|
4.76, Наме (?), 15:10, 08/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Только 99% фич типа активных форм и навигации без круглосуточной перезагрузки всей страницы немножк не работают, а так может не быть, конечно, особенно если это страница "сайт заблокирован во имся специальной чебуречной операции"
| |
|
3.77, Наме (?), 15:11, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
И всё это заинлайнено так, что без сумасшедших регулярок фиг разложишь чтобы просто взять полезный пэйлоад у (ч)удаков, которые не умеют в человеческий API
| |
|
4.114, jt3k (ok), 22:08, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Для чего вам в интерфейсной либе парсить хтмл для извлечения данных? Присылайте сразу данные и проблема решена.
| |
|
|
|
1.27, Аноним (27), 11:28, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Не знаю. Загрязняет гимнастикой с типами? Я наоборот как то привык к строгому объявлению типа void Func(int X), чем потом в теле этой функции наковыривать жуткие конструкции типа if typeof(X) = string then...
| |
|
2.133, Аноним (133), 02:05, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Я тоже поддерживаю. Классы в ES6 завезли, так что подождать немного и будет там все что сейчас есть в TypeScript.
| |
2.51, Аноним (51), 13:14, 08/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Колеблющаяся типизация. На самом деле, похоже, дятел владел английским, это "строго-типизированный" против "свободно-типизированный". Термина слабая типизация не существует как такового, ты его только что придумал.
| |
|
3.92, leap42 (ok), 17:26, 08/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Колеблющаяся типизация. На самом деле, похоже, дятел владел английским, это "строго-типизированный"
> против "свободно-типизированный". Термина слабая типизация не существует как такового,
> ты его только что придумал.
Вы прост 0 книг прочли на языке, на котором написано 100% материалов по CS.
https://en.wikipedia.org/wiki/Strong_and_weak_typing
| |
|
4.93, Аноним (51), 17:37, 08/09/2023 [^] [^^] [^^^] [ответить]
| –2 +/– |
О чём и речь. У этого слова есть 2 значения: хрупкий и немощный. Которое из них можно перевести как "слабый"? Вот это уж точно дебич какой-то придумал.
| |
|
|
|
3.155, leap42 (ok), 07:46, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Ну в python например утиная.
Утиность ортогональна силе. В python сильная динамическая.
| |
|
|
1.61, BeLord (ok), 14:01, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Так и не понял, в чем проблема строгой типизации, кроме лени разрабов, других причин пока не увидел.
| |
|
2.67, OpenEcho (?), 14:22, 08/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Так и не понял, в чем проблема строгой типизации, кроме лени разрабов, других причин пока не увидел.
Если бы строгая типизация была бы на уровне самого языка, то понятно, а вот делать вид что типизация и потом компилить в не типизированный язык, - это костыль, еще одна не принудитильная абстракция, которая в конечом результате попадает в браузеры как не типизированнйы код
Простыми словами - ананизм, подмена реального процесса фикцией
Я не против пользы типизации, но не проще ли тогда уже писать на настоящем языке, который от рождения типизирован и компилить в тот же WASM понимаемый браузерами, - и волки и овцы (типизация и скорость) целы и сыты вместо того чтоб овцам прикидываться волками
| |
|
3.70, Аноним (25), 14:37, 08/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> компилить в тот же WASM
Веб-приложения, активно взаимодействующие с DOM, будут тормозить в WASM-варианте. That's right, ты не ослышался: JavaScript работает существенно быстрее WASM, если требуется активно работать с DOM.
| |
|
4.84, Аноним (47), 15:26, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Как там сейчас не знаю, а пару лет назад читал, что да, васм, чтобы использовать DOM, пока еще дергает яваскрипт ибо своего механизма не имел. В таком случае конечно будет тормозить. Но там в планах было реализовать прямое обращение к DOM, без JS-прокси. Вот когда реализуют - тогда заживем. Но там много чего еще было в планах.
| |
4.135, OpenEcho (?), 03:21, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> ты не ослышался: JavaScript работает существенно быстрее WASM, если требуется
> активно работать с DOM.
А зачем в веб-морде а.к.а ЮаЙ, активно работать?
Люди(способность человеческой реакции) способны фиксировать что-то быстрее чем 25 кадров в секунду ?
| |
|
5.174, cheshirekot (ok), 20:19, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Там речь об оверхеде по полсекунды при обращении к DOM. Реально, даже кожаный мешок заметит
| |
|
6.199, OpenEcho (?), 15:32, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Там речь об оверхеде по полсекунды при обращении к DOM. Реально, даже
> кожаный мешок заметит
По сравнению с нынешними даже банковскими сайтами, где все моргает, дергается по несколько секунд пока появится что-то - так пол секунды это просто ракета...
ВАСМ, не замена ЖС, и их все же можно скрестить, получив максимальную выгоду от обоих, как пример:
https://age-wasm.ey.r.appspot.com/
| |
|
5.183, Аноним (183), 02:01, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Люди(способность человеческой реакции) способны фиксировать что-то быстрее чем 25 кадров в секунду ?
Фиксировать и реагировать способны до 120 кадров точно. Выше хз, не проверял.
| |
|
6.198, OpenEcho (?), 15:03, 10/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Фиксировать и реагировать способны до 120 кадров точно. Выше хз, не проверял.
Это вы про игрульки? так там вы видите больше строб-эффект...
Вообще это довольно конфюзная тема, не определившись, что все оперирют одинаковыми терминами и одинаково их понимают, то разговор об этом может уйти в очень далекие дебри.
Самый простой метод, - собрать мультивибратор с duty cycle 50% и подцепить к нему светодиод и начать накручивать частоту до тех пор пока переключения перестанут фиксироваться глазом-о-мозгом. Восприятие частоты обновления картинки глазом может быть очень высоким, но само видение, точнее восприятие мозгом - этом совсем другое. Именно поэтом в свое время даже запретили изпользовать эффект 25 кадра в рекламе, - т.к. на башку влиять можно "невидимо"
| |
|
|
|
3.90, Аноньимъ (ok), 16:57, 08/09/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
> Если бы строгая типизация была бы на уровне самого языка, то понятно, а вот делать вид что типизация и потом компилить в не типизированный язык, - это костыль
Примерно ВСЕ современные языки это делают, включая С, С++, Расты, Хаскели и все прочие.
Какая разница во что оно там копилирует? Типы это разновидность документации кода, при грамотной реализации дающая кучу возможностей для автоматического анализа валидности и выявления ошибок.
| |
3.125, fuggy (ok), 00:58, 09/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Решение удивительное. Первый раз наверно вижу, когда большой проект с развитием переходит с типизированного обратно на динамический язык. Ломать не строить, как говорится. Это оказывается просто убрать все типы из кода, когда уже система отлажена, но вот в обратную сторону проставить типы это много времени работ.
Я понимаю использовать динамический язык, для небольших стартапов, где не выстрелило - выкинуть не жалко. В больших проектах в статически типизированных языках, ошибки найти сразу на этапе компиляции, что экономит много времени на отладку, и что невозможно на динамически типизированных языках.
| |
|
4.137, OpenEcho (?), 04:07, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> В больших проектах в статически типизированных языках...
TypeScript - не язык, а прослойка между реальным языком и чуваком/чувихой, думающ(ий/ей) что они пишут на типизированном языке. Имитация. Анонизм.
Не, там есть позитив от типов, однозначно, но пока это не на уровне языка, а так, - в имитации, то сколько волка не корми, все равно как у ишака не вырастет. Вот когда ТайпСкрипт будет JIT-том в браузере/ноде, вот тогда его можно будет воспринимать как взрослого
| |
|
3.197, Вы забыли заполнить поле Name (?), 15:03, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Если бы строгая типизация была бы на уровне самого языка, то понятно, а вот делать вид что типизация и потом компилить в не типизированный язык, - это костыль, еще одна не принудитильная абстракция, которая в конечом результате попадает в браузеры как не типизированнйы код
Эмм. Ну большинство языков компилятся в асм, который в конечом результате попадает на процессор как не типизированный код.
| |
|
2.72, Tron is Whistling (?), 14:56, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Проблема в том, что смузи с сахарком вокруг типов оборачивается кучей тайпкастов и конверсий там, где их не надо. Это в лучшем случае. В худшем - необходимостью дублировать код под каждый тип, либо городить темплейты, но последнее не про жс.
| |
|
3.185, Аноним (-), 02:31, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
так где не надо - там и не надо) если мы говорим про юзеринпут/парсеры/апи - надо, это понятно, а то в лучшем случае данные не зайдут, в худшем, если тип в бд не установлен, к примеру, может немаленькая такая часть системы отвалиться, если не вся сразу, и ищи потом кто-куда
а если мы говорим про внутреннюю логику, которая уже за этим барьером выше - там уже и не нужно, если кодить правильно
так какой правильный ответ?))
| |
|
2.115, jt3k (ok), 22:16, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Предлагаю вам залезть в их репу и почитать что на этот счёт пишет сам автор. Нужно быть всегда честными с самим собой тайпскрипт увеличивает сложность. А где сложность там и баги, вне зависимости от того есть там тайпскрипт или нет)
| |
2.160, leap42 (ok), 10:13, 09/09/2023 [^] [^^] [^^^] [ответить] | +/– | Маловато опыта значит Представьте себе python код, который обрабатывает входной... большой текст свёрнут, показать | |
|
3.175, Аноним (175), 21:07, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ну так надо сразу делать нормально, а не вываливать данные как попало, расчитывая что на той стороне как-нибудь разберутся.
| |
|
4.202, Вы забыли заполнить поле Name (?), 17:21, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Ну так надо сразу делать нормально, а не вываливать данные как попало,
> расчитывая что на той стороне как-нибудь разберутся.
Дык это сложно: нужно поддерживать совместимость. А так никто не знает, что завтра будет в ответе.
| |
|
3.201, Вы забыли заполнить поле Name (?), 17:20, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Представьте себе python код, который обрабатывает входной json десятком if. Т.е. там очень сильно что угодно может быть: строка, массив, объект, массив объектов, объект, набитый объектами, в которых могут быть массивы.
У нормальных АПИ есть схема ответа и из схемы можно сгенерить типы. В том же питоне популярен pedantic из-за возможности проверки.
> конечно благодаря композиции и хитрому анмаршалингу я могу свести кучу частных случаев к общим, но постоянно думаю о том, что лучше бы писал это на node.js
Просто тебе нужен не JSON, а protobuf или другой формат.
| |
|
|
1.65, Tron is Whistling (?), 14:07, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –4 +/– |
Абсолютно поддерживаю. Язык изначально слабо типизирован, и все эти костыли для студентов первого курса - костылями и останутся.
В PHP отряды смузи вот тоже пытаются типизацию навесить, им сложно видите ли иначе, в зачатках разума логика не умещается. Всё это приводит только к раздуванию кода бессмыслицей и снижению производительности.
| |
|
2.71, Критик (?), 14:45, 08/09/2023 [^] [^^] [^^^] [ответить]
| –2 +/– |
Все там хорошо с типами! Более того, прошли времена, когда все эти новомодные фреймворки могли что-то ускорить или улучшить, даже тот же jQuery уже не нужен, ванильный чистый JavaScript можно удобно и комфортно все что тебе надо и при том работает без тормозов, в отличии от ваших тубо.
| |
|
3.116, jt3k (ok), 22:18, 08/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Технология турбо поправде крутая, и очень отзывчивая. Вы не правы.
| |
3.129, Аноним (-), 01:17, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
>Все там хорошо с типами!
да непонятно вообще что за проблема с типами такая))) если нужно что-то конкретное для бд или продакшена какого - объявляй и чек/конверт на инпут вешай классом, делов-то. а не где неважно - там неважно. у них там, по ходу, нигде ничего такого нет - вот и топят.
>Более того, прошли времена, когда все эти новомодные фреймворки могли что-то ускорить или улучшить, даже тот же jQuery уже не нужен, ванильный чистый JavaScript можно удобно и комфортно все что тебе надо и при том работает без тормозов, в отличии от ваших тубо.
ну когда осваиваешь язык и приёмы на уровне выше группы разрабов фреймворка - тогда да, но раньше - не всегда. а если ты гуру от бога - можно чей и вообще своей язык накатать, что все ахнут)))
| |
|
2.98, Аноним (98), 18:07, 08/09/2023 [^] [^^] [^^^] [ответить]
| –2 +/– |
PHP вообще следовало бы остановиться на 4 версии по синтаксису, и допиливать только то, что под капотом для ускорения и латания безопасности. Сейчас пыха уже сложнее чем java, а популярность падает с каждым годом.
| |
|
1.81, nonstop (?), 15:22, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Вот это нужно в рамку и на стену повесить:
> избавляет разработчиков от выкрутасов с типами,
> производимых для удовлетворения капризов компилятора | |
1.86, Golangdev (?), 15:40, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> В качестве причины прекращения использования TypeScript упоминается то, что этот язык мешает автору при разработке и делает трудными вещи, которые должны быть простыми. Недовольство касается не только наличия дополнительной стадии компиляции TypeScript, но и того, что данный язык загрязняет код "гимнастикой с типами".
> Компания 37signals, которая курирует разработку проекта, полностью перешла на использование чистого JavaScript в клиентском коде и внутренних библиотеках. Использование чистого JavaScript не только значительно улучшает читаемость кода, но и избавляет разработчиков от выкрутасов с типами, производимых для удовлетворения капризов компилятора TypeScript.
Люто поддерживаю. TypeScript нужен далеко не всегда. Лично наблюдал как в последние 5 лет использование TS становилось не то карго-культом, не то сектой.
| |
|
|
3.130, Аноним (-), 01:30, 09/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
так вроде же можно так же описать классы на жс и использовать их, в чём конкретно преимущество тс?
я вот свой проект вылизал, вроде бы, на пыхе, смотрю теперь в сторону динамического обновления, подтягиваний и тп, но чёт ничего убедительного не нахожу в использовании подобного - на жс же можно всё сделать, через те же сокеты, библиотеками всякими для начала и тп - зачем всякие *скрипты, аяксы, джейквери и тп тащить?
| |
|
|
1.105, Sergey (??), 19:44, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> При использовании Turbo логика работы приложения не размазывается по фронтэнду и бэкенду, а определяется только на сервере с использованием языка программирования, наиболее удобного для разработчика. Браузер же занимается только обработкой готового HTML.
Упс. Э... Не понял ... В браузере не нужно будет включать этот дурацкий JS ? Возврат к началу WEBa.
| |
1.112, BrainFucker (ok), 21:46, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Меня этот внезапный всплеск интереса к строгой типизации немного удивил. Вдруг его скакой-то стати стали тащить и в питон, и в php, и в JS, вынуждая разработчиков заниматься лишней рутиной. Всеми этими оптимизациями должен заниматься компилятор сам. В эпоху, когда вот-вот можно будет писать программы на естественном языке, эти шаги назад выглядят странно.
| |
|
2.120, Адмунь (?), 23:38, 08/09/2023 [^] [^^] [^^^] [ответить]
| –2 +/– |
В строгой типизации нет ничего плохого, особенно там где она опциональна. Это в перспективе даёт возможность конвертации в что-нибудь типа Си и запуска на стиральной машине. Например в PHP типизация сделана очень грамотно и ты сам без каких либо проблем можешь решать использовать её или нет. Чего к сожалению не скажешь про JS, тайпскрипт там это сейчас культ, хотя и законченному идиоту понятно - это приводит к бойлерплейт коду, раздуванию проекта, куче @ts-error-ignore, красным подчёркиваниям потому что тип ещё не добавили т.к. апи новое и прочее и прочее. Ts - рак на планете и надо от него избавляться. кто поумнее - уже давно понял это. Браузеры не про это, они про чистый Js.
| |
|
3.131, Аноним (-), 01:32, 09/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Например в PHP типизация сделана очень грамотно и ты сам без каких либо проблем можешь решать использовать её или нет.
+
| |
3.178, Tron is Whistling (?), 22:15, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Прежде чем делать попытку в строгую типизацию - надо механику обеспечить.
Оверлоуд, темплейты. Короче сделать из пыха плюсы, но зачем, они уже есть.
А иначе это унылый костыль для недоглядов. К тому же производительность сажающий в хлам.
| |
|
2.126, fuggy (ok), 01:08, 09/09/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Интересно, а как работают автоматические рефакторинги/исправление для динамического javascript? Мне интересно. Если они и есть, то инструменту всё равно нужно выводить типы. И гораздо проще искать проблемы в коде, когда мы точно знаем что функция принимает. А так функция может принимать и строку, и число, и массив, и объект с неизвестными полями, какую информацию может извлечь инструмент из этого? Никакую.
| |
|
3.157, Sergey (??), 09:48, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Вообще то остановить прогу и глянуть какой тип это просто.
И вообще строгая типизация это как раз для кода а не человнка, так код будет работать быстрее.
Он сразу выделит нужную память.
| |
|
4.190, Tron is Whistling (?), 10:34, 10/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Для компилируемых языков верно.
С JIT всё сложно.
А в интерпретаторах и псевдокоде - сводится к дополнительной проверке типа в вызовах. В итоге код работает совершенно не быстрее.
| |
|
|
2.208, microcoder (ok), 21:38, 11/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Вдруг его скакой-то стати стали тащить и в питон
В питоне нет и не тащат строгую типизацию. В Питоне АННОТАЦИИ, это совсем другое
| |
|
3.213, BrainFucker (ok), 10:11, 12/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Я в курсе, питону при исполнении кода они пoфиr, но суть та же, эта лишняя возня и зacиpaниe кода вдруг стало популярно и это стали тащить в проекты.
| |
|
|
1.118, Аноним (119), 22:51, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Моё почтение, у него стальные яйца. Тайпскрипт не даёт выигрыш в качестве кода. А вот штат разработчиков гарантированно увеличит
| |
|
2.143, Аноним (143), 05:23, 09/09/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Тайпскрипт не даёт выигрыш в качестве кода.
Именно. У хорошего _внимательного_ разраба, который не пялится одним глазом в ютубчик, редко бывают детские ошибки с [object Object]. А если бывают, то мгновенно отлавливаются при тестировании.
Но нет - из-за 95% кривоглазов изволь нагромождать кода в несколько раз больше. А кривоглазы тем временем косячат другими способами.
| |
|
3.163, Ko (?), 12:10, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Однажды обратил внимание как джуны делаю задачу. Берет функцию/компонент и методом научного тыка подбирает параметры. Благодаря js это сделать очень просто. Вот только на ревью это хорошо видно. Как котенку указав на ка..ашку через какое то время такая привычка пропадает. А вот на тайпскрипте будет красивая ка..ашка которую так просто не распознаешь.
| |
|
2.158, Sergey (??), 09:51, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Он дает выигрышь в зарплате.
За место одного правильного с большой зп и который может уйти заболеть. Можно нанять троих с зарплатой в 3 раза меньше и пугать их что одного скоро сократят и у нас очередь за забором.
| |
|
3.164, Ko (?), 12:21, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Одного не заменить на троих, такой вот парадокс. А вот где 3 на одну лампочку там и появляется бюрократия где можно без нее
| |
|
4.209, Аноним (209), 01:27, 12/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Читал давно историю, как девушке отказали в повышении ЗП, а после её ухода наняли троих на те же обязанности. Правда, это было не в айти, и должности её не знаю
| |
|
|
|
1.121, jt3k (ok), 23:47, 08/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Никогда не использовал турбо, но любое изменение с .ts на .js — это большое изменение, потому что теперь ни у кого нет возможности притворяться, что TypeScript — это что-то хорошее.
| |
1.153, Аноним (152), 07:32, 09/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Типы должны быть в самом JS. Сделали директиву use strict — можно сделать и use typed. Сразу производительность подскочит, целый пласт обработок из интерпретатора можно будет выбросить.
| |
|
2.165, Вася (??), 12:30, 09/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Есть JSDoc, удобная штука. А TS имеет смысл возможно только в очень крупных проектах с тоннами кода...
| |
|
1.172, Assador (ok), 18:56, 09/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Ох уже эти пляски с фреймворками… Фреймворк на фреймворке сидит и фреймворком погоняет… Я вчера несколько часов потратил на поиск ошибки в системе, которую пилим на Vue. Проблема, как оказалось, в том, что у вьюшного reactive с Array-евским filter не было глубокого человеческого взаимопонимания. Простите за нытьё )
| |
1.204, nc (ok), 09:01, 11/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Давно уже пора принять TS в качестве очередного стандарта ecmascript и внедрить в браузеры. Меньше будет оберток вокруг оберток, и если людям так уж хочется писать на скриптовых языках, так хоть пусть они будут типизированные.
Но наверное гугл с майкрософтом никак договориться не могут, у гугла же вроде свой язык какой-то был, dart?
| |
1.212, ikomb (ok), 08:01, 12/09/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Просто пора уже реализовать нативное выполнение TS как в браузерах, так и на сервере, а не компилить в JS, и забыть JS как страшный сон.
| |
|
2.217, Аноним (217), 19:02, 16/09/2023 [^] [^^] [^^^] [ответить]
| +/– |
Вокруг столько типизированных языков, зачем вы приперлись обсирать javascript?
| |
|
|