Rohmad Hidayat's Blog

Icon

My Notes on Mobile Technology, Python GUI, Python Web Framework, Software Development, Database, Server, Embedded System, Mini Computer

Aplikasi Modular dengan Web.py

2 hari ini saya mencoba web.py, sebuah web framework dari python yang diklaim sebagai framework kecil, simpel dan cepat. setelah membaca beberapa tutorial dan manual, ada satu hal yang sangat menarik dari web.py ini, yaitu kemampuan menangani lebih dari satu aplikasi yang sudah kita buat dalam bentuk modul, sehingga dapat kita panggil secara mudah lewat perintah import

katakanlah kita memiliki 2 aplikasi, semisal app1 dan app2, maka kita dapat membuat loader sbb:

  1. aplikasi 1 file:app1.py

import web
import tes

page=tes.Hal()

urls = (
‘/(.*)’, ‘hello’
)
app = web.application(urls, globals())

class hello:
def GET(self, name):
if not name:
name = ‘world’
return page.index()

  1. aplikasi 2 file app2.py

import web

urls = (
‘/(.*)’, ‘hello’
)
app = web.application(urls, globals())

class hello:
def GET(self, name):
if not name:
name = ‘world2’
return ‘Hello app 2, ‘ + name + ‘!’

  1. ## aplikasi utama, file:main.py
  2. perhatikan, aplikasi kita import secara mudah lewat import module

import app1
import app2
import web

  1. kita lakukan mapping module.app aplikasi ke url

urls = (
“/1”, app1.app,
“/2”, app2.app,
“/(.*)”, “index”
)

class index:
def GET(self, path):

return “””<html><h1>hello, this is Main Application</h1><br> <a href=”1/”>app 1</a> <br> <a href=”2/”>app 2</a><br><a href=”../”>HOME</a></html>””” + path

app = web.application(urls, locals())

if __name__ == “__main__”:
app.run()

  1. ## end

kita jalankan main.py, kedua aplikasi sudah dapat disatukan dalam satu aplikasi utama. ini akan sangat mempermudah kita menyatukan aplikasi dalam bentuk modular.

Hal yang menarik lainnya adalah, web.py sudah menyatukan proses thread dalam bentuk background, jadi akan mempermudah kita melakukan proses secara simultan. sangat menarik

salam RHD

Advertisements

Filed under: Computer, Programming, Python

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: