Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React Angular CSS Node.Js PHP HTML5 Vue JS
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA Microsoft AZ-900 AWS Certified Developer - Associate
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Qlik Sense Blockchain
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Virtual Reality
Google Flutter Android Development iOS Development React Native Swift Dart (programming language) Mobile App Development Kotlin SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting Canva InDesign Character Design Procreate Digital Illustration App
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Life Purpose Mindfulness Meditation Sound Therapy CBT Cognitive Behavioral Therapy
Entrepreneurship Fundamentals Business Fundamentals Freelancing Business Strategy Startup Business Plan Online Business Blogging Home Business
Digital Marketing Social Media Marketing Marketing Strategy Internet Marketing Google Analytics Copywriting Email Marketing YouTube Marketing Podcasting

DevelopmentProgramming LanguagesObject Oriented Design

Design from Scratch use Python

programming skills to the next level with object oriented approach
Rating: 0.0 out of 50.0 (0 ratings)
4 students
Created by Haichuan Lin
Last updated 11/2021
English
English [Auto]

What you'll learn

  • Practical use of data structure and object-oriented analysis and programming
  • Simple game design, play against machine
  • Apply math and physics in your program
  • Algorithms

Requirements

  • General Purpose Programming Language Knowledge
  • Object-Oriented Concepts: class, field, property, methods, inheritance etc
  • Basic Data Structures and Algorithms: queue, stack, tree, graph etc.
  • High school or college Math and Physics

Description

This is an intermediate programming course for someone with basic programming knowledge and want to learn how to write a non trivial program from scratch. Some college level math and physics knowledge are definitely helpful. The demo projects are python but can be translated to other general-purpose programming languages very easily. (Or the design can be reused in another implementation language) All the demo projects here are small enough for learning but not trivial. 

The goal of this course is to improve your overall problem solving skills using software. 

The course is designed to focus on how to structure a program which has algorithms, UI and a few backend objects involved using OOP.

There are many other areas of knowledge that are important for a software engineer not covered here such as multi-threading, database etc.  Having those may lose the focus of the course and introduce unnecessary issues for students to debug the projects.  However, with good understanding of the course, students may find it helps learning other important areas in software development such as modeling large complex system (UML),  Design Patterns & Architecture, etc.

To make best use of the course:

students are expected to have some knowledge of the following

- General Purpose Programming Language Knowledge

- Object-Oriented Concepts: class, field, property, methods, inheritance etc.

- Basic Data Structures and Algorithms: queue, stack, tree, graph etc.

- High school or college Math and Physics



Who this course is for:

  • Someone with basic programming knowledge and want to learn how to write a non trivial program from scratch

Instructor

Haichuan Lin
Software Engineer
Haichuan Lin
  • 4.7 Instructor Rating
  • 222 Reviews
  • 20,475 Students
  • 2 Courses

Professional software engineer, many years work experience with global technology companies, advanced knowledge of product development using C#/C++, .Net, and large scale Object Oriented Design.  love working with young people who are curios of learning. I would like to pass my successful learning and working experience especially in the math, physics, and computer field to the next generation.

Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.