@typescript_ru

Страница 633 из 669
DimenSi
03.06.2018
11:37:40
ребята, как в ts описать что должна возвращать arrow function?

а то ts не понимает, что я отфильтровал

Morsik
03.06.2018
11:39:28
1. Программы на Go отлично масштабируются на все ядра процессора, в отличие от однопоточного nodejs. При этом не нужно извращаться с shared memory при взаимодействии между процессами nodejs, ведь в Go достаточно одного процесса, чтобы загрузить работой все ядра CPU. 2. Веб-сервер на Go отлично справляется с миллионом одновременных клиентских подключений, где каждое подключение обрабатывается отдельным потоком. Т.е. под Go не нужно извращаться с асинхронностью, калбэками, промисами, async / await и т.п. костылями при обращении к файлам и внешним сервисам типа базы данных, key-value storage/cache или самописным микросервисам — достаточно обычного простого и понятного синхронного кода. 3. Программы на Go работают быстрее программ на nodejs. См. techempower benchmarks. 4. Программы на Go содержат меньше багов, т.к. простой синхронный код легче дебажить, поддерживать и расширять, чем закрученный асинхронный. 5. Код на гоу написан в едином стиле благодаря go fmt, поэтому его легко читать и править. Благодаря этому в среде go-разработчиков отсутствуют споры о правильной расстановке скобок, табов и пробелов. 6. Программа на гоу компилируется в один исполняемый файл, который не нуждается ни в каких дополнительных зависимостях, в т.ч. не нужна и установка Go на серверы, где будет работать программа. Поэтому деплой и обновление программ на Go представляет из себя заливку новой версии бинарника и его перезапуск. Не нужно никаких докеров и никакой специальной подготовки окружения. При выходе новой версии гоу достаточно просто перекомпилировать программы новой версией компилятора и перезалить их в прод. Сравните это с апгрейдом nodejs. 7. .... 8. PROFIT!!!
>6. Программа на гоу компилируется в один исполняемый файл, который не нуждается ни в каких дополнительных зависимостях, в т.ч. не нужна и установка Go на серверы, где будет работать программа. Поэтому деплой и обновление программ на Go представляет из себя заливку новой версии бинарника и его перезапуск. Не нужно никаких докеров и никакой специальной подготовки окружения. При выходе новой версии гоу достаточно просто перекомпилировать программы новой версией компилятора и перезалить их в прод. Сравните это с апгрейдом nodejs. щас бы работать без скриптов которые сами поднимают окружение

Google
andretshurotshka?❄️кде
03.06.2018
11:39:48
1. Программы на Go отлично масштабируются на все ядра процессора, в отличие от однопоточного nodejs. При этом не нужно извращаться с shared memory при взаимодействии между процессами nodejs, ведь в Go достаточно одного процесса, чтобы загрузить работой все ядра CPU. 2. Веб-сервер на Go отлично справляется с миллионом одновременных клиентских подключений, где каждое подключение обрабатывается отдельным потоком. Т.е. под Go не нужно извращаться с асинхронностью, калбэками, промисами, async / await и т.п. костылями при обращении к файлам и внешним сервисам типа базы данных, key-value storage/cache или самописным микросервисам — достаточно обычного простого и понятного синхронного кода. 3. Программы на Go работают быстрее программ на nodejs. См. techempower benchmarks. 4. Программы на Go содержат меньше багов, т.к. простой синхронный код легче дебажить, поддерживать и расширять, чем закрученный асинхронный. 5. Код на гоу написан в едином стиле благодаря go fmt, поэтому его легко читать и править. Благодаря этому в среде go-разработчиков отсутствуют споры о правильной расстановке скобок, табов и пробелов. 6. Программа на гоу компилируется в один исполняемый файл, который не нуждается ни в каких дополнительных зависимостях, в т.ч. не нужна и установка Go на серверы, где будет работать программа. Поэтому деплой и обновление программ на Go представляет из себя заливку новой версии бинарника и его перезапуск. Не нужно никаких докеров и никакой специальной подготовки окружения. При выходе новой версии гоу достаточно просто перекомпилировать программы новой версией компилятора и перезалить их в прод. Сравните это с апгрейдом nodejs. 7. .... 8. PROFIT!!!
ясно

Сергей
03.06.2018
11:39:52
1. Программы на Go отлично масштабируются на все ядра процессора, в отличие от однопоточного nodejs. При этом не нужно извращаться с shared memory при взаимодействии между процессами nodejs, ведь в Go достаточно одного процесса, чтобы загрузить работой все ядра CPU. 2. Веб-сервер на Go отлично справляется с миллионом одновременных клиентских подключений, где каждое подключение обрабатывается отдельным потоком. Т.е. под Go не нужно извращаться с асинхронностью, калбэками, промисами, async / await и т.п. костылями при обращении к файлам и внешним сервисам типа базы данных, key-value storage/cache или самописным микросервисам — достаточно обычного простого и понятного синхронного кода. 3. Программы на Go работают быстрее программ на nodejs. См. techempower benchmarks. 4. Программы на Go содержат меньше багов, т.к. простой синхронный код легче дебажить, поддерживать и расширять, чем закрученный асинхронный. 5. Код на гоу написан в едином стиле благодаря go fmt, поэтому его легко читать и править. Благодаря этому в среде go-разработчиков отсутствуют споры о правильной расстановке скобок, табов и пробелов. 6. Программа на гоу компилируется в один исполняемый файл, который не нуждается ни в каких дополнительных зависимостях, в т.ч. не нужна и установка Go на серверы, где будет работать программа. Поэтому деплой и обновление программ на Go представляет из себя заливку новой версии бинарника и его перезапуск. Не нужно никаких докеров и никакой специальной подготовки окружения. При выходе новой версии гоу достаточно просто перекомпилировать программы новой версией компилятора и перезалить их в прод. Сравните это с апгрейдом nodejs. 7. .... 8. PROFIT!!!
1. ведь в Go достаточно одного процесса, чтобы загрузить работой все ядра CPU. я бы не стал это в плюс записывать. достаточно вспомнить тормозящий докер 2. добавь немного сложной логики в вебсервер и твой миллион резко уменьшится 3. на го также можно написать дерьмовый медленный код и память жрущий вникуда 4. в го есть многопоточность, которая изкаропки сложнее. программы не содержат меньше багов просто из-за языка, ну если ты не знаешь хаскель, окамл или раст 5. fmt есть и в других языках, например тот же преттиер в жс или rustfmt, или refmt 6. го тащит с собой рантайм. компилировать в бинарник умеет не только го, а также окамл и раст. раст при этом не тащит с собой рантайм. 7. так и чем го лучше других языков?

Morsik
03.06.2018
11:39:57
я бы мог продолжить копипастить ответ оттуда же откуда и эта паста, но не буду

DimenSi
03.06.2018
11:39:58
хм, значитя я не правильно понимаю как обьяснить, что мне пришло в дальше

Сергей
03.06.2018
11:40:16
если я сейчас начну перечислять список минусов го

то меня забанят за флуд

Morsik
03.06.2018
11:40:34
создай канал как про пхп

dexofan
03.06.2018
11:40:46
Сергей
03.06.2018
11:41:05
- синтаксис - пакеты - модульная система - наличие пакетов - управление пробрасыванием ошибок - система типов ……

Morsik
03.06.2018
11:41:10
@why_php_is_bad

Aleh
03.06.2018
11:41:37
dexofan
03.06.2018
11:41:38
@why_php_is_bad
пасиб

DimenSi
03.06.2018
11:41:52


Google
Yumi
03.06.2018
11:42:24
- синтаксис - пакеты - модульная система - наличие пакетов - управление пробрасыванием ошибок - система типов ……
Синтаксис и система типов нормальные же. Обработка ошибок и в ноде есть, просто по рукам тебя не бьют.

Morsik
03.06.2018
11:42:26
а что в parse? (сигнатура какая)

Сергей
03.06.2018
11:43:03
Синтаксис и система типов нормальные же. Обработка ошибок и в ноде есть, просто по рукам тебя не бьют.
синтаксис говнина: методы на структурке через звездочки система типов ещё хуже: номинальной типизации нет, дженериков нет система ошибок через иф?

DimenSi
03.06.2018
11:43:28
а что в parse? (сигнатура какая)
ну типо принимает string, возвращает массив Tokens[], а Tokens это string | Key

Morsik
03.06.2018
11:44:07
для фильтра поставь сигнатуру ...): token is Key => ...

Сергей
03.06.2018
11:44:11
Чем тебе система типов не нравится?
то, что я не могу описать некую функцию которая может принимать конкретный тип, только всё что подойдет

это пиздос

DimenSi
03.06.2018
11:44:48
ну точней ему нужно возвращать boolean

Aleh
03.06.2018
11:45:00
Чем тебе система типов не нравится?
Параметрические типы уже есть?

Morsik
03.06.2018
11:45:16
ну точней ему нужно возвращать boolean
не совсем, почитай тайпинги точнее можно и булеан

DimenSi
03.06.2018
11:46:32
не совсем, почитай тайпинги точнее можно и булеан
тайпинги кого? Просто когда я написал (token): Key, то выдало ошибку, что должен возвращать только Boolean, а когда это написал, то прошло

Сергей
03.06.2018
11:47:14
Бля, я знал, что это не он написал
обычно фанатики го/тс/любого языка не могут сами что-то писать

Aleh
03.06.2018
11:48:13
обычно фанатики го/тс/любого языка не могут сами что-то писать
А откуда тогда все эти либы и вообще весь софт ?

Pawel
03.06.2018
11:48:44
да пжлста, вот ссылка. https://dou.ua/forums/topic/18802/#1001883 Зачем что то придумывать, всё уже давно написано

Сергей
03.06.2018
11:48:47
Aleh
03.06.2018
11:49:14
пишут не фанатики
А, упор на слово фанатики, понел

Google
Сергей
03.06.2018
11:51:52
спасибо)

Max
03.06.2018
15:30:40
Будет в TypeScript 3.0

Дмитрий
03.06.2018
15:32:33
Шт

DimenSi
03.06.2018
15:51:43
у меня вопросы насчет подхода. У меня есть функция внутри которой используется обьект(интефейс) Config, в нем все поля обязательные, но для юзера хочу сделать поля не обязательными, поэтому сделал функцию которая возвращает config с базовыми настройками и сделал обьект для юзера UserConfig в котором все поля не обязательные. И такая же ситуация с Context обьектом, в котором до определенного действия нету свойства Response, а потом есть. Поэтому я сделал тоже 2 интерфейса. Есть способ по проще или я вообще подхожу не правильно?

DimenSi
03.06.2018
15:58:34
Partial ?
я в ts меньше суток, не смогу догадатсья о чем ты

или ты про value?: string

Aleh
03.06.2018
16:03:34
Partial<Config>

DimenSi
03.06.2018
16:04:33
Partial<Config>
где это описано? Поиска в доке нет

Kirill
03.06.2018
16:15:26
где это описано? Поиска в доке нет
https://www.typescriptlang.org/docs/handbook/advanced-types.html#mapped-types

Mykola
03.06.2018
17:54:45
Привет, всем! Парни, кто-нибудь, работал с транзакциями в TypeORM? Непонятно что делать с уровнем изолированности транзакции. Выходит так, что когда транзакции выполняются параллельно, и делают одну и туже задачу. То другая транзакция получает не актуальные данные. И с этого может вылезти много не приятных багов.

Aleh
03.06.2018
20:02:56
https://github.com/cevek/ttypescript

Александр
03.06.2018
21:57:31
Доброго времени суток, возможно ли в тайпскрипте указать сигнатуру функции в которой один и тот же параметр может иметь разные имена?

типа: func([x|width]: number) :void { ... }

andretshurotshka?❄️кде
03.06.2018
21:58:50
а смысл

Александр
03.06.2018
22:01:08
а смысл
да всяко может быть, это возможно?

Andrey
03.06.2018
22:02:48
Нет.

Александр
03.06.2018
22:03:47
Печаль

Google
Сергей
03.06.2018
23:15:25
Александр
04.06.2018
04:06:29
@sergeysova вообще, что думаешь о "универсальных" классах/компонентах?

Александр
04.06.2018
06:05:13
Это когда класс делает много разного

Andrey
04.06.2018
06:05:32
Тогда нафиг. Идиотизм.

Dames
04.06.2018
06:06:27
Andrey
04.06.2018
06:09:15
Kendr
04.06.2018
06:09:45
нарушает SOLID же
Солид ужас

Александр
04.06.2018
06:51:39
Солид ужас
А что лучше?

Kendr
04.06.2018
06:54:20
А что лучше?
На равняться на петтерны

Александр
04.06.2018
06:54:55
На равняться на петтерны
Ну это не, они ж не просто так придуманы. Просто нужно знать какой паттерн какую проблему решает и использовать тот что нужен

Александр
04.06.2018
06:55:30
★nton
04.06.2018
07:40:30
Полезная ссылка

https://github.com/sw-yx/react-typescript-cheatsheet

Andrey
04.06.2018
07:42:17
солид не панацея, скорее если вы его не понимаете не используйте, он больше подходит для момента рефакторинга по принципам солид почитайте про GRASP

Дмитрий
04.06.2018
08:09:45
Солидол

Сергей
04.06.2018
08:14:43
Artur
04.06.2018
08:25:58
На равняться на петтерны
Пиши как пишется, хуяк хуяк в прод

Google
Artur
04.06.2018
08:26:08
Все равно не тебе поддерживать

Alexander
04.06.2018
08:26:25
Олег
04.06.2018
08:33:08
Пиши как пишется, хуяк хуяк в прод
решаю бизнесс задачи как хочу, законом не запрещено

Aleh
04.06.2018
08:33:35
Пиши как пишется, хуяк хуяк в прод
Будто солид это не хуяк хуяк

Алексей
04.06.2018
09:20:04
Блин, как я мог пропустить приход бомбящего гошника в TS чат.

Старею однако.

Александр
04.06.2018
09:20:44
А что все так за GO заговорили? Чем он подкупает?

Страница 633 из 669