Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Учусь на последнем курсе на не айтишной спецухе, в погромировании нихуя не понимаю и вообще тот ещё долбоёб, сильно не ругайте. Задали написать на джаваскрипте калькулятор, считающий по формуле.
Вроде что-то высрал, но результат не считается. Чяднт?
4) Зачем ты возвращаешь объект { left, right, target } в случае находа? Это лишний бесполезный мусор. От функции поиска ждут что она вернет индекс найденного элемента.
>>2176762 * на жс. Писать бинпоиск и вообще числомололки на джаваскрипте значит делать или личный проект, или хуйню. Вангую что собес ещё был в ООО "Рога и копыта"
>>2176869 Да можно, токма ЗОЧЕМ? ЖС - язык высокого уровня с кучей библиотек, а пишущий числомололку в 99% случаев на самом деле изобретает уже существующий велосипед, не имея к тому же для этого квалификации.
>>2176877 Это двачую кстати. Для неудачных случаев там конечно и побольше бывает, но в целом жс - очень быстрый язык с хорошим JIT-компилятором. Получше той же джавы например, лол.
>>2176913 Это вопрос твоего умения оценивать кандидата. Сложного там ничего. Но одно твоё "за пару часов" уже говорит о многом. Либо о том что у тебя под рукой есть типовой проект который ты скопипастишь. Либо о том что ты не умеешь оценивать задачи и не чуешь что лежит под поверхностью простого казалось бы вопроса.
Я например, не имея типового решения, только 3 часа делал архитектуру и моки. Что моков нет ты, например, заметил? Или делал бы без моков?
Короче тут суть не в забубенности задания, а в том что можно оценить подходы соискателя...
Работаю на основной работе 2/2, с впритык хватает на ипотеку и с тян раз в неделю сходить в мак. Ищу подработку, попробовал копирайтинг, удается заработать максимум 100р/час, мало. Решил перекатиться в айтишечку, посмотрел уроки по HTML, сейчас смотрю JS. Есть какая-нибудь биржа, по аналогии с копирайтингом, где можно пописать код сначала можно даже бесплатно, потом за 100р в час, а потом подороже? В какую сторону смотреть?
Какой сейчас положняк по ангуляр реактивным формам? Хочу все, связанное с формами в хтмл темплейте пиздолить. Имея там 1 модель. Зачем мне это вот еще в тайпскрипте описывать?
>>2176932 И вот где-то тут ты со своим покровительственным тоном идёшь нахуй, потому что рот ебал я с такими ЧСВшниками работать. Пара часов в данном случае - это фигура речи, означающая "ну не очень долго". Но ты главное продолжай оценивать подходы, вызвать у соискателя желание съездить тебе по ебалу за высокомерие - это всегда хорошая мысль. Двач, сука. Двач невер ченджс.
>>2176963 Ангуляро-боярин в треде. Положняк такой, что бОльшая часть смузихлебов сидит на реактивных формах.
Поясняю по рабоче-корестьянске.
Темплей драйвен - работают с данными напрямую. Реактивные - делают под капотом данные иммутабельными. Ит эст объебаться сложнее.
Темплейт драйвен - проще если ты смотришь на мир от вида морды. Типа вот элемент вот его связанное значение. Реактивные проще если ты в голове продумал вложенность элементов как модель. >Зачем мне это вот еще в тайпскрипте описывать? CСложные процедуры валидации изкаропки. В нормально написанных библиотеках ЮАЙ ненадо делать код который отрисовывает эрроры
Темплейты ты валидируешь навешивая на них директивы, и можно реально заураться в собственных ногах. В реактивгной форме ты передаешь массив функций валидаторов, которые могут быть асинхронные и возвращать ре-т проверки например с бэка.
Ну и как вишенка на торт this.yobaForm.value this.yobaForm.rawValue() this.yobaForm.invalid
>>2176985 >. Но ты главное продолжай оценивать подходы, вызвать у соискателя желание съездить тебе по ебалу за высокомерие - это всегда хорошая мысль.
Заметь, и это тоже вполне себе проверка чела на адекватность. Вот к примеру я тебе хотел от души раскрыть секреты мастерства, а ты сагрился как школота с двоча (oh wait~)
В общем, мы вам перезвоним.
А вкатунов ласково просимо писать как они видят эту задачку. Разложим за всю хурму.
>>2177000 Да это же блядь первая функция подобных заданий.
Отсеять тех кто "Ой ну нафиг мозгоебство" и найти тех кто "Я явно не успею, но похер. Сделаю что смогу"
Лично я, когда такое вижу, прикидываю сколько времени я готов потратить на тех кто мне дает такое. Прошлый раз, к примеру, положил себе 2 дня. А бывало что и 4 часа, а бывало и неделю. Зависит что за контора и насколько мне самому было важно разобраться.
Так вот, оценить свои возможности и сделать исходя из них минимально рабочий результат это очень важный скилл.
>Темплей драйвен - работают с данными напрямую. >Реактивные - делают под капотом данные иммутабельными. Ит эст объебаться сложнее. Нипонел. А какая нам от этого разница? Почему обьебаться сложнее?
>Реактивные проще если ты в голове продумал вложенность элементов как модель. Нипонел(2). И там, и там модель во главе угла, не?
>CСложные процедуры валидации изкаропки. В нормально написанных библиотеках ЮАЙ ненадо делать код который отрисовывает эрроры > >Темплейты ты валидируешь навешивая на них директивы, и можно реально заураться в собственных ногах. В реактивгной форме ты передаешь массив функций валидаторов, которые могут быть асинхронные и возвращать ре-т проверки например с бэка.
Так и в директивах все тоже самое можно сделать, не?
В общем, я вижу, что да темплейт дривен немного урезан по коробочному ф-ционалу и сейчас все ебают реактивные. Но какой-то копипаст получается.
>>2177008 К чему ты мне это расписал вообще, я что у тебя на работу попросился или что? А про > "Я явно не успею, но похер. Сделаю что смогу" Если ты так в жизни в целом думаешь то земля пухом.
>>2176997 > ласково просимо писать как они видят эту задачку. Да нихуя она не простая, да. Я вот недавно делал тествое на фулстака и охуел сколько времени уходит чтобы просто действительно архитектуру заложить, даже типовую и стандартную для себя. Дня два потритил. Конечно, начинаешь думать, "да сделаю как всегда, но может тут можно лучше" и на такой мелочи можно застрять на пол дня. Я так застрял на создании юнитофворк на пол дня, хотя, в принципе, боевое решение было у меня под рукой кста, все решения, которые я видел в инете - полное говно. на джаве только было норм, но мне стало лень его адаптировать
Ну и по задаче, такую задачу надо давать бекендеру. Ибо там больше сложности в том как построить работу с данными, изменения, историю, отмены, вот это все. Туда что-то типа евент сорсинга должно подойти кста. Разве это задача фронтов? А если на фронте уже кушать модельки - то хуита.
Корректно ли на фронте обрабатывать жысон перед оправкой на бэк? Есть форма, где куча чекбоксов и дататаймов, при отправке формы у активных чекбоксов значение 'on', неактивные не отправляются, а у дат обычная строка, когда нужен ISO формат. На бэке бд mssql, при получении идёт валидация жсона, т.е. чекбоксовые поля должны иметь значения 1/0 или true/false, а датавремя должно быть кастуемое в datetime тип. Соответственно, сейчас всё это делаю перед отправкой, чтоб валидация проходила. Или надо на бэке переписывать валидацию и там это делать?
>>2177015 >Охуеть мастерство - КРУД нахуярить. Спасибо за удиленное нашей компании время, мы вам дадим ответ до конца недели. В любом случае, надеемся что наше собеседование было вам полезным
>>2177020 >Нипонел. А какая нам от этого разница? Почему обьебаться сложнее? Ну вон на примере типовго круда сверху. Твоя задача отсылать форму на бэк _только_ если данные содержательно менялись. Т.е. было вася стало миша. Как ты это сделал бы иммутабельно и мутабельно? >Нипонел(2). И там, и там модель во главе угла, не? Ну как правило в реактивном стиле ты пишешь форму как она иерархически повторяет модель. В шаблнном мире ты можешь в качестве модели сунуть десяток моделей, потом будешь сводить их в одно отдельным метдодом. >Так и в директивах все тоже самое можно сделать, не? И тебе надо 28 раз написать ng g directive уложить их по папочкам а потом еще в шаблоне ебливо писатть <app-yoba adppDecimal, appNonZero, appNebo, appAlLat> при этом, лично я не уверен гарантирован ли порядок исполнения директив в ангуляре, и не будет ли каких нито безумных спецэффектов связанных с наличием других деректив. {initialState,[ validator.Requared, validator.IsYoba]} в коде тс вроде как легче отследить и отдебажить.
>Но какой-то копипаст получается. Да, супе ебано выходит но ты модешь сделать constructor(private _fb:FormBuilder) ну и далее побырикуу _fb.Conttrol _fb.Group и так далее
Для меня самое удобное в этой залупе именно отрисовка эрроров внутри формы если форма невалидна ( что amgular material делает сам например) и киллерфича .value и .rawValue()
Не, я понимаю твою боль. И сам долго впитывал эти реативные формы. Особенно там есть совершенно ебаный механизм массивов который инициируется через анал. Но это надо несколько раз попотеть подумать, а потом уже как по маслу пойдет.
Эта хурма дает большое могущество когда у тебя сложная форма с изменением видимости в завичсимости от потока данных .
Кстати вот еще кейс, очень удобно делать в КОДЕ this.yobaGroup.controls.yobaInput.disabled = true гораздо пизже чем делать ебилион полей для темплеййта в стиле isYobaInputDisabled
А когда делаешь очередной логин скрин с имейлом пасвордом или "введите фио" то конечно реактивные формы не очень нужны
Боже как же у меня горит с хуеты этой ангулярской. Дал вам бог функции и их композицию - нет, надо городить классы, декораторы, ДИРЕКТИВЫ, ПАЙПЫ В ВИДЕ КЛАССОВ, МАГИЧЕСКИЕ ОБСЕРВАБЛЫ, МАГИЧЕСКИЕ ДЕТЕКШН СТРАТЕГИИ И ЕЩЕ КУЧУ ХУЕТЫ
>>2177065 >классы, декораторы, ДИРЕКТИВЫ, ПАЙПЫ В ВИДЕ КЛАССОВ, МАГИЧЕСКИЕ ОБСЕРВАБЛЫ, МАГИЧЕСКИЕ ДЕТЕКШН СТРАТЕГИИ И ЕЩЕ КУЧУ ХУЕТЫ У вас - нет, вот вы и беситесь.
>>2177068 Промис? Какой еще промис? Ну да, я обещал, что сделаю эту фичу неделю назад, но мне было некогда, надо было попускать ангуляроблядков ибо онгуляр умер. А пайпы я в своем бабушатнике через 5 лет только с такой ЗП поменять смогу. Может хватит даже декораторм заплатить - "хочу символ реакта на стенке нарисовать.
>>2177076 Ох ты блядь, какой ты клёвый. Окей вот тебе вопрос. Есть область на экране, ну пусть будет див. Твой юзер атомно шерудит мышкой.
Твоя задача каждые 300милисекунд делать 2 пакета кликов. Один для тех что были внутри дива один для всех остальных. И отсылать эти пакеты на 2 разных урл бекенда.
>>2177054 >Твоя задача отсылать форму на бэк _только_ если данные содержательно менялись. На первом ангуляре у нас была ф-ция, которая сравнивала инит велью с измененным. Когда лень - просто по дети проперти. А в чем тут реактивные помогут? Быстр опогуглил - все те же костыли. Что я упескаю. И да, вспомнил, что вот эти вот this.form.patchValue бесили.
>Ну как правило в реактивном стиле ты пишешь форму как она иерархически повторяет модель. В шаблнном мире ты можешь в качестве модели сунуть десяток моделей, потом будешь сводить их в одно отдельным метдодом. Ну блин, я не пони((((. Иерархически но ебну в rootModel.child.child в темплейте.
>Эта хурма дает большое могущество когда у тебя сложная форма с изменением видимости в завичсимости от потока данных . Да тот же иф хайд будет в коде, а не в темплейте, не?
>this.yobaGroup.controls.yobaInput.disabled = true >гораздо пизже чем делать ебилион полей для темплеййта в стиле >isYobaInputDisabled disabled = isInputDisabled(input)
>>2177059 >А еще ты можешь писать динамический генератор форм. Где с темплейтами ты охуеешь инфа соточка, а с реактивными формами будешь красавчиком. Ну, как часто надо еба-динамические формы? Как правило все заканчивается макс циклом. Но может я вообще не понимаю что такое "динамические формы" в таком контексте.
Но ладно, я тебя услышал, буду пробовать в реактивные, если будет проект на ангуляре.
По остальной базе что скажешь? 1. OnPush - всегда? 2. Сторы не нужны?
Я тупой, обясните пож, либо ткните (в говно), где почитать. Как реализуется динамическая подгрузка элементов на странице? Вот например есть твиттер, когда на него заходишь, левая менюха подгружается сразу (она статична), в середине лента с твитами и справа плашки с фильтрами подгружаются постепенно и асинхронно (они динамичные), пока они подгружаются страница не лочится, твиты подгружаются порционно. Пилю веб-приложение, данные тоже нужно отрисовывать в виде ленты динамичной, но у меня пока получилось, что запрос с бэка прилетел, но пока лента вся не прогрузится, страница лочится. Как сделать динамическую подгрузку? Надо между отрисовкой каждого элемента ленты сетТаймаут добавлять?
>>2177161 У тебя есть модель данных из которых рендерится любое отображение этих данных. Соответственно подгружаешь данные для динамических элементов и на них рендеришь новое отображение.
>>2177083 Сорян за ответ в стиле "Типикал ру комунити" но онпуш и сторы нужны там где нужны и не нужны там где не нужны. Тут надо не торопиться а посидеть и подумать.
С он вполне ок если ты оперируешь такой абстракцией как сессия или надо хранить рез-т работы пользователя.
Например марьвана из бухгалтерии заполняет форму на 40 полей. Потом идёт пить чай. Поскольку ты подумал о корпоративной безопасности, ты через 3 минуты без активностей нахер разлогинил марьванну, а поля формы которые она нашлепала, скинул в стор.
Марьивана приходи. Через час после чая, логиниться и...продолжает работу с того места где окончила. И думает какой мол молодец кто эту прогу писал...
Всю дорогу онпуш хороший план с точки зрения перформанса и не очень с точки зрения поддержки прилады. Надо хорошо понимать что где может отвалиться. Я сходу не помню и надо по звучать, но кажется там пайп asynk отваливается и ещё что-то
>>2177195 2 жсона (пока) по 200 элементов (потоки nifi), обёрнуты в 2 таба, между ними переключаешься, и вот когда страницу загружаешь, хочу сделать, чтоб карточка каждого потока подгружалась динамичечки, а не по очереди и сразу все
>>2177228 >Так вон реактеры везде сторы пихают и говорят, что без стора - говнокод. Ну может они в массе не умеют кодить? Я вот не понимаю зачем стор, когда есть обсы и сабжекты.
>>2177240 >Я вот не понимаю зачем стор, когда есть обсы и сабжекты. Реакт не играет хорошо с push-based стримами, ибо у того свой скедулер под капотом. Реакт это про пулл, а не пуш.
>>2177240 >Я вот не понимаю зачем стор, когда есть обсы и сабжекты. Ну и да, держать состояние в обзервабл тот еще пиздец. Плавали, знаем. Хотя если вам зашло, то збс.
>>2177483 Рыкса хороша, но мы пересели на кукан most/core. Оставили его только для декларативной обработки ивентов. Стейт сбоку есть, но он pull-based. Сейчас стало кайфово, никаких хитровыебанных комбайнов на дюжину строк и визЛейтестФром с вечными затыками в самый неудобной момент. Вообще, сделал для себя вывод, что концепцию стримов интуитивно понять многим гораздо легче, чем научиться грамотно с ними работать. Грамотно - это хотя бы без неожиданных затыков в стримах.
>>2177506 Сага же на генераторах, не? Если да, то ей духовно ближе IxJS, там все pull-based.
>>2177515 >pull-based Что тут имеется ввиду? Не работал с most/core, немного с Рх. Тоесть ты сам должен запросит ьу стора данные? Ну и стор по-сути только стор без всяких ивентов?
В одном случае конкретно ты определяешь в какой момент времени ты этот карент стейт получаешь. В другом случае ты просто сидишь свесив ножки и ждёшь когда тебе стейт пришлют.
>>2177693 >Я имел в виду какая у вас процедура пересаживания на другой кукан? Ретроспективная оценка опыта работы с технологией на предыдущих проектах. Далее по критериям, как я описал: - перф; - дх; - э-ко-ко-система, поддержка, матурность проекта.
Коллективно решаем, оставляем технологию или рассматриваем альтернативу. В конце техлид конфермит.
В общем-то, в моем случае, мост нормальный. Но, - тестового скедулера нет искаропки. Пришлось брать сторонний, но от корного контрибьютора; - вывод типов иногда хромает.
>>2177716 > Нахуй он нужен на фронте-то? Всем похуй. Ну, нам нужен, у нас реалтайм.
> Что это? >>2177800 Да, все то, из чего складываются субъективные впечатления от пользования библиотекой. Документация, АПИ, тесты, коммьюнити и прочая.
Даже в корпоративной разработке банковской ангуляром уже года три не пользуются, везде реакт. Походу уголок и правда скоро отправится на кладбище. Очень жаль https://youtu.be/iobi3GEw6lY?t=2479
>>2178168 >>2177934 Я вообще не пойму зачем она была нужна. Чем мускули и постгресы были так плохи, что пришлось придумывать и форсить эти гигантские джейсоны.
>>2178181 У нее есть узкая ниша применения для хранения данных, которые не имеют четкой структуры и для которых заранее схему/таблицу не напишешь. Например логи или ML. И то, во многих таких случаях с головой хватает JSON полей в каком-нибудь постгресе, где для них уже давно сделана нормальная поддержка с возможностью делать выборки, индексировать и т.д, дающая монге пососать. Но поскольку жопоскриптеры - это вредные невоспитанные дети, которые хотят просто чтобы было НИКАК У ВЗРОСЛЫХ, без оглядки на объективные плюсы и минусы или контекст задачи, то они схватили новое и модное и решили заменить им дидовое и старое. В итоге родилась очередная догма "монга - модный флекс, реляционные БД - кринж для дидов", рядом с догмами про ООП/ФП или тайпскрипт. Но сейчас хайп уже подумер, столкнувшись с суровой реальностью, и вряд ли кто-то всерьез будет монгу для обычного проекта защищать, когда рядом есть охуенный постгрес, разве что по незнению
>>2178267 Ну у меня друг на спринг буте фуллстачил, в прошлом году ушел на дотнет чистым бэкендером, а вот сейчас на го пишет. Говорит джава вообще непригодна для бэка
>>2178280 >Говорит джава вообще непригодна для бэка Почему? А го пригодный блядь? Урезанная отрыжка, да даже ответить сложно, С + С# + javascript / 100
Я думаю, го надо переждать. Тупо на хайпах вот такое вот "ГО заменил %платформанейм%" высираются.
>>2177423 >Посмотрел видео по HTML и JavaScript. Есть ли смысл посмотреть еще и Pascal, для общего развития, прежде чем штурмовать толстые книги по JavaScript? А что скажете про C? А еще лучше Java? Что может в работе пригодиться?
>>2178349 Абсолютно все языки могут пригодиться в работе, работа разная бывает. Че ты мозги ебешь, распаляться смысла нет и для фронта нужно HTML5, CSS3 и JS. В этом всем дохуя различных технологий, которые будут нужны работодателям. HTML - не лишним будет Pug CSS - строго рекомендуется еще освоить SASS, по желанию Tailwind, Bootstrap JS - в дополнение обязательно React, к нему Redux или MobX, так же везде надо Typescript. Этого тебе хватит на год загрузиится, если без рофлов. Хотя ты скорее всего зеленый и тупо не читаешь ответы.
>>2178181 Проще для понимания, джейсоны 1:1 джс обьекты и т.д., постгрес и мускул это отдельный мир. Если ты не понял, в последние 5 лет на фронте в тренде все, что проще и имеет низкую кривую обучения. Отсюда срякт, хуки и миллионы статей от вкатышей "что такое useState", "writing simple node + react app in 10 min" и т.д. Последние 2 года Редакс, который прост как пробка, уже оказывается сложный и пориджам сложно понять зачем есть разделения на экшны и редьюсеры и почему чистые функции это круто, им теперь нравится мобкс потому што "меньше кода надо писать", лел. То же касается монги, базы данных нужны, учить постгрес никто не будет. Монга простая и справляется с большинством средних приложений.
>>2178358 >Bootstrap устарел морально, даже 5 версия >в дополнение обязательно React Нет, дурожочек. В дополнение обязательно англуяр и/или вью, что бы знать как работают нормальные фреймворки без ограничений и костылей. >к нему Redux проиграл с этого говнокодера >везде надо Typescript нет
>>2178424 Ангуляр/Вью это легаси для интернет-магазинов уже, все адекватные и новые продукты пишутся на Реакте. Ангуляр это Backbone современности. Просто не нужен со своими темплейтами и кучей нагроможденной логики, когда есть элегантные хуки и кастомизация.
TypeScript де-факто стандарт отрасли, без типов ни один нормальный проект сейчас писаться не будет.
>>2177935 На нативном драйвере, который уж изкаробки идёт с тайпскриптовскими типами. Плюс у гуся идёт расхождение с поддержкой фич свежей монги, что добавляет ещё оверхеда. >>2178272 Для оффлайн-фёрст экспиренса. Ну и для всяких фоновых тасок, которые надо за пределами основного потока делать, это же воркер.
>>2178420 А зачем их перехватывать? >Для того, что бы сохранить все твое SPA на утройство клиента два. Так и без воркеров это можно с помощью хедеров сделать.
>>2178458 >элегантные хуки >Реакт Проиграл. >кастомизация Ты имеешь в виду прикручивание костылями того, что должно быть в реакте изначаль? стили >без типов ни один нормальный проект сейчас писаться не будет Ты скозал?
>>2178476 >А зачем их перехватывать? Ну самый частый кейс - когда в браузере открыты несколько вкладок и они через сокет подключены к серваку и слушают на получение уведомлений. Через вебворке можно без особой ебани без броадкаста по табам перехватывать все сокеты кроме одного. Еще часто используется как еще один слой кеширования помимо встроенного в браузер.
>>2178484 >Нахуй стили в таких фреймворках? Согласен, можно ориентироваться на встроенные в браузер и юзерагент стили при разработке. А если серьезно, как блять ебланы цукерберга разрабатывая фреймворк для ВЕБа забыли добавить нормальную поддержку стилей? Почему какой-то азиат и сойбои с гугла додумались?
>>2178487 Я хочу создавать компоненты используя стили с ограниченной областью видимости и/или css модули. Пчоему для этого мне нужно устанавливать хуеву тучу зависимостей? Почему во vue и angular это есть из коробки?
>>2178488 >Пчоему для этого мне нужно устанавливать хуеву тучу зависимостей? Чё ты вообще несёшь, наркоман? Дефолтный конфиг вебпака поддерживает css модули изкаробки. И соответственно его поддерживают cra и nextjs. >Почему во vue и angular это есть из коробки? Хуй знает про ангуляр, но в вуе максимум уёбищная модульность, которая добавляет специфичность в конечный результат, и об этой МАГИИ тебе нужно знать заранее, взглядом в вуешаблоны ты об этом не догадаешься.
>>2178494 >Дефолтный конфиг вебпака поддерживает css модули изкаробки Ты ебанулся? Дефолтный конфиг вебпака не поддерживает ничего, кроме чистого js. >об этой МАГИИ тебе нужно знать заранее Тебе в любом случае нужно знать, как работают css модули, никакой лишней магии во вуе нет.
>>2178501 Отличное замечание, вот только в реакте нет нормального функционала для работы с shadow dom, лол. Я сомневаюсь, что в реакте вообще есть костыли по работе с веб компонентами.
>>2178485 Потому что реакт это не полноценный фреймворк, а либа которая строит дерево UI как функцию от пропсов и стейта. Стили тут вообще мимо кассы. От даже к DOM отдельно прикручивается. А стили можно прикрутить любым из способов который нравится, я лично вообще предпочитаю дефолтный scss отдельно от всего.
>>2178485 > ебланы цукерберга разрабатывая фреймворк Это не фреймворк. Реакт - библиотека. Это прямо написано на сайте документации. И челикам из фейсбука это явно виднее.
> забыли добавить нормальную поддержку стилей? Никто не мешает тебе собрать всё в вебпак и подключить нужные тебе плюшки для стилей. Вообще в create-react-app есть scoped - modules, почти как в vue или svelte. Жаль только что отдельный лоадер для этого, совместимый с вебпак 5 пока никто не придумал.
> Почему какой-то азиат и сойбои с гугла додумались? Потому что азиат всё копирует с Реакта и пытается сделать это лучше, убрав огрехи реакта. Как пример: во Vue ререндер компонентов происходит только там, где действительно произошли изменения. Дочерние компоненты не затрагиваются, как в реакте. Те же scoped стили в Vue работают прекрасно, по сравнению с React. Во Vue 3 появился Composition API. Знаешь что это такое? Это блядские ХУКИ ИЗ РЕАКТА! Атрибуты key для списка Vue дерева, refs и т.д. и т.п. всё нагло спизжено, но сделано это с умом. Эван Ю молодец, это правда. Лучше учиться на чужих ошибках, чем на своих.
>>2178495 >Ты ебанулся? Дефолтный конфиг вебпака не поддерживает ничего, кроме чистого js. npm init --force && npm install webpack webpack-cli --save-dev && npx webpack init test и любой вариант связанный с css поддерживает css модули без лишних конфигов. >Тебе в любом случае нужно знать, как работают css модули, никакой лишней магии во вуе нет. Ты блять даже не понимаешь, о чём я говорю. В вуе своя маняреализация css модулей, не имеющая отношения к css модулям. >>2178502 Так бейслайн рякта - ES5, а веб-компоненты и по сей день - минное поле совместимостей с браузерами.
>>2178612 Кто-то им пользовался вообще? Ну пусть переписывают, вообще похуй. Вон vite вроде тоже со своим компилятором на go работает значительно быстрее вебпака.
>>2178577 >В вуе своя маняреализация css модулей, не имеющая отношения к css модулям. В чем отличии вьюшных css модулей от твоих "правильных"? Там даже тот-же лоудер используятся после вьюшного. >npm init --force && npm install webpack webpack-cli --save-dev && npx webpack init test Хватит маняврировать, ты покажи мне где на дефолтном конфиге есть поддержка чего-либо кроме обычно .js.
Почему нигде не ищут ангуляр джунов, только реактеров и vue-ров? Получается, ангуляр для вкатуна с паком html/css/ванила не подходит совсем? Просветите
>>2178657 Так нахуя мне ты или другой анон пытаетесь доказать, что css модули поддерживаются реактом и вебпаком из коробки без установки дополнительных зависимостей?
Вкатуны-рабочие, скажите какие самые частые таски дают молодому зеленому джуну на его первой работе? Хочу примерно понять стоит искать работу сейчас или поучиться еще. Стек: жс, хтмл\цсс, сасс, реакт (немножк)
Я так и не понял почему все дрочат на Typescript. Как я понял это библиотека для придания статической типизации, но неужели это настолько необходимо, что буквально все орут как это круто?
>>2178693 >create-react-app Чел, в реакте есть нативная поддержка работы со стилями, по аналогии с vue или angular? Нет. Поэтому ты идешь нахуй, м свою поделку с 2к зависимостей захвати заодно.
>>2178702 От конторы зависит. С галеры в течении пары недель пизданут но там прямо совсем ебланом быть надо, в норм шараге могут пару месяцев потерпеть пока ты вольештся в воркфлоу, потом на третий месяц пидоранят.
>>2178693 Причем здесь react-create-app к "дефолтному конфигу вебпака". Это совсем отдельный мутант с 1000 конфигураций и зависимостей внутри.
Чистый реакт это просто библиотека для UI. Стили это отдельная тема, не имеющая отношения к ней, которую нужно отдельно настраивать (вебпак НЕ поддерживает из коробки ничего). create-react-app это заранее подготовленный шаблон, который добавляет к реакту всякие фичи, чтобы "из коробки" можно было на нем писать современное приложение.
>>2178657 Потому что на ангуляре либо легаси, либо большие энтерпрайз приложения где джунам не место. Плюс само по себе понятие "ангуляр джун" немножко смешное, т.к. грубо говоря если ты можешь продуктивно писать на ангуляре с использованием всех его возможостей, то ты уже не джун по скиллам.
>>2178691 Это не библиотека, а отдельный язык, который компилируется в JavaScript. Да, чем больше приложение, тем сильнее выгода от TS. Джуны часто не понимают зачем и что это, но типизация это большая отдельная тема в языках программирования. Статическая типизация ускоряет рефакторинг и предотвращает ряд ошибок еще на этапе написания кода. С опытом поймешь.
>>2178709 Ты еблан? Во Vue нет нативной поддержки css-modules, если ты не создаёшь приложение, через vue-cli с помощью vue create. В vue create поддержка scoped стилей есть, но она также есть и в create react app. Поставь себе vue с зависимостями, накати вебпак с vue loader и сам посмотри. Фичи со стилями будут тогда, когда сам их пропишешь и настроишь в вебпаке.
>>2178702 Пидорнут только если ты каждый следующий таск будешь делать не быстрее предыдущего. От джуна никто не ждёт эффективной работы сразу, ждут роста эффективности.
>>2178767 >Так что трогал до того как он появился, всё заебись Чё там с пердолингом? Было что-то, что можно было сделать только в вебпаке, а у вас были затруднения?
>>2178513 >Не подойдёт. Там нужно указывать country code, а я хочу доступ к городам всего мира Совсем тупой что ли? Запрашиваешь список стран. https://vk.com/dev/database.getCountries Потом список городов каждой страны.
>>2178520 >В украине работать не будет лол Не хуй резолвить данные из стороннего сервера с клиента. Ты в любом публичном апи наткнешься на недоступность у кого-то, а так же на боттлнек в виде скорости доступа к серверу расположенного в другой стране.
>>2178768 Ну, вепбака вообще не было. Когда надо было выбирать чем собирать проект все такие наперебой: "только не вебпак!". Так и порешали. С d.ts какая-то фигня была – у роллапа два плагина для них и кажется у обоих есть какие-то фичи которых нет у другого. С монорепой больше всего говна пожрали, но это скорее потому что на нпме сделали да из-за специфики проекта и инфраструктуры CI/CD.
>>2178872 Ну компонент тебе может сварганить любой человек, который даже с программированием на JS особо не знаком. Тут уже вопрос в том, как хорошо он его напишет
>>2178905 Лучше, чем в реакте, лол. Тут за него, хотя бы, подумали и в рамки поставили. Ну с чем он может проебаться в ангуляре, с чем не проебется в реакте? Разве что с РхЖс нагородить ужасный клубень, но если он пугливый, то и юзать не станет.
Hola ! Снимаю шляпу перед сеньерами и прошу помощи !
function printBookmarks(id) { chrome.bookmarks.getChildren(id, function(children) { children.forEach(function(bookmark) { if (!bookmark.url) { document.getElementById("Output").innerHTML=bookmark.title+"<br>"; printBookmarks(bookmark.id); console.log(bookmark.title); } }); });
Вот эта функция должна рекурситя в фор ич лупе. Так и происходит, но функция как будто перед тем как запуститься рекурсивно таки проходит полностью по циклу и только затем начинает выводить элементы из середины\начала....
>>2178951 1. Ты выносишь getElementById вверх, т.к. у тебя иначе браузер тратить время на поиск одного и того же элемента 2. условие if (bookmark.url) ты переносишь в .filter() 3. innerHTML используй только в крайне важных случаях, это пиздец медленная залупа 4. Вместо <br> используй блочные элементы 5. Вместо одно грязной функции сделай её чистой, таким образом, что бы она не мутировала DOM, а просто возвращала массив результатов, с которым ты можешь сделать че хочешь. >только затем начинает выводить элементы из середины\начала Что ты под этим подразумеваешь? Т.е. у тебя на странице они не сразу отображаются? Если да - то это нормально, браузер будет рендерить контент на страницы только когда основной поток свободен, за редкими исключениями.
>>2178709 >Чел, в реакте есть нативная поддержка работы со стилями, по аналогии с vue или angular? Дефайн "нативная". Если ты подрубаешь css-loader, то у тебя уже будет "нативная" поддержка модулей в любом конфиге вебпака. >Нет. Поэтому ты идешь нахуй, м свою поделку с 2к зависимостей захвати заодно. У вуя тыща с лишним зависимостей лол. Ангуляр вообще упал, так как ожидал данные для гита в глобальных переменных. Сразу видно утырки из гугла его делали. Но он тоже в 1300 пакетов. У рякта есть некстжс, который полноценный вротенд сервер, а не огрызок для отрисовки шаблонов, и у него в районе 500 пакетов. Тут ты соснул с проглотом, ангуляродебил, так что можешь обрадно пиздовать в свой опенспейс писать очередной интерфейс для абстрактной фабрики, чтобы ублажить конпелятор.
>>2178964 >>2178964 >У вуя тыща с лишним зависимостей лол. Ангуляр вообще упал, так как ожидал данные для гита в глобальных переменных. Так причем тут вуй и ангуляр, если речь идет про кривые поделки макаками, которые не осилили npm init <templatename> или yarn create <templatename>? >полноценный вротенд сервер Ну и хуйня, пиздец. Вместо оптимизации FCP просто сервер еще один ставят.
>>2178962 Благодарю за советы. Причесать действительно нужно, однако сейчас требуется добиться нужной функциональности, мб это все будет стерно навсегда.
>Что ты под этим подразумеваешь? Постараюсь объяснить. Условие у меня чтобы понять это закладка или папка с закладками. У меня задача вывести иерархию папок без самих закладок. Сейчас у меня выводятся все папки но не иерархично а тупо сначала все первого уровня потом все остальное также не по порядку. Что нелогично так как для каждой папки в коде рекурсивно запускается функция это должно приводить к проходу в глубину прежде чем идти дальше по первому уровню...
>>2178970 Как у тебя вообще выводиться больше одного названия, если у тебя innerHTML каждый раз заменяется на новый? Мб в этом проблема? Пришли полный код, мы созвонимся с другими синьор-пиздаболами и посмотрим более детально.
>>2178974 >>2178975 chrome.bookmarks.getChildren асинхронная функция, ты вместо того, что бы ждать завршения получения потомков сразу дальше в цикле бежишь. Тебе нужно написать функцию по типу этой: const getBoomarksChildrensPromise = (id) => new Promise (r =>chrome.bookmarks.getChildren(id, r )) И использовать оператор await
>>2178976 >chrome.bookmarks.getChildren асинхронная функция, ты вместо того, что бы ждать завршения получения потомков сразу дальше в цикле бежишь. хорошо. теперь мне хотябы ясно такое поведение.
>Тебе нужно написать функцию по типу этой: const getBoomarksChildrensPromise = (id) => new Promise (r =>chrome.bookmarks.getChildren(id, r )) если честно я в этой строчке нихуя не понимаю. функция гетчайлдрен вообще должна функцию обработки получать, что она сейчас получает под r ? await как я понял нужно писать перед рекурсивным вызовом функции. алсо где тело функции обработки гетчайлд должно быть ?
>>2178978 >chrome.bookmarks.getChildren принимает наименование и функцию, которая будет выполнена после того, как он найдет потомков с этим именем. r это сокращение от resolve, смотри документацию по Promise и async/await на лерн джаваскрипт Так вот, должно быть так: const childrens = await getBoomarksChildrensPromise(id); //обрабатываешь массив потомков конечно ты очень неудачно решил залететь в разработку расширений с такой базой
>>2178978 >функция гетчайлдрен вообще должна функцию обработки получать Короче, сейчас она по сути получает определенную функцию, которая передает результат оператору await слева. И еще, суть в том, что у тебя дальше не будет выполняться твой код, пока оператор await Не получит данные (из его названия это очевидно)
>>2178980 >>2178979 АНОН, ТЫ ЕБАННЫЙ ВОЛШЕБНИК. ПИЗДА, Я ВООБЩЕ НЕ ПОНИМАЮ ПОЧЕМУ НО ЭТО РАБОТАЕТ ТАК КАК НАДО. ЕБАНУТЬСЯ. СПАСИБО ТЕБЕ ОГНОМНОЕ.
обновил код в https://rentry.co/abdulov сейчас буду пытаться фиксить те моменты на которые ты указал ранее.
хотя с моей базой, как ты говоришь
>вкатываться я не вкатываюсь, я пишу мини расширения\узерскрипты исключительно для личного пользования. начал в 2017 уже с десяток набралось. все это время мне хватает плюс+минус базового программирования на высшых языках+гугление. ну и время от времени советы\прямые коды от таких мудрых анонов.
Какие есть способы определить, какой фрагмент кода измененяет DOM при загрузке страницы через devtools? Руками вариантов искать нет, там 20 мб скриптов грузится. Пробовал навешивать MutationObserver через юзер скрипты, но он срабатывает только после того, как DOM был изменен.
>>2178981 >СПАСИБО ТЕБЕ ОГНОМНОЕ. Рад, что получилось >хотя с моей базой, как ты говоришь Ну, ты вместо let и var используешь const, значит еще не все потеряно. Крайне рекомендую изучить промисы и асинхронные функции, намного себе жизнь упростишь.
>>2178983 У меня есть только emacs, он все, кроме хорошего текстового редактора, как говориться. пишу прямо из него бтв.
>>2178984 Я бы рад... Вот в выходные в свое удовольствие позанимался... а потом снова на работу. некогда короче стремиться к хорошему... очень жаль конечно. уже сейчас надо спать ложиться а то собъю режим. а завтра еще нужно чем - то помиму пк заняться....... а там и помирать уже не скоро...
>>2179150 Просто ты задрот. Для нормальных челиков там много полезной информации. Например если тебе дают древний проект на джаве куда надо запихнуть риакт, то сразу увольняйся.
>>2179174 Видел вроде его у ойти бороды. Чел - лид, он уже сто лет не код пишет, а разглядыват журналы с тачками, выбирает себе какую субару купить. Естественно если его попросили доклад сделать, он будет про то как космические корабли бороздят большой театр. Поучился бы ты лучше софтскилам, чел, чтобы тоже лидом стать, когда-нибудь.
Понадобилось установить кое-что из npm макет pyright для вима и советуют значит это делать так:
npm -g install pyright
Ну т.е. он высрется мне в /usr/local по дефолту. И, на самом деле, многие пакеты с исполняемыми файлами так рекомендуют делать при установке. Но это же полный пиздец, система превращается в Слаку. Зачем так делать, если можно задать prefix, например
npm config set prefix ~/.local/lib/node
и добавить ~/.local/lib/node/bin в $PATH. Я что-то не понимаю, есть какие-то подводные камни?
>>2179281 Ну так и задай. А лучше сразу поставь n, nvm или что-то там ещё третье. Первое что они делают – это префиксы создают именно в хоуме. Без них всё равно ноду обновлять больно.
Ты сам ноду видимо поставил в /usr/local, туда она тебе модули и складывает. Надо было указывать NODE_PATH при установке куда хотел.
>>2179150 Отвратительный персонаж. Популист и говно. Простомтрел пол часа со скоростью 1.75, жалею о потраченом времени обычно я капчую 24/7 и жалею меньше
>как такое написать самому например man Теория языков программирования. Спишешь лексер по заданным синтаксическим правилам, строишьпарсорм AST, применяешь к нему преобрахования, сериализуешь в целевой код.
>как В самом начале еаучись открывать энциклопедию и читать.
>>2176641 (OP) Хз, куда спросить, спрошу здесь, кто как тренировал усидчивость и концентрацию? Хотелось бы услышать мнение именно тех, кто познал дзен и может продуктивно отхуярить часа 3-4. Все пробовал, телефоны отключал, пхаб блокировал, но сидя дома очень большая проблема сидеть долго и продуктивно, на работе тоже залипал в телефон много, думаю не в обстановке дело. Есть ли рабочие методы?
>>2179334 Классовые компоненты это кринж конечно, но вот тебе пример. Когда у тебя происходит в коде постоянное ... this.setState() ... this.setState() ... this.setState() ...
Ты можешь потерять текущее значение state из-за асинхронной природы React. Чтобы этого избежать - тебе надо использовать callback внутри setState. Из callback можно ЖЕЛЕЗНО 100% УВЕРЕННО вытащить текущее значение state, а не то, которое ты получил не в правильном месте не в правильное время. Вообще хз что тебе было непонятно, в документации, насколько я помню, хорошо этот момент освещён, но я не осуждаю. Надеюсь чем-нибудь помог
>>2179582 > как работает транспайлер jsx Гуглить не пробовал? В документации реакта четко и ясно написано, как он работает и во что перобразуется jsx-выражения. >как такое написать самому например Либо как тебе пишет анон >>2179644 , либо просто написать плагин для babel. Второй вариант легче.
>>2179582 >как такое написать самому например В курсе яндекса на мидл вротендера вроде рекламировалось, что они там свой шаблонизатор будут писать. Можешь поискать на торрентах
>>2179688 Угу, по симптомам на нее и вышел, только я старый 30 летний долбоеб, надеюсь удастся пофиксить. >>2179695 А зп какая? Хочу вот перекатываться в галеру, а там вроде за каждые проебанные 5 минут ебут, пока сижу в продуктовой, тут лояльно, но и зп не ахти.
>>2179721 >А зп какая? 120к, фулл удаленка >Хочу вот перекатываться в галеру, а там вроде за каждые проебанные 5 минут ебут Ни разу не работал на галерах, только на продукте. По поводу внимания, я когда пил нейролептики + АД у меня все нормально с ним было, но спать хотелось пиздец как + я разжирел как свинота, поэтому перестал.
>>2179731 Ну вообще мне предлагают уже перекатываться на 150к в другую контору, но учитывая, что я живу с родителями мои месячные расходы составляют около 10-15к, поэтому перекатываться смысла не вижу. Уровень у меня премидл, 2 года в разработке.
>>2179582 Да почти никак, транспилятор – это громко сказано. На этапе сборки проверяются типы, а потом всё надмножество жс просто утилизируется за редкими исключениями вроде енумов. Написать просто – пройди по AST дереву и выкинь лишние ноды.
>>2179755 Это одна из первых вещей, которую я тестил, тупо забиваю на таймер после второй помидорки. Видимо я действительно развил сдвг у себя, отвлекаясь постоянно на всякую хуйню, хотя в детстве всегда был спокойный и усидчивый, собственно так и вкатился в профессию. Очень сильно мешает эта хуйня, чувствую, что могу гораздо больше, но отсутствие фокуса все портит.
Вьюшники в каком хуке обычно делают запросы к api? Нужно сделать запрос к одному api получить данные(число) и использовать эти данные в другом запросе данные из которого уже используются для отрисовки
>>2180036 >.toString() toString не делает из объекта json >writeFile( "./json/list.json", json.list.push( 300 ).toString() Ты посмотри, что возвращает функция Array.protoype.push, реузльтат которой ты пытаешься засунуть в файл const fs = require("fs/promises"); const FILE_NAME = "./list.json"; const parsed = require(FILE_NAME); parsed.list.push("абу хуесос"); fs.writeFile(FILE_NAME, JSON.stringify(parsed));
Предложили халтурку поделать, спросили сколько будет почасовая ставка, а я даже не в курсе какие расценки будут разумными. Раньше не было опыта. Проект React/Typescript/Mobx и т.п.
>>2180126 Смотря какой грейд (качество кода). На апворке помнится начальная ставка 5 баксов, за нее пишут код индусы, которые на ходу читают гайды по языку и сразу пишут код. Мидлы берут от 30-40 в час, это поддерживаемый, читабельный код, худо бедно покрытый тестами. Сеньоры меньше 100 в час даже задание читать не будут. Как то так.
Поясните за код на пикриле. Я не понимаю, почему значения (paths и fallback), которые возвращает эта функция, присутствуют в остальном коде как бы по умолчанию, без вызова этой самой функции.
То есть функция написана, ее не вызывали, однако paths и fallback такие, как будто ее вызывали.
>>2180212 >почему значения (paths и fallback), которые возвращает эта функция, присутствуют в остальном коде как бы по умолчанию, без вызова этой самой функции. Что блять? Показывай этот "остальной код".
Есть сайт, в котором есть iframe с другим доменом. Есть темперманки скрипт, который @match обе страницы Есть функция, которая берет ссылки из фрейма, сравнивает с ссылками из LocalStorage макаки и возвращает нужные. Есть window.addEventListener, который ловит нажатие кнопки и воспроизводит эту функцию.
Все работает заебись, за исключение того, что записать в LocalStorage через GM_setValue нихуя не получается в этом листенере. В самой функции запись работает, вне функции тоже, а в листенере нихуя.
Гугл вообще не помогает, за исключением 1 ответа по поводу передачи JSON строк по нажатию кнопки через window.postMessage в другую функцию и там уже их GM_setValue, что блядь тоже не сработало. Как дышать в такой ситуации?
>>2180659 Вообще первое. В классовых компонентах стейты - это кал говна, они не мемоизированны. Даже если ты возвращаешь тот же стейт во втором примере - всё равно будет происходить ререндер компонента, который тут не нужен.
>>2180678 Если в конторе спрашивают про классовые компоненты - значит тебя заставят поддерживать легаси говно. Оно тебе надо? Весь разумный мир давно на функциональщине сидит.
>>2180707 Я честно не знаю, пока верстку подтягиваю, позже реакт начну, тогда и буду ебаться с этим. Оно хорошо описано, с готовыми стилями, тупо реактнуть надо. В каком-то чатике сбрасывали.
>>2180702 Кек, у меня было такое же, но без фигмы, без сервера, в общем тупо архив, в нем json на 20 мегабайт и ТЗ в .odt. А еще в архиве лежала табличка в .odt со списком вопросов типа что такое doctype и пустым местом под ответы.
Почти доделал, но забил нахуй, потому что пришли тестовые от других компаний.
>>2180751 Нахуй не надо. У нас универский сайт был на нем "написан". Темлейт и всякие шаблоны в дримвивере, что-то изменил - перегенерячил хтмл и вперед. Молниеносный перфоманс лол.
>>2181058 >показать проект Придурочка, в доке редакса есть рабочие примеры с пояснениями. Не можешь сложить два и два? Может стоит вернутся за фрезерный?
погряз я во всей этой хуйне, не понимаю что дальше делать, куда развиваться. сделал несколько простейших приложений на реакте, пытался начинать что-то посложнее типа с редаксом, тайпскриптом, но я вообще не понимаю правильно ли я что-либо делаю или нет, как надо и т.д. в итоге ни один проект так и не доделывал, помогите бля укажите путь...
>>2181338 >ни один проект так и не доделывал Попробуй сделать что-нибудь по курсам. А потом то же самое, но самостоятельно.
Главное, выбирай курс на английском и не по 40-60 часов, а по 15-20 или даже меньше. Могу посоветовать курсы Brad Traversy, The Net Ninja и freeCodeCamp.
Фактически там вся вступительные часть про то, что "пользователи реакта в массе тупые и не могут спланировать архитектуру", затем про то, что "мы все вместе тупые и не можем писать реактивно" и потом "вот вам заплатки в виде хуков правда работает ещё не всё"
Это ж натурально цирк с понямм.
Над ещё выдать годик, подождать пока эти дебсы наконец изобретут паттерн mvvm, сделают диай со скоупами и признают наконец свою помойку фреймворком
>>2181338 Ты лучше скажи когда ты собираешься идти на собесы. По реакту и тс, как бы достаточно посмотреть/почитать обзор, что это такое, нахуй нужно, ну и можно кликер написать.
>>2181463 А, так это ты местный дежурный ряктодебс, который даже в значения слов не умеет. Я тебя узнал. Ну не, ты то конченный, с тобой речь вообще вести смысла нет.
>>2181537 мимофлутсак, и тебе, скорее всего, нерелевантно, но.
По ДЖсу: замыкания (классика). hoisting и области видмости. чем стрелочная ф-ция отличается от обычной. "2"+ "2" - "2" Знание всяких .map/filter/reduce говори с надменным тоном, что фор/форич - устарел и ненужен лол event loop Promises/async (не совсем ЖС, но любят спрашиват чем промис от обсервабла отличается) По тайпскрипту: декораторы интерфейс вс тайп вс класс. "кто во что преобразуется"
>>2181415 >сделают диай со скоупами Закопался в вопрос, оказывается реактокоманда уже реализовала диай где-то под капотом, просто не даёт его рядовому пользователю ибо тупые "может смутить".
И эти комменты "мы запретили хуки в лупах потому что вам будет тяжело дебажить" Такая умилительная забота о кодмакаках.
>>2181415>>2181611 В динамическом языке специальный java-like DI механизм нахуй не нужен, просто передаешь/оверрайтишь что тебе надо, лишь бы интерфейс совпадал. Но конечно с тайпскриптошизой скоро пойдет переизобретание жабы и всего ее бойлерплейта.
>>2181705 В смысле просто передаешь. Я не хочу передавать, я хочу, чтоб некий резолвил сам за меня решил что где взять, и сам же и задеспозил потом где надо.
Чувак, диай это не только про передачу ссылочки на сервис. Диай это еще и про управление видимостью и временем жизни.
Ну знаешь там .AddSingletone<IYobaService>() .AddTransient<IYoba, SupaServiceClass>()
>>2181415 >Мимо-дед-на-ангуляре Подписался на разьеб реактеров.
Мимо тоже дед ексангулярщик фулстек
>>2181705 Какая вхуй разница, динамический или нет? "передаешь" - окей, предположим у тебя есть IoC. Почему бы не дополнить его DI контейнером, который бы сам "передавал"? Как плюс у нас будет единая точка конфигурации. Ну не хочешь - распердоливай цепочку вручную, но мы то знаем, что всем будет лень и хуй забьют.
>>2181465 Двачую. Тоже наделал уже всякой пет-хуйни, но на собес идти как-то стремно. Боюсь что ничего не знаю и обоссут с ног до головы на каком-нибудь тупом вопросе типа "что выдаст NaN === 0" И прочую хуйню, которая нигде не пргиодится, но это не точно
Вот вы носитесь со своим ангуляром, а я не пойму какой смысл в него вкатываться. Учить его довольно долго, делает он считае тоже, что и реакт с вуями. Единственная причина - для плавного перекат в бэкенд, так как в нем есть всякие ооп и паттерны, после которых какой-нибудь Nest должен зайти без проблем.
>>2181767 >Вот вы носитесь со своим ангуляром Поддерживаемость кода, бро. Когда ты не юноша с очами горящими, а степенный сэр, который видал уже некоторое говно, ты понимаешь , что пикрил не занудное старперство, а способ сделать так, чтоб пиздюки после тебя быстро въехали где чо пилить.
Что разделять представление /модель/контроллер по разным файлам это круто, хотяб для того, чтоб файл с логикой не попадал в историю изменений, когда поменял стиль.
Ангуляр классный инструмент когда пилишь большую йобу которую надо поддерживать и возможно масштабировать не один год.
Грамотно написаный компонент в ангуляре вообще без проблем выносится в библиотеку , которая кладется в ваш локальный npm и вы ваще красавчики. У вас везде один и тот же поддерживаемый <app-yoba> а не копипаста копипасты как у чуваков в рякте.
Ангуляр заставляет тебя организовать проекь более-менее сносно. Потом отдаешь это чуваку который вообще фронтом не занимался, и он за пару дней доделывает нужное, просто гляда на то как ты сделал основу.
>>2181729>>2181743 >некий резолвил сам за меня решил что где взять >Почему бы не дополнить его DI контейнером, который бы сам "передавал"? Шизики, верующие в магию, вы? Никаких "сам передавал" не существует, все конфиги нужно будет прописывать вам лично, из воздуха они не появятся и сами не догадаются, куда и когда что инжектить.
>>2181859 >читал, иначе порвался бы уже от обязательности порядка вызова и как следствие невозможности хуки вызывать в условиях или циклах.
Если бы ты читал, обезьяна, тыб не путал порядок вызова и требования к постоянности этого порядка.
Hooks doesn't care about which order you put them, it cares that they have persistent order. Same one every time. This is very different from implied dependency between calls.
It would be better not to have to rely on persistent order - all things being equal. However, there are tradeoffs. E.g. syntax noise or other things being confusing.
Да и не вижу я с чего тут рваться. Чуваки адово лепят заплатку для рукожопых типа тебя. Конечно же онни на старте сделают миллион ограничений, чтоб вы себе хуи не ломали, тыкая ими рандомно во все щели.
Отладят технологию, будет посвободнее. А пока вам нихуя нельзя
ps Отдельно ору, что вам прямым текстом диктуют что делать и что не делать, как называть и не называть методы при этом не какой то там злючий фреймворк, а вери анопиниэтед лайбрари. Твердо и чётко.
>>2181868 Дебс, хуки - это по сути стейт контейнер реакта, и ты можешь им не пользоваться, а написать свой, если тебя не устраивают ограничения, но все равно придется прокинуть его интерфейс либо в хук, либо в setState. И да, ты можешь их вызывать хоть из цикла, хоть из своей жопы, до тех пор, пока порядок вызова тот же самый. >Отладят технологию, будет посвободнее Если бы ты понимал, как хуки работают, то не молол бы подобной хуйни. Эти ограничения связаны с особенностью реализации и обойти их нельзя.
>>2181862 Долбоеб, корона не жмет? Читать умеешь? Видно, что нет, так бы ты заметил в моем посте: >Как плюс у нас будет единая точка конфигурации
Говна тебе на рыло. Вкатун дебилятор что-то там орет о шизиках. Уже не говоря о том, что дебилятор не вкурсах, что можно, на пример, рефлексивно по неймконвеншенам "настраивать" (не говорю, что так надо).
>>2181897 >Как плюс у нас будет единая точка конфигурации Только это нихуя не плюс, когда кусок твоего приложения не может заработать без инжекта зависимости, а инжект зависимости делается из жопы, да еще и вместе с десятком других зависимостей. Это пиздец какое архитектурное усложнение лишней абстракцией и оно требует очень хорошего оправдания, которого 99% приложений дать не могут.
>>2181897 Амиго, я те говорю, это местный ряктошиз-борцун. Посмотрел пару видосов, написал тудушку с чатиком, и думает что весь такой дохуя прогрессивный и может ссать старперам головы. Читать, при этом, не умеет. Молодо-зелено, хули
>>2181920 Я уверен, что пишу код в два раза больше годков, чем ангуляродурачок, строящий из себя деда. Сколько там у тебя опыта, лет 5-6? Алсо, серанул с >проще игнорировать неприятные аргументы, чем пытаться на них отвечать своими
>>2181914 Так может же. Не хочешь юзать контейнер - ну инстанцинируй вручную. Хотя я такого кейса представить не могу. Мы же за инжекшн в конструктор говрим. Или что ты имеешь ввиду?
>да еще и вместе с десятком других зависимостей Если ты о перфомансе, то не вместе. Если о том, что настраивать в одном месте - так в этом и принцип IoC, мы инверсим и теперь у нас нижний слой-потребитель решает что ему и как надо.
>>2181943 Я говорю про то, что ты добавляешь в свой проект глобальную 3rd-party магию, без которой код работать не будет в принципе. Магию, которая будет растащена по конструкторам, классам, по всему. И в большинстве случаев такая магия не нужна. А там, где она нужна, всегда хватает либо обычной фабрики/синглтона, либо просто-напросто аргумента в конструкторе. DI и IoC как таковые не требуют глобального монстра, который перемалывает все на свете и выблевывает кусками по приложению. Старое доброе правило гласит, что если ты используешь DI-фреймворк в жава-проекте, то ты скорее всего долбоеб. А если ты используешь DI-фреймворк в динамическом языке, где можно в рантайме заинжектить хоть аллаха в очко мухаммеда, то ты медицински даун.
>>2181963 > И в большинстве случаев такая магия не нужна. А там, где она нужна, всегда хватает либо обычной фабрики/синглтона, либо просто-напросто аргумента в конструкторе. А что там за магия в спринге и зачем она? Он вроде как создаёт наследников всех твоих классов и вместо инстансов твоих классов подсовывает тебе какие-то прокси, так? Зачем это?
>>2181963 Что ты там себе в головушке нафантазировал-то? О каком монстре ты говоришь? Никакой магии в твоих классах не будет, да, просто у конструктора будут аргументы ты вообще читаешь пост на который отвечаешь? >динамическом Какая. Нахуй. Разница. Динамический он или нет? ажтрисет
>>2181914 >Это пиздец какое архитектурное усложнение лишней абстракцией и оно требует очень хорошего оправдания Например, DI на ридерах хорошо композится и зависимости мержатся. А еще, а еще, можно останавливать всплытие зависимости и в нужном месте в рантайме оверрайдить её (зависимость). Так что твой аргумент инвалид.
>>2181997 >ажтрисет С добрым утром. Братишка, ну прекрасти. Он же не читает то, с чем спорить.
Ты на голубя агришся, который клювом по клаве стучит. >Сколько там у тебя опыта, лет 5-6? С 2005 программирую помаленьку, еще на 5м курсе (220200) начал работать в ойти
>>2181989 >Что учить? ВЕРСТКА https://developer.mozilla.org/ru/docs/Web/CSS Раскрою чуть по областям. HTML и CSS азы, чтоб понимать чем <span> отличается от <div> и уметь в div > li Точно надо узнать чем верстка на флексбоксах отличается от верстки на гридах от верстки на таблице
>>2182179 Верстку и JS/TS (более менее) шарю. По RxJS понял, надо учить. Мне интересно по поводу ООП, паттернов проектирования, Чистые коды и прочее. По идее это же все нужно в Ангуларе. Это же тоже стоит глянуть?
>>2182495 А смысол? Дабы его енкриптить нужен ключ. Откуда ты его брать будешь? С бека? Так в чем тогда сакральный смысол? Ты же знаешь, что хттпС так все ширует?
После вебпака у меня бандл 2.5 мегабайта + помойка с кучей вендоров, че мне делать? нужно порезать его и на какие размеры? У меня же все равно будет долго грузиться все.
>>2182461 >Мне интересно по поводу ООП, паттернов проектирования, Чистые коды и прочее. По идее это же все нужно в Ангуларе. Это же тоже стоит глянуть?
Без всякого сомнения. Хотя бы обзорно надо понимать. Классы, Интерфейсы, Наследование , Инкапсуляция.
Это в целом, пофиг на каком языке. Хоть бы и на Object Pascal.
Скорее всего с какими-то базовыми концепциями ты даже уже знаком
Заебался с датами поэтому прошу у анона помощи. У меня есть апи который откидывает мне даты. Даты всегда в нулевом часовом поясе и поэтому на фронте я их с помощью date-fns format() подгоняю под юзера. Но теперь возникла задача кидать даты в этот апи и мне нужно их как-то форматнуть в нулевой часовой пояс с учётом пояса юзера. Это можно по человечески через date-fns провернуть? Если да, то как.
>>2182525 1) "Подгонять под юзера" даты не надо, если ты распарсишь ее в Date объект(через date-fns/parseISO например), то он по умолчанию будет в локальном времени. 2) Нормальному API должно быть похуй, какой у даты часовой пояс, главное чтобы он в принципе был указан. Для начала попробуй просто в свое API передавать дату, отформатированную через date-fns/formatISO или Date#toISOString 3) Если по какой-то причине API так работать не будет, до добро пожаловать в еблю с таймзонами, смотри в сторону Date.UTC или date-fns-tz
>>2182510 Ты свой обсер в штаны как аргумент всегда используешь? И тебе не шифрование нужно, а хеширование. Юзай лучше свой глюкавый бкрипт, а то обосрешься сесурити это сложно - гарантия.
есть лист тудушек в родительском компоненте, где каждая тушудка имеет вид {title: "asd", id: 123, completed: false}. есть компонент, который получает этот лист из контекста и рендерит все это дело в отдельные компоненты тудушки. в каждом компоненте тудушки есть кнопка, которая должна переключать поле completed на true. вопрос - как поменять это поле?
The button type attribute must be specified by a static string or a trivial ternary expression Сап аноны, подскажите, как пофиксить? Хочу кнопку с общими стилями для разных типов сделать
>>2182669 Логично, но я не понимаю как должна выглядеть эта функция... В компоненте App у меня есть стейт [todos, setTodos] = useState([]), в контекст я прокидываю объект {todos, setTodos}. Далее в отдельном компоненте todo я принимаю todos и setTodos через контекст, что дальше делать не пойму, понимаю, что надо использовать setTodos и выбрать оттуда этот отдельный туду и поменять ему поле, но как конкретно это сделать...
>>2182642>>2182716 В самом простом виде - так. Но если это будет хоть как-то расширяться, то легче сделать объект actions, куда засунуть вещи вроде completeTodo(todo), removeTodo(todo), addTodo(todo) и передавать в контексте уже этот объект, а не сырой setState
Поясните, или ткните где читать. Вот есть оператор `new`. Есть разные функции (String() Array() и т.д), которые на выходе возвращают значение определенного типа из названия функций. Я вот прочитал, что если к условной функции String() добавить оператора `new` (new String()) то на выходе возвращается уже обьект, у которого каким-то боком есть методы, присущие строке. Вопрос как это вообще получается? Неужели в каждом конструкторе прописаны изначально эти методы.
>>2182772 Ты Кантора жопой читал? У примитивов нет методов. Методы есть у объектов. Когда ты делаешь "хуй".toUpperCase() под капотом происходит new String("хуй").toUpperCase(). Это просто синтаксический сахар навываемый autoboxing
>>2182851 Реакт абсолютно никакого отношения к редуху не имеет, и чтобы в твоем реакт-приложении был редух ты должен его сам туда добавить ручками. Можешь не добавлять и добавить любой другой стейт менежер, разрешаю.
>>2182860 Ну это и есть кал, надо или сервер чинить чтобы даты присылал без времени и таймзоны, или форматировать дату в присланной таймзоне. Intl.DateFormat справится наверн
>>2182875 Окей. Другой вопрос, а как тогда отправлять дату типы дня рождения? Фронт присылает сука таймзону и оно на беке может привестись к другой дате. Тоже самое? Бек виноват?
>>2182885 Ну если вы даты передаёте то их правильнее передавать без таймзоны по причинам выше. Если бэк не поменять то отправляй 12:00:00 чтобы хотя бы другие не ебались с конвертацией все равно поебаться то придётся, хех Самая мякотка - катать датувремя без таймзоны и чтобы ещё ошибка конвертации накапливалась. Все это на машинах без своевременных обновлений об таймзонах, чтобы ещё и парсилось неправильно.
>>2182885 Дата рождения – это не время и тем более не таймстемп. Если у тебя день рождения 14 октября, то ты его празднуешь 14 октября везде нахуй, а не 13го в соседнем часовом поясе. Проще всего вообще не использовать кодирование времени, просто месяц и число, год. Ну или UTC, на то оно и Универсальное Координационное.
Анончи поясните войтишнику за Node.js Vue.JS Angular TypeScript На чем надо вкатываться чтобы с меньшей вероятность обосраться? Чем это все отличается?
>>2183086 Вероятность обосраться не зависит от инструментов. Представь, что ты собираешься стать условным слесарем, пришёл такой и спрашиваешь: молоток, пила, плоскогубцы. Что надо учить, чтобы не обосраться?
>>2183236 Аргументируй что ли. Всё перечисленное - инструменты. Неплохо было бы начать с основ CS и какой-никакой базы, а потом хвататься за технологии. В СНГ вакансий на React и правда много. Но технология не зависит от того, обосрётся он, или нет. Всегда смешно собеседовать челиков, которые дальше JS и React ничего не знают, потому что в этом случае они и их знают крайне поверхностно.
>>2183246 >Неплохо было бы начать с основ CS и какой-никакой базы Да что уж там. Пока SICP не прошел путь в JS закрыт >Но технология не зависит от того, обосрётся он, или нет Нет, чем выше спрос, тем проще попасть при должной подготовке >Всегда смешно собеседовать челиков, которые дальше JS и React ничего не знают Это уже от уровня знаний зависит. На работу реактомакакой скорее возьмут челика, который хорошо разбирается в Реакте, чем того, кто поверхностно нахватался из разных фреймворков. речь как раз и идет о том, что выбирать надо что-то конкретное и оттачивать навык в этом, а не распыляться на все подряд.
>>2183273 >Да что уж там. Пока SICP не прошел путь в JS закрыт Ты рофлишь что ли? Я говорю про базовый уровень CS, понимание браузеров, сетей, протоколов. Базовое. Откуда у тебя этот максимализм? Школьник что ли? >Нет, чем выше спрос, тем проще попасть при должной подготовке Ты сам пишешь про должную подготовку, это иронично. Проще попасть - так себе аргумент. Если цель как угодно влезть в индустрию, то так конечно можно. Только вот при этом спустя некоторое время есть шанс понять, что это и близко не твоё, и роста нет, а уровень стресса выше крыши. >Это уже от уровня знаний зависит Спасибо, что в очередной раз подтверждаешь важность уровня знаний, а не инструментов. Кто-то говорил про распыляться разве? Конечно в начале пути важно выбрать пару технологий, в которых качаться. Но из списка, который чел принёс, можно явно сделать вывод, что его понимание находится на очень странном уровне, раз он ноду/реакт/тс вообще в один список принёс. Был бы вопрос про ангуляр/реакт/вью, ответить было бы проще. Выбросить ангуляр и на считалочку выбрать из оставшихся, если не смущает, что на вью меньше вакансий в СНГ.
fl.map(fl => fl.split('_').map(fl => fl.charAt(0).toUpperCase() + fl.slice(1))); За такое говно в проде не сильно ебут? не функционалошизик, а питухонист
>>2183280 >Только вот при этом спустя некоторое время есть шанс понять, что это и близко не твоё, и роста нет, а уровень стресса выше крыши Толи дело работать в пятере, в каких-нибудь продажах или мелким клерком. Вот уж работа мечты. Нет никакого "твое-не твое", есть оптимальные варианты, меньшее из зол. В айти меньше распидяйства, лучше заработок и есть хоть какие перспективы. Можно даже искренне ненавидеть программирование, но осознавать, что все остальное еще хуже в наших текущих реалиях.
А вот если в функции .sort я буду возвращать не 0, 1, -1, а только -1, 1, это вообще скажется на чем-то, может на производительность будет как-то влиять? Допустим возьмем для примера фильтрацию обычных чисел.
>>2183280 >Я говорю про базовый уровень CS, понимание браузеров, сетей, протоколов Проиграл. Давно тебе это пригождалось в клепании серверов на ноде, не говоря уж про фронтенд-фреймворки, поехавший? Ну и формулировка тоже шизоидная, "понимание браузеров" звучит как "уверенное владение компьютером", конкретика где? Типичный диванный дурачок, который думает, что если начать учить абсолютно оторванные от будущей работы вещи, которые никогда на практике не пригодятся(алгоритмы, протоколы, математику, ассемблер), то это внезапно каким-то магическим образом станет "базой" или "сформирует мышление".
>>2183286 Прод проду рознь. Нейминг fl хреновый, ну и лучше вынести в функцию с говорящим названием, да.
>>2183290 Это ты сейчас своими страхами поделился? Спасибо конечно. Но тенденция того, что "войти в айти" пытаются даже те люди, которым туда не надо, тревожная.
>>2183348 Удачи пройти собеседование в нормальную компанию без протоколов, алгоритмов и общего понимания. Но если тебе ок в месте, где нужна любая макака, которая чуток умеет в реакте формочки клепать, то дело твоё. Про математику и асм речи, кстати, не было, это твой школьный максимализм опять проснулся. Смешно от тебя слышать про "диванного дурачка". Как говорится, покажи на человека пальцем, и три пальца укажут на тебя самого.
>>2183357 Неплохо сначала определиться хотя бы с - фронт или бэк. Во всём списке нет ничего ебанутого, но из него видно, что человек вообще не понимает, что про спрашивает. Для него это не инструменты, а набор букв, чтобы "вкатица".
>>2183377 >Удачи пройти собеседование в нормальную компанию без протоколов, алгоритмов и общего понимания То есть ты не споришь, что в реальной работе это не нужно, а нужно только чтобы пройти собеседование в говнокотору уровня яндекса, где тебя закомплексованные 40-летние олимпиадники-анальники будут ебать алгоритмами на собесе, после чего об этих алгоритмах ты и не вспомнишь, правильно?
>>2183385 Вот это тебя кроет конечно. Понимаешь, какое дело, то, что ты называешь говноконторой, делает продукты, которыми пользуются и в СНГ и за его пределами. Более того, тот же Яндекс в найме использует "западную" модель. Если ты не в курсе, то все нормальные компании в Европе и США нанимают через секции. И среди них с высокой долей вероятности будет и HTML/CSS/JS, и условный React, и алгоритмы, и system design. И каждая секция редко занимает меньше часа.
Но повторюсь - если тебе нравится сидеть в компании, куда берут просто за "я знаю риякт", вопросов нет.
>>2183377 >Удачи пройти собеседование в нормальную компанию без протоколов Постоянно захожу в нормальные компании без этого говна.
На прошлой работе говорил в стиле "тут хуй знает но можно просто загуглить" На текущей (топ 5 ит контор РФ) просто показал свою репку с пет проектами. Ну и демки на файрбейзе.
>>2183415 Удачи прожить какое-то время на ангуляре. И у меня и у знакомых большую часть кода переписывают на реакт, тк ангуляр фактически признан легаси. Не трогают только совсем большие штуки, и нового ничего на ангуляре не делают. А про душнил говорят обычно те, кто боятся, что не потянут :)
>>2183410 На вопрос все еще не ответил, мань. Нужны лохоритмы в работе или нужны только чтобы собеседование пройти? Примерно почувствовать можешь? Когда последний раз лохоритм писал сам? Потому что если не нужны, то твой совет "сначала учи сети и лохоритмы" отправляется в мусорку, так как очевидно нужно прежде всего учить то, с чем ты реально будешь работать(например конкретный фреймворк), а только потом разбираться с удовлетворением иррациональных фетишей собеседующих.
>>2183417 Про психологию ты верно отметил. И специально задрочил жс когда перекатывался, чтоб проходить душнил. Ну типа как борьба с собой и страхами.
И я те скажу что все равно это хуйня и игра в собес. Потому что задроты просто не умеют в собеседования (на то они и задроты), и катают по накатанной. Покажи что знаешь про зис, покажи что знаешь про микротаски и прочее.
Сейчас я без проблем отвечаю на душные вопромэсы типа "напишите нам каррирование от произвольного количества аргументов" при этом Всё щё считаю что душнил не нужны.
Касаемо моих удач. Братишь, я за 17 лет в индустрии столько раз видал как "хайпнейм" приходит и уходит, что совершенно никуда не тороплюсь.
Пока достойной работы на ангуляре валом, комунити очень толковое.
Пока у рякта есть набор фундаментальный хуйни которую даж рякторазрабы признают.
У меня вот сегодня собеседование было. Я очень долго задачу решал. Не люблю когда смотрят над моим решением, так что я не сильно лучше тебя. Хотя пихуй, я всё равно к ним на работу не пошёл бы
сап, аноны, можете подсказать, как пофиксить ошибку? пытаюсь убрать коллбэк. Если так то норм все работает: onChange={(date: Date) => setEndDate(date)} datepicker отсюда взял https://reactdatepicker.com/
>>2183661 >>2183658 Не слушай этого еблана про мутации. Мутации нормальная вещ, просто надо думать головой и прикидывать где важнее возможность мутировать и скорость, а где важнее не продолбать случайное изменение.
>>2183658 Во-первых, возвращая новое значение из функций. Во-вторых, никто не говорит что мутации нельзя - просто их нужно изолировать и минимизировать.
Кто-нибудь знает программу/сайт в которой можно создавать компоненты сайта и менять их дизайн. Было бы идеально если бы код конвертился в vue или react. Анон, помогай, я заебался верстать руками
>>2183647 Говнокод - это контекстуальное понятие и никто в жизни тебе не скажет, говнокод на скрине или нет, не зная предварительно, что этот код делает и в каком окружении он существует, т.к все, что тут видно - это пару условий без контекста, судить тут нечего. Поэтому на тебя и накинулись только ваннаби фп-шизики с религиозными догмами уровня НЕ УКРАДИ, НЕ МУТИРУЙ, НЕ ИСПОЛЬЗУЙ THIS, НЕ УБЕЙ, НЕ ВКЛАДЫВАЙ ИФЫ, которые в их мозгу существуют в отрыве от любого контекста и якобы применимы всегда.
>>2183859 >Поэтому на тебя и накинулись только ваннаби фп-шизики Молвил как божечка. Лучик света в этом царстве мамкиных какбэ функциональных какбэ программистов.
>>2183647 Братишка, за я тебе расскажу за всю хурму.
Что такое говнокод? - это код который делает сложно там где можно сделать просто. 10 ифов вместо 1 кейса там, где это уместно, это говнокод. - это код который тяжело понять тому, кто его не писал. Подумай какого будет тому кто после тебя... - это код который не следует принятой в твоем коллективе конвенции по именованию и форматированию - это код который делает чрезмерно много вещей для простой задачи (из пушки по воробья) - это код который отвечает сразу за все. 1 метод дуДжоб на 2 экрана это помойка, 20 методов которые делают конкретное и называются соответственно, это хорошо - функциональщина ради функциональщины это говнокод(это кстати вытиуает из первых пунктов)
Накиньте линков плес (или объясните сами) как простым языком понять Mapped Types в typescript и эффективно использовать дженерики. Когда доходит до этого дело - не понимаю что писать (и как).
>>2183882 Есть подозрение что вплоть до мидл+ тебе эти махинации с типами из типов просто не нужны.
Более того, я глубоко убеждён что они всегда не нужны, потому, что генерировать типы динамически, это уже такое мета программирование которое делает твои программы более сложными в понимании.
Реально я в жизни никогда не видал, чтоб кому то по производственной необходимости (а не блажи ради) писать вот это вот все: type OptionsFlags<Type> = { [Property in keyof Type]: boolean; };
Вместо этой мути, лучше обмазываться интерфейсами на каждый чих. Тогда будешь гарантированно молодцом. Дед-на-ангуляре
>>2183882 >Кроме того, не нужно знать контекст, чтобы сказать что мутации и this'ы это плохо Как тебе уже сказали, программ без мутаций стейта не существует в принципе. Программа, которая не изменяет стейт - это программа на листке бумаги, а не в компьютере. То есть первая дебильная догма летит в окно. >This'ы, например, НИ В ОДНОМ контексте не нужны. Нужны, в контексте использования классов и ООП. Если ты кукарекнешь, что в объектно-ориентированном жсе ты не используешь ООП, то ты долбоеб и пиздабол, который думает, что если new Calculator() поменять на buildCalculator(), то ООП резко пропадет.
>>2183449 Ну давай ещё какой баян притащи. Ты во всё субъективное говно, которое подкрепляет твою маня-точку зрения с ютуба веришь? Про когнитивные искажения чё-нить слышал?
Я вообще угараю с этого маминого функциональщину, которому зис нинужен, в контексте того, что любая ф-я в жс это литерали инстас Object с дополнительными полянами типа ссылок на ОБЪЕКТ скоупа...
Я вообще угараю с этого маминого функциональщину, которому зис нинужен, в контексте того, что любая ф-я в жс это литерали инстас Object с дополнительными полянами типа ссылок на ОБЪЕКТ скоупа...
Понял. Спасибо дедушка, мне стало немножко легче. В принципе, я так и делаю, как ты говоришь, проблем не знаю. Просто нашёл задачки по этой ссылке и мне действительно сложно что-то написать. В некоторых случаях я просто не понимаю конвенцию Typescript
>>2183927 На первом пикче кнопки разноцветные. Это задания. Кликай на какую хочешь. Выходишь на страницу задания. Нажимаешь на кнопку Take the challenge и тебя кидает в песочницу. Пишешь только в области, где написано "Your Code Here" (пикча 3). У меня не было никаких проблем
>>2183673 Пчол, как раз для таких случаев придумали тип any. Серьёзно, на разбирательстве внутренних типов ты потратишь время и скорее всего ситуацию не решишь. Я благословляю тебя на его использование.
>>2183919 >Просто нашёл задачки по этой ссылке Ну я тебе так скажу. Я там сам нихуя не понимаю, дальше бейсика. При этом свои 200+ кк наносек имею.
Не забывай, что пограммирование это все же ремесло для большинства. Непростое, но ремесло.
А конкретно эти челинджи про иксусство.
Я вообще, сторонник поступательного развития. Прежде всего надо понимать обзорно многие концепты. Потом надо постоянно думать как бы сделать свой код получше (а не повыебитстее)
И тогда, если у тебя есть кругозор, ты начнешь понимать как применить те или иные штукидрюки.
Ну типа вот прочитал ты forkJoin из RxJS и такой "нипонял, хуня какая то"
А потом встала реальная задача перед отображением страницы дождаться когда 7 дропдаунов из апи приедут. И ты такой , юля ну точно!
Так и с этими продвинутыми типоштуками. Ты в принципе должен знать что есть там keyof, всякие служебные типы, аля Required<T> Partial<t> и когда придет нужда ты наверняка вспомнишь что что то такое было
Не пытайся объять необъятное, сейчас не 2002й чтоб весь справочник по языку в голове држать.