NCHU Course Outline
Course Name (中) 進階程式設計(2337)
(Eng.) Advanced Programming
Offering Dept Department of Mechanical Engineering
Course Type Elective Credits 3 Teacher Bluest Lan
Department Department of Mechanical Engineering/Undergraduate Language 中/英文 Semester 2026-FALL
Course Description In this subject, students will advance their learning about the programming skill in engineering. Students will learn about data structures necessary for the construction of efficient algorithms. Moreover, students will spend a majority of the subject learning about algorithms useful in solving engineering problems. The concepts introduced will be reinforced through a contextual engineering project with mechatronics focus.

This course will further students' understanding of programming in engineering. It will cover essential data structures for creating efficient algorithms, and the majority of the time will be dedicated to learning algorithms beneficial for solving engineering problems. The concepts introduced will be reinforced through a contextual engineering project with a mechatronics emphasis.
Prerequisites 計算機程式 self-directed learning in the course Y
Relevance of Course Objectives and Core Learning Outcomes(%) Teaching and Assessment Methods for Course Objectives
Course Objectives Competency Indicators Ratio(%) Teaching Methods Assessment Methods
At the conclusion of this subject students should be able to:

1. Get the ability to select and design algorithms.

2. Be competent possessing expertise in building data structures and algorithms for numerical solutions, including searching and optimization.

3. Comprehend the application of computational methods in professional engineering, including in the design, analysis and validations of mechanical systems.
1.The ability to apply the knowledge of math, science, and mechanical engineering.
2.The ability to design and conduct experiments, as well as to analyze the data obtained.
3.The ability to work with others as a team to design and manufacture products of mechanical engineering systems.
4.The ability humanities awareness and a knowledge of contemporary issues, and to understand the impact of science and engineering technologies, environmental, societal, and global context.
5.The ability of continuing study and self-learning.
6.The knowledge of professional ethics and social responsibilities of a mechanical engineer.
20
20
20
10
20
10
Discussion
topic Discussion/Production
Lecturing
Internship
Study Outcome
Quiz
Written Presentation
Oral Presentation
Course Content and Homework/Schedule/Tests Schedule
Week Course Content
Week 1 Introduction to Data Structures and Algorithms
Course overview, role of algorithms, project briefing
Week 2 Object-Oriented Programming
Classes, objects, inheritance, modular design
Week 3 Modules & Algorithm Analysis
Program structure, Big-O notation, efficiency trade-offs
Week 4 Recursion & Iteration
Recursive vs. loop-based problem solving
Week 5 Stacks, Queues & Data Management
Core operations, examples in scheduling and buffering
Week 6 Linked Lists
Lists, operations, comparison with arrays
Week 7 Trees
Binary trees, traversals, basic balancing
Week 8 Searching & Sorting
Search methods, sorting algorithms
Week 9 Graphical User Interface (GUI)
Basics of event-driven programming, simple UI building
Week 10 Exam
Covers Weeks 1–9: fundamentals, data structures, algorithms
Week 11 Project Development I
Begin implementation; supervised coding sessions
Week 12 Project Development II
Continue development; checkpoints
Week 13 Project Development III
Refinement and testing; peer evaluation
Week 14 Project Development IV
Short updates, feedback, debugging support
Week 15 Final Presentation I
Formal presentations and oral defence
Week 16 Final Presentation II
Remaining presentations, peer review, reflection
self-directed
learning
   03.Preparing presentations or reports related to industry and academia.

Evaluation
Class Participation (30%); Exam (40%); Final Project (30%)
Textbook & other References
Goodrich, Tamassia, Goldwasser. Data Structures and Algorithms in Python. Wiley.
Teaching Aids & Teacher's Website
iLearning
Office Hours
After each lecture
Sustainable Development Goals, SDGs(Link URL)
include experience courses:N
Please respect the intellectual property rights and use the materials legally.Please respect gender equality.
Update Date, year/month/day:2026/06/18 10:58:14 Printed Date, year/month/day:2026 / 6 / 19
The second-hand book website:http://www.myub.com.tw/