RIA
-
Upload
mostafa-alinaghi-pour -
Category
Technology
-
view
719 -
download
4
description
Transcript of RIA
![Page 1: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/1.jpg)
![Page 2: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/2.jpg)
RIAMohsen Beigi
Salman Namavar
Mostafa Alinaghi pour
![Page 3: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/3.jpg)
WHAT IS RIA ?
DISTRIBUTED PROCESS OVER SERVER AND CLIENT
RICH INTERNET APPLICATIONS
![Page 4: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/4.jpg)
WHAT IS RIA ?SERVER AND CLIENT PROCESSES
SERVER SIDE PROCESS
Executing ScriptsFile management
Database ProcessNetwork Process
CLIENT SIDE PROCESS
Rendering Documents
User InteractionExecuting ScriptsNetwork Process
![Page 5: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/5.jpg)
WHAT IS RIA ?SIMPLE RIA EXAMPLE
ALL PROCESSES ARE IN SERVER SIDE
1
1 REQUEST
2
2 REQUEST
/
3 REQUEST
3
4 REQUEST
=
5 REQUEST
4
![Page 6: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/6.jpg)
WHAT IS RIA ?SIMPLE RIA EXAMPLE
ALL PROCESSES ARE IN CLIENTSIDE
1
0 REQUEST
2 / 3 =4
![Page 7: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/7.jpg)
WHAT IS RIA ?SIMPLE RIA EXAMPLE
DISTRIBUTED PROCESSES
2
0 REQUEST
2 * Sinh(0.1) =
1 REQUEST
2.36253654
![Page 8: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/8.jpg)
WHAT IS RIA ?BEST EXAMPLES
EYE OS GOOGLE INSTANT SEARCH
FACEBOOKGOOGLEANALYTICS
![Page 9: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/9.jpg)
WHAT IS RIA ?RIA REQUIRMENT
SERVER SIDETECHNOLOGIES
CLIENT SIDETECHNOLOGIESAJAX
![Page 10: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/10.jpg)
AJAX
![Page 11: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/11.jpg)
WHAT IS AJAX ?
ASYNCHRONOUS JAVASCRIPT AND XML
LOADING DATA FROM SERVER WITH PARTIAL PAGE REFRESH
JAVASCRIPT HAS THE MAIN ROLE IN THIS COMMUNICATION
![Page 12: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/12.jpg)
WHAT IS AJAX ?AJAX CORE OBJECT
XMLHttpRequest
XMLHttpRequest CONTROLS THE DATA EXCHANGES
IE5 AND IE6 USES AN ActiveXObject INSTEAD OF XMLHttpRequest
![Page 13: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/13.jpg)
WHAT IS AJAX ?XMLHttpRequest
CREATE AN XMLHttpRequest OBJECT
var xmlhttp;if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); }else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }
![Page 14: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/14.jpg)
WHAT IS AJAX ?XMLHttpRequest
SEND A REQUEST TO A SERVER
xmlhttp.open("GET",“test.txt",true);xmlhttp.send();
xmlhttp.open(“POST",“test.txt",true);xmlhttp.send(‘page=1&ISBN=2564523652’);
![Page 15: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/15.jpg)
WHAT IS AJAX ?XMLHttpRequest
Server Response
responseText
responseXML
![Page 16: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/16.jpg)
WHAT IS AJAX ?XMLHttpRequest
readyState
0: request not initialized
1: server connection established
2: request received
3: processing request
4: request finished and response is ready
![Page 17: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/17.jpg)
WHAT IS AJAX ?XMLHttpRequest
STATUS
![Page 18: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/18.jpg)
WHAT IS AJAX ?XMLHttpRequest
ASYNCHRONOUS - TRUE OR FALSE?
![Page 19: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/19.jpg)
WHAT IS AJAX ?XMLHttpRequest
GET OR POST ?
![Page 20: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/20.jpg)
SYNCHRONIZATION
![Page 21: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/21.jpg)
SYNCHRONIZATION
THE IMPORTANCE OF SYNCHRONIZATION
SERVER TO CLIENT SYNCHRONIZATION
CLIENT TO SERVER SYNCHRONIZATION
![Page 22: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/22.jpg)
SERVER TO CLIENT SYNCHRONIZATION
RECIVING INFORMATIN IN TIME PERIODS
CHANGES INFORMING
HTTP CHUNKING
SYNCHRONIZATION
![Page 23: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/23.jpg)
HTTP CHUNKING
SYNCHRONIZATION
![Page 24: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/24.jpg)
CLIENT TO SERVER SYNCHRONIZATION
SENDING WITH EVERY CHANGE
GATHERING AND SENDING
SYNCHRONIZATION
![Page 25: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/25.jpg)
PERFORMANCE
![Page 26: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/26.jpg)
PERFORMANCE
GENERAL PERFORMANCE
CLIENT SIDE PERFORMANCE
SERVER SIDE PERFORMANCE
![Page 27: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/27.jpg)
PERFORMANCE
MERGE CSS FILES TO INTO ONE FILE
GENERAL PERFORMANCE
MERGE JAVASCRIPT FILES TO INTO ONE FILEMERGE IMAGES FILES TO INTO ONE FILE
.btn1{ background-image: url(images/icons.png); background-position:0px 0px; width:20px; height:20px}.btn2{ background-image: url(images/icons.png); background-position:50px 85px; width:15px; height:15px}
COMPRESS FILES WITH SERVER COMPRESSIONCACHING IS YOUR FRIENDUSE IP INSTEAD OF URL IF POSSIBLEUSE GET INSTEAD OF POST IF POSSIBLEKEEP YOUR CSS FILE SMALL
.elem1{ margin-top:10px; margin-right:5px; margin-bottom:6px; margin-left:8px}.elem2{ margin: 10px 5px 6px 8px;}
OPTIMIZE YOUR HTML CODE
![Page 28: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/28.jpg)
PERFORMANCECLIENT SIDE PERFORMANCE
CACHE YOUR OBJECTS
<script type="text/javascript"> for (i=0;i<document.images.length;i++) document.images[i].src="blank.gif" </script>
<script type="text/javascript"> var theimages=document.images; for (i=0;i<theimages.length;i++) theimages[i].src="blank.gif“ </script>
CONTROL YOUR INTERVALS AND TIMEOUTSUSE JAVASCRIPT LIBRARIES IF YOU NEEDAVOID USING EVAL OR THE FUNCTION CONSTRUCTOR
function addMethod(object, property, code) { object[property] = new Function(code);} addMethod(myObj, 'methodName', 'this.localVar=foo');
function addMethod(object, property, func) {object[property] = func;}addMethod(myObj, 'methodName', function () { 'this.localVar=foo'; });
![Page 29: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/29.jpg)
PERFORMANCESERVER SIDE PERFORMANCE
PROFILE YOUR CODE TO PINPOINT BOTTLENECKSUPGRADE YOUR VERSION OF LANGUAGEUSE OUTPUT BUFFERINGAVOID DOING SQL QUERIES WITHIN A LOOPKNOW YOUR DBMS FOR BEST QUERY PERFORMANCE
![Page 30: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/30.jpg)
DEBUGGING
![Page 31: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/31.jpg)
DEBUGGING
CLIENT SIDE DEBUGGING
SERVER SIDE DEBUGGING
![Page 32: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/32.jpg)
DEBUGGINGCLIENT SIDE DEBUGGING
FireBug
Chrome Developer Tools
Opera Dragonfly
![Page 33: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/33.jpg)
DEBUGGINGSERVER SIDE DEBUGGING
REAL TIME DEBUGGING
DEBUGGING IN REAL SITUATION
USE IDE LANGUAGE DEBUGGING TOOLS
LOG INTO FILE
SEND DEBUG INFORMATION TO CLIENT SIDE
![Page 34: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/34.jpg)
DEBUGGINGSEND DEBUG INFORMATION TO CLIENT SIDE
FIRE PHP
<?php
include_once ‘inc/FirePHP.php’;
FB::log('Log message'); FB::info('Info message'); FB::warn('Warn message'); FB::error('Error message');?>
![Page 35: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/35.jpg)
CASE STUDY
![Page 36: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/36.jpg)
CASE STUDY
JAVASCRIPT FRAMEWORKS
CLIENT SIDE STORAGES
GOOGLE GEARS
MASHUP
YAHOO PIPES
![Page 37: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/37.jpg)
CASE STUDY
jQuery
Dojo
Prototype
JAVASCRIPT FRAMEWORKS
![Page 38: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/38.jpg)
CASE STUDY
POWER IN SELECTORS
JAVASCRIPT FRAMEWORKS - jQuery
33% USED FOR AJAX APPLICATIONS
FLEXIBLE FOR CREATING PLUGIN
MOBILE COMPATIBLE
![Page 39: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/39.jpg)
CASE STUDY
ASYNCHRONOUS COMMUNICATION
JAVASCRIPT FRAMEWORKS - Dojo
PACKAGING SYSTEM
CLIENT-SIDE DATA STORAGE
SUPPORT FOR ADOBE INTEGRATED RUNTIME
![Page 40: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/40.jpg)
CASE STUDY
IMPROVING JAVASCRIPT CLASS-BASED OBJECT LAKE
JAVASCRIPT FRAMEWORKS - Prototype
45% USED FOR AJAX APPLICATIONS
JSON COMPATIBLE
![Page 41: RIA](https://reader035.fdocuments.in/reader035/viewer/2022062418/5549e173b4c9051e488b48d2/html5/thumbnails/41.jpg)
REFERENCES
WIKIPEDIA
Ajax Reference – MC Graw Hill
WWW.W3.ORG
SMASHINMAGAZINE.COM
RIA Application - WILEY
WWW.PLAVEB.COM