|
|
![]() Принципы SOLID на JS, теперь точно простым языком, но не очень короткоВторник, 01 Января 2023 г. 00:46 (ссылка)
SOLID — универсальный набор принципов разработки поддерживаемого программного обеспечения. В данной статье я попытался разъяснить свое понимание принципов SOLID в отношении языка JavaScript: особенности реализации, некоторые синтаксические конструкции и, конечно, примеры из жизни. Если вам стало интересно, то прошу под кат. Читать далееhttps://habr.com/ru/post/714068/?utm_source=habrahabr&utm_medium=rss&utm_campaign=714068
![]() [Перевод] Воины и волшебники, часть пятая, финалПятница, 20 Января 2023 г. 10:07 (ссылка)
В последних четырех эпизодах мы изо всех сил пытались закодировать правила нашей бизнес-области — которые, напомню, могут быть волшебниками и воинами, заказами и оплатами или чем-то еще — в систему типов C#. Выбранный нами инструмент, кажется, сопротивляется нашим попыткам, и поэтому, возможно, самое время сделать шаг назад и спросить, на правильном ли мы пути. Фундаментальной идеей в первом и втором эпизодах было использование системы типов для обнаружения и предотвращения нарушений правил предметной области во время компиляции. Эта попытка в значительной степени потерпела неудачу из-за сложности представления подтипа с ограничением, например, «Волшебник — это игрок, который не может использовать меч. В нескольких наших попытках мы закончили тем, что выбрасывали исключения, так что правило применялось средой выполнения, а не компилятором. В третьем и четвертом эпизодах этой серии мы увидели, что также было трудно понять как вызвать правильный код для обработки различных конкретных правил, а также куда поместить этот код. Даже если оставить в стороне проблемы с очень многословным и сложным шаблоном посетителя и опасным шаблоном динамического вызова, у нас все еще есть фундаментальная проблема: почему «Паладин в церкви атакует оборотня с мечом» является ответственностью одного из этих типов, а не другого? Читать далееhttps://habr.com/ru/post/711500/?utm_source=habrahabr&utm_medium=rss&utm_campaign=711500
![]() [Перевод] Воины и волшебники, часть третьяСреда, 18 Января 2023 г. 10:37 (ссылка)
Итак, давайте отвлечемся на несколько эпизодов. Мы временно оставим в стороне проблему того, как мы можем иметь и Игрока с Оружием, и Волшебника с Посохом (или Кинжалом). Предположим, что мы можем все это представить в виде типов. У нас есть еще одна проблема. Предположим, у нас также есть классы Оборотней и Вампиров, которые являются разновидностью Монстров. Нам нужно правило, которое гласит, что если Воин попытается ударить Оборотня после полуночи, то вероятность успеха будет снижена. (У волшебников нет такого штрафа, потому что… магия?) Подождите минутку — разве текущий момент времени это не после полуночи всегда? Короче, когда можно безопасно кормить могваев? Хотя это увлекательная проблема, я уверен, что это не та проблема, о которой я хочу говорить сегодня. Читать далееhttps://habr.com/ru/post/710754/?utm_source=habrahabr&utm_medium=rss&utm_campaign=710754
![]() [Перевод] Воины и волшебники, часть втораяВторник, 17 Января 2023 г. 11:19 (ссылка)
В этой серии мы исследуем проблему «игрок может использовать оружие, волшебник — разновидность игрока, посох — разновидность оружия, а волшебник может использовать только посох». Лучшее решение, которое мы придумали до сих пор — выдать нарушение преобразования типа во время выполнения, если разработчик допустил ошибку. Это не кажется оптимальным решением. (Если вы не читали первую статью серии, то обязательно начните с нее) создадим решение лучшеhttps://habr.com/ru/post/710752/?utm_source=habrahabr&utm_medium=rss&utm_campaign=710752
![]() [Перевод] Воины и волшебники, часть перваяПонедельник, 16 Января 2023 г. 12:10 (ссылка)
Распространенная проблема, которую я вижу в объектно-ориентированном проектировании: * Волшебник — это разновидность игрока. Но прежде чем мы углубимся в детали, я просто хочу отметить, что на самом деле я не говорю здесь о чем-то специфичном для жанра фэнтезийных ролевых игр. Всё в этой серии одинаково хорошо применимо к корпоративным приложениями, но о волшебниках и воинах писать интереснее, так что вот. давайте напишем несколько классовhttps://habr.com/ru/post/710748/?utm_source=habrahabr&utm_medium=rss&utm_campaign=710748
![]() Принцнипы SOLID коротко и простым языком (на JS)Воскресенье, 08 Января 2023 г. 07:42 (ссылка)
SOLID это аббревиатура, которая обозначает пять принципов объектно-ориентированного программирования. Эти принципы помогают разработчикам писать качественный и поддерживаемый код. Вот как выглядят эти принципы. Читать далееhttps://habr.com/ru/post/709446/?utm_source=habrahabr&utm_medium=rss&utm_campaign=709446
![]() [recovery mode] Аббревиатуры и термины в современном проектировании и разработке ПОПонедельник, 19 Декабря 2022 г. 21:14 (ссылка)
При поиске работы приходится просматривать много вакансий. Часто в заявках на вакансии упоминаются термины, сокращения или аббревиатуры подчас не знакомые, не встречавшиеся вам ранее. Особенно, когда у вас была практическая разработка на начальных позициях и некоторые термины, аббревиатуры вам могут быть не знакомы. К тому-же довольно часто HR добавляет в требования множество аббревиатур и технологий просто «про запас». Моей целью данной публикации являлся сбор определений, описаний некоторых терминов, аббревиатур которые мне часто встречались. А также дать для них некоторое описание для более , я бы сказал легкого понимания. Точная формулировка определений в некотором контексте является не простой задачей. Ваше резюме или предыдущий опыт может не полностью соответствовать тем технологиям и инструментам, которые заявлены в вакансии. Это еще не повод сильно расстраиваться и не отсылать своё резюме. Имея некоторое представление и определения, вам будет легче подготовиться, иметь представление с чем придется столкнуться в ваших интервью, технических собеседованиях по вакансии и процессе работы. Имея общее представление, расширив свой кругозор будет легче пройти собеседование, общаться в команде где используются стандарты и общие термины. Часто имея 50% навыков использования заявленных технологий, вы сможете претендовать на вакансию. Разберем некоторые термины и определения. https://habr.com/ru/post/706362/?utm_source=habrahabr&utm_medium=rss&utm_campaign=706362 ![]() [recovery mode] Инверсия зависимостей (dependency inversion principle)Понедельник, 19 Декабря 2022 г. 18:57 (ссылка)
Одним из принципов SOLID является инверсия зависимостей (dip). В литературе по программированию и в интернете масса источников с детальным описанием этого принципа. И большинство кандидатов на собеседовании успешно отвечают заученными фразами на вопрос: "Что такое инверсия зависимости?". Но при практической реализации мгновенно возникает вопрос, а в чем же собственно заключается инверсия и как она программируется? Далее будет рассмотрен данный принцип более подробно. Читать далееhttps://habr.com/ru/post/706416/?utm_source=habrahabr&utm_medium=rss&utm_campaign=706416
![]() Python на сервере и в браузере. Путь к Web AssemblyСреда, 23 Ноября 2022 г. 18:34 (ссылка)
Python как технология разработки приложений преимущественно используется для создания сценариев автоматизации, создания бэкэнда и веб-приложений, а также для анализа данных и использования методов статистики и машинного обучения. Также есть некоторые подходы к созданию мобильных приложений на Python (например, движок Kivy над OpenGL для Android). Но остается незаполненной ниша использования Python-приложений в веб-браузере, что могло бы позволить перенести часть обработки данных непосредственно на клиентское устройство и создавать полноценные fullstack-приложения на одной технологии. Решением этой задачи может стать кросскомпиляция Python в код WebAssembly, который может выполняться как в браузере, так и на сервере с использованием nodejs или движка V8, либо SSVM (Second State Virtual Machine). В статье мы рассмотрим несколько подходов к запуску Python-приложений внутри браузера и сервера с использованием WebAssembly. Читать далееhttps://habr.com/ru/post/701144/?utm_source=habrahabr&utm_medium=rss&utm_campaign=701144
![]() Принципы проектирования SOLIDПятница, 11 Ноября 2022 г. 12:11 (ссылка)
Группа принципов проектирования, связанных с разработкой программного обеспечения, предложенные Робертом Мартином. Характеризуют принципы, которые рекомендуется соблюдать при написании программного кода. Эти правила помогают писать код, который легко масштабировать и поддерживать. Основная цель статьи - познакомить Вас с общими принципами SOLID и показать примеры на языке Python. Читать далееhttps://habr.com/ru/post/698786/?utm_source=habrahabr&utm_medium=rss&utm_campaign=698786
![]() Принципы SOLID на примерахЧетверг, 15 Сентября 2022 г. 21:37 (ссылка)
Принципы SOLID на примерах Читать далееhttps://habr.com/ru/post/688530/?utm_source=habrahabr&utm_medium=rss&utm_campaign=688530
![]() [Перевод] Uniswap v3 Single Swaps (перевод гайда)Пятница, 26 Августа 2022 г. 18:10 (ссылка)
Документация содержит хорошие подробные туториалы,я лишь немного хочу раскрыть их для рунета. Читать далееhttps://habr.com/ru/post/684872/?utm_source=habrahabr&utm_medium=rss&utm_campaign=684872
![]() Децентрализованное будущее. Каждому человеку — безопасная капсула для личных данныхПонедельник, 15 Августа 2022 г. 11:00 (ссылка)
https://habr.com/ru/post/681356/?utm_source=habrahabr&utm_medium=rss&utm_campaign=681356
![]() [recovery mode] SOLID на практике в автоматизации тестированияСреда, 10 Августа 2022 г. 23:48 (ссылка)
Как на практике реализовать все принципы и упростить разработку тестирования BDD ? Примером будет интеграционное тестирование, но вам ничего не помешает реализовать для End2End Читать далееhttps://habr.com/ru/post/681936/?utm_source=habrahabr&utm_medium=rss&utm_campaign=681936
![]() Обзор паттернов интеграции микросервисов. Часть 1Пятница, 29 Июля 2022 г. 17:21 (ссылка)
Недавно мы проводили вебинар «Обзор паттернов интеграции микросервисов». На нём энтерпрайз архитектор Пётр Щербаков рассказал, зачем IT-специалистам нужны шаблоны интеграции, и разобрал, для каких задач они подходят, а для каких нет. Для тех, кто пропустил или предпочитает читать, а не смотреть подготовили текстовый обзор интеграционных паттернов: Circuit Breaker, Sidecar, Ambassador, Anti-Corruption Layer и Async Request-Reply. Читать далееhttps://habr.com/ru/post/679906/?utm_source=habrahabr&utm_medium=rss&utm_campaign=679906
|
|
LiveInternet.Ru |
Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат О проекте: помощь|контакты|разместить рекламу|версия для pda |