Skip to content

Latest commit

 

History

History
44 lines (35 loc) · 2.91 KB

syllabus.md

File metadata and controls

44 lines (35 loc) · 2.91 KB

Application Engineering and Development

Students will learn innovative software programming techniques that will enable them to properly design and build any kind of application quickly.

Through hands-on weekly lab sessions, students practice the development of applications as an assembly of components. Object-Oriented techniques for building business architectures that map to software applications will be introduced. You will learn how to master ways of taking vague requirements and turn them into systems of eco- system scale.

This class was designed to meet the needs of engineering students with a limited programming background. Students who do have a programming background will learn how to design and architect software the right way.

Course Objectives:

  • Demonstrate fluency in the Java programming language
  • Understand and leverage procedural and object-oriented paradigms
  • Understand standard data types, primitive classes, wrapper classes and String classes
  • Understand OO concepts: encapsulation, inheritance, polymorphism, and abstraction
  • Understand the usage of Abstract classes, interfaces and inner classes
  • Understand handling of exceptions and multi-threaded programming
  • Understand Arrays and Collection framework, Collections, Lists, Sets Maps
  • Use fileIO, and handling of exceptions
  • Understand building user interfaces using Java Swing
  • Sample project to develop a swing application for searching cars

Prerequisites:

This course assumes operating system level administration of computer hardware for either Windows or OSX. Students will be installing Eclipse and other build tools to develop programs and exercises.

Course Schedule: (Subject to change)

Week 1 Welcome, Overview of OOP, Thinking in Objects
Week 2 Java, Helloworld example, Variables, values and types, Classes and objects, Program flow control, Boolean expressions, Arrays, Loops
Week 3 Unit Testing, Debugging, String class and manipulation, StringBuilder, Wrapper classes
Week 4 Object Oriented Programming – Constructors/Destructors, Encapsulation, Abstraction, Polymorphism
Week 5 Object Oriented Programming cont’d– Encapsulation, Abstraction, Polymorphism
Week 6 Abstract classes, Interfaces, final, static keywords
Week 7 Exception handling Advanced Debugging and Logging
Week 8 Midterm Exam Java arrays, ArrayList, Collections framework Generics - Hashmap, Iterators
Week 9 Java Threads Synchronization Parallel processing File Processing (Input/Output)
Week 10 Java 8 Features
Week 11 Developing User interfaces using Java swing
Week 12 Sample project – Build a portal for Searching Cars
Week 13 Sample project cont’d
Week 14 Sample project cont’d
Week 15 Demo of the Final project