Специализация Software Design and Architecture
Mindful Strategies for Quality Software. Think like an expert architect and create quality software using design patterns and principles.
от партнера
Приобретаемые навыки
Специализация: общие сведения
Проект прикладного обучения
The Capstone Project involves a Java-based Android application that you will evaluate and develop throughout the four courses of the Specialization. This application will evolve from a single user app that stores data locally to a multi-user app that stores data remotely. In each course you will be given a Java codebase as a starting point and will have to document and implement new features using your knowledge gained in the course.
Tutorials are provided to help you understand the starter codebase and learn the basics of Android development.
Prerequisites
You are expected to have basic Java programming knowledge. The capstone application will require you to use Android Studio, an integrated development environment. To learn more about Android Studio, please review the tutorials for Windows or Mac.
Basic Java programming knowledge (ability to read and write Java code and use object-oriented constructs in Java).
Basic Java programming knowledge (ability to read and write Java code and use object-oriented constructs in Java).
Специализация включает несколько курсов: 4
Объектно-ориентированное проектирование
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).
Design Patterns
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.
Архитектура программного обеспечения
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.
Сервис-ориентированная архитектура
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.
от партнера

Альбертский университет
UAlberta is considered among the world’s leading public research- and teaching-intensive universities. As one of Canada’s top universities, we’re known for excellence across the humanities, sciences, creative arts, business, engineering and health sciences.
Часто задаваемые вопросы
Получу ли я зачеты в университете за прохождение специализации?
Can I just enroll in a single course?
Можно ли зарегистрироваться только на один курс?
Can I take the course for free?
Могу ли я пройти курс бесплатно?
Действительно ли это полностью дистанционный курс? Нужно ли мне посещать какие-либо занятия лично?
Сколько времени занимает получение специализации?
Do I need to take the courses in a specific order?
Will I earn university credit for completing the Specialization?
Получу ли я зачеты в университете за прохождение специализации?
Остались вопросы? Посетите Центр поддержки учащихся.