Explore the fundamental concepts behind modern, object-oriented software design best practices. Learn how to work with UML to approach software development more efficiently. In this comprehensive book, instructor Károly Nyisztor helps to familiarize you with the fundamentals of object-oriented design and analysis. He introduces each concept using simple terms, avoiding confusing jargon. He focuses on the practical application, using hands-on examples you can use for reference and practice. Throughout the book, Károly walks you through several examples to familiarize yourself with software design and UML. Plus, he walks you through a case study to review all the steps of designing a real software system from start to finish. Topics include: - Understanding software development methodologies - Choosing the right methodology: Waterfall vs. Agile - Fundamental object-Orientation concepts: Abstraction, Polymorphism and more - Collecting requirements - Mapping requirements to technical descriptions - Unified Modeling Language (UML) - Use case, class, sequence, activity, and state diagrams - Designing a Note-Taking App from scratch You will acquire professional and technical skills together with an understanding of object-orientation principles and concepts. After completing this book, you'll be able to understand the inner workings of object-oriented software systems. You will communicate easily and effectively with other developers using object-orientation terms and UML diagrams. About the Author Károly Nyisztor is a veteran mobile developer and instructor. He has built several successful iOS apps and games—most of which were featured by Apple—and is the founder at LEAKKA, a software development, and tech consulting company. He's worked with companies such as Apple, Siemens, SAP, and Zen Studios. Currently, he spends most of his days as a professional software engineer and IT architect. In addition, he teaches object-oriented software design, iOS, Swift, Objective-C, and UML. As an instructor, he aims to share his 20+ years of software development expertise and change the lives of students throughout the world. He's passionate about helping people reveal hidden talents, and guide them into the world of startups and programming. You can find his courses and books on all major platforms including Amazon, Lynda, LinkedIn Learning, Pluralsight, Udemy, and iTunes.