COMPUTER SCIENCE


Course Credits: 3 Units

Prerequisites: CMSC 22

CMSC 126: Web Programming

Course Description

This course introduces students to the discipline of web programming including the methods and techniques used in web-based system development.

Course Learning Outcomes

After completion of the course, the student should be able to:

  1. Understand and apply the concepts, principles, and methods of web engineering.
  2. Perform analysis and design modelling for web applications.
  3. Familiarize with the current technologies used for web engineering./li>
  4. Identify candidate tools and technologies to be used for developing your own web application.
  5. Create web applications as a full-stack developer.
  6. Apply DevOps practices in building, testing, and maintaining infrastructure and tools to allow for the speedy development and release of web applications.
Course Outline

UNIT 1. Introduction to Web Development

  1. The World Wide Web
  2. The Internet
  3. Web Engineering
  4. Technological Stacks in Web Engineering

UNIT 2. Web Planning

  1. Software Development Life Cycles
  2. Agile Development
  3. Git & GitHub
  4. Kanban
  5. Scrum Development

UNIT 3. Web Designing

  1. User Experience
  2. User Interface
  3. Sitemaps, Wireframes, Mockups, and Prototypes

UNIT 4. Frontend Development

  1. HTML
  2. CSS
  3. JavaScript
  4. Frontend New Technologies (React, Angular, Vue, etc.)
  5. Frontend Testing

UNIT 5. Backend Development

  1. Server-side Programming
  2. Web Servers
  3. PHP
  4. Backend New Technologies (NodeJS, Django, Laravel, etc.)
  5. Backend Testing
  6. UNIT 6. Web Deployment

    1. DevOps
    2. GitHub Pages
    3. Project Deployment

    UNIT 7. Other Important Topics

    1. Web Application Improvements
    2. Computer Ethics
    3. Software Dependability
    4. Reliability, Safety, and Security
    5. Constant Learning
    6. Code Optimization