lifelong learner — urip iku urup, currently working on accenture.

7 aturan coding pada angular

1
Degananda.com -

Pada halaman resmi angular(angular.io) telah dirilis mengenai rekomendasi penulisan kode / coding dalam project yang dibangun dengan angular(2/4). Aturan – aturan ini dapat kita gunakan sebagai guidelines dalam melakukan coding angular. Pada ulasan ini akan membahas mengenai tujuh aturan yang menurut kami paling “basic” yang harus digunakan dalam membuat project yang menggunakan angular.

Single responsibility prinple (SRP)

Single responsibility principle adalah sebuah prinsip programming yang diusulkan oleh Robert C Martin yakni setiap modul atau class hanya bertanggung jawab atas satu bagian dari fungsionalitas suatu software. Contohnya software untuk reporting dan memiliki module untuk melakukan PRINT terhadap REPORT. Pada kasus tersebut(printing report) ada dua hal yang dapat berubah yaitu :

  1. Content dari report dapat berubah , misalnya pada laporan keuangan bisa jadi pada bulan januari memerlukan laporan mengenai BEP(break event point) dan pada bulan februari laporan mengenai ketercapaian BEP tidak diperlukan lagi.
  2. Format/Struktur dari report dapat berubah. Misal bulan januari laporan diawal membahas mengenai sales kemudian membahas mengenai BEP namun dibulan februari struktur tersebut terbalik

Maka pada SPA(Single responsibility principle). Kedua hal yang dapat berubah tersebut harus dituliskan dalam dua FILE YANG BERBEDA. Esensinnya adalah memudahkan dalam memaintain kode.

1. Aturan pertama : line of code & fungsionalitas

1.1 Satu file memiliki satu jenis fungsi

Misalnya file untuk services hanya berfungsi sebagai services, begitu juga dengan jenis lainna seperti komponen, class, interfaces, pipe, dan lain-lain. Jangan membuat suatu file memiliki lebih dari satu fungsi (dual function). Alasan :

  • Mempermudah untuk dibaca oleh programmer lain yang berada dalam project sama
  • Memiliki dokumentasi yang baik(well written).
  • Menghindari kesamaan file antar member di team.

1.2 Jumlah line of code pada satu file maksimal 400 line

hal ini direkomendasikan oleh google) karena :

  • Semakin sedikit line of code maka performa akan menjadi baik
  • Satu single komponen akan diexport saat dilakukan lazy loading. Sehingga less code = better performance.

2. Aturan kedua : Menuliskan fungsi(max 75 line)

  • Mendefinisikan fungsi by fungsi. Fungsi kecil akan digabung dengan fungsi kecil lainnya untuk mencapai suatu tujuan tertentu.
  • Maksimum sebuah fungsi memiliki 75 line of code. Lebih dari itu ? pisah menjadi services lainnya.

Alasan harus melakukan kedua hal diatas adalah

  1. Fungsi yang kecil mempermudah dalam proses testing
  2. Fungsi yang kecil dapat digunakan kembali pada beberapa komponen(reuseable).
  3. Fungsi yang kecil mudah untuk dibaca (oleh programmer lain maupun diri kita sendiri) sehingga kita akan lebih mudah memahami meski project tersebut telah lama sekali close(membuka project lama)
  4. Fungsi yang kecil mempermudah untuk maintain , contohnya saat melakukan debugging, dengan mendefinisikan fungsi yang kecil kemudian digabung-gabungkan akan lebih mudah melakukan trace error ketimbang satu fungsi yang besar.
  5. Angular menyatakan bahwa fungsi yang kecil dapat menhindari hidden bugs atau bugs yang terlubung. (angular.io)

3. aturan ketiga : Penulisan simbol dan nama file

  • Menggunakan nama konsisten. Misalnya untuk file services maka dituliskan nama_pipe.pipe untuk model maka dituliskan nama_mode.model dan lain-lain
  • Class name selalu ditulis diawali dengan UPPERCASE.
  • Suffix menggunakan conventional suffix pada angular : component, directive, pipe, module, service)

4. Aturan ke-empat : Penulisan services

  • Gunakan suffix “service” dan prefix sebagai nama servicenya. Contoh : NoteService.

5. Aturan ke-lima : penamaan selector pada directive

ketika kita membuat custom directive maka buatlah huruf awal tersebut uppercase atau huruf kecil misalnya kita membuat pipe untuk melakukan sorting maka berikan nama sortingPipe. Mengapa ?

  1. HTML adalah case sensitive.
  2. Meningkatkan konsistensi

6. Aturan ke-enam : penamaan properti dan method/function

gunakan lowercase untuk huruf pertama dari properti ataupun method/function. Jangan gunakan underscore untuk mendefinisikan properti/method/funciton. Mengapa ?

  1. Menyesuikan dengan standart konvesional penulisan method atau properti didunia programming

7. Aturan ke-tujuh : import line spacing

saat melakukan import berikan space pada kiri dan kanan bracket. Mengapa ?

hal ini sangat memudahkan proses pembacaan.

Import { namaExportedClass } from ‘./../file.ts’;