The Denny Depok

The Denny Depok

Gosipin IT Bareng Mas Denny Depok Yuk…

The Denny Depok RSS Feed
 
 
 
 

Web Development Dengan 1 Bahasa Untuk Server dan Client ???

 

Open Standard

 Salah satu impian web developer adalah punya satu bahasa pemrograman satu untuk semua, maksudnya adalah bisa memrogram aplikasi web baik untuk sisi client (yang jalan di web browser) ato di sisi server (yang jalan di web server) dengan menggunakan satu bahasa yang sama. Kalau kita perhatikan proses web development saat ini adalah web developer minimal menggunakan 2 bahasa untuk membangun aplikasi web, yaitu menggunakan JavaScript (disisi client) ditambah PHP/Java/Python/.NET (disisi server).

 

 

Kesulitannya memang ada disisi client yang hanya mendukung JavaScript, dan melihat perkembangan web browser saat ini, hanya ada kemungkinan kecil peran javascript bisa digantikan oleh bahasa pemrograman lain dalam beberapa tahun kedepan. Bahkan implementasi EcmaScript 4 yang merupakan kelanjutan javascript juga ditunda sampai waktu yang tidak ditentukan. Penantang javascript disisi client yang bisa diperhitungkan hanya ActionScript yang berjalan diatas platform flash dan .NET yang berjalan diatas silverlight (walau masih dalam jumlah yang belum signifikan). 

 

Memang sih sudah ada usaha untuk menggabungkan development client dan server kedalam satu bahasa. Contoh pertama adalah .NET dengan visual studionya. Cara yang dipergunakan .NET adalah membuat kode javascript transparant, digenerate secara otomatis sehingga developer hanya berurusan dengan kode .NET. Tapi bagaimanapun juga, secanggih-canggihnya IDE tersebut, pada akhirnya developer yang ingin membuat aplikasi web yang advance harus turun juga ke kode javascript.

 

Contoh kedua yang cukup ekstrim adalah Haxe. Pendekatan yang dipakai Haxe adalah menciptakan bahasa baru dan menyediakan kompiler yang mampu menggenerate output ke beberapa platform seperti javascript (untuk web browser), php (untuk server), ActionScript (untuk flash) dan beberapa platform kecil lain. Pendekatan ini cukup menarik tetapi output yang digenerate sering tidak memuaskan pengguna sebab bukan merupakan hasil yang efisien.

 

Selain pendekatan diatas, sebenarnya pendekatan yang paling masuk akal mungkin adalah membawa bahasa pemrograman javascript ke sisi server. Yup Server Side Javascript. Bahkan sebenarnya ide untuk membawa javascript menjadi bahasa pemrograman server sudah dilakukan Netscape dari tahun 1996 dengan Server LiveWire-nya. Tapi kenapa pemakaian javascript untuk sisi server seperti tidak pernah terdengar ?? Mungkin permasalahannya terletak dari desain bahasanya sendiri. Selama ini bahasa javascript dianggap bahasa kelas 2 dengan struktur yang tidak terlalu baik sehingga dianggap tidak cocok untuk digunakan sebagai bahasa pemrograman aplikasi besar. Walaupun javascript mau tidak mau digunakan untuk sisi client saat ini, tetapi kebanyakan developer melihat hal tersebut tidak apa-apa karena javascript hanya digunakan untuk proses tampilan, sedangkan fungsi inti bisnis berjalan di sisi server dengan menggunakan bahasa yang lebih serius seperti java/PHP/.NET/Python/Ruby. Alasan lain mungkin kebanyakan virtual machine untuk menjalankan javascript yang tersedia masih relatif lambat.

 

Akan tetapi ada semangat baru yang tumbuh akhir-akhir ini dengan pemakaian javascript sebagai kode di sisi server. Hal ini dimulai dengan terbuka-nya kode javascript engine dari mozilla. Engine javascript yang cukup stabil dan cepat mengundang beberapa developer untuk mempergunakannya sebagai engine javascript disisi server. Salah satu contohnya adalah JSEXT yang mempergunakan engine SpideMonkey (C based dari firefox) untuk menjalankan javascript di ApacheServer. Contoh lain adalah JSSP yang mempergunakan engine Rhino (java based javascript engine dari Mozilla). Tapi mungkin kalau anda mencari versi lain dari serverside javascript menggunakan Rhino anda akan mendapatkan banyak sebab Rhino secara default di ikutkan dalam pake JDK 1.6 (Bahkan banyak tutorial untuk membuat sendiri serverside javascript engine dengan mempergunakan Rhino ini…)

 

Tapi yang paling menarik perhatian saya sebenarnya project Tamarin dari Mozilla. Buat yang belum tau, project Tamarin adalah project untuk mengimplementasikan EcmaScript 4 ke dalam WebBrowser FireFox versi yang akan datang. Project ini mempergunakan dasar dari engine ActionScript dari Adobe, yaitu engine yang di pergunakan di platform Flash. Walau sempat mengalami stagnasi karena ada perdebatan tentang implementasi EcmaScript 4 ke browser, tapi project ini akhir-akhir ini mulai menggeliat lagi.

 

Yang menarik dari project ini adalah  sama seperti engine javascript dari mozilla terdahulu, engine yang terbuka sourcenya ini bisa diimplementasikan untuk engine javascript disisi client maupun di sisi server. Akan tetapi engine ini mempergunakan standar EcmaScript 4 yang desain bahasanya jauh lebih modern dibanding dengan javascript saat ini, bahkan menurut pendapat saya pribadi, EcmaScript 4 lebih modern dibandingkan PHP, sehingga cocok juga untuk pengembangan aplikasi besar yang dan serius. Engine ini juga berperformansi baik dengan ukuran yang relatif kecil (saat ini sekitar 200KB, coba bandingkan dengan JVM java ato .NET). Yang lebih menarik lagi adalah engine ini juga mampu menghandle bahasa action script yang dipakai flash, oleh karena itu saya mengharapkan penyatuan bahasa pemrograman antara web browser script, flash script dan serverside script akan terwujud tidak lama lagi.

 

Memang engine tamarin masih dalam fase awal sekali dan masih berkutat pada pembangunan core engine, belum ada planning pasti untuk penggabungan ke firefox browser. Akan tetapi status terakhir dari engine ini cukup meyakinkan. Sudah ada usaha untuk mempergunakan engine ini untuk shell-based javascript bernama RedTamarin. Dan usaha untuk membuat mod apache dengan EcmaScript 4 sebagai bahasa pemrogrammannya dengan menggunakan engine tamrin juga sudah dimulai.

 

Jadi, kita tunggu gimana perkembangan bahasa pemrograman untuk web selanjutnya. Kalo anda tidak sabar dan punya kemampuan C, saya kira memulai project opensource untuk javascript engine dengan mempergunakan tamarin engine adalah ide yang cukup menarik. Bukan untuk embuat fork dari project yang ada diatas, tapi untuk mempercepat, sebab project diatas masih one man project.

11 Responses to “Web Development Dengan 1 Bahasa Untuk Server dan Client ???”

  1. 1
    Kamus Malesbanget Blog » Denny: Web Development Dengan 1 Bahasa Untuk Server dan Client ???:

    [...] Planet Terasi [...]

  2. 2
    pebbie:

    bingung.. kalo bikin mod_js.so untuk apache, nanti yang membedakan server-side javascript dengan clientsidenya gimana yah? apa pake tag ‘&lt?’ dan ‘?>’ ?

    boleh juga bwt oprekan kuliah teknik kompilasi..

  3. 3
    fachrirahman:

    thanks. kita tunggu bersama sama

  4. 4
    Denny Depok:

    @pebbie, makanya perlu spesifikasi yang lebih enak sih. Kalo netscape dulu pake script runat=”server” tapi kayaknya kepanjangan deh kalo nulis itu terus berulang-ulang :D

    Tapi yang enak, koding kode client & server gak perlu 2 kali, kayak sekarang kan harus implement di javascript trus kostumisasi biar jalan di php (ato sebaliknya). Kalo udah sama,. wah enak banget….

  5. 5
    Indra:

    kalo nanti terlaksana, tinggal tunggu supportnya. Kalo ga ada yg support (browser/server) tinggal tunggu matinya deh

  6. 6
    chandra:

    mas, saya mau minta bantu nih…

    saya kan lagi desain web menggunakan javascript? yang saya bingungin adalah :

    saya kan pake ubuntu, xp ma vista keberatan dipake di komputer saya.

    1.JavaScript ga bisa di gunakan di firefox(emang), pas saya cari solusi ada?saya pikir internet explorer bisa jalanin JavaScript, aku install ies4linux?ternyata sama aja ga bisa?
    2.ada ga software atau perangkat lunak yang cocok untuk masalah aku ini?Menjalankan JavaScript di ubuntu?

    Mohon bantuannya?

    terima kasih…

  7. 7
    chandra:

    oh iya lupa, saya membuat tugas untuk UAS kuliah saya…

    membangun Website dengan JavaScript…

  8. 8
    Denny Depok:

    @chandra

    javascript kan standar browser, bisa dong jalan di semua browser modern. Kalo gak bisa mungkin ada fitur yang enggak kompatibel. Biasanya sih IE yang enggak kompatiberl ke browser lain :D

  9. 9
    indra:

    maz mau tanyak nih..
    membuat program traffic laight/lampu lalu lintas byasa nya menggunakan
    bahasa pemrograman apa?
    gimana cara coding mengatur waktu nya?

  10. 10
    Denny Depok:

    @indra, mungkin kalo traffic light maennya dilevel micro controller kali ya, bisa pake assembly ato pake C untuk micro controller.

    Timernya ? di micro controller kan ada komponen timer

  11. 11
    iroel:

    Idem sama pebbie. Sebenarnya seh hampir sama klo pake framework yg server side (ex: symfony), semua script JS digenerate langsung sama frameworknya. Tapi bener kata-kata Anda, klo mo bikin web yg advanced, tetep aja programmernya turun tangan langsung lagi. Jadi infinite loop deh. Kesimpulannya satu: nggak mungkin :D

Leave a Reply

  • buy diet drug
  • oral antidiabetic agents
  • cat hairball remedies
  • effects of allegra
  • viagra or cialis
  • pregnancy and pain medication
  • diabetes cure
  • cheap pain med
  • weight loss supplements that work
  • best body building products
  • drug loratadine
  • canadian pharmacy cialis
  • weight loss pill without a prescription
  • about sleep aid
  • pre diabetes
  • drugs used for high blood pressure
  • yeast infection medication
  • obesity help online
  • wrinkle skin care
  • where to buy soma
  • diet pill approved by fda
  • total health discount
  • kamagra online pharmacy
  • diet for diarrhea
  • skin cures
  • bone and joint health
  • medicine no prescription
  • nicotine blockers
  • new fda approved drugs
  • allergy asthma child
  • order pet med without prescription
  • discount vitamins online
  • help for edema
  • diet supplements distributors
  • generic revatio
  • viagra generic soft tab
  • weight loss systems
  • buy phentermine online no rx
  • xenical for sale
  • foreign medication no prescription
  • european viagra
  • anti wrinkles
  • cat health information
  • prednisone buy
  • viagra money order
  • rheumatoid arthritis latest treatments
  • what does evening primrose oil do
  • breast cancer help
  • pregnancy approved blood pressure drugs
  • blood pressure prevention
  • living with heart failure
  • ambien without prescription
  • order medicine from canada
  • free prescription medication
  • diabetes alternative medicines
  • discount pharmacy no prescription
  • stop smoke
  • no hangover
  • cheap blue pill
  • medical weight loss
  • kamagra cheap
  • herpes varicella
  • viagra purchase on line
  • weight loss programs online
  • bentyl dosing
  • viagra discount online
  • cialis canadian drug
  • chronic sinus infection
  • osteoporosis treating
  • the cost of treating pain
  • pain reliever
  • cures for erectile dysfunction
  • buy tramadol cheap
  • lexapro sleep
  • acomplia online
  • anti depressant medicine
  • augmentin information
  • how prevent progress of arthritis
  • back pain pills
  • what to do lower blood pressure
  • viagra rx
  • proven weight loss pills
  • osteoporosis treating
  • herpes varicella
  • latest smoking cessation drugs
  • osteoarthritis
  • high amount of acid in blood
  • levitra price
  • lopressor drug
  • zantac prevacid
  • cure hair loss
  • obesity medication
  • cheapest place buy viagra online
  • medication for swelling
  • free xanax
  • weight loss programs online
  • natural treatments for insomnia
  • hair loss product treatment price
  • generic for ultram
  • treatment of yeast infection
  • viagra pills
  • atenolol interaction
  • high blood pressure drug treatment
  • weight loss support group online
  • prednisone 10 mg
  • female sexual enhancement creams
  • what is ativan
  • approved cialis fda
  • prilosec order
  • how to stop hair loss
  • how viagra works
  • cheap cialis tadalafil
  • women's natural hair loss cures
  • free weight loss help
  • pet health problems
  • natural teeth whitening
  • phentermine online
  • allegra children
  • raloxifene evista
  • where can i order phentermine online
  • smoking cessation drugs
  • male enhancement enhancement
  • help for constipation
  • discount anxiety drugs
  • pravastatin drug
  • buying medications online without a prescription
  • anti depression drug
  • effects of prilosec
  • how to get big muscles
  • neck arthritis
  • stop smoking tips
  • levitra web sites
  • arthritis australia
  • bactrim dosages
  • verapamil dose
  • coumadin medication
  • knee arthritis
  • cures for hair loss
  • benefits of aspirin
  • online pharmacy discount drugs
  • buy lisinopril
  • cheap estrace
  • increase bust exercise
  • relieve joint pain naturally
  • dental pain relief
  • buy pain meds no prescription
  • penis enlargement result
  • canadian arthritis medication
  • gout in the foot
  • side effects claritin
  • reducing blood pressure
  • stopping blood pressure medicine
  • generic cialis cheap
  • drug generic lipitor
  • diet supplement
  • fungal infection treatment
  • phentermine with no prescription
  • skin infection treatment
  • medication for high cholesterol
  • cheap weight loss pill
  • order diovan
  • hair loss alternative medicine
  • acne skin care products
  • antibiotics chlamydia
  • male erectile dysfunction
  • diabetes and new drugs
  • acne remedies
  • increase male sexual power
  • supplements for dogs
  • free prescription drugs
  • online pharmacies no prescriptions
  • online canadian pharmacy
  • buy inderal
  • medical weight loss
  • cat skin care
  • robaxin dosage
  • chronic itching and swelling in skin
  • generic for actos
  • alcohol celebrex
  • viagra or cealis
  • buy pain medication online
  • hangover help
  • skin solutions
  • stroke prevention programs
  • viagra free pills
  • canada online drug stores
  • muscular strength
  • benefits of aspirin
  • canadian pharmacy cialis
  • effects of phentermine
  • medication lipitor
  • severe headache
  • medications for diabetes treatment
  • clonazepam overdose
  • medication to treat high blood pressure
  • cold sores help
  • online cialis
  • discount allegra
  • medication for high cholesterol
  • vardenafil effectiveness