Kotlin Abstract Factory

Fabryka fabryk, czyli 'Abstract Factory' usprawnia tworzenie obiektów będących częścią jakiejś 'rodziny'. Jest to w zasadzie warstwa opakowująca konkretne fabryki i dostarczająca klientom instancję fabryki tworzącą obiekty z danego wariantu.

Kotlin Factory Method

Po `Static Factory Method` nadeszła pora na klasyczne `Factory`. Fabryka jest bardzo użytecznym i często stosowanym wzorcem konstrukcyjnym. Kotlin daje nam ciekawe możliwości dzięki klasom `sealed` oraz `internal`, których odpowiedników brakuje w Javie.

Kotlin Static Factory Methods

Znane z Javy `Statyczne Metody Wytwórcze` w Kotlinie jak najbardziej mają swoje zastosowanie, pomimo trochę innego zachowania i braku słówka `static`. Postaram się przybliżyć czym jest `companion object` i jak go można używać. PS: Ten post miał byc o wzorcu Factory Method z tylko krótką wzmianą o statycznych metodach fabrycznych, ale ten temat okazał się ciekawszy, niż sądziłem :)

Kotlin Builder Pattern

Wzorzec projektowy Builder (budowniczy) jest jednym z popularniejszych i bardziej przydatnych wzorców konstrukcyjnych. W tym wpisie postaram się go przybliżyć i pokazać jak ciekawie można go użyć w Kotlinie. Niestety często widzę implementacje, które wyglądają jak żywcem przetłumaczone z Javy bez wykorzystania dobrodziejstw języka.

Code Review Retro

To nie jest lista 'złotych zasad' code review, jest sporo bardzo dobrych postów na ten temat. Tutaj po prostu zrobiłem retro na podstawie własnych doświadczeń.

Ultimate Github Page Deployment

Deploy strony w Jekyllu (takiej jak ta) na GitHuba jest bajecznie prosty. No chyba, że korzysta z pluginów spoza whitelisty... ale nadal da się to łatwo zrobić.

IntelliJ settings repo

Używam kilku komputerów (i systemów operacyjnych) gdzie odpalam IntelliJ Idea i Android Studio. Utrzymanie tych samych ustawień na wszystkich było małą bolączką... do momentu aż odkryłem `settings repository`!

Shell script basics

If you are lazy and you know it clap your han... write shell scripts

Overlibrarization

Sharing code between projects with your own libraries is generaly a good thing, but it comes with a cost. I'd like to share some of my experience about it.

Android build hacks #3 - documentation with Dokka

Generating documentation with Dokka and publishing it on GitHub walkthrough