• 37 Posts
  • 68 Comments
Joined 2 年前
cake
Cake day: 2024年4月21日

help-circle







  • Yes, performance is one reason. Clean architecture uses indirect calls a lot. This doesn’t really matter if you are doing IO bound work like reading files and calling databases, but games do a lot of CPU bound work as well to simulate physics and update game state where all that indirection will waste CPU cycles.

    I also can’t really think about a part of a game engine that I would put into the domain layer. The domain layer is the whole reason this architectural pattern exists and if you can’t define that clearly there isn’t a reason to use clean architecture.


  • The less you read of Uncle Bobs writings the better but Clean Architecture isn’t really his idea(the original was called Ports and Adapters) its just a name that he coined and it unfortunately stuck.

    I think Clean Architecture is quite useful for the kinds of long-lived application development projects that you will usually encounter in larger companies. Its main appeal in my opinion is that it prevents your domain logic from becoming entangled with implementation details of the environment in which the software will run. This makes changing out dependencies easier in case you need to switch out some 3rd party services.

    Another benefit of using such a well-known architecture in general is that you will have an easier time on-boarding new developers. In a clean architecture project it should be no question where to find, for example, the database context because it will obviously live in the infrastructure layer.

    A drawback of this approach is that it can make an application more complex than it needed to be, especially if you are writing a smallish CRUD application that has little to no domain logic.

    To me the clean architecture is a good default to start with for monolithic business applications, where requirements might change drastically in the future, but as with anything else it doesn’t fit every use case. So, don’t try to write the next high performance game engine with it.





  • Not even Haskell is safe from the endless pushing of AI slop. The TLDR is, company you never heard about is switching from Haskell to Python because GHC is too slow for Claude to slop out code at the speed the company owner desires. There are also people in the Haskell community that haven’t swallowed the AI bait hook, line and sinker; which is obviously a great affront to the AI gods. Of course, no AI psychosis induced breakdown is complete with the tired old “AI is here to stay and…”, can’t have people actually think on their own now can we.

    Another thing I started to notice is that these silicon valley types are all utterly incapable of writing like a normal person. Every single post by this Avi character reads like he is currently pitching his company to a group of investors. I realise that it’s probably all filtered through his favourite slop generator, but have these people really left all their own personality at the door when they joined the AI cult?