kmubiin / suaikata

Koleksi ringkas kosa kata
Other
2 stars 1 forks source link

Pengendalian data #5

Closed kmubiin closed 6 years ago

kmubiin commented 6 years ago

Berasal daripada #1

Isu ini akan membincangkan perkara-perkara berikut:

Persoalan "luar talian" atau "dalam talian" adalah samada kita atau para pengguna boleh melihat data tanpa muat turun atau sebaliknya. Ini adalah soal kemudahan dan bukan kemestian.

Perincian maksud atau definisi untuk kata masukan, adalah sama ada mempunyai teks pendek atau teks panjang. Jika teks pendek, memadai dengan satu ruangan "makna". Tetapi jika mengandungi teks panjang, perlu sediakan dua ruangan: "makna" dan "penerangan".

Bantuan gambar rajah atau contoh penggunaan, adalah sama ada makna yang hendak disampaikan oleh teks perlu diiringi bantuan tersebut atau tidak. Jika perlu diiringi bantuan, perlu sediakan ruangan khas dengan cara yang sesuai.

Struktur data mengambil kira perkara-perkara di atas.

Apabila perkara-perkara di atas dianggap tidak penting, maka struktur data boleh menggunakan format termudah iaitu CSV. Ini kerana CSV mudah dicipta daripada helaian rebak (spreadsheet) dan juga sedia dibaca oleh penyunting teks (text editor).

kmubiin commented 6 years ago

Cadangan M untuk pengendalian data

Jika kita mahu cipta set data bersama pemapar data, maka ada dua perkara yang perlu ditentukan.

Pertama, kita perlu pilih format mudah alih yang sedia dibaca oleh perisian. Untuk format mudah alih, kita boleh guna JSON. Satu perkara yang merumitkan penggunaan JSON adalah perlu ada piawai tersendiri supaya set data boleh dibaca menggunakan atribut yang sama. Perlu bersusah payah dulu^1.

Kedua, kita perlu pilih sama ada pemapar data tersebut akan dilaksanakan melalui atur cara khas (luar talian) atau laman web (dalam talian).

Jika kita mahu cipta set data tanpa pemapar data, maka tidak perlu cipta atur cara khas mahupun laman web. Hanya sediakan set data asli^4, dan para pengguna diminta layan diri untuk membaca data.

^1: Sebagai contoh, saya mengambil masa lebih kurang 50 hari berdebat dengan diri sendiri sebelum selesa dengan ~piawai tersendiri untuk projek by2020~ terbatal. Tidak semudah yang disangka.

^2: Apakah kita perlukan GUI? Jika perlu, saya cadangkan Tkinter, GUI de facto untuk Python. Tapi rasanya tak cukup masa untuk GUI. Sudah memadai dengan CLI.

^3: GitHub bersama Jekyll mempunyai kemudahan untuk bangunkan laman web menggunakan tema tersedia dan teks Markdown. Tetapi, projek ini mahu laman web menggunakan JavaScript untuk fungsi carian perkataan. Jadi, perlu gunakan teks HTML.

^4: GitHub sejak bila entah membolehkan pengguna membuat carian mudah apabila membaca fail TSV atau CSV yang telah dimuat naik ke repositori di GitHub. Lihat rencana ini di GitHub Help.

Projek ini hanya membawakan set data yang kecil iaitu 100-300 kata masukan, jadi kita boleh saja abaikan atur cara khas dan laman web kedua-duanya. Dengan itu, kita boleh tumpu sepenuhnya pada pemilihan kosa kata dan tidak diganggu oleh isu-isu lain yang memakan masa.

Tuntasnya, sediakan hanya set data asli berformat CSV dan gunakan sahaja fungsi carian mudah yang GitHub sediakan. Ya, saya cadang kita bermalas untuk meringkaskan kerja!

kmubiin commented 6 years ago

Memetik cadangan M dalam komen-komen sebelum ini:

Tuntasnya, sediakan hanya set data asli berformat CSV dan gunakan sahaja fungsi carian mudah yang GitHub sediakan. Ya, saya cadang kita bermalas untuk meringkaskan kerja! -- 13 Mac 2018

Respons carian untuk set data kecil (233 baris untuk fail CSV di atas) adalah sangat pantas dan tidak ada tanda bebatan (lagging). Saya yakin fungsi carian mudah tersedia sudah memadai. -- 20 Mac 2018

Tidak ada perubahan pada cadangan asal. Kita akan mulakan dengan helaian rebak (spreadsheet) untuk cipta dan kemas kini fail CSV. Sebarang penambahan boleh dibuat semasa 20 hari terakhir.

Isu ini dianggap selesai dan boleh ditutup.

Pembetulan: kepada -> pada; tambahan tarikh komen