Skip to content
@isel-leic-ipw

isel-leic-ipw

ISEL - Instituto Superior de Engenharia de Lisboa

Introduction to Web Programming / Introdução à Programação na Web

en pt

Institutional information


Supplementary information

General Information
Scientific Area Computer Science and Engineering
ECTS Credit Points 6 credit points
Level, Year/Semester Undergraduate, 2nd year / 3rd semester
Language English or Portuguese
Available in Autumn-Winter Semester (Sep. - Feb.)
In-class contact hours 15 weeks x 4.5 hours per week in class
Course Manager Luís Falcão

Description

In this course unit, we build concrete end-to-end web applications, while keeping theory and practice intrinsically interwined, as well as maintaining a balanced focus on high-level architecture and programming details. This starts by acknowleding that, to properly program in the web environment, it's fundamental to get familiar with the architecture of the world wide web, and to understand how the Hypertext Transfer Protocol (HTTP) is used to access resources identified by Uniform Resource Locators (URL).

The initial focus will be on the server-side of web applications, and on creating adequate web APIs for the resources they expose. For the persistent data storage we use a document based store, accessed directly through HTTP, which also helps to reinforce the central role of the protocol in the web ecosystem and, therefore, in this course unit.

Then we briefly focus on the client-side of web applications, using both static and dynamically generated content, with subsequent course units covering these topics in more depth. The subjects of authentication and authorization are also introduced, allowing students to end the course building a simple, yet complete, example of a web application, with a typical implementation structure.

The main programming language used throughout the course is JavaScript, supported in server-side by Node.js platform and in client-side by the browser engine. The Node.js platform provides a single-threaded execution environment for processing multiple HTTP requests simultaneously, by taking full advantage of asynchronous input/output APIs. We briefly explore traditional callback based asynchronous APIs, but we then focus our attention on promise based APIs and on the async/await syntax, which will serve as a base for subsequent course units that will discuss and use similar constructs in different programming languages. On the client side, the standard languages for this environment are used, namely HTML, CSS and JavaScript.

Special attention will be dedicated to the software architecture and design of web applications, enriching and expanding the base knowledge and experience of students about software engineering.

Prerequisites

  • At least two semesters of programming experience, using an imperative or functional language.
  • Essential knowledge about IP networks.

Disclaimer: The above information is provided for convenience and does not replace official institutional information.

Popular repositories Loading

  1. 2223i-IPW-LEIC31D 2223i-IPW-LEIC31D Public

    JavaScript 13 3

  2. IPW-2223i-LEIC32D IPW-2223i-LEIC32D Public

    JavaScript 10 1

  3. 2324i-IPW-LEIC31D 2324i-IPW-LEIC31D Public

    JavaScript 8 2

  4. IPW-2122i-LEIC31N IPW-2122i-LEIC31N Public

    JavaScript 6 1

  5. IPW-2122i-LEIC32D IPW-2122i-LEIC32D Public

    Aulas de Introdução à Programação na Web da turma LEIC32D no inverno de 2021/2022

    JavaScript 5 3

  6. 2324i-IPW-LEIC31N 2324i-IPW-LEIC31N Public

    JavaScript 5

Repositories

Showing 10 of 67 repositories
  • isel-leic-ipw/2324i-IPW-LEIC32D’s past year of commit activity
    JavaScript 3 0 0 0 Updated Feb 12, 2024
  • isel-leic-ipw/2324i-IPW-LEIC33D’s past year of commit activity
    JavaScript 2 0 0 0 Updated Feb 12, 2024
  • isel-leic-ipw/2324i-IPW-LEIC31N’s past year of commit activity
    JavaScript 5 0 0 0 Updated Feb 12, 2024
  • seca-ipw-p1-leic2324i-ipw33d-g04 Public

    seca-ipw-p1-leic2324i-ipw33d-g04 created by GitHub Classroom

    isel-leic-ipw/seca-ipw-p1-leic2324i-ipw33d-g04’s past year of commit activity
    JavaScript 3 0 0 0 Updated Jan 7, 2024
  • isel-leic-ipw/2324i-IPW-LEIC31D’s past year of commit activity
    JavaScript 8 2 0 0 Updated Dec 22, 2023
  • .github Public

    isel-leic-ipw organization profile

    isel-leic-ipw/.github’s past year of commit activity
    0 MPL-2.0 0 0 0 Updated Jun 27, 2023
  • info Public

    ISEL/LEIC - Introduction to Web Programming / Introdução à Programação na Web

    isel-leic-ipw/info’s past year of commit activity
    0 MPL-2.0 0 0 0 Updated Jun 27, 2023
  • cmdb-ipw-leic2223i-ipw31n-g07 Public

    cmdb-ipw-leic2223i-ipw31n-g07 created by GitHub Classroom

    isel-leic-ipw/cmdb-ipw-leic2223i-ipw31n-g07’s past year of commit activity
    JavaScript 0 0 0 0 Updated Feb 22, 2023
  • cmdb-ipw-leic2223i-ipw31n-g03 Public

    cmdb-ipw-leic2223i-ipw31n-g03 created by GitHub Classroom

    isel-leic-ipw/cmdb-ipw-leic2223i-ipw31n-g03’s past year of commit activity
    JavaScript 0 0 0 0 Updated Jan 15, 2023
  • cmdb-ipw-leic2223i-ipw32d-g10 Public

    cmdb-ipw-leic2223i-ipw32d-g10 created by GitHub Classroom

    isel-leic-ipw/cmdb-ipw-leic2223i-ipw32d-g10’s past year of commit activity
    JavaScript 0 0 0 0 Updated Jan 15, 2023

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…