Автор: vit

  • Про архитектуру

    Решил написать еще одну заметку про проектирование. Меня периодически спрашивают, как привести в порядок проект или как выстроить в нем архитектуру. Как правило программисты интересуются больше техническими вопросами (про дизайн, архитектуру, стек технологий), а менеджмент как найти нормального архитектора. Есть такая книга “Thinking, Fast and Slow”. На русский язык название почему-то перевели как “Думай медленно… […]

  • Запечатывание в Java.

    Наконец-то нашел время дописать статью в блоге, которая давно уже в черновиках лежит…. Итак, про запечатанные классы и немного про алгебраические типы данных. Запечатанные классы определяются с помощью ключевого слова sealed. Это нужно, чтобы ограничить в наследовании. Потенциальных наследников в таком случае нужно указать явно, через запятую после permits. Например так: На самом деле, основной […]

  • Про record

    Появились в версии Java 14, но я предпочитаю использовать LTS версии, поэтому начал активно использовать только в Java 17. Не вижу смысла в очередной раз переписывать однотипные статьи из интернета с одними и тем же примерами record-ов вида “Hello World”. Здесь хотел поделиться своими впечатлениями после нескольких месяцев использования, когда и как их удобно использовать, […]

  • Все хотят стать программистами

    Как двадцать лет тому назад все хотели стать экономистами. А как иначе? На человека давит авторитетное мнение “знающих” людей – старших товарищей или родителей, пресловутое herd behavior, реклама со всех сторон и вот, в итоге, человек вымучивает поступление на факультет хоть как-то связанный с информационными технологиями или идет в какую-то свежеиспеченную школу-программирования или на худой […]

  • Прошло несколько лет…

    Спустя 4 года и 5 месяцев решил поднять из бэкапа свой блог. Что с ним делать дальше ещё не решил. Пока обновил WordPress и переехал на новый хостинг – VPS-ка от reg.ru. Пока всё устраивает. До этого, когда-то давным давно, пользовался услугами brim.ru, потом кажется DigitalOcean, потом очень долгое время блог жил на виртуалке, которую […]

  • Multi-map в Java 8

    Мультикарта (multi-map) может пригодиться в реальной работе или на собеседовании. Почему-то в некоторых компаниях при приёме на работу любят давать алгоритмические задачки на её использование (лично я так не поступаю). По сути это обычная карта (Map) в которой значением является коллекция (List или Set). Сейчас в JCF (Java Collections Framework) нет готового класса для Multimap. […]

  • Про настройку шрифтов в IDE (Netbeans) под Linux.

    Какой самый лучший шрифт для программиста? Каждому своё. Одним нравятся округлые очертания, другому наоборот тонкие и острые. Поэтому выбор шрифта — дело вкуса, хотя конечно есть базовые требования. Самое главное и очевидное — шрифт должен быть моноширинным, т.е. все символы должны быть одной ширины. Это очень важно для того, чтобы сохранить структуру кода, т.к. иначе […]

  • Про org.json парсер

    С json парсерами в Java дела обстоят следующим образом. С одной стороны их существует несколько разновидностей, с другой стороны сложно сделать выбор. Хорошо когда только один критерий принятия решения, например скорость работы или размер библиотеки. Сложности начинаются тогда, когда нужно выбрать с учетом нескольких характеристик. В этой небольшой заметке я хотел бы кратко описать случаи, […]

  • Компьютер/ноутбук для программиста

    В этой статья я расскажу про свой опыт, про других, про мировые практики и попробую дать советы в выборе компьютера для программиста. Мой опыт. Думаю разумнее начинать с того момента как начал работать на себя. Когда трудишься наемным сотрудником в компании, то проблемы выбора как правило нет — работаешь на том оборудование, которое принято использовать […]

  • Установка и настройка Apache Tomcat под Linux

    Причины. Замысел написать эту статью про установку и настройку, наверное, одного и самых популярных веб-серверов на Java возник уже давно. Одной из причин было желание сделать небольшую заметку “для себя” с подробной инструкцией. Возможно эта статья также пригодится другим java программистам. Пользы для кого-нибудь ещё, например для системных администраторов в ней будет не так много. […]