SlideShare a Scribd company logo
Web Application
HTML, CSS, JS
Ingredients of a Web Application
●
●
●
●
●

Front End
Back End
APIs
Devices to support
Accessibility**
Focus on Front End
Why? Where ? What? How?
Why ? - Naive User
Where ? - Internet [From Anywhere]
What? - Pictures are better way to express
communication than letters or journals
How? - HTML/CSS/JS
HTML - Structure
CSS - Design
Javascript - Behaviour
How to build a web application
●
●
●
●

Viewports to support
Devices to support
HTML>CSS>JAVASCRIPT
Way to communicate and get data
HTML Basic
●
●
●
●

Significance of doctype
<html>, <head>,<body>
inline/block/table
layouts
CSS Basic
● Selectors
● Box-Model
● Rendering
Javascript Basic
●
●
●
●
●
●

Window, document
Events - important for behaviour
AJAX - Asynchronous **
<noscript>
Security
Debugging - Ahh
● Everything is a Object eg function , var
anything(Native/Host)
● There are also these primitive
value types like Undefined, Null,
String, Boolean and Number that
aren't objects
● JS is Object-oriented language or Prototype
based language
"Prototype-based programming is a style of
object-oriented programming in which
classes are not present, and behavior reuse
(known as inheritance in class-based
languages) is accomplished through a process
of decorating existing objects which serve
as prototypes. This model is also known as
class-less, prototype-oriented, or instancebased programming."
Prototype
● When you define a function within
JavaScript, it comes with a few pre-defined
properties
● The prototype property is initially an empty
object, and can have members added to it –
as you would any other object.
● Every object within JavaScript has a “secret”
property added to it when it is defined or
instantiated, named __proto__
● __proto__ property shouldn’t be confused
with an object’s prototype
var redbus = function(address){
this.address = "honolulu";
return this.address;
}
console.log(typeof redbus) //FUNCTION
"Function is a predefined object in
JavaScript, and, as a result, has its own
properties (e.g. length and arguments) and
methods (e.g. call and apply). And yes, it,
too, has its own prototype object, as well as the
secret __proto__ link."
console.log(redbus instanceof Function) //true
console.log(redbus.__proto__ == =Function.
prototype) // true
var rb = new redbus;
console.log(rb__proto__ ===redbus.prototype)
// true
console.log(rb_proto__===Function.prototype)
//false
This is known as prototype chain!
● Ends when prototype of any object is null
● By default Object's prototype is null
● Confusing - Yes , Everything is Object and
Function , no classess , no keywords as
public - private: "yet we challenge to make it
Object Oriented"
function Animal() {....}
Animal.prototype.walk = function(){
alert ('I am walking Gangnam style!');
};
function Monkey() {
// Call the parent constructor
Animal.call*(this*);
}
/ inherit Person
Monkey.prototype = new Animal();
Monkey.prototype.constructor = Monkey;
Monkey.prototype.sing = function(){
alert('Sing like OM');
}
var vishal = new Monkey();
vishal.walk(); vishal.sing();
This is Inheritance !
Can be checked by.
console.log(vishal instanceof Animal) // true
console.log(vishal instanceof Monkey) // true

In modern browser this can be achieved by:
Monkey.prototype = Object.create
(Animal.prototype);
Closures.
The pattern of public, private, and privileged
members is possible because JavaScript
has closures.
function Container(param) {
function dec() {
//uses secret
} //privileged
this.member = param;//public
var secret = 3;//private
var that = this;
this.service = function () {
return dec() ? that.member : null;
};//public
}
Enough OOPS!
Hoisting
● Function level scoping not block level like
C++, Java, C#
● Function declarations and variable
declarations are always moved (“hoisted”)
invisibly to the top of their containing scope
by the JavaScript interpreter. eg.
Memory Leaks
● garbage collection
● mark and sweep algorithm
● reason for memory leaks
● IE - Ohh yeah :P
● Possible scenarios
"Best Practices"
Good to follow!
Coding == Story Telling??
language agnostic
"A good story is one
which is easy to convey
and takes less time to
convey"
Developers need to convey code to
Browsers and other clients.
HTML5 - A bubble?
Why Facebook shifted back to native
application as compared to html5 ?
Reference
● WebPlatform.org
● Mozilla Developer Network
● Opera developer

Avoid w3schools if possible!
Next session
● Performance
● Optimization
● Algorithms
- Thanks
@aquarius_vishal
http://www.vvishal.com

More Related Content

PDF
Web application
PDF
Jquery, write less do more by weLaika
PPTX
JavaScript Basics
PPT
Web development basics (Part-4)
PDF
Object Oriented Programming in JavaScript
PDF
JavaScript
PDF
Ruby on Rails Presentation
PDF
Ruby on Rails: a brief introduction
Web application
Jquery, write less do more by weLaika
JavaScript Basics
Web development basics (Part-4)
Object Oriented Programming in JavaScript
JavaScript
Ruby on Rails Presentation
Ruby on Rails: a brief introduction

What's hot (17)

PDF
Lets talk-about-js
PPTX
Java scriptforjavadev part1
PPTX
Object Oriented Programming In JavaScript
PPTX
Javascript basics for automation testing
KEY
The Transparent Web: Bridging the Chasm in Web Development
KEY
All About Sammy
PPTX
CoffeeScript - An Introduction
PDF
Ruby on Rails - UNISO
KEY
Underscore.js
PPTX
Clean Code: Stop wasting my time
PPTX
Groovy / comparison with java
PPTX
Elixir Study Group Kickoff Meetup
PDF
Developing cross platform desktop application with Ruby
ODP
Object Oriented Javascript
PPSX
Webpack & EcmaScript 6 (Webelement #32)
PPTX
Testing JavaScript with Jasmine in Rails Applications
PDF
Découplez votre appli en micro-APIs
Lets talk-about-js
Java scriptforjavadev part1
Object Oriented Programming In JavaScript
Javascript basics for automation testing
The Transparent Web: Bridging the Chasm in Web Development
All About Sammy
CoffeeScript - An Introduction
Ruby on Rails - UNISO
Underscore.js
Clean Code: Stop wasting my time
Groovy / comparison with java
Elixir Study Group Kickoff Meetup
Developing cross platform desktop application with Ruby
Object Oriented Javascript
Webpack & EcmaScript 6 (Webelement #32)
Testing JavaScript with Jasmine in Rails Applications
Découplez votre appli en micro-APIs
Ad

Similar to Web application (20)

PDF
JavaScript Core
PPTX
All of Javascript
KEY
Javascript tid-bits
PDF
JavaScript Essentials
PPTX
All of javascript
PPTX
Ajaxworld
PDF
JavaScript - Chapter 8 - Objects
PDF
The curious Life of JavaScript - Talk at SI-SE 2015
PDF
Javascript under the hood 2
PPTX
JavaScript - Introduction
PDF
50 common web developer interview questions [2020 updated] [www.full stack....
PDF
Javascript basic course
PPTX
Awesomeness of JavaScript…almost
PDF
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
PPTX
Java script Techniques Part I
PDF
JS Level Up: Prototypes
PDF
OOPS JavaScript Interview Questions PDF By ScholarHat
PPT
Javascript Object Oriented Programming
PPT
Introduction to Javascript
PPTX
An introduction to Object Oriented JavaScript
JavaScript Core
All of Javascript
Javascript tid-bits
JavaScript Essentials
All of javascript
Ajaxworld
JavaScript - Chapter 8 - Objects
The curious Life of JavaScript - Talk at SI-SE 2015
Javascript under the hood 2
JavaScript - Introduction
50 common web developer interview questions [2020 updated] [www.full stack....
Javascript basic course
Awesomeness of JavaScript…almost
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
Java script Techniques Part I
JS Level Up: Prototypes
OOPS JavaScript Interview Questions PDF By ScholarHat
Javascript Object Oriented Programming
Introduction to Javascript
An introduction to Object Oriented JavaScript
Ad

Recently uploaded (20)

PPTX
Cloud computing and distributed systems.
PDF
Advanced Soft Computing BINUS July 2025.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
PDF
GamePlan Trading System Review: Professional Trader's Honest Take
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
PDF
[발표본] 너의 과제는 클라우드에 있어_KTDS_김동현_20250524.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Big Data Technologies - Introduction.pptx
Cloud computing and distributed systems.
Advanced Soft Computing BINUS July 2025.pdf
Chapter 3 Spatial Domain Image Processing.pdf
MYSQL Presentation for SQL database connectivity
NewMind AI Weekly Chronicles - August'25 Week I
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The Rise and Fall of 3GPP – Time for a Sabbatical?
Network Security Unit 5.pdf for BCA BBA.
NewMind AI Monthly Chronicles - July 2025
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
GamePlan Trading System Review: Professional Trader's Honest Take
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
[발표본] 너의 과제는 클라우드에 있어_KTDS_김동현_20250524.pdf
Understanding_Digital_Forensics_Presentation.pptx
Unlocking AI with Model Context Protocol (MCP)
Big Data Technologies - Introduction.pptx

Web application

  • 2. Ingredients of a Web Application ● ● ● ● ● Front End Back End APIs Devices to support Accessibility**
  • 3. Focus on Front End Why? Where ? What? How?
  • 4. Why ? - Naive User Where ? - Internet [From Anywhere] What? - Pictures are better way to express communication than letters or journals How? - HTML/CSS/JS
  • 5. HTML - Structure CSS - Design Javascript - Behaviour
  • 6. How to build a web application ● ● ● ● Viewports to support Devices to support HTML>CSS>JAVASCRIPT Way to communicate and get data
  • 7. HTML Basic ● ● ● ● Significance of doctype <html>, <head>,<body> inline/block/table layouts
  • 8. CSS Basic ● Selectors ● Box-Model ● Rendering
  • 9. Javascript Basic ● ● ● ● ● ● Window, document Events - important for behaviour AJAX - Asynchronous ** <noscript> Security Debugging - Ahh
  • 10. ● Everything is a Object eg function , var anything(Native/Host) ● There are also these primitive value types like Undefined, Null, String, Boolean and Number that aren't objects ● JS is Object-oriented language or Prototype based language
  • 11. "Prototype-based programming is a style of object-oriented programming in which classes are not present, and behavior reuse (known as inheritance in class-based languages) is accomplished through a process of decorating existing objects which serve as prototypes. This model is also known as class-less, prototype-oriented, or instancebased programming."
  • 12. Prototype ● When you define a function within JavaScript, it comes with a few pre-defined properties ● The prototype property is initially an empty object, and can have members added to it – as you would any other object. ● Every object within JavaScript has a “secret” property added to it when it is defined or instantiated, named __proto__ ● __proto__ property shouldn’t be confused with an object’s prototype
  • 13. var redbus = function(address){ this.address = "honolulu"; return this.address; } console.log(typeof redbus) //FUNCTION "Function is a predefined object in JavaScript, and, as a result, has its own properties (e.g. length and arguments) and methods (e.g. call and apply). And yes, it, too, has its own prototype object, as well as the secret __proto__ link."
  • 14. console.log(redbus instanceof Function) //true console.log(redbus.__proto__ == =Function. prototype) // true var rb = new redbus; console.log(rb__proto__ ===redbus.prototype) // true console.log(rb_proto__===Function.prototype) //false
  • 15. This is known as prototype chain! ● Ends when prototype of any object is null ● By default Object's prototype is null ● Confusing - Yes , Everything is Object and Function , no classess , no keywords as public - private: "yet we challenge to make it Object Oriented"
  • 16. function Animal() {....} Animal.prototype.walk = function(){ alert ('I am walking Gangnam style!'); }; function Monkey() { // Call the parent constructor Animal.call*(this*); }
  • 17. / inherit Person Monkey.prototype = new Animal(); Monkey.prototype.constructor = Monkey; Monkey.prototype.sing = function(){ alert('Sing like OM'); } var vishal = new Monkey(); vishal.walk(); vishal.sing();
  • 18. This is Inheritance ! Can be checked by. console.log(vishal instanceof Animal) // true console.log(vishal instanceof Monkey) // true In modern browser this can be achieved by: Monkey.prototype = Object.create (Animal.prototype);
  • 19. Closures. The pattern of public, private, and privileged members is possible because JavaScript has closures.
  • 20. function Container(param) { function dec() { //uses secret } //privileged this.member = param;//public var secret = 3;//private var that = this; this.service = function () { return dec() ? that.member : null; };//public }
  • 21. Enough OOPS! Hoisting ● Function level scoping not block level like C++, Java, C# ● Function declarations and variable declarations are always moved (“hoisted”) invisibly to the top of their containing scope by the JavaScript interpreter. eg.
  • 22. Memory Leaks ● garbage collection ● mark and sweep algorithm ● reason for memory leaks ● IE - Ohh yeah :P ● Possible scenarios
  • 24. Coding == Story Telling?? language agnostic
  • 25. "A good story is one which is easy to convey and takes less time to convey" Developers need to convey code to Browsers and other clients.
  • 26. HTML5 - A bubble? Why Facebook shifted back to native application as compared to html5 ?
  • 27. Reference ● WebPlatform.org ● Mozilla Developer Network ● Opera developer Avoid w3schools if possible!
  • 28. Next session ● Performance ● Optimization ● Algorithms