mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

9K
active users

#HexagonalArchitecture

0 posts0 participants0 posts today

Nobody want to be a shitty programmer. The question is: Do you do anything not to not be one?
Reading blogs or social media and watching YouTube videos is fun. After them, your code may be a little better, of course. But you need a lot. You need to study! Read good books and study the code of other programmers, for example. Maybe work with a new language, architectures and paradigms. You need break the routine.

If you know Object-oriented programming, you learn functional programming.
If you know Model-View-Controller, you learn Model-View-ViewModel.
If you don't know anything about architectures, you learn Clean Architecture, Hexagonal Architecture, etc.
If you know Python, you learn Ruby or Go.
If you know Clojure or Lisp... you don't need to learn anything else. You are already a good programmer. Just kidding. You can learn Elixir or Scala.

Be a good programmer my friend.

#Programmin #OOP #FunctionalProgramming #MVC #MVVM #CleanArchitecture #HexagonalArchitecture #Python #RubyLang #Golang #Clojure #Lisp #ElixirLang #Scala

What is hexagonal architecture, and how can it help to make your code more testable? In this Making Tech Better podcast episode, I spoke to @jitterted about the benefits and principles of hexagonal architecture, and how it enables you to keep your domain logic independent from the outside world.

You can listen here: youtube.com/watch?v=zpITtO-5d-

www.youtube.com- YouTubeEnjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
Continued thread

1) Understand the domain
2) Domain modelling (#ModelInCode)
3) Let a test drive us (#TDD)
4) Implement the controller
5) Drive the core implementation by a test (TDD again)
6) Extend the business logic facade (#HexagonalArchitecture)
7) Implement the command
8) Implement the event projection (#EventSourcing)
9) Implement the database access (#OnionArchitecture)
10) Release it (#CI_CD)
11) See your changes at work (#REPL #FSI)

With code samples in #dotnet

Next up on my YouTube channel...

Design Accelerator: Ports and Adapters Architecture Part3

After explaining several aspects of the Ports and Adapters Architecture in Parts 1 and 2, Vaughn wraps up this topic with examples of how to structure your architecture using modules using Java packages and C# namespaces.

#SoftwareArchitecture #Hexagonal #HexagonalArchitecture #PortsAndAdaptersArchitecture

youtube.com/watch?v=UpesTQhQhT

Personally working with hexagonal architecture for the first time and recognizing its problems, I was working on a way to mitigate the problems by combining it in a meaningful way with the modulithic approach.

Thankfully a colleague pointed me to this article by @odrotbohm delivering a solution to this exact problem. And also describing it in a very comprehensible way.

odrotbohm.de/2023/07/sliced-on

odrotbohm.deOliver Drotbohm - Sliced Onion Architecture

Introduced MapStruct by @gunnarmorling into my new customer project. This is still the best solution I know to map between layers in Java. Especially when the project uses hexagonal architecture, which has layers. Layers everywhere...

It also supports mapping from two different sources, mapping into an existing object and deep clones. Thanks for this fine piece of software, Gunnar and friends.

mapstruct.org/

mapstruct.orgMapStruct – Java bean mappings, the easy way!