Introduction & Outline

Slides:



Advertisements
Similar presentations
© 2010, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet 1.
Advertisements

Introduction to Web Based Application. Web-based application TCP/IP (HTTP) protocol Using WWW technology & software Distributed environment.
1 Software Testing and Quality Assurance Lecture 32 – SWE 205 Course Objective: Basics of Programming Languages & Software Construction Techniques.
Course Outline Network Management Spring 2015 Bahador Bakhshi
+ Connecting to the Web Week 7, Lecture A. + Midterm Basics Thursday February 28 during Class The lab Tuesday, February 26 is optional review Class on.
CSCI 323 – Web Development Chapter 1 - Setting the Scene We’re going to move through the first few chapters pretty quick since they are a review for most.
IT 210 The Internet & World Wide Web introduction.
CS 299 – Web Programming and Design CS299: Web Programming and Design Instructor: Dr. Fang (Daisy) Tang.
Postacademic Interuniversity Course in Information Technology – Module C1p1 Contents Data Communications Applications –File & print serving –Mail –Domain.
Introduction to Internet Programming (Web Based Application)
CS 638 Web Programming Introducing the web Lecture 1.
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
JavaScript – Quiz #9 Lecture Code:
WEB SCIENCE. What is the difference between the Internet and the World Wide Web? Internet is the entire network of connected computers and routers used.
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
Session 1 Chapter 1 - Introduction to Web Development ITI 133: HTML5 Desktop and Mobile Level I
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
AJAX and REST. Slide 2 What is AJAX? It’s an acronym for Asynchronous JavaScript and XML Although requests need not be asynchronous It’s not really a.
Computer Networks CNT5106C
The Internet Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
بسم الله الرحمن الرحيم Information’s New Technologies (Internet Technologies) Ahmed Abdelmageed, MSc Department of Computer Science, University of Khartoum.
INT213 Active Server Pages using Visual Basic Scripting.
National College of Science & Information Technology.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
4.01 How Web Pages Work.
Introduction & Outline
CS299: Web Programming and Design Instructor: Dr. Fang (Daisy) Tang
Web Programming Language
Computer Network Fundamentals CNT4007C
Tonga Institute of Higher Education IT 141: Information Systems
Web Technologies Computing Science Thompson Rivers University
IS1500: Introduction to Web Development
Section 6.3 Server-side Scripting
WWW and HTTP King Fahd University of Petroleum & Minerals
Computer Networks CNT5106C
What is WWW? The term WWW refers to the World Wide Web or simply the Web. The World Wide Web consists of all the public Web sites connected to the Internet.
Course Outline Network Management Bahador Bakhshi
E-commerce | WWW World Wide Web - Concepts
E-commerce | WWW World Wide Web - Concepts
Distributed web based systems
Introduction Web Environments
PHP / MySQL Introduction
Web App vs Mobile App.
Web Development Training
Department of Computer Science, Florida State University
Internet Programming.
Computer Networks CNT5106C
Navigating The World Wide Web
Chapter 27 WWW and HTTP.
Tonga Institute of Higher Education IT 141: Information Systems
The Internet An Overview.
Lecture 1: Multi-tier Architecture Overview
Web Application Architectures
Secure Web Programming
Tonga Institute of Higher Education IT 141: Information Systems
Web Application Architectures
Course Overview CS 4640 Programming Languages for Web Applications
Introduction to World Wide Web
DR. JOHN ABRAHAM PROFESSOR UTPA
Computer Networks CNT5106C
Web Technologies Computing Science Thompson Rivers University
Web Application Architectures
The Internet and Electronic mail
Course Overview CS 4640 Programming Languages for Web Applications
Course Outline Network Management Spring 2018 Bahador Bakhshi
CGS 3066: Web Programming and Design Fall 2019
Presentation transcript:

Introduction & Outline Internet Engineering Spring 2018 Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

What This Course Is The correct name is “Web Development” Web is the major in-used Internet technology What are/were the problems? How do/did we solve them? Which protocols & languages are used? Engineer approach Understand existing concepts & technologies In class Try examples & sample projects By yourself

The World-Wide Web Original idea (Tim Berners-Lee, 1989) Public information sharing on Internet Hypertext Documents are text which can be displayed/converted to desired output Documents can be linked to each others: Web! WWW: A system of interlinked hypertext document access via the Internet Now, much more complex/interesting applications

How Does WWW Work? Client-Server mechanism Web servers: Process client’s requests File (text, image, video, …) retrieval requests Computation/Processing (DB lookup, transaction, …) requests Web clients: Send the requests Browser: Interacts with client, Requests for server, Processes and displays response (rendering) Other applications Search engines crawlers Use server as a processing element (distributed computing) …

What Do We Want to Learn? Client-Server mechanism Web servers: Process client’s requests File (text, image, video, …) retrieval requests Computation/Processing (DB lookup, transaction, …) requests Web clients: Send the requests Browser: Interacts with client, Requests for server, Processes and displays response (rendering) Other applications Search engines crawlers Use server as a processing element (distributed computing) … How? Which Technologies? Which Architectures? How? Which Technologies? Which Languages? Which Protocols?

A general (not CE) user’s view What Do We Want to Learn? How does Gmail work? Login (keep me signed in) Show emails Read/Delete emails Refresh the list of emails Interactive menus Per user customizations (themes) … A general (not CE) user’s view جي ميل به عنوان يكي از موفقترين نمونه‌هاي برنامه‌هاي كلاينت-سرور در دنياي وب

10 Engineering Questions Q1) How do web server and client browser talk to each other? Q2) How is a web page organized (components)? Q3) How is presentation of web page described? Q4) How does web page interact with users? Q5) How to update a portion of web page? Q6) How is transferred data between server & client encoded? Q7) How does server process client’s requests? Q8) How are complex/big web applications developed? Q9) How does Gmail offline work? Q10) How can other applications use Gmail?

10 Engineering Questions Q1) How to talk to each other? HTTP Q2) How is a web page organized (components)? HTML Q3) How is presentation of web page described? CSS Q4) How does web page interact with users? JS Q5) How to update a portion of web page? Ajax Q6) How is transferred data encoded? XML & JSON Q7) How does server process client’s requests? PHP Q8) How are complex/big web applications developed? 3-Tier/Micro-service Q9) How does Gmail offline work? Off-Line App Q10) How can other applications use Gmail? Web API What?!!? YAF1 Why so many? Are they language/Protocol/…? 1. YAF == یا ابوالفضل

WWW: From Old to Now!!! Static Web Pages Client requests a document from server A communication protocol: HTTP (Q1) How to display the document in browser? Document structure definition language: HTML (Q2), Representation of document: CSS (Q3) Later, very later, some advance features: HTML5 (Q9) این چند اسلاید میتواند در قالب شکلهایی که بهبود میابد تا به شکل نهایی برسد ارایه گردد

WWW: From Old to Now!!! Interactive and Dynamic web page Needs to interact with user (e.g., event handling in web pages) A programming language in browser: JavaScript (Q4) Dynamic data from server (e.g., search result) A programming language in server: PHP (Q7) Interactive & Dynamic web page A communication mechanism between web page and server: Ajax (Q5) & XML (Q6)

WWW: From Old to Now!!! Complex processing in server side So many common requirements Threading, Concurrency, Security, … Needs an application development framework Web Applications Architectures (Q8) Distributed computing over web Machine-to-Machine communication Function invocation over web Needs a common protocols/API (e.g., Facebook API) Web services! (Q10)

Tentative Syllabus HTTP (Q1) HTML (Q2) & CSS (Q3) & HTML5 (Q9) JavaScript & jQuery(Q4) & Ajax (Q5) XML (Q6) PHP (Q7) & Web applications (Q8) Web Services (Q10)

Tentative Syllabus: Slides Organization Slides (lecture notes) of each topic consist of 1) Detail questions about the topic 2) The lecture materials 3) Answer to the question 4) “What are the Next?!” 5) References

What This Course Is Not XYZ programming language course for web Many technologies for web development HTML, CSS, XML, … Many programming languages: PHP, JS, ASP, … You are already programmer You know most programming concepts You need to learn new syntax & new features In depth & in detail technology review There are so many technologies

Course Advantages We study and understand technologies that are used in real life every day We don’t discuss about pure scientific problems An engineering course These technologies are used in industry Better resume: XHTML, Ajax, XML, CSS, PHP, … More job opportunities (more money ) (Usually) Technologies are easier that sciences No difficult concepts High course grade if you want 

Course Possible Disadvantages We study technologies!!! Technologies have limited life time Our knowledge will expire Some programming languages & technologies may not be used 10 years later However, most discussed technologies in this course (hopefully) will have very long life time Web development needs many technologies We need to learn many things

Assumptions on your knowledge & skills Basic networking concepts Protocol, Port, Header, … Programming Java / C Database SQL Love to program At least, you don’t hate ;-)

Course Policies Textbook & References For exams Most topics: “Programming the World Wide Web” However, there is any textbook to cover all topics But, there are so many excellent books For exams Lecture Notes & Slides & the Book For each part, there is a list of references These are optional reading materials You may need to read some parts for homework

Course Policies Course homepage Course slides, announcements, grades, HWs, … ceit.aut.ac.ir/~bakhshis/IE Books & references are on CE fileserver \\fileserver\common\Bakhshi\Internet Engineering Grading Midterm + Final + 4 or 5 HWs/Project

Course Policies Midterm 25% Final 25% Homework 50% > 50% Minimum requirement > 50% - Deadlines wont be extended Notes: - Not equal weight for all HW - HW will be given as soon as possible (you will have ~3-4 weeks to do) - There are a lot of extra points; however, the total is less than ~2-3/20 - Sample Grades

Course Policies If this course is an optional course for you Please don’t take it if Your programming skill is poor You assume that it is passed without doing anything You know the answers of almost the questions But you are so busy to do homework You need to allocate enough time for top grades If this course is mandatory Note that course topics is a bit wide 15% penalty per day for late HW submission

Web Development: Lectures Slides Slides + Examples

Web Development: Homework Mandatory Parts Mandatory Parts + Extra Parts

Web Development: Industry

Web Development: Google, FB, …

Enjoy Web Development