Calculation Engine
Calculation engine memainkan peran kunci di formula field, linkage rules, dan workflow, menyediakan tool komputasi umum.
Formula.js
Formula.js adalah library JavaScript ringan yang dirancang khusus untuk perhitungan formula. Library ini menyediakan kumpulan fungsi matematika dan statistik yang lengkap, memungkinkan pengguna untuk dengan mudah melakukan perhitungan kompleks. Fitur utamanya meliputi:
- Fungsi yang kaya: Kumpulan fungsi yang luas mencakup berbagai operasi matematika.
- Mudah digunakan: Menyediakan API yang sederhana, memungkinkan developer maupun non-developer untuk membuat formula tanpa menulis banyak kode.
- Perhitungan real-time: Dioptimalkan untuk pemrosesan data real-time, cocok untuk aplikasi yang membutuhkan feedback perhitungan instan.
Math.js
Math.js adalah library matematika JavaScript dan Node.js yang kaya fitur. Library ini mendukung berbagai operasi matematika dari aritmetika dasar hingga aljabar tingkat lanjut, statistik, dan aljabar linear. Fitur utamanya meliputi:
- Kumpulan fungsi yang lengkap: Menyediakan banyak fungsi untuk berbagai operasi matematika.
- Parsing ekspresi yang fleksibel: Mampu mem-parse dan mengevaluasi ekspresi matematika dalam format string.
- Perhitungan tingkat lanjut: Mendukung fitur seperti operasi matrix, perhitungan simbolik, dan analisis statistik.
- Skalabilitas: Dapat diperluas dengan fungsi dan konstanta kustom untuk memenuhi kebutuhan spesifik.
Penggunaan dalam NocoBase
Dengan menggabungkan Formula.js dan Math.js, NocoBase:
- Melakukan perhitungan yang luas: Dari operasi sederhana hingga operasi matematika yang kompleks.
- Membangun aplikasi yang robust dan efisien: Membuat aplikasi yang membutuhkan kemampuan perhitungan yang akurat dan kuat.
- Meningkatkan produktivitas: Memanfaatkan fungsi pre-built, menghindari penulisan banyak kode kustom, sehingga meningkatkan efisiensi pengembangan.
Kedua library ini memainkan peran kunci dalam NocoBase, memungkinkan kita membuat logika perhitungan yang fleksibel dan dapat dikustomisasi tanpa pemrograman yang mendalam. Tidak hanya menyederhanakan proses pengembangan, tetapi juga meningkatkan fungsionalitas dan fleksibilitas.

