Pull to refresh
0
@lihhanaread⁠-⁠only

User

Send message

Как DDD работает для меня

Level of difficultyMedium
Reading time5 min
Views6.6K

Привет! Меня зовут Станислав, я фронтенд-разработчик компании Тинькофф. Занимаюсь разработкой веб-приложений и написал десятки тысяч строк кода, массу велосипедов и костылей, пока не познакомился с разработкой, основанной на модели предметной области, или Domain-Driven Design.

DDD — это система знаний, приемов и методов, предназначенная для создания приложений высокой сложности. DDD обобщает лучшие практики коммерческой разработки программного обеспечения и постоянно совершенствуется, предоставляя разработчику надежную опору для принятия решений. Лучший способ узнать больше — это книга Эрика Эванса Domain-Driven Design: Tackling Complexity in the Heart of Software.

Размышляя о своих прошлых и текущих проектах, попробую перечислить их проблемы, которые могут быть неочевидны до определенного момента развития приложения, и то, как с ними можно справиться, используя базовые принципы DDD.

Читать далее
Total votes 10: ↑7 and ↓3+7
Comments12

DOM, DI и View: деревья в Angular

Level of difficultyHard
Reading time8 min
Views9.6K

Чтобы стать продуктивным разработчиком на Angular, потребуется понимание различных деревьев, из которых состоит приложение. На первый взгляд легко можно спутать дерево инжекторов DI и DOM-дерево непосредственных HTML-элементов и вьюх Angular. Они похожи и иногда имеют прямое соответствие, но далеко не всегда. В статье рассмотрим различия, научимся держать их в уме и освоим, как можно обойти возможные трудности, связанные с ними.

Читать далее
Total votes 25: ↑25 and ↓0+25
Comments3

Пишем Kotlin DSL для графов навигации в домашних условиях

Level of difficultyEasy
Reading time12 min
Views4.7K

Всем привет! Я Тимур, лид одной из android-команд. Больше трех лет работаю в Тинькофф, все это время был в привлечении и занимался флоу получения разных банковских продуктов.

Расскажу, как мы сделали свой DSL для того, чтобы строить логику навигации в наших флоу.

Читать далее
Total votes 18: ↑18 and ↓0+18
Comments9

Как польские математики взломали Энигму

Level of difficultyMedium
Reading time10 min
Views9.8K

Когда речь заходит о взломе Энигмы, то всегда вспоминают об успехе британцев в Блетчли-парк. Но менее известно, что этот успех был построен на фундаменте, который заложили польские криптографы. История о том, как польские математики первыми смогли взломать легендарную Энигму.

Читать далее
Total votes 22: ↑21 and ↓1+29
Comments12

Мобильная разработка за неделю #519 (11 — 17 декабря)

Reading time4 min
Views4.4K
В новом выпуске усложнение iOS и избавление от рекурсии в Kotlin, cимволизация логов и новые фичи на старых Android, многомодульность на Flutter, опыт прохождения собеседования в Google, как много языков может влезть в одного программиста и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments0

Обзор онтологического Low-code подхода к разработке решений класса ERP

Level of difficultyMedium
Reading time9 min
Views2.1K

Здравствуй, уважаемый Хабр!

Эта статья описывает объектно-ориентированный (или онтологический) Low-code подход к проектированию и разработке информационных систем на примере платформы «Системный Геном».

Рассматриваемый подход, на наш взгляд, позволит кратно сокращать трудозатраты и сроки разработки сложных корпоративных и государственных информационных систем.

Читать далее
Total votes 6: ↑3 and ↓3+4
Comments14

Facebook выпустил новую CSS-in-JS библиотеку — StyleX

Level of difficultyMedium
Reading time3 min
Views14K

Верней оформил 5 декабря 2023 года оформил для всех то, чем его разработчики пользуются уже давно. Позиционируется данный помощник для js-подобных фреймворков типа React, Preact, Solid, lit-html и Angular, однако оперирующие html шаблонами Vue и Svelte тоже могут задействовать StyleX, но после предварительной специальной её кастомизации.

Код в React в итоге выглядит примерно так:

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments23

Мастерство многопоточности: Превращаем Java в шедевр параллельного программирования

Level of difficultyEasy
Reading time4 min
Views16K

Всем привет! В этой статье я бы хотел поверхностно пройтись по многопоточности в Java, объяснить, где она используется и зачем нужна.Приятного прочтения!

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

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

Читать далее
Total votes 34: ↑2 and ↓32-30
Comments10

Разбираетесь в IT? Решите IT-кроссворд и выиграйте 10 000 рублей на аренду серверов

Reading time10 min
Views7.6K

Привет, на связи команда Selectel. 11 сентября нашей компании исполнилось 15 лет, из которых уже более 13 мы пишем на Хабр. За это время мы выпустили 1,6 тыс статей на совершенно разные темы.

Хотим проверить, как хорошо вы, наши читатели, ориентируетесь в современных технологиях и не только. Мы подготовили IT-кроссворд — онлайн-соревнование для любителей разработки и тестирования, ML и Data Science, сетевых и серверных технологий. А еще — список статей, которые косвенно или прямо помогут найти ответы.

Под катом — кроссворд и вопросы. Знатоки, которые наберут за ответы большее количество баллов, получат 10 000 рублей на аренду серверов и мерч Selectel. Готовы принять участие? Тогда начинаем!
Читать дальше →
Total votes 30: ↑29 and ↓1+37
Comments76

Как использовать ресурсы Kubernetes по максимуму для работы с Go-приложениями

Reading time12 min
Views9K

Привет! Меня зовут Антон Жуков, я руковожу группой разработки в Сбермаркете. В профессии я уже более 12 лет, с Golang работаю с 2016 года, а с Kubernetes — с 2018 года.

В этой статье расскажу об основах Kubernetes, возможных проблемах и решениях, а также о том, как грамотно использовать ресурсы этой платформы, чтобы выжать максимум из Go-приложений. Кроме того, в конце статьи я опишу кейс настройки GOMAXPROCS на примере нашего приложения и расскажу, как нам удалось повысить его производительность на 20-50%.

Читать далее
Total votes 20: ↑19 and ↓1+22
Comments3

Как обновлять информацию о фильмах и сериалах на медиацентре Kodi бесплатно и на русском языке

Level of difficultyEasy
Reading time3 min
Views8.2K

Kodi это свободный медиацентр, который в том числе можно настроить для красивого отображения локальной медиатеки из фильмов и сериалов в виде вашего собственного кинотеатра без абонентской платы.

Это достигается за счёт того что все файлы уже хранятся на вашем собственном сетевом хранилище с локальным доступом или записаны прямо в памяти Kodi, который может быть установлен практически на любой платформе.

Конечно, чтобы просматривать уже скаченные фильмы Kodi не нужен, ведь можно записывать файлы на флешку и втыкать её в телевизор для просмотра. Но можно действовать более технологично - отдать функцию скачивания обложек и описаний Коди. Примерно год назад я писал, что Kodi перестал обновлять информацию о фильмах, потому что TMDB заблокировал доступ пользователям из России. С тех пор ситуация поменялась и доступ появился, но периодически вся конструкция скрепера, то работает то нет, что очень неудобно.

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

Скачать обложки автоматически
Total votes 6: ↑5 and ↓1+4
Comments15

Нобелевская премия по физике 2023 года. Электроны в импульсах света

Level of difficultyMedium
Reading time6 min
Views20K

В своих экспериментах лауреаты этого года создали достаточно короткие вспышки света, чтобы сделать снимки чрезвычайно быстрого движения электронов. Анна Л'юилье открыла новый эффект взаимодействия лазерного излучения с атомами в газе. Пьер Агостини и Ференц Крауш продемонстрировали, что этот эффект может быть использован для создания более коротких импульсов света, чем это было возможно ранее.

Читать далее
Total votes 12: ↑11 and ↓1+15
Comments8

Мобильная разработка за неделю #514 (7 — 12 ноября)

Reading time4 min
Views2.6K
В новом выпуске новые правила Google Play для новых разработчиков и первый App Shortcut, корутины против потоков, навигация во Flutter и вредные тесты, перформящие креативы, собственные GPT и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →
Total votes 2: ↑2 and ↓0+2
Comments0

Flutter Yandex Mapkit: как внедрить основные инструменты Яндекс Карт в проект на Flutter. Часть 2

Level of difficultyMedium
Reading time26 min
Views6K

Привет! Меня зовут Анна Ахлёстова, я Flutter-разработчик в Friflex. В первой части статьи мы подробно разобрали, как использовать некоторые инструменты Yandex Mapkit в проекте на Flutter. Мы научились отображать объекты точками на карте, обрабатывать нажатия на них, а также настраивать кластеризацию маркеров при масштабировании карты.

В этой части статьи мы на простом примере научимся определять местоположение пользователя и отображать его точкой на карте без использования сторонних библиотек геопозиционирования, а также разберем, как выделять зоны на карте и как строить дорожные маршруты от точки А до точки Б средствами Yandex MapKit.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments1

Что общего у приватности и феодализма

Level of difficultyEasy
Reading time4 min
Views3.2K

Вы читаете соглашения о конфиденциальности? Мало кто тратит время. Они все похожи друг на друга, скучны, и, скорее всего, не врут. Компании, особенно большие, стараются по-честному исполнять свои обязанности в отношении данных пользователей, хотя бы во избежание больших штрафов. И все же с защитой персональных данных в мире что-то не так. Что если концепция приватности сама по себе — и есть проблема.

Децентрализованные проекты обычно не говорят «приватность», а говорят, что данные «принадлежат пользователю» (data ownership). А в чем разница? Мы придумали забавную аналогию, и хотим поделиться.

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments61

Самые дорогие материалы в науке совсем не те, о которых вы могли подумать

Reading time4 min
Views28K

После семилетнего путешествия и преодоления почти 6 млрд км космический аппарат НАСА OSIRIS-REx утром 24 сентября 2023 г. мягко приземлился в пустыне штата Юта с ценным грузом. Аппарат доставил на Землю образец с астероида Бенну.

Примерно 250 гр материала, собранного с астероида массой 85 млн тонн, поможет учёным узнать о формировании Солнечной системы, в том числе о том, есть ли в таких астероидах, как Бенну, химические компоненты для жизни.

Бюджет миссии НАСА составлял $800 млн, а в итоге стоимость 255 г образцов составит около $1,16 млрд. Но самый ли это дорогой из известных материалов? Даже близко нет.

Читать далее
Total votes 51: ↑47 and ↓4+62
Comments52

При всем богатстве выбора, другой альтернативы нет! Повесть о рабочих буднях простого русского DevOps-ера

Level of difficultyMedium
Reading time6 min
Views4.6K

При всем богатстве выбора, другой альтернативы нет! Повесть о рабочих буднях простого русского DevOps-ера.

В статье расскажем о кейсе из практики DevOps-инженера "ITQ Group", с которым вообще может столкнуться любой DevOps инженер при автоматизации процесса у заказчика на аутсорсе или даже у In-house работодателя.

Читать далее
Total votes 3: ↑2 and ↓1+1
Comments7

Wi-Fi без Интернета на рейсе Southwest

Level of difficultyEasy
Reading time4 min
Views14K

Недавний полет я провел, пытаясь выяснить, что можно сделать, подключившись к Wi-Fi на борту самолета, но без доступа к Интернету.

Читать далее
Total votes 23: ↑21 and ↓2+22
Comments23

Как подружить бизнес и процессы

Level of difficultyEasy
Reading time8 min
Views4.4K

Привет, Хабр! Я Максим Катаев, старший аналитик в отделе Mobile Core Тинькофф. Наш отдел разрабатывает общие компоненты для мобильных приложений: от авторизации до дизайн-системы. Они используются в приложениях экосистемы Тинькофф: Инвестициях, Бизнесе, Мобайле и прочих. 

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

Я постарался сделать акцент не на скучной теории, а на лайфхаках, которые можно применять на практике. Let's GOOOOO!

Читать далее
Total votes 12: ↑10 and ↓2+8
Comments10

Проблемы современного программного обеспечения — невозможность отключения «ненужного функционала»

Level of difficultyEasy
Reading time4 min
Views32K

Никогда не задумывались почему тормозит компьютер? Дело ли в «плохой оптимизации» современного софта? Ведь Когда Photoshop отъедает 8 гигабайт только при запуске, Google Chrome создает свыше 10 процессов, а Telegram пытается превратиться в Instagram, невольно начинаешь задумываться, что «где-то мы свернули не туда».

Версия статья не от дилетанта, с более близкими для хабра примерами… лежит здесь!

Читать далее
Total votes 76: ↑69 and ↓7+69
Comments299

Information

Rating
Does not participate
Registered
Activity