Software Design Patterns

Software Design Patterns are reusable solutions to recurring problems that software engineers encounter during software development. Coursera's Software Design Patterns catalogue teaches you the fundamental patterns in software engineering to optimize code readability, scalability, and maintainability. You will learn to identify and implement various types of design patterns such as Creational, Structural, and Behavioural, and understand how to leverage them in building robust software architectures. Gain an in-depth understanding of concepts like encapsulation, inheritance, polymorphism, and others to improve your software design skills and enhance your problem-solving capability in the software industry.

Filter by

Subject
Required

Language
Required

The language used throughout the course, in both instruction and assessments.

Learning Product
Required

Build job-relevant skills in under 2 hours with hands-on tutorials.
Learn from top instructors with graded assignments, videos, and discussion forums.
Learn a new tool or skill in an interactive, hands-on environment.
Get in-depth knowledge of a subject by completing a series of courses and projects.
Earn career credentials from industry leaders that demonstrate your expertise.
Earn career credentials while taking courses that count towards your Master’s degree.

Level
Required

Duration
Required

Subtitles
Required

Educator
Required

Results for "Software Design Patterns"

  • University of Alberta

    Skills you'll gain: Model View Controller, Software Design Patterns, Software Design, Unified Modeling Language, Object Oriented Design, Code Review, Software Architecture, Programming Principles, Maintainability, Software Technical Review, Java Programming, System Design and Implementation, Java, Diagram Design, Object Oriented Programming (OOP), Code Reusability, Application Design

  • University of Alberta

    Skills you'll gain: Software Architecture, Model View Controller, Unified Modeling Language, Object Oriented Design, Service Oriented Architecture, API Design, Systems Architecture, Web Services, Software Design Patterns, Software Design, Simple Object Access Protocol (SOAP), Microservices, Restful API, Software Design Documents, Software Visualization, Code Review, Product Family Engineering, Object Oriented Programming (OOP), Software Development, Java

  • University of Colorado Boulder

    Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Unified Modeling Language, Software Design Patterns, Software Testing, Java, Software Engineering, Java Programming, User Interface and User Experience (UI/UX) Design, Unit Testing, Software Design, Software Architecture, API Design, Model View Controller, Software Development, Test Driven Development (TDD), Programming Principles, Conceptual Design, Databases

  • Status: New

    Skills you'll gain: Software Design Patterns, Node.JS, Event-Driven Programming, Object Oriented Design, Software Design, Software Architecture, Javascript, Object Oriented Programming (OOP), Systems Design, Maintainability, Performance Tuning, Design Strategies

  • University of Minnesota

    Skills you'll gain: User Story, Agile Software Development, Software Design Patterns, Design Thinking, Software Development Methodologies, Software Design, Agile Methodology, Agile Project Management, Process Mapping, Software Engineering, Kanban Principles, Kaizen Methodology, Software Development Life Cycle, Agile Product Development, Application Security, Scrum (Software Development), Object Oriented Design, Software Architecture, Software Quality (SQA/SQC), Requirements Analysis

  • Status: New

    Skills you'll gain: iOS Development, Apple iOS, Swift Programming, Mobile Development, Web Content Accessibility Guidelines, AI Personalization, User Interface (UI) Design, Application Programming Interface (API), AI Integrations, Software Architecture, AI Enablement, Integrated Development Environments, Usability, Generative AI Agents, Software Design Patterns, Geospatial Information and Technology, Database Development, Debugging, Git (Version Control System), Animations

  • The Hong Kong University of Science and Technology

    Skills you'll gain: Software Design Patterns, Requirements Analysis, White-Box Testing, Software Architecture, Acceptance Testing, Software Development Methodologies, Unified Modeling Language, Software Development Life Cycle, Configuration Management, Software Quality Assurance, Debugging, Software Quality (SQA/SQC), Software Engineering, Software Testing, Object Oriented Design, Functional Requirement, Data Modeling, Systems Design, Project Management, Project Planning

  • Skills you'll gain: Jest (JavaScript Testing Framework), React.js, Web Development Tools, UI Components, JavaScript Frameworks, Code Reusability, Application Programming Interface (API), Unit Testing, Front-End Web Development, Software Design Patterns, Javascript, Context Management, Application Development, Web Applications, Dataflow, Hypertext Markup Language (HTML), User Interface (UI), Event-Driven Programming, Cascading Style Sheets (CSS), Development Environment

  • Skills you'll gain: Adobe Photoshop, Design Software, Journals, Software Design Patterns, Creative Design, Graphic and Visual Design, Design Elements And Principles, Creativity, Design Strategies, Design, Graphics Software, Visual Storytelling, Graphic Design, Digital Design, Editing, File Management

  • Status: New

    Skills you'll gain: Scalability, Software Design Patterns, Node.JS, Distributed Computing, Dataflow, Data Pipelines, Event-Driven Programming, Object Oriented Design, Software Design, Software Architecture, Performance Tuning, Live Streaming, Real Time Data, Systems Architecture, File I/O, Javascript, Object Oriented Programming (OOP), Web Development Tools, Code Reusability, Maintainability

  • Skills you'll gain: Software Development Life Cycle, Software Architecture, Full-Stack Web Development, Software Design, Web Development, Software Development Methodologies, Software Design Patterns, Development Environment, Unified Modeling Language, Software Engineering, Web Applications, Software Development Tools, Software Development, Application Deployment, Programming Principles, Front-End Web Development, Web Language, Back-End Web Development, Integrated Development Environments, Python Programming

  • Status: New

    Skills you'll gain: Software Architecture, Software Design Patterns, Software Design, Microservices, Maintainability, Object Oriented Design, System Design and Implementation, Performance Tuning, Model View Controller, Application Design, Programming Principles, Scalability, Python Programming, Code Reusability, Object Oriented Programming (OOP), Event-Driven Programming