When used right, UML can be an excellent tool to express our ideas in a clear and standardized way. With over a dozen diagrams and a ton of different visual symbols, UML can be overwhelming. However, you can get pretty far by understanding and using the most common types of diagrams. Besides, knowing a lot of UML doesn't necessarily make you a better object-oriented developer. Actually, it might increase your chances of getting lost in the details - instead of addressing the real problem at hand. I can't count how many times I've seen developers arguing over nitty-gritty UML [...]
Sequence diagrams describe a specific scenario and not all the interactions that happen between the objects that form a system. When we draw a sequence diagram, we represent a snapshot of a given part of the live, working system. Instead of having a huge sequence diagram describing every interaction between the objects, we create several targeted ones. It's like performing a cardiac CT-scan instead of scanning the entire body. If we're only interested in the heart and its blood vessels, why should we examine the entire body? If you want to find out more about UML and object-orientation, check [...]
I'm happy to announce the release of my LinkedIn Learning course "Swift 5: Protocol-Oriented Programming." https://www.linkedin.com/learning/swift-5-protocol-oriented-programming/
What does the following diagram describe? Click here if you want to get started with Object-Oriented Design and UML.
I published my latest book, "The Non-Programmer's Programming Book." You can check it out here: https://www.amazon.com/dp/B07QDVDW4S Would you like to start a career in software development? Have you been playing with the idea of learning programming? Have you considered developing apps or games, but you’re not sure where to start? This book is an excellent starting point in your journey to becoming a paid programmer. Besides learning to program, I provide insights and best practices that other classes and books won’t teach you. We literally start from scratch — you need no prior programming experience. All you need to [...]
Woohoo! Udemy features my courses in their UML and Software Development category! My featured UML course
Woohoo! My latest course "iOS Development: Architecture" is now available on LinkedIn Learning: https://www.linkedin.com/learning/ios-development-architecture and on Lynda.com: https://www.lynda.com/iOS-tutorials/iOS-Development-Architecture/699340-2.html
Do you want to become a better software developer? If you said yes, these offers will probably interest you. In these three courses, I share practical knowledge that can be applied instantly. 1. Software Development from A to Z Get insights into the software development industry. You will acquire professional and technical skills together with an understanding of what software development is. Click here to enroll for just $9.99 2. UML and Object-Oriented Design Foundations Learn about the fundamentals of Object-Orientation, the programming paradigm used to build every modern software system. We also delve into UML, the communication standard that every software [...]
Sometimes, small code changes can bring considerable benefits. By using specific keywords, we can improve the performance of our code. Before I reveal that little optimization trick, you need to understand why it actually works. So, let’s talk first about method calls. Swift supports different techniques to invoke a method at runtime. Static dispatch is when the compiler can infer at build time which method to call. Static dispatch won’t work if subclasses can override the methods or the properties of the superclass. The compiler can’t figure out at compile time whether we’re referring to the superclass’s implementation or [...]
I'm happy to announce that my book, "UML and Object-Oriented Design Foundations", made it to BookAuthority's Best Books of All Time. BookAuthority collects and ranks the best books in the world, and it is a great honor to get this kind of recognition. Thank you for all your support! The book is available for purchase on Amazon.