Java System Architectures David Davenport Bilkent University Ankara – Turkey

Slides:



Advertisements
Similar presentations
Lecture plan Information retrieval (from week 11)
Advertisements

In Review JAVA C++ GUIs - Windows Webopedia.com.
Objectives Overview Define an operating system
DT228/3 Web Development WWW and Client server model.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
1 Mobile Computing Background Copyright 2014 by Janson Industries Can be viewed at:
Muhammad Taimoor Khan
Fundamentals, Design, and Implementation, 9/e Chapter 14 JDBC, Java Server Pages, and MySQL.
What is it? –Large Web sites that support commercial use cannot be written by hand What you’re going to learn –How a Web server and a database can be used.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
B.Sc. Multimedia ComputingMedia Technologies Database Technologies.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Multiple Tiers in Action
Introduction to Web Based Application. Web-based application TCP/IP (HTTP) protocol Using WWW technology & software Distributed environment.
School location collector
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Development of mobile applications using PhoneGap and HTML 5
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Native vs hybrid vs web mobile Application
Client/Server Architectures
Operating Systems Chapter 4.
INTRODUCTION TO WEB DATABASE PROGRAMMING
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Lightning Talk Fred Rodriguez Nguyen Do CPSC 473 May 6, 2012.
Oracle8 JDBC Drivers Section 2. Common Features of Oracle JDBC Drivers The server-side and client-side Oracle JDBC drivers provide the same basic functionality.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Java Omar Rana University of South Asia. Course Overview JAVA  C/C++ and JAVA Comparison  OOP in JAVA  Exception Handling  Streams  Graphics User.
Introduction to Internet Programming (Web Based Application)
Framework and application bytecode size CLDC MIDP kXML parser Utility classes Graphics Logic (MIDlet) Application Data (XML file)
Introduction to J2EE Architecture Portions by Kunal Mehta.
Explain the purpose of an operating system
Why Java? A brief introduction to Java and its features Prepared by Mithat Konar.
Section 2 Section 2.1 Identify hardware Describe processing components Compare and contrast input and output devices Compare and contrast storage devices.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
2 Copyright © 2004, Oracle. All rights reserved. Running a Forms Developer Application.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
C# AND ASP.NET What will I do in this course?. MAJOR TOPICS Learn to program in the C# language with the Visual Studio IDE (Interactive Development Environment)
Session 1 Introduction to Java. Objectives Java Simplified / Session 1 / 2 of 32 Explain the history of Java Explain Java in brief List the types of Java.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Software refer to all the programs that can be run on the computer.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
JSP Server Integrated with Oracle8i Project2, CMSC691X Summer02 Ching-li Peng Ying Zhang.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Chapter 9 Operating Systems Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet.
Client-Server applications Introduction to Java Applets Client-server architectures Why do Applets exist? What can an Applet do?
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
Technical Sales Specialist Software - OS and Applications John R. Moegling Sr. Systems Engineer.
Paragon The Platform and Message Broker. Paragon: The Platform Stack -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage.
2 Copyright © 2004, Oracle. All rights reserved. Running a Forms Developer Application.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
丁建文 國立高雄應用科大資管系副教授 兼任計網中心軟體發展組組長 跨平台行動應用軟體開發技術 : HTML5 & Mobile JavaScript Framework 暨南大學.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
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.
Identify internal hardware devices (e. g
Applications Active Web Documents Active Web Documents.
Running a Forms Developer Application
The Client-Server Model
Web Concepts Lesson 2 ITBS2203 E-Commerce for IT.
Web App vs Mobile App.
Database Driven Websites
Distributed Computing, M. L. Liu
Distributed Computing, M. L. Liu
Secure Web Programming
Presentation transcript:

Java System Architectures David Davenport Bilkent University Ankara – Turkey

Basic Forms of Java Programs Console Applications ( MSDOS-like ) –text only! GUI Applications ( Windows-like ) –text & graphics –menus, buttons, mouse, keyboard Applets –GUI programs restricted for use in web-browsers

Other Forms of Java Programs Web Server Applications –html client –data only ~ XML, JSON… Mobile Applications –Android only Java –html5, Javascript, CSS using libraries, e.g. JQuery Mobile, phonegap, … –Java for everything? Cards, TV, … –misc!

Java Applications Java Program network Java applications (console & GUI) have full access to local machine resources, including local files, databases & network connections.

Java Applet Web Browser Java Applets network Web server Server Java Program Java Applets are embedded in html web pages, downloaded from web servers and run by web browsers. For security reasons, they can communicate only with the machine from which they originated and cannot access local files or databases (although these restrictions can be lifted if the user agrees to trust them!)

Networked Java Applications Java Program network Java Program Java Program Java Program Java programs can communicate with each other either directly or via a server program, allowing them to freely exchange information. Some database systems offer direct network access.

Networked Java Applets Web server Java Applet Java Applet Java Applet Server Java Program Since Java Applets cannot normally communicate with each other directly, they must do so via a server application program. Similarly, if they need to store information, they can only do so on a server machine.

Java Servlets Web Browser Java Servlets Web server Java Servlets extend web server functionality allowing it to dynamically generate web pages using information stored in databases or files. Communications use HTML…

Java Web Services Web Browser Java Program Java Web Services Web server Web services extend web server functionality allowing it to dynamically respond to service requests using information from databases, files or even other web services! Clients may be web browsers, but are more likely to be other application programs. Communications use XML/JSON Mobile App

Data Formats… NameTelno David1248 Gunes1814 Derya5678 David 1248 Gunes 1814 Derya 5678 David 1248 Gunes 1814 Derya 5678 {"teldir":[{"name":"David", "telno":"1248"}, {"name":"Gunes", "telno":"1814"}, {"name":"Derya", "telno":"5678" ]} name,telno David,1248 Gunes,1814 Derya,5678

Mobile Applications Hardware screen orientation (portrait, lanscape) screen size (phone, tablet) screen resolution (DPI) optional sensors (GPS, accelerometer, …) Development environments/languages to each his own? Java for Android, Objective-C for iOs, … cross platform? embedded webbrowser ~ html5, Javascript, CSS + libraries… Java for all? ~ Codename One Operating Systems Android, iOS, Windows, Blackberry, … Changing rapidly

Persistent Storage Alternatives Files ~ sequential/random-access, diy/Serialization, … Database~ JDBC, SQL, … Cloud?~ … other?~ local storage on phones, webbrowser, etc. Tables, e.g. TelDir NameTelno David1248 Derya5678 Gunes1814 SQL w3schools select * from TelDir select Name from TelDir select Telno from TelDir where Name = 'Derya ‘ insert into TelDir ( Name, Telno) values ( ‘Ayse’, 9999) update TelDir set TelNo = 0000 where Name = ‘Ayse’ delete from TelDir where TelNo = commands to manipulate tables, etc. Database JDBC allows your Java program to connect to any database and talk SQL to it. examples examples… see w3schools…

Considerations User Interaction –Text only –Text & graphics Static (html?) Interactive (GUI?) –Mouse/touch/voice/… Single/multi-user –Stand-alone –Network Web-browser (applet) Application Client software distribution & installation –Floppy disks/CD’s/ usb memory sticks/ download? –WebStart –Applets –Server-based Data storage & retrieval –Files –Database (local/network) –Cloud storage