C# - Mastering the Basics - The Repository Pattern

There’s a very large number of articles about the repository pattern out there. Nevertheless, most of them overlap in the description and cause confusion among developers. For this reason I decided to write my own article to document my opinion. In this article I will first clarify the what and why of the repository pattern. Afterwards I will explain how the pattern can look like in C#. In his book, Patterns of Enterprise Application Architecture, Martin Fowler describes the Repository Pattern as a “Mediate between the domain and data mapping layers, acting like an in-memory collection of domain objects”. ...

May 13, 2018 · 4 min · Marcel Jurtz

C# - Mastering the Basics - Events and Delegates

Delegates and Events are powerful tools in C#, but they can definitely be confusing in the beginning. Todays article covers the basics of this topic and helps you to get comfortable implementing this approach in your own applications. Delegates I think, the main problem is that delegates are often explained unnecessarily complicated. For this reason, I want to give you an easily understandable introduction. Let’s look at a basic delegate declaration: ...

April 26, 2018 · 8 min · Marcel Jurtz

Sideproject - Sist!

It’s time to announce a new sideproject-launch! Some days ago, I’ve been looking for an app which allowed my to keep track of shopping lists in a simple and fast way. While there are lots of such apps available for Android, all I tested seemed to be overkill for what I really wanted. So I decided to create my own app for this purpose. Besides creating a simple app, my goal was to learn something new while developing the app. I decided to use Androids built in SQLite database to store lists. I’ve been using the database for previous projects, but I did not really care about the implementation. That being said, I wrote the queries all by hand which ended up being pretty messy. ...

March 28, 2018 · 2 min · Marcel Jurtz

Sideproject: Perfeggt

Once again, it’s time to announce one of my side projects: Pefeggt - A boiling time calculator for eggs. Actually, I’ve been sitting on this one for quite a while and I decided to complete a working release this weekend. The app is built for Android and it helps you to calculate the perfect time you need to boil eggs to your preferred consistency. Functionality & Usage To calculate the time, I’m using Charles D. H. Williams formula from his paper “The Science of boiling an Egg”. This calculation requires the weight and temperature of the egg, the height above sea level at the place where it is cooked and the desired internal temperature of the egg to determine its consistency. ...

March 4, 2018 · 2 min · Marcel Jurtz

Introduction to Room for Android

In the context of I/O 2017, Google released the Room Persistence Library, an intermediate layer between application logic and Android’s SQLite database. Using Room, you no longer have to handle stuff like network connection errors or caching yourself. Today’s article will help you get started with the library and teach you all the skills you need to implement Room in your own applications. Background of my sample application The following code snippets are part of one of my side projects. This application manages shopping lists, which in itself can have entries. Actually, this is a very simple application, but it illustrates the functionality of Room very well. ...

February 17, 2018 · 6 min · Marcel Jurtz