IT2018: Web Programming
Spring 2021

Department of CSIE

College of Engineering

Chang Gung University

 

What I cannot create, I do not understand.

-- Richard Feynman, 1918-1988


Syllabus

General Information

  • Lectures Instructor: Chi-Jen Wu (吳齊人)
  • Section: Wed 14:10 - 17:00
  • Classroom: TBA
  • Course Assistants: 徐伯愷 (m0829008 @ cgu.edu.tw)
  • Office Hour: TBA
  • Lecture Slides: https://el.cgu.edu.tw/
  • Others: https://csiecgu.slack.com
  • Your health matters.
  • Feel free to stop by my office, I look forward to meeting and assisting you.

Info & Objectives

This course will introduce concepts in web application development. Web application development requires to involve the integration of numerous technologies. However, web application offers numerous advantages, such as instant access, automatic upgrades, and opportunities for collaboration on a massive scale. This class will introduce you to the web technologies and give you experience in creating web applications. You will learn about markup languages, JavaScript, network protocols, event-driven programming, and databases, and see how they all work together to deliver exciting web applications. At the end, you should understand the fundamental concepts of web application design and learn to create web applications based on the modern approaches and tools, including RESTful API design, Backend and Frontend frameworks, such as Django/Python, Laravel/PHP, RoR/Ruby, React, Vue, Flutter and CSS/HTML5.

Topics

The course covers many topics related to the programming of web applications, including:

  • The history and concepts of World Wide Web (WWW)
  • Web data protocols (HTTP, WebSocket, WebRTC)
  • Web JavaScript programming (HTML, CSS, DOM, jQuery, Ajax)
  • Cookies and sessions
  • Web Frontend frameworks (Flutter/React)
  • Web Backend frameworks and architecture (Django 2.0/Python)
  • Design patterns (Model-View-Controller)
  • RESTful API design
  • Databases, transaction management, Object-Relational Mapping (ORM)
  • Version control (Git and GitHub)
  • User Tracking (Google Analytics)
 
 

Updated February 2021