GeistHaus
log in · sign up
28 pages link to this URL
The Clean Architecture: An Introduction

In the last post, I talked about various architectures used as alternatives to MVC, in a attempt to solve MVCs problems, such as Massive View Controller. In this post, I would like to introduce you to another architecture, which seems to me to be the best starting point for your app’s architecture: the Clean Architecture. I think I first ran into the Clean Architecture in one of Uncle Bob’s presentations on YouTube. At first, I kind of wrote it off as a typical Java over-engineered design pattern. It wasn’t until earlier this year, probably years later after my initial discovery, that I ran into it again. I was looking for a better app architecture after an experience working for a large company with a large iOS team (with about 11 developers) and all the issues they had getting the app to work and test it. I kind of became obsessed with figuring out how to make an app easier to test. I searched the internet for app architectures and studied them. It took me awhile to get my head around the Clean Architecture, but once I did, I decided it would be my starting point for an app architecture.

0 inbound links article en posts Clean ArchitectureSoftware DevelopmentTesting
On narrow integration tests

Narrow integration tests are tests that only involve very few components, mostly relying on test doubles to simulate external dependencies. As always, we have Martin Fowler to thank for yet another excellent article on integration tests so I’ll simply refer to that for the details of what a narrow integration test is. That said, during 2019 I have grown increasingly convinced that the distinction between a narrow and wide integration (also know as system tests or end-to-end tests) is an important one, for two reasons:

0 inbound links article en posts blogdeveloperstaff engineeringpersonalTestingSimplicitySystem TestingIntegration TestingEnd-to-End Testing
Clean Architecture Review

This is my review of Clean Architecture by Uncle Bob. The book is undoubtedly a classic and I feel bad for not having read it earlier. I think it might have ...

Clean Architecture with Xamarin Forms

In this post, we'll look at how to apply the principles of The Clean Architecture to build a Xamarin.Forms Android app. This app will be based on a robust architecture that is loosely coupled and cleanly separates the important business or domain logic from other details and infrastructure like databases, UI frameworks, and network communications.

Design Pattern Catalogue - Embedded Artistry

25 October 2019 by Phillip Johnston • Last updated 9 September 2024Design patterns are valuable concepts to add to your mental library. These are non-obvious solutions to scenarios and problems frequently encountered in the programming world. Exposure to patterns shows you how many of your problems have been previously solved by others, freeing you to … Continue reading "Design Pattern Catalogue"

0 inbound links article en ArchitectureDesignPublic EntrySoftware EngineeringSystem Design
E033 - Redesigning the API: Improving the internal architecture - ASPF02O

In this episode, we’ll take a look at redesigning an API that has been developed in a traditional layered way, moving to a more interesting onion/hexagonal/ports and adapters architecture (which is apparently very fashionable right now in .NET land).

0 inbound links article en posts dotnetaspnetcoreonion architecturehexagonal architectureports and adaptersclean architecture
Enforce conventions (but don't go overboard) with architecture tests

I’ve been trying to flee the over-engineered C# solution structures, with multiple projects, with related code scattered around. Even if an imperfect solution, I’ve turned to NetArchTest to help in guide on following some conventions in a simplified solution structure.

0 inbound links article en posts NetArchTestarchitecture tests
Android Synthesizer App Tutorial Part 1: App Architecture | WolfSound

A tutorial on building an Android wavetable synthesizer from scratch using Compose UI, Oboe library, and modern architecture guidelines.

1 inbound link article en audio programmingaudio developmentaudio pluginsVSTDSPdigital signal processingsynthesizersaudio effectsJUCEC++C programming languageRust programming languagemusic technologymachine learningprogramming tutorialAndroid developmentaudio filtersparametric EQ
How To Mock Functions That Have External HTTP Requests

<p>When writing tests, we do not want to hit the external API each time we run our tests. If we are coming from a dynamic language, such as Node.JS, we may want to a solution like <a href="https://www.npmjs.com/package/fetch-mock">fetch-mock</a> which will patch the implementation of <code>fetch</code> at runtime. This is not practical in Rust. There are some attempts, like the <a href="https://github.com/Shizcow/hotpatch">hotpatch</a> crate, but we will use a different strategy.</p>

1 inbound link article en CC BY 4.0
Clean Architecture with ASP.NET Core

Clean Architecture is a way of structuring a solution such that dependencies and infrastructure concerns are kept separate from business logic and the domain model. It's frequently used with Domain-Driven Design and can easily be built with ASP.NET Core using a solution template described in this article.

1 inbound link article en