Size: a a a

React — русскоговорящее сообщество

2020 November 25

И

Иван in React — русскоговорящее сообщество
Dmitriy Shuleshov
И в ПРах 😑?
Да, я переключаюсь на ветку, открываю дифф с мастером и читаю выделенные куски. Не сверху вниз, а изнутри наружу. Или снаружи внутрь
источник

АМ

Артур Мудрик... in React — русскоговорящее сообщество
Иван
Если она объявлена как const, то она ТОЧНО нигде ниже НЕ МЕНЯЕТСЯ. Зачем давать читающему думать «меняется или нет», если можно синтаксически на это указать? Чтобы что? Чтобы намекнуть «ну попробуй измени, она же let, ничего же не сломается»? А если сломается?
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
источник

NN

No Name in React — русскоговорящее сообщество
Артур Мудрик
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
Что серьезно?)
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Иван
Да, я переключаюсь на ветку, открываю дифф с мастером и читаю выделенные куски. Не сверху вниз, а изнутри наружу. Или снаружи внутрь
Скользкий дед🌚
источник

А

Антон in React — русскоговорящее сообщество
Артур Мудрик
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
Ясно, пишем код, не думаем, кто будет встречать этот код должны поступать так же, ок
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Николай Фадеев
да, и не понял
Ну это как композиция функций - применение одной функции к результату другой. То же самое происходит и с компонентами. Есть компонент Sidebar, есть компонент Menu. Как сделать компонент, который Menu в Sidebar-е? Сделать третий компонент? Унаследоваться от Sidebar и пихнуть в него меню? Унаследоваться от меню?
Так вот композиция компонентов - принцип проектирования таких компонентов, которые можно "применить" к другим. Например, делаем компонент Sidebar таким, чтобы он сам отвечал только за логику, связанную с отображением боковой панели, а что будет в этой боковой панели - он не знает, ему туда можно передать хоть наш компонент Menu, хоть еще что-то.
И в итоге получается, что вместо наследования или создания кучи непереиспользуемых компонентов для каждого сайдбара, мы делаем так:
<Sidebar><Menu /></Sidebar>
И вместо Menu можно засунуть что угодно. Получается, что мы "применяем" логику Sidebar-а к какому-то еще компоненту, это и есть пример композиции.
Я думаю, что после такого объяснения вообще ничего не понятно, так что лучше посмотрите видео😁
источник

А

Александр in React — русскоговорящее сообщество
Артур Мудрик
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
Ну дык скинь ссылку, где ты это прочитал и закончи спор, в чем проблема?
источник

GS

Garden State in React — русскоговорящее сообщество
Привет, подскажите, пожалуйста, у меня есть запрос в саге, иногда он может возвращать ответ вида status: processing, и мне нужно опрашивать бекенд каждые 5 секунду, как зациклить запрос?
источник

НФ

Николай Фадеев... in React — русскоговорящее сообщество
Vladimir Klimov
Ну это как композиция функций - применение одной функции к результату другой. То же самое происходит и с компонентами. Есть компонент Sidebar, есть компонент Menu. Как сделать компонент, который Menu в Sidebar-е? Сделать третий компонент? Унаследоваться от Sidebar и пихнуть в него меню? Унаследоваться от меню?
Так вот композиция компонентов - принцип проектирования таких компонентов, которые можно "применить" к другим. Например, делаем компонент Sidebar таким, чтобы он сам отвечал только за логику, связанную с отображением боковой панели, а что будет в этой боковой панели - он не знает, ему туда можно передать хоть наш компонент Menu, хоть еще что-то.
И в итоге получается, что вместо наследования или создания кучи непереиспользуемых компонентов для каждого сайдбара, мы делаем так:
<Sidebar><Menu /></Sidebar>
И вместо Menu можно засунуть что угодно. Получается, что мы "применяем" логику Sidebar-а к какому-то еще компоненту, это и есть пример композиции.
Я думаю, что после такого объяснения вообще ничего не понятно, так что лучше посмотрите видео😁
благодарю. Я такое делал. Таки это не даёт, то что мне надо.... Изначально подумал, что это панацея какая-то
источник

АМ

Артур Мудрик... in React — русскоговорящее сообщество
Иван
Если она объявлена как const, то она ТОЧНО нигде ниже НЕ МЕНЯЕТСЯ. Зачем давать читающему думать «меняется или нет», если можно синтаксически на это указать? Чтобы что? Чтобы намекнуть «ну попробуй измени, она же let, ничего же не сломается»? А если сломается?
я видел код, где кто-то тоже придумал себе правило из воздуха. Там любые переменные назывались с префиксом — s для строк, n для чисел, b для булевых и так далее, например, $sSomeVariable = 'This is a string', $nCount = 0 и так далее — чувствуешь уровень бреда? Тобишь, человек начал выдумывать правила, что, мол, "чтобы дать людям понять, что за тип у переменной, я буду называть их с соответствующими префиксами"... Вот такой же полный бред в размышлениях типа "я хочу дать понять, что вот эту переменную я не планирую дальше изменять, поэтому объявлю её через const". Аналогично.
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Николай Фадеев
благодарю. Я такое делал. Таки это не даёт, то что мне надо.... Изначально подумал, что это панацея какая-то
Нет в программировании панацей)
источник

GS

Garden State in React — русскоговорящее сообщество
@gorbunov_i дед, ты вроде всегда отвечаешь на мои вопросы, хелпани пожалуйста
источник

DM

Daniel Mednikov in React — русскоговорящее сообщество
Артур Мудрик
я видел код, где кто-то тоже придумал себе правило из воздуха. Там любые переменные назывались с префиксом — s для строк, n для чисел, b для булевых и так далее, например, $sSomeVariable = 'This is a string', $nCount = 0 и так далее — чувствуешь уровень бреда? Тобишь, человек начал выдумывать правила, что, мол, "чтобы дать людям понять, что за тип у переменной, я буду называть их с соответствующими префиксами"... Вот такой же полный бред в размышлениях типа "я хочу дать понять, что вот эту переменную я не планирую дальше изменять, поэтому объявлю её через const". Аналогично.
XD
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
Артур Мудрик
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
https://tc39.es/ecma262/#sec-let-and-const-declarations и почему в спеке ничего об этом нет?
источник

И

Иван in React — русскоговорящее сообщество
Артур Мудрик
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
В смысле не нужно думать? Почему не нужно думать? Нужно всегда предполагать, что код развалится на байты? Или что?


Есть блок размером строк в 100. В начале написано let magic = 42. Оно всегда будет 42? На 79й строчке чему оно будет равно? А на 57й? Чтобы выяснить это, нужно прочитать 100 строк кода. Или грепнуть. Или объявить её как const — тогда она всегда будет 42
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
Артур Мудрик
я видел код, где кто-то тоже придумал себе правило из воздуха. Там любые переменные назывались с префиксом — s для строк, n для чисел, b для булевых и так далее, например, $sSomeVariable = 'This is a string', $nCount = 0 и так далее — чувствуешь уровень бреда? Тобишь, человек начал выдумывать правила, что, мол, "чтобы дать людям понять, что за тип у переменной, я буду называть их с соответствующими префиксами"... Вот такой же полный бред в размышлениях типа "я хочу дать понять, что вот эту переменную я не планирую дальше изменять, поэтому объявлю её через const". Аналогично.
ну да, семантика, пошла она на хуй и правда
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Артур Мудрик
я выше уже писал — не нужно вообще думать о том, чтобы дать понять, планируется дальше переменную менять или нет. Понимаешь, const совершенно не для этого придумали.
Это вот неправда. Мы должны, когда пишем код, писать его так, чтобы все изменения данных были явными и понятными. Именно потому миксины всякие, глобальные переменные и т.п. - зло
источник

АМ

Артур Мудрик... in React — русскоговорящее сообщество
Артур Мудрик
я видел код, где кто-то тоже придумал себе правило из воздуха. Там любые переменные назывались с префиксом — s для строк, n для чисел, b для булевых и так далее, например, $sSomeVariable = 'This is a string', $nCount = 0 и так далее — чувствуешь уровень бреда? Тобишь, человек начал выдумывать правила, что, мол, "чтобы дать людям понять, что за тип у переменной, я буду называть их с соответствующими префиксами"... Вот такой же полный бред в размышлениях типа "я хочу дать понять, что вот эту переменную я не планирую дальше изменять, поэтому объявлю её через const". Аналогично.
давайте тогда будем дальше развивать эту тему, м? "Я хочу дать понять, что вот эта переменная у меня будет часто изменяться в цикле в нулевом seTimeout'е, поэтому я назову её так-то так-то, чтобы дать понять свою задумку"... Серьёзно?
источник

А

Антон in React — русскоговорящее сообщество
Артур Мудрик
я видел код, где кто-то тоже придумал себе правило из воздуха. Там любые переменные назывались с префиксом — s для строк, n для чисел, b для булевых и так далее, например, $sSomeVariable = 'This is a string', $nCount = 0 и так далее — чувствуешь уровень бреда? Тобишь, человек начал выдумывать правила, что, мол, "чтобы дать людям понять, что за тип у переменной, я буду называть их с соответствующими префиксами"... Вот такой же полный бред в размышлениях типа "я хочу дать понять, что вот эту переменную я не планирую дальше изменять, поэтому объявлю её через const". Аналогично.
Это когда было? Когда код в блокноте писался, сейчас так никто не делает (вменяемый человек во всяком случае), так как иде и редакторы прекрасно типы выводят
источник

DM

Daniel Mednikov in React — русскоговорящее сообщество
Артур Мудрик
я видел код, где кто-то тоже придумал себе правило из воздуха. Там любые переменные назывались с префиксом — s для строк, n для чисел, b для булевых и так далее, например, $sSomeVariable = 'This is a string', $nCount = 0 и так далее — чувствуешь уровень бреда? Тобишь, человек начал выдумывать правила, что, мол, "чтобы дать людям понять, что за тип у переменной, я буду называть их с соответствующими префиксами"... Вот такой же полный бред в размышлениях типа "я хочу дать понять, что вот эту переменную я не планирую дальше изменять, поэтому объявлю её через const". Аналогично.
Более правильным сравнением будет тогда уже: нахер уберём тайпскрипт, ибо типы указывать не надо
источник