Skip to content
  • Home
  • Contact
  • Privacy Policy
  • Go links for the curious
  • Cookie Policy (EU)
Hacking with Go
  • Contact
  • Cookie Policy (EU)
  • Go links for the curious
  • Privacy Policy
Hacking with Go
EmbeddingExtension ObjectGoInterfacesStructs

Unlocking the Power of Extension Objects: The Easy, Elegant, and Flexible Approach in Go

Introduction The extension object pattern is a clever way to add new features to an existing object without...
Iede SnoekOct 29, 2023Oct 29, 2023
DelegationDesign PatternsEmbeddingGoInterfacesStructs

Easy delegation in Go: the delegation pattern

Introduction In delegation, you delegate a certain request to an object to a second object, which we call...
Iede SnoekOct 27, 2023Oct 27, 2023
CompositeGo

Elegant and Easy: Unleashing the Power of the Composite Pattern in Go

Introduction The composite pattern allows you treat a group of objects like a single object. The objects are...
Iede SnoekOct 23, 2023Oct 29, 2023
BridgeDesign PatternsGoGo lang

Easy Patterns in Go: The Bridge

Introduction The Bridge pattern is a design pattern that is meant to “decouple an abstraction from its implementation...
Iede SnoekOct 23, 2023Oct 23, 2023
AdapterDesign PatternsGo

Easy patterns in Go: The Adapter Pattern

Introduction The Adapter pattern is used to make one interface compatible with another. It allows objects with different,...
Iede SnoekOct 20, 2023Oct 20, 2023
Design PatternsGenericsGoObject Pool

Using generics for implementing the Object Pool Pattern in Go

Introduction In my previous post I described simple implementation of the Object Pool pattern. In this post I...
Iede SnoekOct 14, 2023Oct 14, 2023
GoObject Pool

Optimizing Go Performance: implementing a threadsafe Object Pool

Introduction Sometimes, for reasons of efficiency, it can be quite handy to keep a pool, that is non-empty...
Iede SnoekOct 14, 2023Oct 14, 2023
ConcurrencyGoGo langLazy initializationMultiton

Lazy initialization and multiton: a cheap way of creating expensive objects

Sometimes creating an object is expensive, either an object takes up a lot of resources, or costs time...
Iede SnoekOct 11, 2023Oct 11, 2023
Factory MethodGoGo lang

Design Patterns in Go: Factory method, automating the factory

Introduction In this article I discussed the implementation of the Abstract Factory pattern. The Factory Method is simply...
Iede SnoekOct 9, 2023Oct 9, 2023
Dependency InjectionGoGo lang

A simple way of implementing the Dependency Injection Pattern in Go

Introduction Dependency Injection is simply said, the idea that your classes should depend on abstraction, i.e. the abstraction...
Iede SnoekOct 8, 2023Oct 8, 2023
12345
  • Contact
  • Cookie Policy (EU)
  • Go links for the curious
  • Privacy Policy
Copyright © 2025 - Yuki Theme By WP Moose
Manage Cookie Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
View preferences
{title} {title} {title}