Pātuhitia tēnei: Design patterns in JAVA TM