Topic 1


Published on

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Topic 1

  1. 1. Topic 1 : Introduction Er. Pradip Kharbuja 1
  2. 2. Terminologies 1. Client 7. HTML / XHTML / HTML5 2. Server 8. PHP 3. Old Internet / Old Website 9. MySQL 4. Static Websites 10.XML 5. The Modern Internet 11.AJAX 6. Dynamic Websites 12.API (Application Program Interface) 2
  3. 3. Desktop Applications • Runs on computer without help of any browser. e.g. MSWord, Powerpoint, Window Media Player, etc. • Generally doesn't need internet to run. Saves bandwidth. • Can easily interact with system. • Privacy and security. • But most desktop applications incorporate internet functionality. 3
  4. 4. Web Applications  A web-based application is any application that uses a web browser as a client.  The ability to update and maintain web applications without distributing and installing software is a key reason for their popularity  eg. webmail, online retail sales, online auctions, online examination  Web applications offer many advantages to both developers and users: Easily maintained Easily deployed Always available Provided you have an internet connection 4
  5. 5. The Parts of a Web Application • We can break a web application into three ‘layers’, each responsible for a different part of the system. 1. The Presentation layer, which handles the user frontend 2. The Application layer, which handles the ‘business logic’ 3. The Data layer, which handles storage and retrieval of data.  You can change the entire front-end without having to alter any of the other layers.  This is usually called an N-Tier architecture, where N is the number of tiers. 5
  6. 6. Presentation Layer  Much of what is done at the presentation level is to do with the user experience.  Formatting the website properly  Handling simple data validation  Animation and interface flourishes  It is more important for this to be handled in the user’s client browser.  When updated data is required (to update the user interface), that request is sent to the application layer. 6
  7. 7. Application Layer  The application layer handles all the functionality.  The things that you would generally think of as the ‘programming’  Often referred to as the ‘business logic’  Most often handled on the server via a language such as PHP or Ruby or ASP.NET  Also serves as the mediator between the presentation and the data.  All interaction between those two should be done via this layer. 7
  8. 8. Data Layer  The data layer is responsible for optimised data access  This is most often handled using a database management system such as MySQL.  The data layer can handle caching of data.  It can also handle load-balancing between servers. 8
  9. 9. Communication Between Layers  Communication between layers is handled via a platform independent protocol such as XML.  Communication in a formal format is important. 9
  10. 10. The Client and the Server • This describes a distributed application – one where some of the work is handled locally (in your browser) and the rest is handled externally (on a server). • This type of development model is often referred to as a • Both of these can be located on the same computer.  And this is common for small-scale development. client-server application 10
  11. 11. The Client & the Server - Advantages • Highly maintainable • Centralised storage of data can increase security of critical data • Data updates can be applied quickly and shared amongst all users of the data • Large-scale optimisation can be performed.  Load balancing is common example. 11
  12. 12. The Client & the Server - Disdvantages • If the server(s) go down, everyone loses access to the application. • There are bandwidth considerations when working with large numbers of users. • Other models often used are peer to peer architectures (such as Bittorrent) and desktop deployments.  Each has its advantages and disadvantages. 12
  13. 13. Reinventing the Wheel • We don’t need to reinvent the wheel!  We can get a lot of our work done by using existing tools available as part of standard Application Programming Interfaces (APIs).  There’s a lot of ‘free’ functionality already out there.  We can use existing services like Google, Amazon and Facebook by making use of these exact same protocols and languages. 13
  14. 14. Questions ??? 14
  15. 15. End of Topic 1 15
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.