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.
42credentials
113courses

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"

  • Skills you'll gain: Software Design Patterns, Software Design, C++ (Programming Language), Software Architecture, Programming Principles, Object Oriented Programming (OOP), Maintainability, Prototyping, Database Application

  • Skills you'll gain: Unified Modeling Language, Software Design Patterns, C++ (Programming Language), Software Architecture, Object Oriented Design, Software Design, Object Oriented Programming (OOP), Maintainability, Programming Principles

  • Skills you'll gain: Object Oriented Design, Unity Engine, Game Design, Software Design Patterns, Data Structures, C# (Programming Language), Video Game Development, Graph Theory, Software Architecture, Algorithms, Debugging

  • Status: Free Trial

    Universidad Nacional Autónoma de México

    Skills you'll gain: Android Studio, Android Development, Mobile Development, Mockups, Mobile Development Tools, Software Design Patterns, Kotlin, Application Development, User Interface (UI) Design, Prototyping, Application Design, User Interface and User Experience (UI/UX) Design, Development Environment, Gradle, Java Programming, Extensible Markup Language (XML), GitHub

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Database Design, Software Design, Usability Testing, User Interface and User Experience (UI/UX) Design, Software Architecture, Software Design Patterns, Database Management, Systems Design, Application Security, Design Strategies, Operating Systems

  • Status: Free Trial

    Universidad Nacional Autónoma de México

    Skills you'll gain: Android Development, Android Studio, Java, Mobile Development, Object Oriented Programming (OOP), Java Programming, Application Deployment, JSON, Web Services, Mockups, Application Design, Mobile Development Tools, Restful API, Software Design Patterns, Application Development, Cloud Applications, Kotlin, User Interface (UI) Design, Prototyping, Instagram

  • Status: New
    Status: Free Trial

    Skills you'll gain: Agentic systems, Generative AI Agents, LLM Application, Application Design, Tool Calling, Large Language Modeling, Application Development, Software Design Patterns, Data Validation

  • Status: Free

    Skills you'll gain: Generative AI Agents, Agentic systems, LLM Application, Generative AI, Large Language Modeling, Artificial Intelligence, Tool Calling, Prompt Engineering, Software Design Patterns

  • Status: Preview

    École Polytechnique Fédérale de Lausanne

    Skills you'll gain: Scala Programming, Data Validation, Object Oriented Programming (OOP), Build Tools, Verification And Validation, Debugging, Software Design Patterns, Development Environment, Business Logic, Software Testing, Unit Testing, Data Structures, Data Modeling

  • Instituto Tecnológico de Aeronáutica

    Skills you'll gain: Object Oriented Programming (OOP), Software Design Patterns, Object Oriented Design, Java, Software Design, Application Design, Test Driven Development (TDD)

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Application Security, Vulnerability Assessments, Software Design, Threat Modeling, Open Web Application Security Project (OWASP), Secure Coding, Software Design Patterns, Software Architecture, Cryptography, Blockchain, Public Key Cryptography Standards (PKCS)

  • Status: Free Trial

    Skills you'll gain: Git (Version Control System), Software Development Methodologies, Requirements Analysis, Version Control, Application Development, Software Development Life Cycle, Agile Software Development, Unified Modeling Language, Software Testing, JUnit, Agile Methodology, Spring Framework, Maintainability, Debugging, Java, Software Design Patterns, Technical Design, Unit Testing, User Interface (UI) Design

Related roles

Gain the knowledge and skills you need to advance.

  • This role has a £78,524 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 £78,524 median salary ¹.

    Offered by

    Meta_logo
    Coursera - DELETE_logo
    IBM_logo
  • This role has a £78,524 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 £78,524 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