It’s Just Simple Cache Object

Skrip nie bertujuan agar performa dan kecepatan sistem meningkat. Saya coba tuk membuat sebuah cache dengan skrip PHP, walaupun tidak persisten tapi dari pengalaman penulis, ini dapat meningkatkan performa dari sistem karena sistem tidak secara langsung ngambil data dari database tapi dari cache yang sudah dipersiapkan walaupun cache itu juga disimpan dalam bentuk file. Cache Objek, adalah istilah yang dibuat oleh penulis sendiri yaitu tempat menyimpan objek. Sebenarnya Ide nya cukup sederhana yaitu membuat objek data dan kemudian menyimpannya ke dalam file. Penyimpanan ke file tentu saja memakai fungsi serialisasi yang akan membuat struktur data objek tidak rusak. Setelah dipikir-pikir ide ini mirip konsep ORM (Objek Relational Mapping).Berikut adalah skrip nya:
// file artikel.php
// author: muse
// tanggal : 25 Feb 2010
class artikel{
var $id;
var $penulis;
var $tanggal;
var $isi;
function artikel($id,$penulis,$tanggal,$isi){
$this->id=$id; $this->penulis=$penulis; $this->tanggal=$tanggal; $this->isi=$isi;
}
function getId(){
return $this->id;
} function getPenulis(){
return $this->penulis;
}
function getTanggal(){
return $this->tanggal;
}
function getIsi(){
return $this->isi;
}
}

// file artikels.php
// author: muse
// tanggal : 25 Feb 2010
class artikels{
var filename="cache_artikel.txt";
var arts;
function artikels(){
$this->arts=$this->_getBase();
}
function _getBase() {
return unserialize(file_get_contents($this->filename));
}
function fillCache($id,$penulis,$tanggal,$isi){
$art=new artikel($id,$penulis,$tanggal,$isi); $this->arts[$id]=$art;
}
function getArtikels($asArray=false) {
if($asArray) return @array_keys($this->arts);
else return @implode("
",@array_keys($this->arts));
}
function _save() {
$fp=@fopen($this->filename,''w'');
@fwrite($fp,serialize($this->users));
@fclose($fp);
}
}

cache_artikel.txt merupakan file cache tuk menampung data dari tabel artikel di database. Tiap kali objek artikels dibuat, fungsi _getBase() akan secara otomatis dijalankan yang itu berarti menunserialisasi isi dari file cache_artikel.txt.
// file DB2Cache
// author: muse
// tanggal : 25 Feb 2010

function refreshCache(){
include "connectDB.php";
$obj=new artikels();
$query="select id,penulis,tanggal,isi from artikel";
while($data=mysql_fetch_array()){ $obj->fillCache($data[''id''],$data[''penulis''],$data[''tanggal''],$data[''isi'']);
}
}
function getChache(){
return $obj->getArtikels();
}

fungsi refreshCache() akan mengambil data dari tabel artikel dan kemudian menyimpannya ke dalam cache melalui fungsi fillCache di class artikels. n fungsi getCache() untuk mengambil data di cache file.

It’s Just About Smarty Template Engine

Smarty adalah sebuah template engine untuk PHP. Dengan menggunakan template engine ini memungkinkan seorang programmer dan seorang designer dapat bekerja secara terpisah tanpa perlu yang satu mengetahui yang lain bagaimana ia bekerja.
Template engine lain biasanya hanya menyediakan variabel-variabel subtitusi dan blok-blok yang bersifat dinamis, tapi smarty jauh lebih ’smart’ dari template-template lain tersebut. Smarty hadir dengan penambahan fitur seperti configuration files, fungsi-fungsi tempalte, variabel modifier, dan banyak lainnya. Selain itu smarty juga engine yang sangat cepat pemrosesannya dan memiliki cache output. Berikut adalah contoh script dengan menggunakan smarty.

// kode index.php
require("Smarty.class.php");
$smarty = new Smarty; $smarty->assign("Title","My Homepage");
$smarty->assign("Names",array("Mustofa","Achmad"));
$smarty->assign("Asal","Malang");
$smarty->display("index.tpl");

// kode index.tpl
{include file="header.tpl" title="contoh page"}
Tanggal dan jam sekarang: {$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

Nama Lengkap: {$Names[0]} {$Names[1]}

Asal: {$asal}


Ini merupakan contoh

{include file="footer.tpl"}

// kode header.tpl

{popup_init src="/javascripts/overlib.js"}
{$title} - {$Name}

// kode footer.tpl

Ini adalah header

Free Web Hosting

* library smarty hanya pada Smarty.class.php
* file template memakai ekstensi file .tpl.

It’s Just SVG on Web Browser

Setelah kemaren ngulas SVG d desktop trus lanjut SVG d JME,,,na skrang coba ngulas SVG di web…file SVG pnya format .svg yg jg dapet di jalankan d browser…Banyak web browser yang udah support SVG tapi masih harus dengan menggunakan plug-in atau kontrol ActiveX seperti Adobe SVG Browser…
Dengan menggunakan SVG di halaman website maka download akan terasa uennteng bgt…hehehe,,knapa demikian..??tu karena informasi yang disimpan SVG berbentuk teks (dalam XML), bukan binary code…
cukup deh intermilannya…n nie adalah contoh sederhana yg hny menampilkan tulisan hello IOC pada browser…

"http://www.w3.org/TR/2000/03/WD-SVG-20000303/DTD/svg-20000303 stylable.dtd">

Hello IOC !



Simpan dengan nama ioc.svg,,,trus lanjutkn dengan membukany pada browser2 kesayangan anda…. :D :D :D

It’s Just About ANT

Java sebagai bahasa komputer berorientasi objek memiliki banyak bentuk file yang berbeda mulai dari java file, class file, dan jar blom lagi pada tahapan enterprise wah…ndak kan cukup satu halaman folio tuk nulisnya. Dengan banyaknya file itu akan terasa sulit dan semrawut kalo hanya dikumpulin jadi satu folder. Nah…tuk itu sangat dianjurkan file-file itu kita atur pada beberapa folder agar tidak semrawut. Pengaturan file seperti itu kalo didunia teknik dinamakan pemetaan ato bahasa kerennya deployment.
Oke…Apa tu ant?? Ant salah satu tool java buatan Apache yang bnyk bangt manfaatny. Si ant ini sebuah open source berbasis java yang harus dikenal dan dipakai oleh programer java. Baik itu untuk pengembangan aplikasi yang paling sederhana maupun yang sangat kompleks. Yang merasa familiar dengan linux pasti pernah memakai tool make dan configure, nah….ant bekerja mirip seperti mereka (silakan install linux klo mo tau…hehehe!!).
Saat ini hampir semua IDE java seperti Netbeans, Eclipse, JBuilder( SUN java Studio sudah mengintegrasikan ant ke dalam paketnya. Sehingga file-file java akan secara otomatis terpetakan.Gel tidak memasukkan ant ke dalam paketnya, tapi bukan berarti tidak bisa mengintegrasikannya, jelas bisa………
Lalu apa ja yang dapat di kerjakannya???hampir semua yang kita perlukan bisa dikerjakannya mulai dari proses kompilasi, pengujian kode, archiving, sampe eksekusi dapat dikerjakannya. Ant bekerja dengan membaca file yang disebut build.xml. Inilah file settingan dari projek sistem.
Oke…cukuplah intermilannya, kalo mo download ant kunjungi situs nya di http://ant.apache.org dan carilah file ant terbaru, baik zip maupun tar.gz.
Tahap-tahap tuk bekerja dengan ant simak berikut ini:

1. Pastikan dulu, aplikasi java kita dapat dijalankan lewat command promt/console.
2. Bwat ANT_HOME di system environment yang menunjuk ke folder ant.contoh: bila mengestrak file ant di C:\ant, maka set ANT_HOME=C:\ant. Trus tambahkan juga path C:\ant\bin pada ANT_HOME nya.
3. Oke sip….udah dapat digunakan deh, untuk mengujinya buka command promt kemudian ketik build di promt tersebut, jika muncul error seperti dibawah maka ant sudah jalan dan tidak menemukan file projek ant yaitu build.xml.@&..

Buildfile:build.xml does not exist!
Build failed

Just Simple MVC

Hoaaaaaammmm…Skarang masih jam 3,,huh..kurang sejam lg out dari sini…Tp Ktimabng bosen+ngantuk lebih baek nulis something tul ndak!!…Betul…betul…betul..
Dalam tulisan ini..gue coba tuk sedikit mengulas about MVC,,oke let’s begin…
Dalam OOP(Object Oriented Programming) udah terkenal tuh yg namany MVC singkatan dari Model Viewer Controller..Sedikit ringaksan tentang MVC, yaitu Model akan berfungsi untuk memberikan data – data yang diperlukan, biasanya sih berhubungan dengan database. Viewer berfungsi sebagai pengatur tampilannya, dan Controller adalah penghubung antara model dan viewer. Pasti bingung deh buat temen2 yg blom pernah denger konsep ini…Tapi jngan bilang “mumet” dulu,,coz skarang qt coba bwt contoh sederhanany aja…
pertama – tama kita coba buat viewer-nya :

class view{
function index($data){
echo $data['judul'];
echo $data['tulisan'];
}
}
?>

nah di sana terlihat kita membuat class view_index yang didalamnya ada fungsi index dan memiliki masukan $data. Setelah itu kita simpan dengan nama viewer_index.php

lalu lanjut ke modelnya :

class model{
function getJudul(){
return "Salam IOC";
}

function getTulisan(){
return "IOC yes...yes...Jos...";
}
}
?>

karena kita tahu bahwa di viewer membutuhkan data title dan tulisan maka model akan mengakomodasi kebutuhan si viewer tersebut. dengan dua fungsi yaitu getJudul dan getTulisan. Biasanya sih nggak secupu itu langsung di-return. biasanya pake akses – akses ke database. tapi males nerangin disini cara ngakses ke databasenya, lagian temen2 jg hapal di luar kepala Hehehe. Setelah itu kita simpan dengan nama model_index.php

nah ini di bagian paling menariknya yaitu membuat controllernya :

include("viewer_index.php");
include("model_index.php");

class controller_index{
function index(){
$data['titlle'] = model_index::getJudul();
$data['tulisan'] = model_index::getTulisan();
view_index::index($data);
}
}
?>

di awal – awal kita include dulu viewer dan model yang sudah kita buat lalu dengan fungsi itu kita siapkan data – data yang akan dimasukkan ke viewer. Data – data itu kita dapat dari model caranya dengan memanggil fungsi yang ada di model. Setelah data sudah siap barulah kita masukkan ke dalam viewer.

nah model, view, dan controller sudah jadi. Jadi, apa yang akan kita lakukan selanjutnya?? Dalam PHP dia akan langsung memanggil index.php karena itu bagaimana cara mengakses controller kita?

include("controller_index.php");

controller_index::index();
?>

nah hanya tinggal begitu saja. Seperti layaknya main program dalam OOP yang memang tidak terlalu banyak baris di dalamnya. Simpanlah dengan nama index.php