We may earn an affiliate commission when you visit our partners.
Course Discontinued We've found some alternatives for you:

Top Active Alternatives

Creating Object-oriented TypeScript Code is no longer accepting new enrollments. We've matched the highest-rated active courses in this subject:

Course image
Dan Wahlin
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Examines some of the core principles of object-oriented programming and how they can be applied and used
Explores several ways to create, define, and instantiate objects in TypeScript, many of which are standard in industry
Goes into detail about how inheritance can be used to promote reuse, which is a core skill for practicing object-oriented programming in industry
Teaches interfaces and how they can be used to create code contracts that drive consistency across a set of objects and enable polymorphic behavior
Taught by Dan Wahlin, who is recognized for his work in TypeScript and object-oriented programming
Explicitly requires learners to come in with object-oriented programming knowledge first

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Career center

Learners who complete Creating Object-oriented TypeScript Code will develop knowledge and skills that may be useful to these careers:
Software Engineer
Software Engineers design, develop, test, and implement computer software. Software Engineers develop the applications that we use on our computers, phones, and tablets. They also maintain and update existing software. This course helps build a foundation for Software Engineers by teaching them the principles of object-oriented programming. Object-oriented programming is a powerful technique for organizing code and making it more reusable. By learning object-oriented programming, Software Engineers can write code that is more efficient, maintainable, and extensible.
Web Developer
Web Developers design and develop websites and web applications. They work with clients to understand their needs and then create a website or web application that meets those needs. This course may be useful for Web Developers who want to learn more about object-oriented programming. Object-oriented programming can help Web Developers write code that is more efficient, maintainable, and extensible.
Mobile Developer
Mobile Developers design and develop mobile applications. They work with clients to understand their needs and then create a mobile application that meets those needs. This course may be useful for Mobile Developers who want to learn more about object-oriented programming. Object-oriented programming can help Mobile Developers write code that is more efficient, maintainable, and extensible.
Game Developer
Game Developers design and develop video games. They work with clients to understand their needs and then create a video game that meets those needs. This course may be useful for Game Developers who want to learn more about object-oriented programming. Object-oriented programming can help Game Developers write code that is more efficient, maintainable, and extensible.
Data Scientist
Data Scientists use data to solve problems and make decisions. They work with data to find patterns and trends. They also develop models to predict future events. This course may be useful for Data Scientists who want to learn more about object-oriented programming. Object-oriented programming can help Data Scientists write code that is more efficient, maintainable, and extensible.
Machine Learning Engineer
Machine Learning Engineers design and develop machine learning models. They work with data to find patterns and trends. They also develop models to predict future events. This course may be useful for Machine Learning Engineers who want to learn more about object-oriented programming. Object-oriented programming can help Machine Learning Engineers write code that is more efficient, maintainable, and extensible.
Computer Scientist
Computer Scientists research and develop new computer technologies. They work on a wide range of topics, including artificial intelligence, computer graphics, and operating systems. This course may be useful for Computer Scientists who want to learn more about object-oriented programming. Object-oriented programming is a powerful technique for organizing code and making it more reusable.
Systems Analyst
Systems Analysts design and develop computer systems. They work with clients to understand their needs and then create a computer system that meets those needs. This course may be useful for Systems Analysts who want to learn more about object-oriented programming. Object-oriented programming can help Systems Analysts write code that is more efficient, maintainable, and extensible.
Database Administrator
Database Administrators design and maintain databases. They work with clients to understand their needs and then create a database that meets those needs. This course may be useful for Database Administrators who want to learn more about object-oriented programming. Object-oriented programming can help Database Administrators write code that is more efficient, maintainable, and extensible.
Business Analyst
Business Analysts work with clients to understand their business needs. They then develop solutions to help clients meet their needs. This course may be useful for Business Analysts who want to learn more about object-oriented programming. Object-oriented programming can help Business Analysts write code that is more efficient, maintainable, and extensible.
Technical Writer
Technical Writers write documentation for software and other technical products. They work with engineers and other technical experts to understand the product and then write documentation that is clear and easy to understand. This course may be useful for Technical Writers who want to learn more about object-oriented programming. Object-oriented programming can help Technical Writers write documentation that is more accurate and easier to understand.
Project Manager
Project Managers plan and manage projects. They work with clients to understand their needs and then develop a plan to meet those needs. This course may be useful for Project Managers who want to learn more about object-oriented programming. Object-oriented programming can help Project Managers write code that is more efficient, maintainable, and extensible.
Product Manager
Product Managers develop and manage products. They work with customers and other stakeholders to understand their needs and then develop a product that meets those needs. This course may be useful for Product Managers who want to learn more about object-oriented programming. Object-oriented programming can help Product Managers write code that is more efficient, maintainable, and extensible.
Sales Engineer
Sales Engineers sell software and other technical products. They work with customers to understand their needs and then help them choose the right product. This course may be useful for Sales Engineers who want to learn more about object-oriented programming. Object-oriented programming can help Sales Engineers write code that is more efficient, maintainable, and extensible.
Technical Support Engineer
Technical Support Engineers help customers with software and other technical issues. They work with customers to understand their problems and then help them find a solution. This course may be useful for Technical Support Engineers who want to learn more about object-oriented programming. Object-oriented programming can help Technical Support Engineers write code that is more efficient, maintainable, and extensible.

Reading list

We've selected 50 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Creating Object-oriented TypeScript Code.
While not solely about OOP, this book is fundamental for any programmer, including those using OOP. It emphasizes writing readable, maintainable, and well-structured code, which is essential for effective object-oriented design. It teaches the difference between good and bad code and how to refactor, providing practical examples and insights into SOLID design principles based on OOP concepts. This crucial reference for writing high-quality code in any object-oriented language.
Often referred to as the 'Gang of Four' book, this seminal work on software design patterns in OOP. It presents a catalog of 23 classic design patterns that provide solutions to recurring design problems. Understanding these patterns is vital for designing flexible, maintainable, and reusable object-oriented systems. is more suitable for those with a foundational understanding of OOP and valuable reference for designing complex software.
Comprehensive catalog of interface design patterns, providing practical solutions to common design problems across various platforms. It's an excellent reference tool for understanding established UI best practices. The third edition includes updated examples and covers mobile interfaces and UI systems, making it relevant for contemporary interface design challenges. It is highly regarded in the field and can serve as a textbook or additional reading for students and professionals.
Is excellent for beginners to grasp the fundamental concepts of OOP and how to apply them. It covers basics like classes, objects, encapsulation, polymorphism, abstraction, and inheritance, as well as more advanced concepts such as composition, delegation, association, and aggregation. It helps readers think in terms of objects to solve problems and is particularly useful for those transitioning from procedural programming. This book great introductory text and can serve as a foundational resource before diving into more complex topics.
A collection of best practices for writing effective Java code, including a discussion of the benefits and challenges of encapsulation.
Focuses on teaching you how to think in terms of objects, which is crucial for effective OOP. It's an excellent resource for beginners, especially those with a background in procedural languages, to understand how to build complex systems using basic OOP concepts. It's considered a must-read for anyone starting their OOP journey and complements practical coding exercises well.
This concise book focuses specifically on designing RESTful APIs, providing a set of rules and best practices for creating consistent and well-designed web service interfaces. It's a practical guide for developers and architects working with REST APIs, covering topics like URI design, HTTP methods, and media types.
An advanced text that looks into representation in computation, and its implications for abstraction, programming, and computing with types. It is of particular interest to those interested in the foundations of programming and the mathematics of computation.
Demonstrates how to develop object-oriented software using a test-driven development (TDD) approach. It shows how writing tests first can guide the design of well-structured and maintainable object-oriented code. This book is highly practical and provides valuable insights into the synergy between TDD and object-oriented design. It's particularly useful for developers interested in agile methodologies and building robust software.
Specifically focuses on applying object-oriented principles in Python 3. It covers core OOP concepts like classes, inheritance, and polymorphism with Python-specific examples and idioms. It's highly relevant for those learning OOP through Python and provides practical guidance for building object-oriented applications in Python.
Provides a pragmatic and accessible approach to object-oriented design, using Ruby as the مثال language. It focuses on creating maintainable and flexible software through practical examples and clear explanations. It's highly recommended for developers who want to improve their design skills and is valuable even if you don't primarily use Ruby.
Is essential for understanding how to improve the design of existing codebases, a common task in software development. It provides a catalog of refactorings and explains how to apply them to make code more understandable, maintainable, and less prone to bugs. While not exclusively about OOP, many refactoring techniques are applied to object-oriented code to improve its structure and design. This book is highly practical and valuable for anyone working on real-world software projects.
Offers a more accessible introduction to OOP using C++ compared to Stroustrup's book. It systematically introduces OOP principles alongside the C++ language features. It is often used as a textbook and is known for its clear explanations and numerous examples, making it suitable for beginners learning OOP with C++.
Emphasizes the communicative aspect of user interfaces, explaining how to design interfaces that effectively communicate with users. It covers universal principles of UI design and provides practical guidance through case studies. It's a valuable resource for understanding the user-centered approach to interface design.
Focuses on a responsibility-driven approach to object-oriented design, emphasizing the roles, responsibilities, and collaborations of objects. It provides a practical methodology for designing object-oriented software by thinking about how objects interact. This book valuable resource for improving your object design skills and creating more flexible and understandable systems.
Similar to his C++ book, Lafore's book on OOP in Java provides a clear and step-by-step introduction to object-oriented concepts using the Java language. It's a good resource for beginners who want to learn OOP through practical Java examples. can serve as a solid starting point for understanding OOP fundamentals in a widely used language.
Bridges the gap between cognitive psychology and user interface design, explaining the psychological principles behind UI design guidelines. Understanding how users perceive and interact with interfaces is crucial for creating effective designs. It provides a solid foundation in the human factors influencing interface design.
Using a visually rich and engaging format, this book introduces design patterns and the object-oriented principles behind them, including polymorphism. It provides a more accessible approach to the concepts presented in the 'Gang of Four' book, making it suitable for those new to design patterns. It helps solidify understanding through examples and exercises.
Explores the nature of abstraction in the fields of logic, mathematics, and computer science, examining historical and philosophical perspectives as well as modern developments.
This widely acclaimed book offers practical advice on a wide range of software development topics, including design and coding practices that are highly relevant to working with classes and objects effectively. It emphasizes writing flexible, maintainable, and understandable code. It's a must-read for any programmer seeking to improve their craft.
Introduces Domain-Driven Design (DDD), an approach to software development that focuses on creating an object-oriented model of the domain problem. It provides strategic and tactical patterns for designing complex systems by deeply understanding the business domain. This book is more advanced and is particularly relevant for those working on large and complex software projects where the domain logic is central. It's a valuable resource for experienced developers and architects.
Specifically focuses on program design in Java with a strong emphasis on polymorphism and design patterns. It aims to help practicing programmers improve their design skills by understanding how to effectively use polymorphism and apply classic design patterns in Java. It includes practical examples and demonstrates the evolution of a program design.
A foundational book in human-computer interaction, this classic explores the principles of good design through everyday objects. It provides essential background knowledge on user-centered design and the psychology behind user interaction. While not strictly about software interfaces, its core concepts are directly applicable and crucial for anyone designing interfaces. It is considered a must-read for understanding the user's perspective.
Explores the principles behind designing effective web APIs, focusing on delivering value to consumers and aligning API design with business goals. It's a valuable resource for understanding the strategic aspects of API design and how interfaces can contribute to overall system success.
Provides a comprehensive introduction to object-oriented analysis and design using UML and design patterns within an iterative development process. It bridges the gap between theoretical concepts and practical application, guiding the reader through the process of building software systems. This book is often used as a textbook and good resource for students and practitioners learning how to apply OOP principles in a structured manner.
Takes a deeper dive into object-oriented programming in Python, covering more advanced topics and design patterns relevant to Python development. It explores how to use Python's features effectively for building robust and scalable object-oriented applications. This book is aimed at intermediate to advanced Python developers who want to master OOP techniques specific to the language.
Using the engaging Head First approach, this book introduces the Java programming language and core object-oriented concepts, including inheritance, in a beginner-friendly way. It's a great starting point for those new to both Java and OOP, providing a solid foundation through interactive examples.
Examines the concept of abstraction at the intersection of linguistics, philosophy, computer science, cognitive science, and artificial intelligence.
Provides a comprehensive overview of abstraction techniques in artificial intelligence and complex systems, covering topics such as knowledge representation, planning, and reasoning.
Explores the design and implementation of microservices, an architectural style that heavily relies on well-defined interfaces between services (APIs). It provides valuable insights into designing effective service interfaces in a distributed system context and is highly relevant for understanding contemporary software architecture patterns.
This practical guide provides 62 specific tips and tricks for writing better TypeScript code, making it a valuable resource for developers of all levels.
This beginner-friendly guide to TypeScript provides a step-by-step introduction to the language, making it a great choice for those who are new to TypeScript.
This hands-on guide to TypeScript provides a practical introduction to the language, making it a great choice for developers who want to learn how to use TypeScript in real-world projects.
This beginner-friendly guide to TypeScript provides a step-by-step introduction to the language, making it a great choice for those who are new to TypeScript.
This practical guide to TypeScript provides a comprehensive overview of the language, making it a great choice for developers of all levels.
This practical guide to TypeScript for Angular developers provides a comprehensive overview of the language, making it a great choice for developers who want to use TypeScript with Angular.
This practical guide to TypeScript for Node.js developers provides a comprehensive overview of the language, making it a great choice for developers who want to use TypeScript with Node.js.
While focused on Smalltalk, this book presents timeless patterns for writing clean and effective object-oriented code at the method level. It offers valuable insights into designing small, well-defined methods and objects, which are applicable to any object-oriented language. It's considered a classic for understanding good object-oriented style.
Presents a strong opinionated view on object-oriented programming, advocating for a purist approach to object design. It challenges some common practices and encourages readers to think deeply about what it means to be object-oriented. This book is more suitable for experienced developers who want to explore different perspectives on OOP and refine their understanding of object immutability and side-effects. It can be a thought-provoking read for those looking to write highly cohesive and decoupled objects.
A comprehensive guide to learning Python, with significant coverage of Python's object-oriented features. is suitable for beginners and experienced programmers learning Python, providing a thorough understanding of how to define and use classes and objects in Python.
While not solely focused on interfaces, this book provides a deep understanding of the underlying systems that modern applications rely on, including how data is stored, processed, and transmitted. Understanding these concepts is crucial for designing effective and performant interfaces, especially APIs. It valuable reference for those seeking to deepen their understanding of the technical context of interfaces.
This influential book presents design patterns for enterprise applications, covering various architectural concerns. It includes patterns related to organizing business logic, data mapping, and presentation, all of which involve the design of interfaces within a large-scale application. It's a valuable reference for understanding established architectural patterns.
Explores the use of abstraction in music, examining its historical development and its role in musical theory and analysis.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Creating Object-oriented TypeScript Code.
Learn TypeScript
Most relevant
Object-Oriented C++: Inheritance and Encapsulation
Most relevant
Object-Oriented Python: Inheritance and Encapsulation
Most relevant
Learn Object-Oriented Programming with PHP
Most relevant
School Registry using Object Oriented Programming in Java
Most relevant
Application Engineering and Development Part 1
Most relevant
The Complete Guide To Mastering Python In 2024
Most relevant
TypeScript: The Complete Guide
Most relevant
C# Intermediate: Classes, Interfaces and OOP
Most relevant

Pluralsight Buyer Protection & Guarantee

Verified partner policies & purchase protections

Enterprise Technology Platform
Free Trial & Audit

10-Day Free Trial

10-day free trial (up to 200 minutes of content) with access to the Skills video library and skill assessments. Cancel before day 10 to avoid automatic conversion.

Return & Refund Policy

Cancel Anytime (Non-Refundable Once Billed)

Cancel easily online anytime before the 10-day trial expires to prevent billing. Once subscription fees are paid, individual subscriptions are non-refundable (cancellation stops future renewals).

Buyer Protections

Verified Academic & Industry Partner

Skill IQ and Role IQ diagnostic benchmark assessments, hands-on lab environments, and curated learning paths designed by technology leaders.

Key Purchase Protections
10-day free trial on individual Skills plans
Skill IQ assessments to benchmark proficiency
Cancel anytime online before trial ends without fees
Hands-on interactive labs and enterprise-grade tech content
OpenCourser Verified Partner Policy details last reviewed: 2026-10-22
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser