User Tools

Site Tools


eg-259:lecture4

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
eg-259:lecture4 [2013/02/05 14:59] – [Cloud Computing] eechriseg-259:lecture4 [2013/02/08 14:42] (current) – [What's Next?] eechris
Line 20: Line 20:
  
 This lecture introduces the concept of a web application, discusses typical architectures, introduces the lamp platform and goes on to explore several examples of web applications that are typical of the field.  This lecture introduces the concept of a web application, discusses typical architectures, introduces the lamp platform and goes on to explore several examples of web applications that are typical of the field. 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
  
 **Contents of this Lecture** **Contents of this Lecture**
  
    * [[eg-259:lecture4#web_applications|Web Applications]]    * [[eg-259:lecture4#web_applications|Web Applications]]
 +   * [[eg-259:lecture4#web_applications|Cloud Computing]]
    * [[eg-259:lecture4#the_lamp_platform|The LAMP platform]]    * [[eg-259:lecture4#the_lamp_platform|The LAMP platform]]
    * [[eg-259:lecture4#some_example_web_applications|Some Example Web Applications]]    * [[eg-259:lecture4#some_example_web_applications|Some Example Web Applications]]
Line 258: Line 246:
 The software that currently runs Wikipedia could be characterized as a LAMP application. Wikipedia's MediaWiki software is developed primarily under Linux, using the Apache HTTP Server, with its content being stored in a MySQL database, and the program logic being implemented in PHP. We shall be examining several others in this lecture. The software that currently runs Wikipedia could be characterized as a LAMP application. Wikipedia's MediaWiki software is developed primarily under Linux, using the Apache HTTP Server, with its content being stored in a MySQL database, and the program logic being implemented in PHP. We shall be examining several others in this lecture.
  
-We shall be installing and using [[htp://www.apachefriends.org/en/xampp.html|XAMPP]] in this module. +We shall be installing and using a virtual machine installation of [[http://releases.ubuntu.com/precise/|Ubuntu 12.04 LTS Server (Precise Pangolin)]] in this module. See http://github.com/cpjobling/eg-259-vm.
  
 ===== Client Side ===== ===== Client Side =====
Line 288: Line 275:
   * [[eg-259:lecture4#collaborative_software|Collaborative Software]]   * [[eg-259:lecture4#collaborative_software|Collaborative Software]]
   * [[eg-259:lecture4#social_software|Social Software]]   * [[eg-259:lecture4#social_software|Social Software]]
 +  * [[eg-259:lecture4#todoMVC|TodoMVC]]
 ===== Google Apps ===== ===== Google Apps =====
  
 Once just a search engine with a very simple user interface, Google has developed into a whole platform of services which can be accessed on line. Once just a search engine with a very simple user interface, Google has developed into a whole platform of services which can be accessed on line.
  
-  * They are mostly written as server-side code (written in Java using techniques familiar to Swing Programmers) which is compiled into  JavaScriptHTML and CSS and sent to the client+  * Mutiple SaaS services -- GMailGoogle Docs, Google Drive, Google Sites, ..
-  * The [[http://code.google.com/webtoolkit/|Google Web Toolkit (GWT)]] is the web development framework that has been used to create much of Google's portfolio of web apps. +  * Google Web Toolkit -- Build rich web UIs in Java compiled to JavaScript 
-  * Data services are provided by Google'own [[wp>BigTable|Big Table]] distributed database infrastructure. +  * Dart - a new language for web applications development 
-  * We will explore some of the apps and how they appear in the client during the session. +  * Google App Engine -- Google'PaaS offering: code in Java or Python, run on Google 
-  * Visit [[http://google.co.uk|Google]] now and explore the apps that you find with your browser'developer tools.+  * Google App Scripts -- Script google applications with JavaScript 
 +  * Google Compute Engine -- Google'IaaS offering
  
 +See [[https://developers.google.com/|Google Developers]] for more information.
 ===== Virtual Learning Environments ===== ===== Virtual Learning Environments =====
  
Line 757: Line 746:
  
  
 +===== TodoMVC =====
 + 
 +A showcase for multiple Model-View-Controller frameworks (mostly JavaSript client frameworks).
  
 +  * http://addyosmani.github.com/todomvc/
 +
 +----
  
 +Will be a case study for this module
  
  
Line 765: Line 761:
  
    * [[eg-259:lecture4#web_applications|Web Applications]]    * [[eg-259:lecture4#web_applications|Web Applications]]
 +   * [[eg-259:lecture4#web_applications|Cloud Computing]]
    * [[eg-259:lecture4#the_lamp_platform|The LAMP platform]]    * [[eg-259:lecture4#the_lamp_platform|The LAMP platform]]
    * //Some Example Web Applications//    * //Some Example Web Applications//
Line 772: Line 769:
      * [[eg-259:lecture4#collaborative_software|Collaborative Software]]      * [[eg-259:lecture4#collaborative_software|Collaborative Software]]
      * [[eg-259:lecture4#social_software|Social Software]]      * [[eg-259:lecture4#social_software|Social Software]]
 +     * [[eg-259:lecture4#todomvc|TodoMVC]]
  
 ===== Learning Outcomes (1) ==== ===== Learning Outcomes (1) ====
Line 824: Line 822:
 ===== What's Next? ===== ===== What's Next? =====
  
-**Practical: Installing XAMPP for Windows**+**Practicals** 
 + 
 +  * Installing a Virtual Machine for Development (see [[https://github.com/cpjobling/eg-259-vm|cpjobling/eg-259-vm]] on GitHub.com). 
 +  * Installing a Web Application 
 + 
 +**Next Lecture** 
 + 
 +  Getting Started with JavaScript
  
-  * [[eg-259:practicals:1#explore_the_xampp_web_site|Explore the XAMPP Web Site]] 
-  * [[eg-259:practicals:1#downloading_xampp|Downloading XAMPP]] 
-  * [[eg-259:practicals:1#installing_xampp|Installing XAMPP]] 
-  * [[eg-259:practicals:1#running_xampp|Running XAMPP]] 
-  * [[eg-259:practicals:1#exploring_the_xampp_installation|Exploring the XAMPP Installation]] 
-  * [[eg-253:httpd_conf|The Apache Configuration File]] 
  
-[[eg-259:lecture3|Previous Lecture]] | [[eg-259:home]] | [[eg-259:practicals:1|Next Lecture]]+[[eg-259:lecture3|Previous Lecture]] | [[eg-259:home]] | [[https://github.com/cpjobling/eg-259-vm|Practical 1: Installing the EG-259 Virtual Machine]] | [[eg-259:practicals:2|Practical 2 (Homework): Installing a Web App]] | [[eg-259:lecture5|Next Lecture]]
eg-259/lecture4.1360076361.txt.gz · Last modified: 2013/02/05 14:59 by eechris