Pemrograman Web Agi Putra Kharisma, S.T.,...

Post on 26-May-2019

231 views 0 download

Transcript of Pemrograman Web Agi Putra Kharisma, S.T.,...

Pemrograman Web

Agi Putra Kharisma, S.T., M.T.

Rumusan Masalah Bagaimana membuat aplikasi berbasis web menjadi

lebih interaktif pada web browser?

Bagaimana membuat aplikasi berbabis web menjadi lebih responsif pada web broswer?

Bagaimana membuat aplikasi berbasis web menjadi lebih cerdas pada web browser?

Interaktivitas Pada Web

Responsivitas Pada Web

Web Lebih Cerdas

Solusi Client-Side Programming:

Java Applets

Microsoft ActiveX

Microsoft VBScript

Adobe Flash

Microsoft Silverlight

HTML + CSS + JavaScript

http://www.troll.me/images/pissed-off-obama/we-need-a-solution-a-final-solution.jpg

http://treasure.diylol.com/uploads/post/image/599851/resized_winter-is-coming-meme-generator-javascript-is-coming-c1c977.jpg

Java Dengan Javascript?

http://www.ikdoeict.be/leercentrum/slides/javascript/img/01_syntax/hamster.png

Javascript Pertama kali dikembangkan oleh Brendan Eich

Mocha LiveScript JavaScript

Kini distandarisasi oleh ECMAScript

Awalnya dibuat dan dikembangkan di bawah perusahaan Netscape Communications, kini menjadi merk dagang milik Oracle Corporation

JavaScript tidak hanya berjalan di web browser, tetapi juga berjalan di lingkungan lainnya, misalnya desktop dan server.

Beberapa Karakteristik JavaScript Lightweight

Interpreted

Scripting language

Object-Oriented (Prototype based)

Loosely typing

Dynamic typing

Functional

Imperative

First-class function

... dsb

Function Javascript mendukung paradigma functional

programming, dimana fungsi adalah first-class object.

Kita dapat menyimpan fungsi dalam suatu variabel, sebagai atribut fungsi lainnya, atau bahkan sebagai nilai balikan (return value) dari fungsi lain.

Lingkup Variabel Global

Lokal

PERHATIAN:

Lingkup variabel pada JavaScript ditentukan berdasarkan lingkup fungsi (function scope), bukan lingkup blok (block scope)

Lingkup Eksekusi

Sumber: Mikowski et al – Single Page Web Application

Self Executing Anonymous Function Explicit Invocation

var salam = function() {

console.log("Halo...!!!");

}

salam();

Self-Executing Function

(function() {

console.log("Halo...!!!");

})();

Kegunaan Self Executing Anonymous Function Mengatur lingkup variabel (khususnya membuat

variabel privat)

Mencegah kebocoran akses/lingkup variabel

Mencegah pollution of the global namespace

Cara Mengakses Javascript Internal <script> ... </script>

Inline <input type="button" value="Hello World"

onClick="alert('Hello Yourself!')">

Eksternal

<script src="somejavascript.js"></script>

Bagaimana Javascript Mengakses Elemen – Elemen HTML?

http://www.myfacewhen.net/uploads/2058-thinking.jpg

DOM

http://www.w3schools.com/js/js_htmldom.asp

Javascript & DOM

JavaScript can change all the HTML elements in the page

JavaScript can change all the HTML attributes in the page

JavaScript can change all the CSS styles in the page

JavaScript can remove existing HTML elements and attributes

JavaScript can add new HTML elements and attributes

JavaScript can react to all existing HTML events in the page

JavaScript can create new HTML events in the page

http://www.w3schools.com/js/js_htmldom.asp

https://brendaneich.com/files/2011/09/CapitolJS.021.png