<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>OOP on ilikeorangutans</title><link>https://kuelzer.ca/tags/oop/</link><description>Recent content in OOP on ilikeorangutans</description><generator>Hugo</generator><language>en</language><copyright>© 2026 Jakob Külzer</copyright><lastBuildDate>Sun, 12 Apr 2026 14:27:24 -0400</lastBuildDate><atom:link href="https://kuelzer.ca/tags/oop/index.xml" rel="self" type="application/rss+xml"/><item><title>Give Me Smarter Objects</title><link>https://kuelzer.ca/posts/2018/06/18/give-me-smarter-objects/</link><pubDate>Mon, 18 Jun 2018 21:20:31 -0400</pubDate><guid>https://kuelzer.ca/posts/2018/06/18/give-me-smarter-objects/</guid><description>&lt;p&gt;A coding exercise I do once in a while is writing &lt;a href="https://en.wikipedia.org/wiki/Battleship_(game)"&gt;Battleship&lt;/a&gt;. It&amp;rsquo;s a
fun little exercise, comes with a slew of interesting decisions, and every once in a while I do this exercise with a
candidate as part of the interview process. It&amp;rsquo;s always exciting to see what other developers come up with. Today I was
doing the exercise and I contemplated on the &lt;em&gt;primitive obsession&lt;/em&gt; code smell that always seems to creep into my code
and saw a beautiful way to apply the &lt;em&gt;extract class&lt;/em&gt; refactoring that very succinctly shows how nice object oriented
programming can be.&lt;/p&gt;</description></item></channel></rss>