SlideShare a Scribd company logo
1 of 10
Download to read offline
IMPLEMENTASI STRUKTUR DATA PADA APLIKASI FILE EXPLORER
Fajar Zuhri Hadiyanto NRP 5025201248
Program Studi Teknik Informatika,
Fakultas Teknologi Elektro dan Informatika Cerdas
Institut Teknologi Sepuluh Nopember
Keputih, Sukolilo, Surabaya, Jawa Timur 60117
fajarzuhri76@gmail.com
ABSTRAK
Makalah ini akan membahas struktur data yang diimplementasikan pada aplikasi file explorer.
Fitur-fitur yang dibahas mencakup fitur navigasi backward dan forward menggunakan stuktur data
stack, dan fitur search pada apikasi file explore menggunakan algoritma traversal pada non binary
tree. Bahasa pemrograman yang digunakan untuk membuat duplikasi file explorer yaitu bahasa
pemrograman java, dengan bantuan framework JavaFx sebagai GUI framework.
Kata kunci : non-binary tree, stack, struktur data, tree
I. PENDAHULUAN
File explorer merupakan software yang digunakan untuk menjelajah file dengan menggunakan
GUI based application sehingga user dapat secara interaktif menjelajah setiap folder dan file di
dalam sistem. File explorer dapat menyimpan dua jenis entitas, yaitu folder dan file dengan
beragam mimetype. Setiap folder dapat menampung beberapa file dan folder lainnya. Sistem
penyimpanan file seperti ini memanfaatkan struktur data berupa non-binary tree. Beberapa entitas
dapat dikumpulkan dalam satu folder berdasarkan kriteria tertentu.
Aplikasi file explorer juga memiliki salah satu fitur berupa navigasi backward dan forward yang
berfungsi mirip dengan fitur undo dan redo pada text editor, dimana fitur backward memungkinkan
kita untuk Kembali ke state (folder) sebelumnya, dan fitur forward memungkinkan kita Kembali
ke state (folder) sebelum melakukan backward (jika sudah terlanjur backward). Fitur tersebut
memanfaatkan struktur data Stack untuk menyimpan setiap state (folder) yang kita akses dengan
konsep LIFO (Last In First Out).
II. LANDASAN TEORI
2.1. Struktur Data Stack
2.1.1.Konsep Stack
Stack merupakan salah satu struktur data linear yang menerapkan konsep LIFO (Last In First
Out), dimana data yang masuk terakhir yang dapat diakses terlebih dahulu. Stack memiliki
tiga operasi utama, yaitu push, untuk memasukkan data ke tumpukan paling atas, lalu pop
untuk mengeluarkan dan mengembalikan nilai yang berada di tumpukan paling atas, dan
peek yang digunakan untuk melihat isi data pada tumpukan paling atas tanpa menghapusnya.
2.1.2.Stack pada file explorer
Pada file explorer, struktur data stack digunakan pada fitur navigasi backward dan forward.
Ketika pertama kali membuka aplikasi file explorer, aplikasi tersebut akan menginisiasi dua
buah stack, yaitu stack untuk menampung backward state dan forward state. Backward state
bertujuan untuk mengakses beberapa state yang sebelumnya sudah diakses, sedangkan
forward state digunakan untuk menyimpan state setelah diberi action backward. Pada
awalnya, ketiga state tersebut akan seperti berikut
Ketika kita mengakses folder baru, maka state yang berada di current state akan berpindah
ke backward state, sehingga menjadi seperti berikut
Lalu, setelah mengakses beberapa folder lain, state akan menjadi kurang lebih seperti berikut
Ketka kita melakukan aksi backward, maka yang berada di current state akan berpindah ke
forward state, dan data yang berada di paling atas backward state akan berpindah ke current
state, sehingga akan menjadi seperti berikut
Lalu ketika kita melakukan aksi forward, maka yang berada di current state akan berpindah
ke backward state dan yang berada di paling atas forward state akan berpindah ke current
state, sehingga hasilnya sama dengan ketika sebelum dilakukan aksi backward, yaitu sebagai
berikut
2.2. Struktur Data Tree
2.2.1.Konsep Tree
Tree merupakan salah satu struktur data non linear. Pada struktur data tree, setiap node dapat
memiliki beberapa child node. Tree secara umum terdiri dari 2 jenis, yaitu binary dan non
binary tree. Pada binary tree, setiap node hanya diperbolehkan memiliki maksimal dua child
node. Sedangkan pada non binary tree, tidak ada Batasan jumlah child node untuk setiap
node.
2.2.2.Tree pada file explorer
Pada file explorer, sistem pengorganisasian filenya menggunakan struktur data non binary
tree, dimana setiap folder dapat menampung lebih dari dua entitas (file ataupun folder
lainnya).
Untuk melakukan pencarian pada sistem file tree seperti ini, algoritma yang digunakan yaitu
traversal algorithm pada non binary tree. Algoritma ini mirip dengan traversal algorithm
pada binary tree, hanya saja, sub masalah tidak hanya sebatas pada dua elemen saja, tetapi
bisa lebih dari dua elemen, oleh karena ini digunakan perulangan untuk mengakses tiap-tiap
sub masalah. Algortitma yang digunakan dapat digambarkan dengan diagram alur sebagai
berikut.
III. IMPLEMENTASI
3.1. Data model
Data model merupakan representasi dari tipe atau entitas yang akan digunakna di dalam
aplikasi. Pada file explorer, terdapat dua entitas utama, yaitu folder dan file. Kedua entitas
tersebut dapat digambarkan menggunakan UML diagram sebagai berikut.
3.2. Main Model
Main model merupakan representasi dari kumpulan data yang digunakan di dalam aplikasi.
Pada aplikasi ini, model dibagi menjadi 2, yaitu class FileTreeModel yang berperan menjadi
file tree system di aplikasi, dan class StateModel yang bertugas untuk menyimpan setiap state
yang diperlukan pada aplikasi. Kedua model tersebut dihubungkan dengan sebuah helper
class atau main class, yaitu class Model. Model tersebut dapat digambarkan menggunakan
UML diagram sebagai berikut.
3.3. Project Structure
Secara umum, projek ini terbagi menjadi dua bagian, yaitu logic dan resource. Bagian logic
berisi semua source code java yang diperlukan untuk mengatur bagaimana aplikasi berjalan.
Sedangkan bagian resource berisi sumber daya yang diperlukan untuk membangun aplikasi
ini, dalam hal ini yaitu template view yang digunakan untuk mengatur tampilan dari aplikasi
dan resource lain berupa gambar. Projek lengkap dapat dilihat di link berikut
https://github.com/fajarzuhrihadiyanto/file-explorer-simulation .
IV. HASIL
DEFAULT MODE
SEARCH MODE
V. KESIMPULAN
File explorer merupakan aplikasi yang digunakan untuk menjelajahi dan juga mengorganisasi
file dan folder dengan struktur tertentu. Struktur data yang digunakan untuk mengorganisasi
kumpulan file dan folder tersebut yaitu non binary tree, dimana setiap folder dapat
menampung beberapa file dan folder lainnya. Untuk mencari file dan folder dengan nama
tertentu, maka digunakan algoritma traversal pada non binary tree yang prinsipnya sama
dengan algoritma traversal pada binary tree. Pada file explorer juga terdapat fitur navigasi
backward dan forward yang mengandalkan struktur data Stack, karena prinsip pengaksesan
setiap state yang bersifat LIFO.
DAFTAR PUSTAKA
Carnegie Mellon University. (2021, June 26). Non-Binary Trees. Retrieved from Carnegie Mellon
University School of Computer Science: https://www.cs.cmu.edu/~aiton/split/Manual-
2.6.master005.html
Geeks for Geeks. (2021, June 28). Stack Data Structure (Introduction and Program). Retrieved from
Geeks for Geeks: https://www.geeksforgeeks.org/stack-data-structure-introduction-program/
Microsoft Corporation. (2021, June 26). FindAllFiles: Algorithm for Finding All Files Under a Directory.
Retrieved from Microsoft Documentation: https://docs.microsoft.com/en-
us/openspecs/windows_protocols/ms-fsa/1cab22b6-4502-45f5-b97f-783b7b5e6c1a
The University of Alabama. (2021, June 26). Data Structures and Algorithms Non-Binary Trees and
Traversals. Retrieved from Computer Science of The University of Alabama:
http://cs360.cs.ua.edu/lectures-new/36%20Non-Binary%20Trees%20and%20Traversals.pdf
Tutorials Point. (2021, June 26). Data Structure and Algorithms - Tree. Retrieved from Tutorialspoint:
https://www.tutorialspoint.com/data_structures_algorithms/tree_data_structure.htm

More Related Content

What's hot

Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...Ferdinand Jason
 
Project charter-Contoh
Project charter-ContohProject charter-Contoh
Project charter-ContohFajar Baskoro
 
S I Rental Mobil
S I Rental MobilS I Rental Mobil
S I Rental Mobildshesung
 
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...Uofa_Unsada
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)Simon Patabang
 
Metodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi Informasi
Metodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi InformasiMetodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi Informasi
Metodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi InformasiAlbaar Rubhasy
 
Testing&implementasi 4
Testing&implementasi 4Testing&implementasi 4
Testing&implementasi 4aiiniR
 
INTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTERINTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTERAndhi Pratama
 
UML Aplikasi Rental Mobil
UML Aplikasi Rental MobilUML Aplikasi Rental Mobil
UML Aplikasi Rental MobilDwi Mardianti
 
Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)Farichah Riha
 
Contoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzyContoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzyZaenal Khayat
 
Pm project charter
Pm project charterPm project charter
Pm project charterBagus Wahyu
 

What's hot (20)

Algoritma penjadwalan proses
Algoritma penjadwalan prosesAlgoritma penjadwalan proses
Algoritma penjadwalan proses
 
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
 
Project charter-Contoh
Project charter-ContohProject charter-Contoh
Project charter-Contoh
 
S I Rental Mobil
S I Rental MobilS I Rental Mobil
S I Rental Mobil
 
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)
 
Metodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi Informasi
Metodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi InformasiMetodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi Informasi
Metodologi Penelitian pada Bidang Ilmu Komputer dan Teknologi Informasi
 
Testing&implementasi 4
Testing&implementasi 4Testing&implementasi 4
Testing&implementasi 4
 
INTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTERINTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTER
 
Use skenario
Use skenarioUse skenario
Use skenario
 
UML Aplikasi Rental Mobil
UML Aplikasi Rental MobilUML Aplikasi Rental Mobil
UML Aplikasi Rental Mobil
 
Laporan analisis sistem informasi
Laporan analisis sistem informasiLaporan analisis sistem informasi
Laporan analisis sistem informasi
 
Standard IEEE
Standard IEEEStandard IEEE
Standard IEEE
 
Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)Kecerdasan Buatan (AI)
Kecerdasan Buatan (AI)
 
Sistem pakar
Sistem pakarSistem pakar
Sistem pakar
 
Pengujian Perangkat Lunak
Pengujian Perangkat LunakPengujian Perangkat Lunak
Pengujian Perangkat Lunak
 
Contoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzyContoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzy
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Ragam Model Proses Perangkat Lunak
Ragam Model Proses Perangkat LunakRagam Model Proses Perangkat Lunak
Ragam Model Proses Perangkat Lunak
 
Pm project charter
Pm project charterPm project charter
Pm project charter
 

Similar to IMPLEMENTASI STRUKTUR DATA PADA FILE EXPLORER

42519051 Bab 9 Sistem berkas
42519051 Bab 9 Sistem berkas42519051 Bab 9 Sistem berkas
42519051 Bab 9 Sistem berkasAbdulRahman1543
 
Sistem Berkas 1
Sistem Berkas 1Sistem Berkas 1
Sistem Berkas 1Mrirfan
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktoriAnggi DHARMA
 
Sistem operasi kelompok 6 - sistem file
Sistem operasi   kelompok 6 - sistem fileSistem operasi   kelompok 6 - sistem file
Sistem operasi kelompok 6 - sistem fileandrew6702
 
Sistem operasi kelompok 6 - Sistem File
Sistem operasi   kelompok 6 - Sistem FileSistem operasi   kelompok 6 - Sistem File
Sistem operasi kelompok 6 - Sistem Fileandrew6702
 
Sistem operasi Sistem file
Sistem operasi Sistem fileSistem operasi Sistem file
Sistem operasi Sistem fileandrew6702
 
Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)Mirza Afrizal
 
Meeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handoutMeeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handoutSyaiful Ahdan
 
Bab 1 pendahuluan weka
Bab 1 pendahuluan wekaBab 1 pendahuluan weka
Bab 1 pendahuluan wekaMedika Risna
 

Similar to IMPLEMENTASI STRUKTUR DATA PADA FILE EXPLORER (20)

Sb1
Sb1Sb1
Sb1
 
9.sistem file
9.sistem file9.sistem file
9.sistem file
 
9.sistem file
9.sistem file9.sistem file
9.sistem file
 
Manajemen File
Manajemen FileManajemen File
Manajemen File
 
42519051 Bab 9 Sistem berkas
42519051 Bab 9 Sistem berkas42519051 Bab 9 Sistem berkas
42519051 Bab 9 Sistem berkas
 
Arsip akses materi2
Arsip akses materi2Arsip akses materi2
Arsip akses materi2
 
Sistem Berkas 1
Sistem Berkas 1Sistem Berkas 1
Sistem Berkas 1
 
Komputer
KomputerKomputer
Komputer
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktori
 
Kelompok 5
Kelompok 5Kelompok 5
Kelompok 5
 
Sistem berkas (2)
Sistem berkas (2)Sistem berkas (2)
Sistem berkas (2)
 
Sistem operasi kelompok 6 - sistem file
Sistem operasi   kelompok 6 - sistem fileSistem operasi   kelompok 6 - sistem file
Sistem operasi kelompok 6 - sistem file
 
Sistem operasi kelompok 6 - Sistem File
Sistem operasi   kelompok 6 - Sistem FileSistem operasi   kelompok 6 - Sistem File
Sistem operasi kelompok 6 - Sistem File
 
Sistem operasi Sistem file
Sistem operasi Sistem fileSistem operasi Sistem file
Sistem operasi Sistem file
 
Praktikum 3
Praktikum 3Praktikum 3
Praktikum 3
 
Pertemuan4
Pertemuan4Pertemuan4
Pertemuan4
 
Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)
 
Meeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handoutMeeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handout
 
Bab 1 pendahuluan weka
Bab 1 pendahuluan wekaBab 1 pendahuluan weka
Bab 1 pendahuluan weka
 
entahlah
entahlah entahlah
entahlah
 

IMPLEMENTASI STRUKTUR DATA PADA FILE EXPLORER

  • 1. IMPLEMENTASI STRUKTUR DATA PADA APLIKASI FILE EXPLORER Fajar Zuhri Hadiyanto NRP 5025201248 Program Studi Teknik Informatika, Fakultas Teknologi Elektro dan Informatika Cerdas Institut Teknologi Sepuluh Nopember Keputih, Sukolilo, Surabaya, Jawa Timur 60117 fajarzuhri76@gmail.com ABSTRAK Makalah ini akan membahas struktur data yang diimplementasikan pada aplikasi file explorer. Fitur-fitur yang dibahas mencakup fitur navigasi backward dan forward menggunakan stuktur data stack, dan fitur search pada apikasi file explore menggunakan algoritma traversal pada non binary tree. Bahasa pemrograman yang digunakan untuk membuat duplikasi file explorer yaitu bahasa pemrograman java, dengan bantuan framework JavaFx sebagai GUI framework. Kata kunci : non-binary tree, stack, struktur data, tree I. PENDAHULUAN File explorer merupakan software yang digunakan untuk menjelajah file dengan menggunakan GUI based application sehingga user dapat secara interaktif menjelajah setiap folder dan file di dalam sistem. File explorer dapat menyimpan dua jenis entitas, yaitu folder dan file dengan beragam mimetype. Setiap folder dapat menampung beberapa file dan folder lainnya. Sistem penyimpanan file seperti ini memanfaatkan struktur data berupa non-binary tree. Beberapa entitas dapat dikumpulkan dalam satu folder berdasarkan kriteria tertentu. Aplikasi file explorer juga memiliki salah satu fitur berupa navigasi backward dan forward yang berfungsi mirip dengan fitur undo dan redo pada text editor, dimana fitur backward memungkinkan kita untuk Kembali ke state (folder) sebelumnya, dan fitur forward memungkinkan kita Kembali ke state (folder) sebelum melakukan backward (jika sudah terlanjur backward). Fitur tersebut memanfaatkan struktur data Stack untuk menyimpan setiap state (folder) yang kita akses dengan konsep LIFO (Last In First Out).
  • 2. II. LANDASAN TEORI 2.1. Struktur Data Stack 2.1.1.Konsep Stack Stack merupakan salah satu struktur data linear yang menerapkan konsep LIFO (Last In First Out), dimana data yang masuk terakhir yang dapat diakses terlebih dahulu. Stack memiliki tiga operasi utama, yaitu push, untuk memasukkan data ke tumpukan paling atas, lalu pop untuk mengeluarkan dan mengembalikan nilai yang berada di tumpukan paling atas, dan peek yang digunakan untuk melihat isi data pada tumpukan paling atas tanpa menghapusnya. 2.1.2.Stack pada file explorer Pada file explorer, struktur data stack digunakan pada fitur navigasi backward dan forward. Ketika pertama kali membuka aplikasi file explorer, aplikasi tersebut akan menginisiasi dua buah stack, yaitu stack untuk menampung backward state dan forward state. Backward state bertujuan untuk mengakses beberapa state yang sebelumnya sudah diakses, sedangkan forward state digunakan untuk menyimpan state setelah diberi action backward. Pada awalnya, ketiga state tersebut akan seperti berikut
  • 3. Ketika kita mengakses folder baru, maka state yang berada di current state akan berpindah ke backward state, sehingga menjadi seperti berikut Lalu, setelah mengakses beberapa folder lain, state akan menjadi kurang lebih seperti berikut Ketka kita melakukan aksi backward, maka yang berada di current state akan berpindah ke forward state, dan data yang berada di paling atas backward state akan berpindah ke current state, sehingga akan menjadi seperti berikut
  • 4. Lalu ketika kita melakukan aksi forward, maka yang berada di current state akan berpindah ke backward state dan yang berada di paling atas forward state akan berpindah ke current state, sehingga hasilnya sama dengan ketika sebelum dilakukan aksi backward, yaitu sebagai berikut
  • 5. 2.2. Struktur Data Tree 2.2.1.Konsep Tree Tree merupakan salah satu struktur data non linear. Pada struktur data tree, setiap node dapat memiliki beberapa child node. Tree secara umum terdiri dari 2 jenis, yaitu binary dan non binary tree. Pada binary tree, setiap node hanya diperbolehkan memiliki maksimal dua child node. Sedangkan pada non binary tree, tidak ada Batasan jumlah child node untuk setiap node. 2.2.2.Tree pada file explorer Pada file explorer, sistem pengorganisasian filenya menggunakan struktur data non binary tree, dimana setiap folder dapat menampung lebih dari dua entitas (file ataupun folder lainnya). Untuk melakukan pencarian pada sistem file tree seperti ini, algoritma yang digunakan yaitu traversal algorithm pada non binary tree. Algoritma ini mirip dengan traversal algorithm pada binary tree, hanya saja, sub masalah tidak hanya sebatas pada dua elemen saja, tetapi bisa lebih dari dua elemen, oleh karena ini digunakan perulangan untuk mengakses tiap-tiap sub masalah. Algortitma yang digunakan dapat digambarkan dengan diagram alur sebagai berikut.
  • 6.
  • 7. III. IMPLEMENTASI 3.1. Data model Data model merupakan representasi dari tipe atau entitas yang akan digunakna di dalam aplikasi. Pada file explorer, terdapat dua entitas utama, yaitu folder dan file. Kedua entitas tersebut dapat digambarkan menggunakan UML diagram sebagai berikut.
  • 8. 3.2. Main Model Main model merupakan representasi dari kumpulan data yang digunakan di dalam aplikasi. Pada aplikasi ini, model dibagi menjadi 2, yaitu class FileTreeModel yang berperan menjadi file tree system di aplikasi, dan class StateModel yang bertugas untuk menyimpan setiap state yang diperlukan pada aplikasi. Kedua model tersebut dihubungkan dengan sebuah helper class atau main class, yaitu class Model. Model tersebut dapat digambarkan menggunakan UML diagram sebagai berikut. 3.3. Project Structure Secara umum, projek ini terbagi menjadi dua bagian, yaitu logic dan resource. Bagian logic berisi semua source code java yang diperlukan untuk mengatur bagaimana aplikasi berjalan. Sedangkan bagian resource berisi sumber daya yang diperlukan untuk membangun aplikasi ini, dalam hal ini yaitu template view yang digunakan untuk mengatur tampilan dari aplikasi dan resource lain berupa gambar. Projek lengkap dapat dilihat di link berikut https://github.com/fajarzuhrihadiyanto/file-explorer-simulation .
  • 10. V. KESIMPULAN File explorer merupakan aplikasi yang digunakan untuk menjelajahi dan juga mengorganisasi file dan folder dengan struktur tertentu. Struktur data yang digunakan untuk mengorganisasi kumpulan file dan folder tersebut yaitu non binary tree, dimana setiap folder dapat menampung beberapa file dan folder lainnya. Untuk mencari file dan folder dengan nama tertentu, maka digunakan algoritma traversal pada non binary tree yang prinsipnya sama dengan algoritma traversal pada binary tree. Pada file explorer juga terdapat fitur navigasi backward dan forward yang mengandalkan struktur data Stack, karena prinsip pengaksesan setiap state yang bersifat LIFO. DAFTAR PUSTAKA Carnegie Mellon University. (2021, June 26). Non-Binary Trees. Retrieved from Carnegie Mellon University School of Computer Science: https://www.cs.cmu.edu/~aiton/split/Manual- 2.6.master005.html Geeks for Geeks. (2021, June 28). Stack Data Structure (Introduction and Program). Retrieved from Geeks for Geeks: https://www.geeksforgeeks.org/stack-data-structure-introduction-program/ Microsoft Corporation. (2021, June 26). FindAllFiles: Algorithm for Finding All Files Under a Directory. Retrieved from Microsoft Documentation: https://docs.microsoft.com/en- us/openspecs/windows_protocols/ms-fsa/1cab22b6-4502-45f5-b97f-783b7b5e6c1a The University of Alabama. (2021, June 26). Data Structures and Algorithms Non-Binary Trees and Traversals. Retrieved from Computer Science of The University of Alabama: http://cs360.cs.ua.edu/lectures-new/36%20Non-Binary%20Trees%20and%20Traversals.pdf Tutorials Point. (2021, June 26). Data Structure and Algorithms - Tree. Retrieved from Tutorialspoint: https://www.tutorialspoint.com/data_structures_algorithms/tree_data_structure.htm