开始时间: 06/21/2022 持续时间: Approximately 4 months to complete Suggested pace of 3 hours/week
In the Software Design and Architecture Specialization, you will learn how to apply design principles, patterns, and architectures to create reusable and flexible software applications and systems. You will learn how to express and document the design and architecture of a software system using a visual notation. Practical examples and opportunities to apply your knowledge will help you develop employable skills and relevant expertise in the software industry.软件设计和体系结构专业化：在软件设计和体系结构专业化中，您将学习如何应用设计原理，模式和体系结构来创建可重用和灵活的软件应用程序和系统。您将学习如何使用视觉符号来表达和记录软件系统的设计和体系结构。 实例和应用知识的机会将帮助您发展软件行业的就业技能和相关专业知识。
Description:This course takes Java beginners to the next level by covering object-oriented analysis and design. You will discover how to create modular, flexible, and reusable software, by applying object-oriented design principles and guidelines. And, you will be able to communicate these designs in a visual notation known as Unified Modelling Language (UML).
Description:This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, you will gain a foundation for more complex software applications. Finally, you will identify problematic software designs by referencing a catalog of code smells.
Description:The way that software components — subroutines, classes, functions, etc. — are arranged, and the interactions between them, is called architecture. In this course you will study the ways these architectures are represented, both in UML and other visual tools. We will introduce the most common architectures, their qualities, and tradeoffs. We will talk about how architectures are evaluated, what makes a good architecture, and an architecture can be improved. We'll also talk about how the architecture touches on the process of software development.
Description:Based on an understanding of architectural styles, you will review architectures for web applications, then explore the basics of Service-Oriented Architecture (SOA) in two approaches: Web Services (WS*) and Representational State Transfer (REST) architecture.
软件设计和架构专项课程系列（Software Design and Architecture Specialization），该系列包括4门子课程，涵盖面向对象设计，设计模式，软件架构，面向服务的架构等内容，感兴趣的同学可以关注：Mindful Strategies for Quality Software-Think like an expert architect and create quality software using design patterns and principles.