home.social

#best_practices — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #best_practices, aggregated by home.social.

  1. Нагрузочное тестирование с Apache JMeter: Best Practices

    Apache JMeter — не просто инструмент. В этой статье разберем, как получать от него реальную пользу. Вы узнаете, почему 80% отчётов о нагрузке бесполезны, как настроить распределённый тест и анализировать не среднее значение, а процентили. Полный гайд от первого HTTPS-скрипта до информативного HTML-отчёта и Best Practices.

    habr.com/ru/companies/otus/art

    #java #Нагрузочное_тестирование #Apache_JMeter #Тестирование_производительности #Highload #devops #Best_Practices #Performance_Testing

  2. Виды тестирования ПО: статика, динамика и 5 уровней, которые работают на практике

    Когда код уже написан, половина багов уже не исправить. Парадокс? Нет — статическое тестирование. В этой статье разбираю, как находить дефекты ещё на этапе требований, почему «большой взрыв» интеграции — это путь в никуда, и зачем знать про заглушки, драйверы и уровни от компонентного до UAT.

    habr.com/ru/companies/otus/art

    #тестирование #статическое_тестирование #динамическое_тестирование #уровни_тестирования #uat #интеграционное_тестирование #best_practices

  3. [Перевод] Отчёт PSF об инциденте атаки на цепочку поставок LiteLLM/Telnyx + рекомендации

    В этой статье рассмотрены две недавние атаки на цепочку поставок, направленные на пользователей популярных пакетов PyPI — litellm и telnyx. Также описаны рекомендации разработчикам и сопровождающим Python о том как подготовиться и защитить свои проекты.

    habr.com/ru/articles/1019638/

    #pypi #litellm #telnyx #security #атака_на_цепочку_поставок #best_practices #безопасность #python #trusted_publishers #trivy

  4. ADR, архитектурные тесты и кейсы из прода: ресурсы, которые реально меняют код

    У меня была привычка. Вижу классную статью про архитектуру —-сохраняю. Репозиторий с примерами DDD - в закладки. Видео про CQRS - в плейлист «Посмотреть потом». Вы знаете, чем кончаются плейлисты «Посмотреть потом». В какой-то момент закладок стало 300+. Половина ссылок битые, треть дублируют друг друга, остальное - статьи, которые казались гениальными в два часа ночи. Я сел и вычистил всё до 106 ресурсов. Собрал их в awesome-list на GitHub . Но статья не про список. Статья про три вещи, которые я для себя открыл в процессе и которые почему-то мало обсуждают.

    habr.com/ru/articles/1001010/

    #architecture #DDD #CQRS #clean_architecture #ADR #software_design #software_architecture #best_practices #system_design #microservices

  5. Реактивная Архитектура: Пишем надежный Optimistic UI на чистом RxJS (Pattern Compensating Transaction)

    Пользователи ненавидят спиннеры. Они хотят видеть лайк сразу после клика. Optimistic UI решает эту проблему, но создает новую: что делать, если сервер вернет ошибку? В императивном коде (Promise/async-await) откат состояния превращается в ад из try/catch и ручных мутаций переменных, порождая Race Conditions. В этой статье я покажу, как реализовать надежный паттерн Compensating Transaction на чистом RxJS . Мы построим архитектуру, где состояние это поток, который невозможно "сломать" частыми кликами или сетевыми сбоями. Никаких if/else, только чистые потоки. Построить реактивный UI

    habr.com/ru/articles/974068/

    #angular #rxjs #typescript #frontend #архитектура #паттерны_проектирования #optimistic_ui #reactive_programming #state_management #best_practices

  6. Реактивная Архитектура: Пишем надежный Optimistic UI на чистом RxJS (Pattern Compensating Transaction)

    Пользователи ненавидят спиннеры. Они хотят видеть лайк сразу после клика. Optimistic UI решает эту проблему, но создает новую: что делать, если сервер вернет ошибку? В императивном коде (Promise/async-await) откат состояния превращается в ад из try/catch и ручных мутаций переменных, порождая Race Conditions. В этой статье я покажу, как реализовать надежный паттерн Compensating Transaction на чистом RxJS . Мы построим архитектуру, где состояние это поток, который невозможно "сломать" частыми кликами или сетевыми сбоями. Никаких if/else, только чистые потоки. Построить реактивный UI

    habr.com/ru/articles/974068/

    #angular #rxjs #typescript #frontend #архитектура #паттерны_проектирования #optimistic_ui #reactive_programming #state_management #best_practices

  7. Реактивная Архитектура: Пишем надежный Optimistic UI на чистом RxJS (Pattern Compensating Transaction)

    Пользователи ненавидят спиннеры. Они хотят видеть лайк сразу после клика. Optimistic UI решает эту проблему, но создает новую: что делать, если сервер вернет ошибку? В императивном коде (Promise/async-await) откат состояния превращается в ад из try/catch и ручных мутаций переменных, порождая Race Conditions. В этой статье я покажу, как реализовать надежный паттерн Compensating Transaction на чистом RxJS . Мы построим архитектуру, где состояние это поток, который невозможно "сломать" частыми кликами или сетевыми сбоями. Никаких if/else, только чистые потоки. Построить реактивный UI

    habr.com/ru/articles/974068/

    #angular #rxjs #typescript #frontend #архитектура #паттерны_проектирования #optimistic_ui #reactive_programming #state_management #best_practices

  8. Реактивная Архитектура: Пишем надежный Optimistic UI на чистом RxJS (Pattern Compensating Transaction)

    Пользователи ненавидят спиннеры. Они хотят видеть лайк сразу после клика. Optimistic UI решает эту проблему, но создает новую: что делать, если сервер вернет ошибку? В императивном коде (Promise/async-await) откат состояния превращается в ад из try/catch и ручных мутаций переменных, порождая Race Conditions. В этой статье я покажу, как реализовать надежный паттерн Compensating Transaction на чистом RxJS . Мы построим архитектуру, где состояние это поток, который невозможно "сломать" частыми кликами или сетевыми сбоями. Никаких if/else, только чистые потоки. Построить реактивный UI

    habr.com/ru/articles/974068/

    #angular #rxjs #typescript #frontend #архитектура #паттерны_проектирования #optimistic_ui #reactive_programming #state_management #best_practices

  9. Лучшие практики в Sequence-диаграммах для системных аналитиков

    В данной статье я хочу поделиться опытом и рассказать о том, как системным аналитикам улучшить Sequence-диаграммы (диаграммы последовательностей) с помощью лучших практик. Я покажу, как некоторые подходы из мира программирования (те самые best practices и идеи из Clean Code ) помогают рисовать sequence-диаграммы чище и понятнее.

    habr.com/ru/articles/969192/

    #clean_code #plantuml #sequence_diagram #системный_анализ #системный_аналитик #best_practices #документация_проекта #диаграммы_последовательности #uml #umlпроектирование

  10. Артефакты архитектуры: какие, зачем и как их организовать

    Представьте город без карты. Дома построены, улицы проложены, люди живут своей жизнью — но никто не знает, как всё это связано между собой. Каждый архитектор чертит по-своему: у одного — квадраты, у другого — кружки, а у третьего — загадочные стрелки, ведущие в никуда. Когда решения принимаются «на глаз», последствия не заставят себя ждать. В результате, ценные находки теряются в ворохе несогласованных схем. Именно так выглядит ИТ-ландшафт без продуманной системы архитектурных артефактов. Сегодня я расскажу, как мы в МТС наводим в этом хаосе порядок, почему выбрали путь EAoaP — и что сделали, чтобы эта красивая теория прижилась в реальной, живой экосистеме из сотен продуктов. Привет, Хабр! Меня зовут Наиль Миннахметов и я — корпоративный архитектор в МТС. В прошлом –– разработчик, аналитик и консультант в телекоме, финтехе, eCom, ритейле, логистике, фарме и FMCG. Занимался много чем, но всегда это было связано с IT. Я помогал разным бизнесам расти, становиться надёжнее или зарабатывать больше.

    habr.com/ru/companies/oleg-bun

    #архитектура #EAoaP #C4_Model #визуализация_систем #best_practices #системный_анализ #разработка_по #фреймворки #Rozanski__Woods #Kruchten_4_1

  11. 15 типичных ошибок начинающих автоматизаторов (и как их избежать)

    Начинающие автоматизаторы часто наступают на одни и те же грабли: от отсутствия параметризации до связанных автотестов. В этой статье — разбор ошибок и советы, как писать тесты так, чтобы они жили долго и стабильно.

    habr.com/ru/articles/932590/

    #тестирование #pytest #autotest #автотесты #автотестирование #qa #qa_automation #best_practices #api_testing #ui_testing

  12. 15 типичных ошибок начинающих автоматизаторов (и как их избежать)

    Начинающие автоматизаторы часто наступают на одни и те же грабли: от отсутствия параметризации до связанных автотестов. В этой статье — разбор ошибок и советы, как писать тесты так, чтобы они жили долго и стабильно.

    habr.com/ru/articles/932590/

    #тестирование #pytest #autotest #автотесты #автотестирование #qa #qa_automation #best_practices #api_testing #ui_testing

  13. 15 типичных ошибок начинающих автоматизаторов (и как их избежать)

    Начинающие автоматизаторы часто наступают на одни и те же грабли: от отсутствия параметризации до связанных автотестов. В этой статье — разбор ошибок и советы, как писать тесты так, чтобы они жили долго и стабильно.

    habr.com/ru/articles/932590/

    #тестирование #pytest #autotest #автотесты #автотестирование #qa #qa_automation #best_practices #api_testing #ui_testing

  14. SOLID, DRY, KISS, YAGNI и др. принципы разработки, пугающие новичка в IT

    Разработка — это не только про код, но и про подходы. В этой статье я постарался собрать и объяснить ключевые принципы проектирования, которые часто упоминают в собеседованиях, в статьях на Medium и в комментариях на GitHub, такие, как SOLID, DRY, KISS, YAGNI, APO, BDUF, бритва Оккама. 📌 Что внутри: 1. Понятные объяснения без перегрузки теорией 2. Примеры на Java (но подойдут и другим разработчикам) 3. Иллюстрации и метафоры, чтобы не уснуть Будет полезно как новичкам, которые только слышали про SOLID и др. подходы в проектировании, так и разработчикам, которые хотят освежить знания или взглянуть на принципы под другим углом.

    habr.com/ru/articles/925208/

    #ооп #принципы_разработки #solid #dry #kiss #yagni #apo #bduf #бритва_оккама #best_practices

  15. [Перевод] PHP Typed: Маленький Composer пакет, который нарушает PHP правила ради вас

    Звучит слишком громко? Давайте уточним, чтобы избежать обманутых ожиданий: этот пакет использует немного магии вне Хогвартса, и будет действительно полезен любителям строгой типизации в PHP.

    habr.com/ru/articles/868640/

    #php #laravel #wordpress #symphony #composer #cms #type_casting #code_quality #best_practices

  16. [Перевод] PHP Typed: Маленький Composer пакет, который нарушает PHP правила ради вас

    Звучит слишком громко? Давайте уточним, чтобы избежать обманутых ожиданий: этот пакет использует немного магии вне Хогвартса, и будет действительно полезен любителям строгой типизации в PHP.

    habr.com/ru/articles/868640/

    #php #laravel #wordpress #symphony #composer #cms #type_casting #code_quality #best_practices

  17. [Перевод] PHP Typed: Маленький Composer пакет, который нарушает PHP правила ради вас

    Звучит слишком громко? Давайте уточним, чтобы избежать обманутых ожиданий: этот пакет использует немного магии вне Хогвартса, и будет действительно полезен любителям строгой типизации в PHP.

    habr.com/ru/articles/868640/

    #php #laravel #wordpress #symphony #composer #cms #type_casting #code_quality #best_practices

  18. [Перевод] PHP Typed: Маленький Composer пакет, который нарушает PHP правила ради вас

    Звучит слишком громко? Давайте уточним, чтобы избежать обманутых ожиданий: этот пакет использует немного магии вне Хогвартса, и будет действительно полезен любителям строгой типизации в PHP.

    habr.com/ru/articles/868640/

    #php #laravel #wordpress #symphony #composer #cms #type_casting #code_quality #best_practices

  19. Flutter. Стиль кода — это все

    Стиль кода — это все. Это свежий взгляд на простое и сложное. Стильный, но простой код лучше, чем сложный, но не стильный. Сложный и стильный — это искусство. Разработка может быть искусством, тестирование может быть искусством. Оптимизация кода — тоже искусство. Не все придерживаются стиля, да и не у всех он есть. В коде может быть больше стиля, чем в дизайне, но не у всего кода есть стиль. Фреймворки безмерно стильные. Когда разработчик находит идеальное сочетание функциональности и читаемости в своем коде, это стильно. Люди тоже диктуют стиль. Стиль был у Роберта Мартина, у Дэвида Томаса, у Мартина Фаулера, у Эрика Эванса... Я встречал стиль в открытом исходном коде. В среде разработчиков стильных проектов куда больше, чем в каком-либо другом сообществе. Стиль — это атрибут, подход и структура. Выше – юмористическая интерпретация слов из поэмы Чарльза Буковски «Стиль». Вариативность стиля кода настолько многогранна, что не всегда удается прийти к единому мнению в пользу того или иного подхода, поэтому стиль в сегодняшнем понимании — это целая культура. Сегодня мы будем разматывать клубок лучших практик и скрытых трюков. После этого ваш код станет не просто рабочим, а настоящим произведением искусства. С учетом моего опыта работы мобильным разработчиком в TAGES, я готов поделиться своими знаниями и практиками, которые могут быть полезны для вашего проекта. Пристегнитесь потуже — мы взлетаем!

    habr.com/ru/articles/831470/

    #Flutter #Dart #mobile_development #кроссплатформенная_разработка #мобильная_разработка #best_practices #code_style #стиль_кода #лучшие_практики #flutter_mobile_development

  20. [Перевод] Выбираем между инструкциями RUN, CMD и ENTRYPOINT

    Для выполнения похожих задач в Docker нередко есть несколько решений. Одна запутанная область касается инструкций RUN , CMD и ENTRYPOINT Dockerfile. В этом переводе обсуждаются различия между этими инструкциями и показываются примеры их использования в форматах shell и exec. В чём разница между RUN, CMD и ENTRYPOINT?

    habr.com/ru/companies/nixys/ar

    #docker #dockerfile #инструкции_docker #run #cmd #entrypoint #shell #best_practices #перевод