Ну если айтишник, как часто бывает, все в одном: и кодер, и архитектор, и аналитик — то он и побольше назначенного директора может в процессах разбираться.
// Задачу можно решить так, как показано выше, но я предпочитаю следующий метод (async () => { Promise.all([selectPizza(), selectDrink()]).then(orderItems) // асинхронный вызов })()
Разве здесь не нужен await (или убрать фигурные скобки вокруг тела функции)?
Статья как по мне спорная. Не увидел особого "ада", в основном, начальные примеры показывают, что бывает, если не понимаешь, как работает async/await.
Как по мне, разобраться с этим уж точно не сложнее, чем с промисами. А код получается на порядки читабельнее.
Я думаю, что ваш случай — это то, что автор предыдущего сообщения назвал "гениальным программистом". То есть человек, который в силу интереса или трудолюбия или способностей знает и умеет сильно больше, чем ожидается от человека с аналогичным опытом.
Однако, посыл комментария, на который вы отвечали, в том, что оптимально по трудозатратам качать не только программирование, а еще и скилл презентации и продажи себя.
Также полезно выучить минимальные основы психологии и педагогики, маркетинга, сейлза в айти, и понять, как зарабатывают разные виды IT компаний (продуктовые, аутсорс, аутстафф и т.д.)
Это реально не сложно и не очень много, но расширяет кругозор и позволяет эффективно продать себя на более интересную позицию (и тут уж кому что интересно: больше денег, более интересные задания, общение или его отсутствие и т.п.). И избегать, в конце-концов, глупых ошибок, приходя с супер-скиллом наголо в десятилетний энтерпрайз проект и хватаясь там все переделывать.
А почему вы уверены, что это было более болезненно? У всех свои особенности, свои слабые и сильные стороны. Вам как отличнице было тяжело одно, троешникам — другое, одаренным — третье. Редко кому вообще легко.
Ну и опять же, если человек не пишет и не говорит о своих переживаниях и трудностях, это не значит, что их нет.
Например, по Фаулеру, репозиторий — медиатор между доменным слоем и слоем датамаппера, обеспечивающий возможности выборки по критериям.
И где здесь о том, что репозиторий должен содержать все требуемые данные?
Как вы собираетесь делать выборки, если у вас доступна только одна таблица? Да никак, в любых случаях кроме самых тривиальных это просто не работает.
Очевидно же, путем запроса нескольких репозиториев.
DbContext, DbSet и прочий LINQ — это не классический репозиторий, это сущности, поддерживающие описание запросов к источнику данных на .NET совместимом языке. Он обязан иметь доступ ко всем возможным сущностям, т.к. неизвестно, какие будут запросы.
Вы уверены, что это нужно делать именно одним контекстом? У него не будет практически ни одного свойства, которое ожидается от контекста (транзакционность, трансляция LINQ в SQL). По-моему, такое нужно делать как можно более явным, а не инкапсулировать.
Не вижу там shouldComponentUpdate. Мне кажется, можно было бы реализовать его и проверять, изменились ли данные, возвращаемые monitor (а предыдущие сохранять в стейте, например).
Или, как вариант, возвращать true из shouldComponentUpdate каждые 16мс. forceUpdate, как по мне, не выглядит правильным решением.
Не совсем понял из статьи и из комментариев, почему нельзя оптимизировать перерисовку компонента до обновления только свойств top и left (или transform)?
Хотя веб, конечно, тот еще бардак, у него есть два огромных преимущества:
веб много лет эволюционировал для разработки UI. В результате в нем есть классные подходы типа FRP, которых нет (насколько я знаю) ни в одном десктопном фреймворке (кроме React Native).
компонуемость: практически нет ограничений на содержимое элемента, поэтому можно довольно легко делать очень сложные вещи, типа тех же гридов.
Как на Java FX сделать сложный грид? Как вывести туда данные? Можно ли сделать меню у заголовков столбцов?
Единственный, на мой взгляд, реальный конкурент веб-подходам на десктопе — это мобильные приложения, но им еще долго догонять веб-приложения по удобству разработки.
Уровень преподавания, студентов и преподавателей напрямую связан с полезностью и востребованностью образования.
Так же очень важен общий уровень мотивированности студентов, который поддерживается отчислением неуспевающих, и опять же, востребованностью образования.
В СССР технические специальности давали, насколько я понимаю, довольно актуальные знания, и выпускник, пришедший на производство, не чувствовал, что зря потратил шесть лет.
После СССР же эта связь нарушилась в большинстве специальностей, исключая, наверное, только медицину (да и там свои проблемы), ну и, в меньшей степени, госслужащих — адвокатов, судей и т.п.
А новые специальности, которые открывал каждый ВУЗ, они вообще зачастую оторваны от жизни.
Так вот, конечно же, не может быть массового, хорошего, но бесполезного обучения.
По-хорошему должен быть один-единственный canvas, на котором рисуется всё что нужно приложению любым нужным фреймворком.
Так это и сейчас можно. Только попробуйте продать такую разработку кому-нибудь. И дизайнера впридачу, т.к. на бутстрапе сверстать может даже программист, и от этого не будет тошнить, а рисовать на канвасе — это мы вернемся в век адских самописных утилит с джпег-картинками вместо кнопок.
а прижать футер резиновой высоты к низу страницы невозможно до сих пор (а с js нельзя, потому что будет мерцать из-за асинхронности)
Да вроде можно тем же флексом прижать, если устраивает скролл в рамках области контента
Были джава-апплеты. Не судьба. Был Сильверлайт. Был ActiveX. WPF в браузере. Даже Флеш — и тот отходит.
А отвратительный, старый, небезопасный веб, с ужасным Джаваскриптом, с пол-гигов памяти на вкладку — живет.
Делать интерфейсы как в играх — можно с бюджетами, как в играх. Впрочем, их можно в вебе делать и сейчас — да никто не делает. Потому что все описанное в статье — хорошо как теория, как идеальная картинка, но не как решение тех проблем, которые решает веб.
Ну если айтишник, как часто бывает, все в одном: и кодер, и архитектор, и аналитик — то он и побольше назначенного директора может в процессах разбираться.
return нужен внутри map, иначе Promise.all ничего не дождётся.
Потеряли return или лишние фигурные скобки.
Или бабель добавляет туда return сам? Просто в самой статье тоже была такая же ошибка.
В Реакте ДИ нет. Но дело в том, что на Реакте можно писать без инъекций, а в Ангуляре без них писать невозможно.
Разве здесь не нужен
await(или убрать фигурные скобки вокруг тела функции)?Статья как по мне спорная. Не увидел особого "ада", в основном, начальные примеры показывают, что бывает, если не понимаешь, как работает
async/await.Как по мне, разобраться с этим уж точно не сложнее, чем с промисами. А код получается на порядки читабельнее.
"Небольшое движение" — это нативная поддержка JSX в Тайпскрипте, с проверкой шаблонов во время компиляции.
А вы уверены, что это разные вещи? :)
Я думаю, что ваш случай — это то, что автор предыдущего сообщения назвал "гениальным программистом". То есть человек, который в силу интереса или трудолюбия или способностей знает и умеет сильно больше, чем ожидается от человека с аналогичным опытом.
Однако, посыл комментария, на который вы отвечали, в том, что оптимально по трудозатратам качать не только программирование, а еще и скилл презентации и продажи себя.
Также полезно выучить минимальные основы психологии и педагогики, маркетинга, сейлза в айти, и понять, как зарабатывают разные виды IT компаний (продуктовые, аутсорс, аутстафф и т.д.)
Это реально не сложно и не очень много, но расширяет кругозор и позволяет эффективно продать себя на более интересную позицию (и тут уж кому что интересно: больше денег, более интересные задания, общение или его отсутствие и т.п.). И избегать, в конце-концов, глупых ошибок, приходя с супер-скиллом наголо в десятилетний энтерпрайз проект и хватаясь там все переделывать.
Ну либо же человек, со способностями значительно выше требуемых в месте учебы.
А почему вы уверены, что это было более болезненно? У всех свои особенности, свои слабые и сильные стороны. Вам как отличнице было тяжело одно, троешникам — другое, одаренным — третье. Редко кому вообще легко.
Ну и опять же, если человек не пишет и не говорит о своих переживаниях и трудностях, это не значит, что их нет.
И где здесь о том, что репозиторий должен содержать все требуемые данные?
Очевидно же, путем запроса нескольких репозиториев.
DbContext, DbSet и прочий LINQ — это не классический репозиторий, это сущности, поддерживающие описание запросов к источнику данных на .NET совместимом языке. Он обязан иметь доступ ко всем возможным сущностям, т.к. неизвестно, какие будут запросы.
Вы уверены, что это нужно делать именно одним контекстом? У него не будет практически ни одного свойства, которое ожидается от контекста (транзакционность, трансляция LINQ в SQL). По-моему, такое нужно делать как можно более явным, а не инкапсулировать.
Не вижу там
shouldComponentUpdate. Мне кажется, можно было бы реализовать его и проверять, изменились ли данные, возвращаемыеmonitor(а предыдущие сохранять в стейте, например).Или, как вариант, возвращать
trueизshouldComponentUpdateкаждые 16мс.forceUpdate, как по мне, не выглядит правильным решением.Не совсем понял из статьи и из комментариев, почему нельзя оптимизировать перерисовку компонента до обновления только свойств
topиleft(илиtransform)?Хотя веб, конечно, тот еще бардак, у него есть два огромных преимущества:
Как на Java FX сделать сложный грид? Как вывести туда данные? Можно ли сделать меню у заголовков столбцов?
Единственный, на мой взгляд, реальный конкурент веб-подходам на десктопе — это мобильные приложения, но им еще долго догонять веб-приложения по удобству разработки.
Вы согласны платить за мини-CRM цену Фотошопа?
Уровень преподавания, студентов и преподавателей напрямую связан с полезностью и востребованностью образования.
Так же очень важен общий уровень мотивированности студентов, который поддерживается отчислением неуспевающих, и опять же, востребованностью образования.
В СССР технические специальности давали, насколько я понимаю, довольно актуальные знания, и выпускник, пришедший на производство, не чувствовал, что зря потратил шесть лет.
После СССР же эта связь нарушилась в большинстве специальностей, исключая, наверное, только медицину (да и там свои проблемы), ну и, в меньшей степени, госслужащих — адвокатов, судей и т.п.
А новые специальности, которые открывал каждый ВУЗ, они вообще зачастую оторваны от жизни.
Так вот, конечно же, не может быть массового, хорошего, но бесполезного обучения.
Так это и сейчас можно. Только попробуйте продать такую разработку кому-нибудь. И дизайнера впридачу, т.к. на бутстрапе сверстать может даже программист, и от этого не будет тошнить, а рисовать на канвасе — это мы вернемся в век адских самописных утилит с джпег-картинками вместо кнопок.
Да вроде можно тем же флексом прижать, если устраивает скролл в рамках области контента
Были джава-апплеты. Не судьба. Был Сильверлайт. Был ActiveX. WPF в браузере. Даже Флеш — и тот отходит.
А отвратительный, старый, небезопасный веб, с ужасным Джаваскриптом, с пол-гигов памяти на вкладку — живет.
Делать интерфейсы как в играх — можно с бюджетами, как в играх. Впрочем, их можно в вебе делать и сейчас — да никто не делает. Потому что все описанное в статье — хорошо как теория, как идеальная картинка, но не как решение тех проблем, которые решает веб.
https://github.com/hshoff/vx