Архив рубрики: Программирование Java

Рубрика о программировании, точнее о языке Java

Шаблон проектирования Команда (Command)

Четвертый шаблон проектированя — Команда. Суть — инкапсуляция запроса в виде объекта, который содержит само действие и параметры. А если простыми словами, отделяем детали запроса от класса, который их создает. Перейдем от мутных слов к простому коду. Рассмотрим пример шаблона … Читать далее

Рубрика: Программирование Android, Программирование Java | Оставить комментарий

Шаблон проектирования Наблюдатель (Observer)

Рассмотрим третий шаблон проектирования. Суть шаблона — изменения в одном объекте порождают изменения во многих других. Здесь есть 2 понятия — Наблюдатель (observer) и наблюдаемый (subject). В этом шаблоне наблюдателей несколько, а наблюдаемый один. Перейдем от слов к коду. Рассмотрим … Читать далее

Рубрика: Программирование Android, Программирование Java | Оставить комментарий

Шаблон проектирования Цепочка обязанностей (Chain of responsibility)

Итак, рассмотрим второй шаблон проектирования. В чем суть — класс получает задачу на исполнение и если может, то выполняет ее сам, если же нет, передает по цепочке следующему классу, если он есть. Перейдем от слов к коду. Рассмотрим этот шаблон … Читать далее

Рубрика: Программирование Android, Программирование Java | Оставить комментарий

Шаблон проектирования Хранитель (Memento)

Я не буду рассказывать что такое шаблоны проектирования (design patterns), что такое GoF и т.д. Сразу перейду к одному из поведенческих шаблонов — Хранитель. В чем суть шаблона — позволяет сохранить состояние объекта с последующей возможностью восстановления. Сразу перейдем от … Читать далее

Рубрика: Программирование Java | Оставить комментарий

Фишки Kotlin в Java

Язык Kotlin известен своим синтаксическим сахаром (чем он по большей части и является). Сегодня мы рассмотрим одну особенность этого языка и попробуем сделать то же самое в языке Java. Для начала рассмотрим обычный класс на Kotlin.

Обычный класс с … Читать далее

Рубрика: Программирование Java | Оставить комментарий

Шаблон проектирования MVP

Перед прочтением данной статьи настоятельно рекомендую ознакомиться с предыдущей статьей, в которой мы рассмотрели базовый шаблон проектирования MVC. Итак, в предыдущей статье мы рассмотрели шаблон проектирования MVC модель, представление и контроллер. Этот шаблон не является универсальным, так как связи между … Читать далее

Рубрика: Программирование Android, Программирование Java | Оставить комментарий

Шаблон проектирования MVC

Перед прочтением данной статьи настоятельно рекомендую ознакомиться с этой статьей про принципы объектно-ориентиванного программирования SOLID. Что такое шаблон проектирования и зачем он нужен. Предположим вы разрабатываете андроид приложение, где одним из главных компонентов является Activity, класс, который отвечает за пользовательское … Читать далее

Рубрика: Программирование Android, Программирование Java | Оставить комментарий

Junit тесты на простом примере

Давайте рассмотрим как писать junit тесты на простом примере. Допустим стоит задача, определить, образуют ли 3 точки на плоскости прямоугольный треугольник. Как видим из самой постановки задачи требуется написать по крайней мере 2 класса, Точка и Треугольник. Так как точка … Читать далее

Рубрика: Программирование Java | Оставить комментарий

Агрегация и композиция или обход множественного наследования в Java

Когда нас спрашивают про принципы ООП многие (большинство новичков) говорят лишь о 3(4) принципах — Инкапсуляция, Наследование, Полиморфизм (+Абстракция). Некоторые также перчисляют принципы SOLID. Но лишь немногие также вспоминают про еще 2 понятия, такие как Агрегация и Композиция (они являются … Читать далее

Рубрика: Программирование Java | Оставить комментарий

Принципы DRY, KISS, YAGNI

В предыдущей статье мы рассмотрели принципы SOLID (если вы не читали этот пост, то настоятельно рекомендую ознакомиться с ним перед тем как читать этот). Наряду с ними есть еще пару принципов, следуя которым ваш код будет более чистым. Итак, первый принцип … Читать далее

Рубрика: Программирование Java | Оставить комментарий