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.
44credentials
116courses

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

    Johns Hopkins University

    Skills you'll gain: Object Oriented Programming (OOP), R Programming, Debugging, Functional Design, Integrated Development Environments, Programming Principles, Data Manipulation, Data Structures, Software Documentation, Software Design Patterns, Performance Tuning

  • Status: Free Trial

    Skills you'll gain: Software Design Patterns, Object Oriented Design, Object Oriented Programming (OOP), Javascript, Software Design, Maintainability, Scripting Languages, Application Development, Event-Driven Programming, Prototyping

  • Status: Free Trial

    Skills you'll gain: Software Development Methodologies, Development Environment, Software Development, Application Programming Interface (API), Version Control, Software Design Patterns, JSON, Software Design, Network Engineering, Restful API, Virtualization and Virtual Machines, Web Applications, TCP/IP, YAML, Extensible Markup Language (XML), Authentications

  • Status: Free Trial

    Skills you'll gain: JUnit, Unit Testing, Maintainability, Software Design Patterns, Software Testing, Test Automation, Integration Testing, Test Driven Development (TDD), Testability, Software Engineering, System Testing, Android Development, Application Security, Software Architecture, Application Design

  • Status: Free Trial

    Skills you'll gain: Rust (Programming Language), Data Structures, Package and Software Management, Development Environment, Web Development, Blockchain, Programming Principles, Web Servers, Command-Line Interface, Maintainability, Algorithms, Cryptography, Integrated Development Environments, Software Testing, System Programming, Software Design Patterns, Scalability

  • Status: Free Trial

    Skills you'll gain: Django (Web Framework), Object-Relational Mapping, Database Design, SQL, Model View Controller, Databases, Object Oriented Programming (OOP), Web Applications, Data Modeling, Application Security, Hypertext Markup Language (HTML), Software Design Patterns, Python Programming

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Unreal Engine, C++ (Programming Language), Video Game Development, Game Design, Object Oriented Programming (OOP), Software Design Patterns, Software Architecture, Programming Principles, Application Development, Debugging

  • Skills you'll gain: Middleware, Model View Controller, Web Applications, Development Environment, Web Development, User Interface (UI), Data Modeling, Agile Software Development, Git (Version Control System), Ajax, Software Development, Software Architecture, Application Design, Software Design Patterns, Databases, Ruby on Rails, Javascript, Network Protocols

  • Status: Preview

    École Polytechnique Fédérale de Lausanne

    Skills you'll gain: Scalability, Scala Programming, Distributed Computing, Event-Driven Programming, System Design and Implementation, Microservices, Software Architecture, Software Design Patterns, Cloud Computing, Software Design, Middleware

  • Status: Preview

    École Polytechnique Fédérale de Lausanne

    Skills you'll gain: Software Design Patterns, Object Oriented Programming (OOP), Software Design, Object Oriented Design, Java, Program Development, Graphical Tools, Simulations, Integrated Development Environments, Algorithms

  • Status: Free Trial

    Skills you'll gain: Unified Modeling Language, Object Oriented Programming (OOP), Object Oriented Design, Test Driven Development (TDD), Software Design Patterns, Software Design, Programming Principles, Program Development, Computer Programming, Software Development Methodologies, Distributed Computing

  • Status: Free Trial

    University of Colorado System

    Skills you'll gain: Penetration Testing, Application Security, Vulnerability Scanning, Secure Coding, Exploitation techniques, Software Design Patterns, Vulnerability Assessments, Amazon Web Services, SQL, Amazon Elastic Compute Cloud, Operating Systems, C (Programming Language)