Pertemuan 4 - Konvensi Penulisan Kode Dalam CI1

You might also like

You are on page 1of 8

Prepared by

Imam Ma’ruf Nugroho

Pertemuan 4
KONVENSI PENULISAN KODE DALAM CODEIGNITER

PENDAHULUAN
Codeigniter tidak memaksa kita sebagai pengembang aplikasi untuk menggunakan
gaya penulisan kode tertentu. Meskipun demikian , codeigniter menyediakan beberapa
konvensi (aturan/ketentuan) penulisan kode yang sebaiknya diikuti untuk menjadikan kode
lebih baik dan mudah dipahami, seperti yang dilakukan oleh tim pengembang codeigniter itu
sendiri.

TAG PENUTUP PHP


Dalam codeigniter, tag penutup kode PHP (tanda ?>), bersifat opsional (bisa disertakan
atau tidak). Rekomendasinya adalah kita perlu menghilangkan tag penutup tersebut didalam
setiap file kode PHP yang dibuat, baik itu file controller maupun model, sebagai gantinya, kita
bisa membuat komentar yang menjelaskan tentang file tersebut (tidak wajib)

Salah :

<? php
class Hello extends CI_Controller {
function index() {
echo(“Hello, World!”) ;
}
}
?> // salah, seharusnya baris ini tidak perlu disertakan

Benar :

<? php
class Hello extends CI_Controller {
function index() {
echo(“Hello, World!”) ;
}
}

// akhir file hello.php


// lokasi file : application\controllers
PENGGUNAAN TAG PENDEK
Dalam pembuatan kode PHP, hindari penggunaan tag pembuka pendek (<?). Gunakan
tag pembuka panjang (<?php).

Salah :

<? echo $nama; ?>


<?=$nama?>

Benar :

<?php
echo $nama ;

PENAMAAN KELAS
Dalam codeigniter, nama jelas seharusnya diawali dengan huruf besar diikuti dengan
huruf besar dan diikuti dengan huruf kecil. Jika terdapat dua suku kata, maka pisahkan kedua
suku kata tersebut dengan tanda underscore (_).

Salah :

class myModel extends CI_Model {


// …
}

Benar :

class My_model extends CI_Model {


// …
}

PENAMAAN METODE
Dalam pemrograman berorientasi objek, metode (method) adalah fungsi yang
didefinisikan didalam suatu kelas, yang berguna yang berguna untuk merepresentasikan
kemampuan yang dimiliki oleh objek. Dalam codeigniter, nama metode ditulis dalam huruf
kecil. Jika terdapat dua suku kata atau lebih, pisahkan suku kata tersebut dengan
menggnakan underscore. Selain itu, nama metode juga seharusnya singkat dan deskriptif
(namanya mencerminkan atau sesuai proses yang dilakukan).
Salah :

function getinstance()
function getInstance()

Benar :

Function get_instance()

PENAMAAN VARIABEL
Dalam codeigniter, penamaan untuk variabel hampir mirip dengan penamaan untuk
metode. Nama variabel seharusnya hanya ditulis dalam huruf kecil. Jika terdiri dari dua suku
kata atau lebih maka seharusnya nama tersebut dipisah menggunakan tanda underscore.

Salah :

$Nama = “Stevie” ;
$tempatLahir = “Purwakarta” ;

Benar :

$nama = “Stevie” ;
$tempat_lahir = “Purwakarta” ;

PENAMAAN KONSTANTA
Konstanta seharusnya ditulis dalam huruf kapital/besar.

Salah :

define(‘jumlah_baris’, 25)

Benar :

define(‘JUMLAH_BARIS’, 25)

PENULISAN KOMENTAR
Penulisan komentar untuk bagian kode tertentu seharusnya ditulis secara jelas. Tidak
harus panjang, tapi maksud yang disampaikan seharusnya dapat dipahami oleh orang lain
yang membacanya.
Kurang tepat :

// variabel nama
$nama = “Stevie” ;

Benar :

// variabel untuk menyimpan nama pegawai


$nama = “Stevie” ;

PENGGUNAAN TRUE, FALSE, DAN NULL


Ketika menggunakan kata kunci TRUE, FALSE, dan NULL didalam kode, seharusnya kata
kunci tersebut ditulis dalam huruf besar.

Salah :

$flag = true ;
$objek = null ;

Benar :

$flag = TRUE ;
$objek = NULL ;

SATU PERNYATAAN PER BARIS


Dalam menuliskan kode program, seharusnya satu statement (pernyataan/perintah)
ditulis dalam satu baris. Hal ini menjadikan kode mudah dibaca dan dilacak ketika terjadi
suatu kesalahan.

Salah :

$nama = “Stevie”; echo $nama;

Benar :

$nama = “Stevie” ;
Echo $nama ;
SATU FILE PER KELAS
Dalam membuat pustaka dalam bentuk kelas, usahakan untuk menyimpan satu kelas
ke dalam satu file.

SPASI DALAM TANDA KURUNG


Ketika menggunakan tanda kurung, usahakan untuk tidak menggunakan spasi.

Salah :

$kota* “BDG’ + = “Bandung” ;

if ( $flag ) {
// . . .
}

Benar :

$kota*“BDG”+ = “Bandung” ;

If ($flag) {
// . . .
}

METODE DAN VARIABEL DENGAN TINGKAT AKSES PRIVATE


Meskipun tidak wajib, metode dan variabel dengan tingkat akses private seharusnya
diawali dengan tanda underscore.

Salah :

private $panjang ;
private $lebar ;

private function luas() {


return $this->panjang * $this->lebar ;
}

Benar :

private $_panjang ;
private $_lebar ;
private function _luas() {
return $this->_panjang * $this->_lebar ;\
}

NAMA-NAMA YANG SUDAH DIDEFINISIKAN OLEH CODEIGNITER


Dalam menentukan nama (baik nama controller, fungsi, variabel, maupun konstanta),
kita tidak boleh menggunakan nama-nama yang sudah didefinisikan didalam codeigniter.

NAMA-NAMA CONTROLLER
Berikut ini daftar nama yang tidak dapat kita gunakan untuk mendefinisikan
nama controller:
 CI_Controller
 Default
 index

NAMA-NAMA FUNGSI
Kita tidak dapat mendefinisikan fungsi dengan nama berikut :
 is_php()
 is_really_writeable()
 load_class()
 is_loaded()
 get_config()
 config_item()
 show_error()
 show_404()
 log_message()
 set_status_header()
 get_mimes()
 html_escape()
 remove_invisible_characters()
 is_https()
 function_usable()
 get_instance()
 _error_handler()
 _exception_handler()
 _stringify_attributes()
NAMA-NAMA VARIABEL
Untuk mendefinisikan variabel, kita seharusnya tidak menggunakan
 $config
 $db
 $lang

Sebenarnya kita masih dapat menggunakan nama variabel diatas, tapi risikonya
nilai dari variabel $config, $db, dan $lang milik codeigniter akan ditimpa dengan nilai
yang kita definisikan.

NAMA-NAMA KONSTANTA
Berikut ini daftar konstanta yang telah didefinisikan oleh codeigniter dan tidak
dapat didefinisikan ulang didalam kode yang kita tulis.
 ENVIRONMENT
 FCPATH
 SELF
 BASEPATH
 APPPATH
 VIEWPATH
 CI_VERSION
 MB_ENABLED
 ICONV_ENABLED
 UTF8_ENABLED
 FILE_READ_MODE
 FILE_WRITE_MODE
 DIR_READ_MODE
 DIR_WRITE_MODE
 FOPEN_READ
 FOPEN_READ_WRITE
 FOPEN_WRITE_CREATE_DESTRUCTIVE
 FOPEN_READ_WRITE_CREATE_DESTRUCTIVE
 FOPEN_WRITE_CREATE
 FOPEN_READ_WRITE_CREATE
 FOPEN_WRITE_CREATE_STRICT
 FOPEN_READ_WRITE_CREATE_STRICT
 SHOW_DEBUG_BACKTRACE
 EXIT_SUCCESS
 EXIT_ERROR
 EXIT_CONFIG
 EXIT_UNKNOWN_FILE
 EXIT_UNKNOWN_CLASS
 EXIT_UNKNOWN_METHOD
 EXIT_USER_INPUT
 EXIT_DATABASE
 EXIT_AUTO_MIN
 EXIT_AUTO_MAX

You might also like