Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Course Syllabus Advanced Java Programming INEW 2438 Spring 2014 Semester with Course Reference Number (CRN) Instructor contact information (phone number and email address) Phan Viet Hoang Email: [email protected] Office Location and Hours Office: Room L208, Saigontech Tower, Quang Trung Software City Office Hours: 7:30 – 17:00 Course Location/Times Lecture & Lab Room L208, Saigontech Tower, Quang Trung Software City Saturday, 9:10 – 12:20 Course Semester Credit Hours (SCH) (lecture, lab) If applicable Credit Hours: 4 Lecture Hours: 2 Laboratory Hours: 2 External Hours: Total Course Contact Hours 96 Course Length (number of weeks) 16 Type of Instruction Lecture Lecture/Lab Course Description: Advanced topics in Java programming language featuring advanced Android graphics user interface, multi-threading in various events, client-server programming, Java security, and mobile notification. These topics will be applied to develop a Androidbased mobile application in a Windows environment. Course Prerequisite(s) PREREQUISITE(S): Nguyen Hai Son Email: [email protected] COSC 1437 (‘Object Oriented Programming’) and/or ITSE 1356 (‘Extensible Markup Language’) FREQUENT REQUISITES College Level Reading College Level Mathematics College Level Writing Academic Discipline/CTE Program Learning Outcomes (PLO) 1. Design and write computer programs that are correct, simple, clear, efficient, well organized, and well documented 2. Know and be able to apply important data structures and algorithms 3. Understand the hardware and software aspects of computer systems that support application software development 4. Identify the fundamental principles of programming, including those of algorithm analysis, software design, operating systems, and database. 5. Develop software engineering proficiency 6. Create apps for Android-based smart phones and tablets. Course Student Learning Outcomes (SLO): 4 to 7 1. Use advanced Android graphic functions for mobile application 2. Write multi-thread Java programs 3. Access files 4. Connect mobile app to network server 5. Register with Google for device location and use Google Map 6. Use Android notification manager for broadcasting. Learning Objectives (Numbering system should be linked to SLO - e.g., 1.1, 1.2, 1.3, etc.) 1. Learn Android advanced graphic user interface Set up the Android Development Environment. Create a basic "Hello World" Android Application containing a simple Graphical User Interface (GUI). Understand the various parts and features of an Android project, and how they relate to each other. Become familiar with the Android emulator. Install and run the application on a physical Android device 2. Write multi-thread Java programs in an Android environment create an Android Test Project and test Android activities. understand how multi-thread Views, View Groups, Layouts, and Widgets are and how they relate to each other. declare layouts dynamically at runtime. reference resources in code and from other resource layout files. use Android's system debug output monitor LogCat for debugging. use Events and Event Listeners. 3. Access files save and restore data as Application Preferences. save and restore data as Instance State. create, maintain and interact with Content Providers and tables. o implement SQLite database helper classes to aid in table access, database initialization and minimal management. o How to access and modify a SQLite database table using URIs and content provider database calls. 4. Connect to network server establish Http connections. use AsyncTask. Instructional Methods Face to Face Instructor's Requirements As a student wanting to learn about the Java language, it is your responsibility to read the textbook and the supplemental materials posted in the blackboard, complete assignments in time, participate in the classroom exercises and activities, and attend class regularly. As I believe that engaging the students in the learning is essential for teaching to be effective, you will spend the majority of class time involved in collaborative activities. You will be involved in class exercises, collaborate with your classmates and your instructor. As you will want to contribute to these discussions, you will need to come to class prepared to discuss, analyze and evaluate information from your text and other assigned readings. Course Policies on Make-up Exams, Late Assignments, Tardiness Students are expected to take each exam on the scheduled dates. Make-up exams are not guaranteed, but are granted at the discretion of the instructor. If make-up exams are allowed, it is necessary to make arrangements with the instructor prior to exam date. Students will not be able to submit assignments, projects after the due/closing date. Grading Scheme A = 100- 90 B = 89 – 80 C = 79 – 70 D = 69 – 60 F = 59 and below The passing grade of this course is D. Instructor Grading Criteria In-class Tests Labs: Mid-term Exam: Final Exam: 15% 40% 20% 25% Instructional Materials ‘Java™ How to Program’, Deitel, Sixth Edition, 2004, Prentice Hall ‘Professional Android 4 Application Development’, Meier, 2012, Wiley Android Training Materials 1. Basic training http://developer.android.com/training/index.html 2. Labs https://sites.google.com/site/androidappcoursev3/ Course Calendar Week Discussion Topics References Lab & Project 1 (18/01) Orientation Basic Java Test Chapter 1 (Meier) – Hello, Android (AndroidIntroduction.ppt) 2 (25/01) Graphics User Interface Chapter 11 (Deitel) – GUI Components (ch11.ppt, ch11e.ppt, AndroidGUI.ppt) Lab 1 – Hello World (Android Setup) 3 (15/02) GUI in Android Chapter 4 (Meier) – Building User Interface (PA4AD_Ch04_Layouts) Lab 2 – Joke List (GUI, Advanced Setup) 4 (22/02) Multi-threading Chapter 23 (Deitel) – Multithreading (ch23.ppt, ch23e.ppt) Lab 2 (cont) (Views, Events) 5 (01/03) Multi-threading in Android activities Android training: Managing Activity lifecycle (AndroidActivityMultiThreading.ppt, ActivityLifecycle.zip) Lab 3 – Joke List 2.0 (Layout XML, Menu) 6 (08/03) File processing Chapter 14 (Deitel) – Files and Streams (ch14.ppt, ch14e.ppt) Lab 3 (cont) (Toasts) 7 (15/03) Data processing Chapter 25 (Deitel) – Accessing database with JDBC (ch25.ppt, ch25e.ppt) Lab 4 – Joke List 3.0 (Preferences) 8 (22/03) Mid-term Exam Network Chapter 24 (Deitel) – Networking (ch24.ppt, ch24e.ppt) 9 (29/03) Network in Android Chapter 6 (Meier) – Using Internet Resource Lab 5 – Joke List 4.0 (Downloading and parsing Internet Resources) (ch6a.ppt, Chapter6_Earthquake) (Http Connection) 10 (05/04) File processing in Android Chapter 7 (Meier)– Files, Saving State (ch7a.ppt, PA4AD_Ch07_Preferences, Chapter_7_Earthquake_Part_1) Lab 5 (cont) 11 (12/04) Data processing in Android Chapter 8 (Meier) – Databases (ch8a.ppt, Chapter_8_Earthquake_Part_1) Lab 4 (cont) (Instance State) 12 (19/04) Background Working in Android Chapter 9 (Meier) – Working in the Background (ch9a.ppt, PA4AD_Ch09_MyService, Chapter_9_Earthquake_Part_1) Lab 4 (cont) (SQLite) 13 (26/04) Advanced User Experience in Android Chapter 10 (Meier) – Expanding the User Experience (ch10a.ppt, Chapter_10_Earthquake_Part_1) 14 (03/05) Final exam review 15 (10/05) Final exam 16 (17/05) Advanced User Experience in Android Chapter 10 (Meier) – Expanding the User Experience (ch10a.ppt, Chapter_10_Earthquake_Part_2)