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.
43credentials
115courses

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"

  • Status: Free Trial

    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, Solution Architecture, Object Oriented Programming (OOP), Java, Software Development

  • Status: Free Trial

    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, Java, Application Design

  • Status: Free Trial

    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, Engineering Software, Process Mapping, Software Engineering, Kanban Principles, Software Development Life Cycle, Software Quality Assurance, Program Development, Application Security, Scrum (Software Development), Object Oriented Design, Software Architecture, User Experience Design

  • Status: New
    Status: Free Trial

    University of Colorado Boulder

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

  • Status: Free Trial

    The Hong Kong University of Science and Technology

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

  • Status: New
    Status: Free Trial

    Skills you'll gain: Microservices, Scalability, Software Architecture, CI/CD, Continuous Deployment, API Gateway, Containerization, Serverless Computing, Application Design, Continuous Integration, Docker (Software), Software Design Patterns, Systems Architecture, Systems Design, Kubernetes, Service Oriented Architecture, Event-Driven Programming, Transaction Processing, Data Management, Distributed Computing

What brings you to Coursera today?

  • Status: Free Trial

    University of California, Santa Cruz

    Skills you'll gain: C++ (Programming Language), Debugging, C (Programming Language), C and C++, Object Oriented Programming (OOP), Software Design Patterns, Code Review, Data Structures, Computer Programming, Algorithms, Command-Line Interface, Data-oriented programming, Programming Principles, Graph Theory, Computer Science, Computational Thinking, Artificial Intelligence, Integrated Development Environments, Software Technical Review, Game Design

  • Status: New
    Status: Free Trial

    Skills you'll gain: LangChain, Tool Calling, LangGraph, LLM Application, Agentic systems, Generative AI Agents, Responsible AI, Artificial Intelligence and Machine Learning (AI/ML), Generative AI, Application Design, Prompt Engineering, Large Language Modeling, Collaborative Software, Application Development, Software Design Patterns, System Design and Implementation, Software Development, Python Programming, Real Time Data, Data Science

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Database Design, Software Design, Application Security, Vulnerability Assessments, Unified Modeling Language, Unit Testing, Threat Modeling, User Interface and User Experience (UI/UX) Design, Usability Testing, Open Web Application Security Project (OWASP), Technical Design, Software Architecture, Secure Coding, Object Oriented Design, Software Design Patterns, Database Management, Security Software, Systems Design, Software Engineering, Software Development Life Cycle

  • Status: New
    Status: Free Trial

    Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Data Structures, C (Programming Language), Development Environment, Software Design Patterns, Programming Principles, Computational Thinking, Computer Programming, Integrated Development Environments, File Management, Algorithms, Maintainability, Simulations, Data Validation

  • Status: New
    Status: Free Trial

    Skills you'll gain: Adobe Photoshop, Journals, Design Thinking, Software Design Patterns, Creative Design, Design Elements And Principles, Creativity, Design Strategies, Design, Graphic and Visual Design, Digital Design

  • Status: New
    Status: Free Trial

    Skills you'll gain: Microservices, API Gateway, Scalability, Systems Architecture, Software Architecture, Data Management, Distributed Computing, Databases, API Design, Restful API, Software Design Patterns, NoSQL, GraphQL, Event-Driven Programming

Related roles

Gain the knowledge and skills you need to advance.

  • This role has a ₩32,553,096 median salary ¹.

    description:

    An Android Developer builds, tests, and optimizes apps for Android, focusing on performance and compatibility, using Java, Kotlin, and Android SDK.

    This role has a ₩32,553,096 median salary ¹.

    Offered by

    Meta_logo
    Coursera - DELETE_logo
    IBM_logo
  • This role has a ₩33,741,832 median salary ¹.

    description:

    An iOS Developer builds and maintains iOS apps, optimizes performance and compatibility using Swift and iOS SDK across Apple’s ecosystem.

    This role has a ₩33,741,832 median salary ¹.

    Offered by

    Meta_logo
    University of Toronto_logo
    LearnQuest_logo

Most popular

Trending now

New releases

What brings you to Coursera today?

Leading partners

  • Packt
  • University of Colorado System
  • EDUCBA
  • Scrimba
  • École Polytechnique Fédérale de Lausanne
  • IBM
  • LearnQuest
  • University of California, Santa Cruz