CS 425: Internet Technologies
Spring 2019
Overview
Αυτό το μάθημα αποτελεί μια εισαγωγή στις Τεχνολογίες Διαδικτύου και Παγκόσμιου Ιστού (World-Wide Web) με έμφαση στον σχεδιασμό και την ανάπτυξη σύγχρονων ιστοσελίδων (web sites) και εφαρμογών ιστού (web applications).
Παρουσιάζει την αρχιτεκτονική και την υποδομή των συστημάτων παγκόσμιου ιστού και την αρχιτεκτονική εφαρμογών πελάτη/εξυπηρετητή (client/server).
Τα θέματα που καλύπτονται περιλαμβάνουν τις ακόλουθες γνωστικές περιοχές και τεχνολογίες:
- Λειτουργία και αλληλεπίδραση εξυπηρετητή ιστού (Web Server) και περιηγητή ιστού (Web Browser)
- Πρωτόκολλο HTTP με έμφαση στα μηνύματα που ανταλλάζονται μεταξύ browser και Web server
- Εισαγωγή στις γλώσσες HTML, CSS, JavaScript για client-side programming (front-end development)
- Εισαγωγή στη γλώσσα PHP, και χρήση Java και SQL για server-side programming (back-end development)
- Δημιουργία δυναμικών ιστοσελίδων (dynamic web sites) με χρήση AJAX, JSON και διαδικτυακών εφαρμογών (web applications) με χρήση RESTful API για ανταλλαγή δεδομένων μεταξύ Πελάτη και Εξυπηρετητή μέσω μηνυμάτων HTTP (π.χ. GET, POST, PUT, DELETE).
Βασικός στόχος του μαθήματος είναι η κατανόηση και εξοικείωση με τις βασικές Τεχνολογίες Διαδικτύου, η ανάπτυξη ικανότητας στη χρήση γλωσσών Ιστού και ανάπτυξη ικανότητας στον προγραμματισμό Ιστοσελίδων και Εφαρμογών Ιστού. Πιο συγκεκριμένα:
- Η απόκτηση ικανότητας ανάλυσης μιας ιστοσελίδας και προσδιορισμός των στοιχείων (elements) και των χαρακτηριστικών (attributes) τους.
- Η απόκτηση ικανότητας δημιουργίας δυναμικών ιστοσελίδων χρησιμοποιώντας HTML5, Cascading Style Sheets (CSS), και JavaScript (JS) (front-end development)
- Η απόκτηση ικανότητας προγραμματισμού του εξυπηρετητή (server-side programming) χρησιμοποιώντας PHP, Java και SQL (back-end development)
- Η απόκτηση ικανότητας δημιουργίας δυναμικών ιστοσελίδων (dynamic web sites) με χρήση AJAX και JSON και διαδικτυακών εφαρμογών (web applications) με χρήση RESTful API για ανταλλαγή δεδομένων μεταξύ Πελάτη και Εξυπηρετητή μέσω HTTP μηνυμάτων.
Content
- Internet Fundamentals (Ανασκόπηση Βασικών Τεχνολογιών Διαδικτύου).
- Principles of Hypertext (Αρχές Συστημάτων Υπερκειμένου).
- Web Design Fundamentals (Σχεδιασμός και Ανάπτυξη Ιστιακών Τόπων).
- Hypertext Mark-up Languages (Γλώσσες Συγγραφής Περιεχομένου Ιστού).
- Cascading Style Sheets - CSS, Page Layouts (Γλώσσες Τεχνοτροπίας και Στοιχειοθεσίας Ιστοσελίδων).
- Web Design & Development (Μεθοδολογίες Σχεδιασμού και Ανάπτυξης Ιστιακών Τόπων και Εφαρμογών).
- Introduction to PHP and Server-side Programming (Προγραμματισμός Εξυπηρετητών Ιστού με τη γλώσσα PhP).
- Dynamic content and HTML Forms (Δυναμικό Περιεχόμενο και Φόρμες).
- Introduction to Javascript and Client-side Programming (Εισαγωγή στη Javascript για Προγραμματισμό Πελατών Ιστού).
- Web 2.0 and AJAX (Αρχές Web 2.0 και Προγραμματισμός με Ασύγχρονη Javascript).
- Web Databases (Διασύνδεση Βάσεων Δεδομένων με το Παγκόσμιο Πληροφοριακό Περιβάλλον).
- RESTful APIs.
Lectures
In this section you will find information about the lectures and the slides involved.
- Lecture 1: Internet History and TCP/IP Review.
- Lecture 2: Focus and Learning in the Internet era
- Lecture 3: Internet Architecture
Labs
Laboratories are taking place every Wednesday on Lab B103. They focus on providing hands on experience.
- Lab1: Introduction to HTML
- Lab2: Introduction to CSS
- Lab3: Introduction to Javascript
Assignments
Take-to-home assignments. Please send deliverables to lab instructor email prior the end of the deadline.
- Assignment 1: Towers of Hanoi
- Assignment 2: Dimensionality Reduction