| Course Title | Rich Internet Application (RIA) Development |
| Course Code | ITEC230 |
| Type | Full Time |
| Semester | Fall/Spring |
| Category | AC (Area Core) |
| Workload | 180 Hours |
| EMU Credit | (3,2,0) 4 |
| Prerequisite | ITEC229 |
| Language | English |
| Level | Second Year |
| Teaching Format | 3 Hours Lecture and 2 Hours Laboratory per week |
| ECTS Credit | 6 |
| Course Description |
| This course focuses on technologies for building Rich Internet Applications(RAIs). Throughout the semester enhancing static web applications by providing dynamic and interactive content using JavaScript will be discussed. Topics include JavaScript basics, JavaScript language as object-based language, Interacting with the User through HTML forms, Programming the Browser, Document object Model(DOM)and Framework JQuery. |
| General Learning Outcomes |
On successful completion of this course students will be able to:
|
| Teaching Methodology / Classroom Procedures |
|
| Course Materials / Main References |
Text Book: Jon Duckett, "JavaScript & JQuery: Interactive front-end web development", 1st Edition, John Wiley & Sons, 2014. ISBN13: 978-1118531648 Reference: Lecture Notes:download (use index.html to access the lecture notes) |
| Weekly Schedule / Summary of Topics | |
| Week 1 | Introduction to JavaScript :What is JavaScript? Why Choose JavaScript? Tools needed to create JavaScript Web Applications. First Simple JavaScript Programs Data Types and Variables :Types of data in JavaScript, Numerical Calculations, operator precedence, basic string operations, data type conversions, arrays and multi-dimensional arrays |
| Week 2-3 | Decisions Loops and Functions : Comparison operators, logical operators, if, if-else and switch statements, For, for..in, while, do..while loops break and continue statements, Creating functions, variable scope and lifetime Error Handling & Debugging : Common mistakes, try..catch statements, debugging in Internet Explorer |
| Week 4-5 | Object-Based Programming in JavaScript What are objects, Objects in JavaScript, Using JavaScript Objects, JavaScript's Native Objects: String, array, math, number, date, Creating new types of objects(Reference types) |
| Week 6 | Programming the Browser: Browser's objects: window, history, location, navigation, screen, and document objects. Responding to the user's actions with events. |
| Week 7 | HTML Forms: Interacting with the User :HTML elements in forms, their common properties and methods: Button, text, textarea, check boxes, radio buttons and selection boxes |
| Week 8-9 | Midterm Examinations |
| Week 10 | HTML Forms: Interacting with the User :HTML elements in forms, their common properties and methods: Button, text, textarea, check boxes, radio buttons and selection boxes cntd. |
| Week 11 | Controlling iFrames: Coding between frames, accessing between frames, opening a new browser window, scripting between windows, moving and resizing windows. |
| Week 12 | String Manipulation: Regular expressions and RegExp object, methods like split, replace, search and match. |
| Week 13 | Date, Time and Timers : Setting and getting a Date Object's UTC Date and Time. Timers in a web page. Cookies in JavaScript : Creating a cookie, getting a cookie's value, cookie limitations |
| Week 14 | Document Object Model (DOM) and Its manipulation :Core DOM objects, accessing elements, changing appearances, positioning and moving content, DOM event handling |
| Week 15 | JQuery: Adding a framework (JQuery) to the pages, adding plug-ins to a framework, creating appending and removing elements, JQuery's event model and handling events , applying/changing CSS classes |
| Week 16-18 | Final Examinations |
| Requirements |
|
| Method of Assessment | |||||
| Evaluation and Grading | Assignment | Laboratory | Class Quizzes | Midterm Exam | Final Exam |
| Percentage | 12% | 8% | 15 % | 30 % | 35 % |
| Grading Criteria * | |||||||||||
| A | A- | B+ | B | B- | C+ | C | C- | D+ | D | D- | F |
| 90 -100 | 85 - 89 | 80 - 84 | 75 - 79 | 70 - 74 | 65 - 69 | 60 - 64 | 56 - 59 | 53 - 55 | 50 - 52 | 40 - 49 | 0 – 39 |
* Letter grades will be decided upon after calculating the averages at the end of the semester and distribution of the averages will play a significant role in the evaluation of the letter grades.