Professional Documents
Culture Documents
Pertemuan 4 - Konvensi Penulisan Kode Dalam CI1
Pertemuan 4 - Konvensi Penulisan Kode Dalam CI1
Pertemuan 4 - Konvensi Penulisan Kode Dalam CI1
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.
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!”) ;
}
}
Salah :
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 :
Benar :
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 :
Salah :
$flag = true ;
$objek = null ;
Benar :
$flag = TRUE ;
$objek = NULL ;
Salah :
Benar :
$nama = “Stevie” ;
Echo $nama ;
SATU FILE PER KELAS
Dalam membuat pustaka dalam bentuk kelas, usahakan untuk menyimpan satu kelas
ke dalam satu file.
Salah :
if ( $flag ) {
// . . .
}
Benar :
$kota*“BDG”+ = “Bandung” ;
If ($flag) {
// . . .
}
Salah :
private $panjang ;
private $lebar ;
Benar :
private $_panjang ;
private $_lebar ;
private function _luas() {
return $this->_panjang * $this->_lebar ;\
}
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