BNMO (dibaca: Binomo) adalah sebuah robot game milik Indra dan Doni. Akhir-akhir ini, Indra baru saja menjalin hubungan spesial dengan perempuan bernama Siska Kol. Dan dalam dekat waktu, Indra akan mengajak Siska Kol ke rumah untuk makan malam bersama Doni dan BNMO. Oleh karena itu, Indra meminta bantuan BNMO dan Doni untuk membantu mempersiapkan makan malam spesial tersebut. Saat itu juga, BNMO langsung tertarik untuk mengerjakan bagian masak karena ia sangat sering melihat video memasak di aplikasi toktok dan sangat terngiang-ngiang dengan “mari kita cobaaa”.
Namun, ada masalah. BNMO tidak tahu cara memasak dan Doni tidak bisa membantu persiapan karena ada hal lain. BNMO tidak bisa belajar dari video youcub karena BNMO adalah sebuah komputer sehingga hal yang paling mudah untuk dilakukan adalah membuatkan program simulasi untuk ditiru BNMO. Oleh karena itu, Doni meminta bantuan kalian untuk membuatkan program simulasi tersebut.
Alur dan struktur umum program ini dapat diakses melalui dokumen berikut.
- Eugene Yap Jin Quan (13521074)
- Wilson Tansil (13521054)
- Daniel Egiant Sitanggang (13521056)
- Akbar Maulana Ridho (13521093)
- Salomo Reinhart Gregory Manalu (13521063)
ADT:
- Wilson: charmachine, wordmachine, stack
- Egi: food. list_food, list_delivery
- Eugene: list_food_recipe, recipe, point
- Salomo: string, notification, simulator
- Akbar: time, matrix, tree
Services:
- Eugene: chopper, boiler
- Salomo: clock, delivery
- Akbar: notifier, history
- Wilson: map, mixer
- Egi: fryer, simulator
Commands:
- Wilson: config data, buy, catalog
- Egi: chop, cookbook, delivery
- Eugene: fry, inventory, mix
- Akbar: move, redo, undo
- Salomo: start, exit, wait, main program, boil
ADT
Nama | Status |
---|---|
Charmachine | perfect |
Wordmachine | perfect |
Stack | perfect |
Food | perfect |
List food | perfect |
List delivery | perfect |
List food recipe | perfect |
Recipe | perfect |
Point | perfect |
String | perfect |
Notification | perfect |
Simulator | perfect |
Time | perfect |
Matrix | perfect |
Tree | perfect |
Service
Nama | Status |
---|---|
Chopper | ok |
Boiler | ok |
Clock | ok |
Delivery | ok |
Notifier | ok |
History | ok |
Map | ok |
Mixer | ok |
Fryer | ok |
Simulator | ok |
Commands
Nama | Status |
---|---|
Boil | ok |
Buy | ok |
Catalog | ok |
Chop | ok |
Cookbook | ok |
Delivery | ok |
Fry | ok |
Inventory | ok |
Mix | ok |
Move | ok |
Undo | ok |
Redo | ok |
Start | ok |
Exit | ok |
Wait | ok |
- Clone repo
git clone git@github.com:haiakbar/euystrukded.git
atau bila menggunakan https
git clone https://github.com/haiakbar/euystrukded.git
- Compile the program
Pastikan gcc dan cmake telah terinstall. Buka terminal pada folder project, lalu buat Makefiles dengan perintah
cmake -B build . -G "MinGW Makefiles"
Setelah berhasil, pindah ke folder build
cd build
Jalankan makefile
mingw32-make
Sebagai alternatif, bisa jalankan script compile dengan memanggil
./compile-windows.ps1
Buka terminal pada folder project, lalu buat Makefiles dengan perintah
cmake -B build .
Setelah berhasil, pindah ke folder build
cd build
Jalankan makefile
make
Sebagai alternatif, bisa jalankan script compile dengan memanggil
./compile-linux.sh
- Run the app
Pada folder build, jalankan perintah
./euystrukded
atau jalankan
./run.ps1
atau
./run.sh
Setiap membuat branch baru harus ambil base dari main
. Untuk penamaan commit dan branch mengikuti format berikut.
Format branch: <type>/<title>
Format commit: <type>: <subject>
Penamaan menggunakan kebab case
Untuk type mengikuti semantic berikut.
feat
: (new feature for the user, not a new feature for build script)fix
: (bug fix for the user, not a fix to a build script)docs
: (changes to the documentation)style
: (formatting, missing semi colons, etc; no production code change)refactor
: (refactoring production code, eg. renaming a variable)test
: (adding missing tests, refactoring tests; no production code change)chore
: (updating grunt tasks etc; no production code change)
Untuk melakukan pull request perlu mengikuti flow berikut.
- Saat selesai mengerjakan task, boleh langsung melakukan PR ke main dengan membuat PR dari branch pengerjaan ke
main
- Merge untuk branch
main
boleh dilakukan setelah mendapatkan persetujuan dari minimal satu orang anggota kelompok lainnya. - Penamaan PR mengikuti format penamaan branch.
- Pada deskripsi PR mohon menyertakan format berikut.
- What PR About?
- Is there any problems in this PR?
- Mohon utamakan komunikasi, terutama untuk approval.
Silakan silakan periksa dan ikuti dokumen berikut.