RU

Как индексация строк изменила систему типов HydraScript

В HydraScript мне понадобились две привычные операции со строками: получить длину и обратиться по индексу. Массивы уже умели и то и другое. Чтобы на…

операторысистема типовтипизациятипоперациякомпиляторыстатический анализрефакторингооппроектирование
Habr
RU

Я удалил классы, но оставил объекты с методами

HydraScript — мой интерпретатор на C#. В нём есть объекты, статическая типизация и вызовы методов. А class , interface и constructor я вообще не доб…

методыклассыобъектыфункцииооппротоколыструктурыфпперегрузка функцийперегрузка методов
Habr
RU

Базовые принципы ООП и SOLID

Данная статья служит двум целям, быстро освежить знания по ООП и SOLID, а также полезно и весело проектировать роботов с элемент…

оопjavasolid
Habr
RU

Часть IV. Религии в IT: от ООП к ИИстерии + Большое расследование Python

Просто закройте эту главу, если вы не научились с юмором, здоровым сарказмом и самокритикой смотреть на абсурд происходящего. Это текст точно соотве…

история itit-образованиекарьера программистакарьера в itpythonоопюмор
Habr
RU

Как я перешёл с React на Angular и не пожалел

Когда я говорю, что перешёл с React на Angular, на меня смотрят примерно так же, как если бы я сказал, что добровольно переехал из Амстердама куда-н…

angularreactфронтендTypeScriptRxJSnxоопархитектура фронтендасравнение фреймворковличный опыт
Habr
RU

DAO vs Repository и ORM: где заканчивается архитектура и начинается хаос

Всем привет! Я Дмитрий Милов, Python-разработчик компании МУЛЬТИФАКТОР в команде продукта MULTIDIRECTORY, мы разрабатываем собственную службу катало…

multifactormultidirectoryархитектура приложенийоопpythonormчистый кодпаттерныrepositorydao
Habr
RU

Контекстный менеджер Python: пишем свой with и управляем ресурсами через ООП

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

pythonоопконтекстные менеджерыcontext managerоператор withdunder методыуправление ресурсамирефакторингpython3чистота кода
Habr
RU

Чистая архитектура на практике: перестаём ломать сервис при каждом релизе

У вас небольшой релиз. Вы меняете пару строк кода, выкатываете обновление - и через несколько минут сервис начинает отдавать странные ошибки. Баги п…

clean architectureclean codearchitectureпрограммированиепроектирование системшаблоны проектированияоопhexagonal architecturegraspsolid
Habr