Description
In this course, you will learn:
- Covers the principles of object-oriented software design and development, as well as computational methods and sensing for engineering, science, and management applications.
- It covers subjects including class design, inheritance, graphical user interfaces, numerical methods, streams, threads, sensors, and data structures. Students use the Java® programming language to perform weekly software tasks.
Syllabus:
1. Control and Scope
- Course Overview, Introduction to Java
- Interactive Development Environment: Eclipse
- Operators, Control Structures
- Data Types, More Operators
- More Data Types, Control Structures, Intro to Methods
- Methods and Scope
2. Classes and Objects
- Classes and Objects
- Classes II
- Methods and Objects, Access
- Static Methods and Data
- Arrays, Arraylists
- Recursion
3. Inheritance
- Inheritance: Subclasses
- Inheritance II: Abstract Classes, Methods
- Inheritance III: Interfaces
- Design Lab I - Inheritance
4. Graphical User Interfaces
- Introduction to Swing
- Swing Event Model
- Inner Classes, Layout Managers
- Model-View-Controller, Timers
- 2D API, 2D Transformations
- Design Lab II- Swing
5. Streams (Input/Output) and Exceptions
- Streams I, Exceptions
- Streams II
6. Sensors and Threads
- Sensors I
- Sensors II
- Design Lab III - Sensors
- Threads
- Threads and Sensors
7. Numerical Methods
- Matrices
- Linear Systems
- Integration
- Root Finding
8. Data Structures
- Sorting
- Stacks, Queues
- Lists
- Storing Data: Trees, Hash Tables