![]() ![]() You can leave a response, or trackback from your own site. You can follow any responses to this entry through the RSS 2.0 feed. #ANOTHER LAYER OF INDIRECTION SOFTWARE#On Saturday, May 26th, 2007 at 5:03 pm and is filed under All, Software Development, Tech. That second sentence is something I have never heard quoted before, but from now on whenever I hear someone say the first part, I will point out the second part of the quote as well. ![]() Instead of creating the Effect directly, Ill make the effect be returned by a successful UseAbility. Next step is to add another layer of indirection. My next tests will use an Effect object (with a new type). But that usually will create another problem. Indirection These tests all work because they affect the character directly. David Wheeler actually said:Īny problem in computer science can be solved with another layer of indirection. I did a quick Google search and found that there was more to the original quote. Do you really need that extra layer in your software? #ANOTHER LAYER OF INDIRECTION CODE#The code becomes more complex and harder to read, so it becomes harder to understand, maintain and debug. In the case of over-engineering you lose simplicity. You gain something, but you also lose something. But, you have to stop and weigh the consequences of these decisions. Sure – you can add a layer to abstract away the database you can use dependency injection to make sure all your components are pluggable you can make an interface for a class, just in case there will be a second implementation at some point. Over-engineering can be a big problem in software development. ![]() Shingle Magnetic Recording (SMR) is no different - the only difficulty is in determining where to add the layer of indirection to enable maximum flexibility and efficiency. Lately I’ve been saying “any code can be complicated with another layer of indirection.” Introduction Any problem in computer science can be solved by another layer of indirection. Just because you can add a layer of indirection, doesn’t mean you should. But, I’ve come to realize that it can also be a source of a lot of problems. This is a saying that I’ve heard a lot in my career as a software developer. Any problem in computer science can be solved with another layer of indirection. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |