После многих лет в Java-мире, где на каждую задачу есть три библиотеки, пять аннотаций и паттерн «Абстрактная Фабрика Фабрик», Go поначалу кажется... пустым. Когда я только начинал погружаться, мой внутренний архитектор кричал: «Где перегрузка методов? Где нормальное наследование? Как я буду жить без Optional?» Но спустя сотни часов ревью я понял: то, что в Java считается «мощью», в больших проектах и командах часто становится «проклятием». В Java одну и ту же функциональность можно реализовать десятком способов. В итоге, приходя на новый проект, ты тратишь недели только на то, чтобы понять, какой именно «диалект» Spring или Hibernate здесь используют в этот раз. В Go философия иная. Язык намеренно ограничен. В 90% случаев задачу можно решить только одним, самым очевидным способом. Тимлидский профит: Java Enterprise обожает магию. Ты ставишь @Transactional, и под капотом начинают крутиться шестеренки прокси-объектов и аспектов. Это удобно, пока всё работает. Но когда транзакция «протек
Аскетизм как архитектура: Почему в Go отсутствие фич — это фича
12 февраля12 фев
2 мин