SOFTWARE ENGINEERING

Aturan-Aturan Sederhana untuk Membuat Desain Software yang Baik

Wellcode.IO team | 09 SEP 2019

Jadi software engineer bukan berarti gabisa sukses berbisnis loh, join dulu ke pinterusaha.ai

Menurut Kent, desain sangatlah sederhana apabila mengikuti aturan berikut:

  • Menjalankan semua tes
  • desain harus menghasilkan sistem sesuai dengan tujuan yang dimaksud, dan lulus dari tes pengujian.
  • Tidak mengandung duplikasi
  • Kode yang sama dalam beberapa baris merupakan masalah untuk menjadikan sebuah sistem menjadi lebih baik. Baris-baris kode yang sama persis merupakan sebuah duplikasi.
  • Mengekspresikan maksud programmer
  • Meminimalkan jumlah kelas dan metode

Aturan diberikan sesuai urutan kepentingannya.

EXPRESSIVE

Kode harus dengan jelas menyatakan maksud dari pembuatnya. Karena semua dari kita memiliki pengalaman saat membuat kode berbelit-belit, ada sebagian dari kita yang bisa menyelesaikannya ada pula yang tidak. Lebih jelas penulis membuat kode, semakin sedikit waktu yang dihabiskan orang lain untuk memahaminya. Tujuan utama tes adalah untuk bertindak sebagai dokumentasi, contohnya: 

Seseorang yang membaca tes kami harus bisa mendapatkan pemahaman yang cepat tentang apa kelas itu semua. Tetapi cara terpenting untuk menjadi ekspresif adalah dengan mencoba. Terlalu sering kita mendapatkan kode kita bekerja dan kemudian beralih ke masalah berikutnya tanpa memikirkan untuk membuat kode itu mudah dibaca orang atau tidak. Ingat, orang berikutnya yang kemungkinan membaca kodenya adalah Anda sendiri.

CONCURRENCY

Konkurensi adalah bisa dikatakan sebagai suatu fitur di mana database management system(DBMS) mengijinkan banyak transaksi pada saat bersamaan untuk mengakses data yang sama. Dalam melakukan konkurensi dibutuhkan suatu Concurrency Control Mechanism (CCM) agar transaksi yang dilakukan oleh banyak user pada suatu sistem di dalam waktu yang bersamaan tidak saling “mengganggu” dan tidak menghasilkan inconsistency data. Perlunya menulis kode pemrograman secara bersamaan dengan bersih, dan kesulitannya.

Mengapa konkurensi?

Concurrency adalah strategi decoupling. Ini membantu kita memisahkan apa yang harus dilakukan dan kapan selesai. programmer yang men-debug sistem seperti itu dapat mengatur breakpoint, atau urutan breakpoint, dan mengetahui kondisi sistem dimana breakpoint terkena. 

Breakpoint adalah cara untuk memperoleh pengetahuan tentang suatu program selama pelaksanaannya. Selama gangguan, programmer memeriksa lingkungan pengujian (register tujuan umum, memori, log, file, dll.) Untuk mengetahui apakah program berfungsi seperti yang diharapkan. Dalam praktiknya, breakpoint terdiri dari satu atau lebih kondisi yang menentukan kapan eksekusi program harus terganggu.

Tiga masalah dalam Konkurensi:

  1. Lost Update Problem
  2. Masalah operasi update yang sukses dari seorang pengguna kemudian ditimpali oleh operasi update dari pengguna lain.
  3. Uncommitted dependency problem (ketergantungan yang tidak sukses/modifikasi sementara)
  4. Masalah terjadi saat suatu transaksi membaca data dari transaksi lain yang belum di commit.
  5. Inconsistent analysis problem

Masalah terjadi saat satu transaksi membaca beberapa nilai tetapi transaksi kedua pada waktu sama memodifikasi nilai tersebut.

Dua Outcome dari Konkurensi:

  1. Commit
  2. Jika operasi berjalan sukses, maka transaksi disebut committed, basis data mencapai kondisi konsisten yang baru.
  3. Abort
  4. Jika operasi berjalan tidak sukses, maka transaksi disebut aborted (gagal)Jika transaksi gagal maka basis data kembali ke keadaan konsisten sebelum transaksi dimulai. Disebut rollback atau undone.

Tidak ada yang memiliki efek penurunan yang lebih dalam dan jangka panjang pada suatu pengembangan proyek daripada kode yang buruk. Jadwal yang buruk dapat diperbaiki, persyaratan yang buruk dapat didefinisikan ulang. Dinamika tim yang buruk dapat diperbaiki. Tapi kode busuk dan fermentasi yang buruk, menjadi berat yang tak terhindarkan yang menyeret tim ke bawah. Tim mengerjakan sesuatu merangkak daripada dengan tergesa-gesa yang hanya akan menciptakan banyak kode yang buruk. Jadi solusinya adalah terus menjaga kode Anda sebersih dan sesederhana mungkin.

by: elitaads

Wellcode.io Team

Leading high-tech Indonesia Startup Digital - which serves the community with revolutionary products, system development, and information technology infrastructure

You may also like

TAX

PPN atas Pembelian Agunan : Apa, Bagaimana, dan Dampaknya terhadap Wajib Pajak?

Taxsam.co Team | 29 SEP 2023

TAX

Terima Fasilitas Kesehatan dari Kantor Kena Pajak Nggak, Ya?

Taxsam.co Team | 22 SEP 2023

TAX

Pajak Judi Online di Indonesia? Mungkin Nggak, Sih?

Taxsam.co Team | 22 SEP 2023