Monday 12 September 2011

Bengkel 1 FTMK Semester 1 Sesi 2011/ 2012 - Dulu dan Kini

[Jika anda membaca posting ini melalui Facebook, mungkin slide/ animasi/ gambar di dalam notes tidak dapat dipapar. Untuk melihat paparan penuh, anda boleh ke click 'View original post' atau ke http://najwankhambari.blogspot.com/]

Semester 1 Sesi 2011/ 2012 akan bermula pada bulan September 2011.  Pelajar-pelajar Tahun 2 akan mengambil satu subjek yang sangat menarik iaitu Bengkel 1.  Antara tujuan utama Bengkel 1 adalah untuk memantapkan kemahiran pengaturcaraan (coding) yang mana setiap pelajar dikehendaki membangunkan satu perisian.  


Pada awal penubuhan FTMK, setiap pelajar  (termasuklah saya, pada tahun 2003)
dikehendaki  membangunkan perisian tersebut dengan menggunakan bahasa pengaturcaraan C++ melalui Microsoft Foundation Class (MFC).  Terus terang saya katakan ia adalah sangat mencabar kerana sistem yang bakal dibangunkan itu mestilah meliputi antaramuka yang mesra pengguna.  Apa yang menyebabkan ia adalah mencabar adalah setiap butang, kotak teks dan sebagainya direkabentuk hanya dengan menggunakan kod.  Kalau setakat nak hubungkan dengan pangkalan data.. sebelah mata sahajalah.

Tahun berikutnya, timbul pula beberapa isu yang menyebabkan bahasa pengaturcaraan yang digunakan itu diubah kepada Microsoft Visual Basic (VB).  Kelebihan pada pelajar adalah ia sangat mudah. Nak rekabentuk butang, hanya drag and drop sahaja.  Kelemahan/ kekurangan terhadap pelajar adalah ia tidak melibatkan teknik atau kemahiran pengaturcaraan yang banyak.  Maka ia dilihat sebagai kurang menepati objektif Bengkel 1 itu.

Oleh itu pada sesi 2011/ 2012 ini, Jawatankuasa Bengkel 1 telah bersetuju untuk menukar bahasa pengaturcaraan daripada VB kepada Pro*C/ C++ dan Oracle.  Ia bukanlah isu besar kepada pelajar kerana subjek C++ dan pangkalan data menggunakan Oracle telah diambil pada Tahun 1 pengajian di FTMK.    Kenapa Pro*C? Sebenarnya ia adalah ciri tambahan baru kepada C++ dimana bahasa pengaturcaraan ini boleh dihubungkan kepada pangkalan data.  

Bengkel 1 Pro*C/ C++ hanya melibatkan aplikasi konsol sahaja.  Antaramuka tidak diperlukan.

Terdapat beberapa faktor yang menyebabkan pertukaran ini berlaku. Antaranya adalah:
  1. Memperkasakan kemahiran pengaturcaraan.  Walaupun bahasa yang digunakan adalah C++, ia merupakan bahasa yang asas.  Tidak dinafikan industri mungkin menggunakan bahsa pengaturcaraan yang lain seperti Delphi dan Java, tetapi pada pendapat saya konsep bahasa pengaturcaraan adalah sama sahaja.  Hanya sintaksnya sahaja yang berbeza.  Kalau nak ikut kepada industri, terlalu banyak bahasa dan tools yang digunakan.  Maka C++ sebagai bahasa asas dipilih oleh JK Bengkel 1.
  2. Penggunaan VB sudah terlalu lama dilaksanakan.  Oleh itu, banyak berlaku proses plagiarisme dikalangan pelajar.  Pengalaman saya semasa pembentangan pelajar, sistem yang dibangunkan adalah sama, kecuali rekabentuk antaramuka, dan warna yang berbeza.  Sedangkan kesilapan ejaan pun sama. Tepuk dahi!
  3. Penggunaan VB dikatakan sudah tepu.  Ini kerana kebanyakan keupayaan VB sudahpun digunakan.  Tiada ciri-ciri (feature) lain yang boleh dibangunkan lagi menggunakan VB.

Sebagai penyelia dan penilai, apa yang saya tekankan adalah proses validasi (validation).  Ini adalah berdasarkan pengalaman saya semasa terlibat dalam training Infosys di Mysore, India selama 2 bulan setengah.  Ini kerana ia adalah penentu bahawa:
  • Sistem yang kita bangunkan itu boleh berfungsi dengan betul atau tidak
  • Mengelakkan data sampah (garbage data, data yang tidak sepatutnya) masuk ke pangkalan data.
  • Sistem yang dibangunkan itu mesra pengguna atau tidak.

Antara contoh validasi adalah:
  • Untuk ruangan nombor telefon, hanya nombor sahaja yang boleh dimasukkan oleh pengguna.
  • Untuk ruangan nama, tiada nombor boleh dimasukkan oleh pengguna.
  • Untuk ruangan kad pengenalan/ tarikh lahir, bagi yang lahir pada bulan 1,3,5,7,8,10,12, haribulan maksimum yang boleh dimasukkan hanya 31 sahaja.
  • Untuk ruangan kad pengenalan/ tarikh lahir, bagi yang lahir pada bulan 4,6,9,11, haribulan maksimum yang boleh dimasukkan hanya 30 sahaja.
  • Untuk ruangan kad pengenalan/ tarikh lahir, bagi yang lahir pada bulan 2, haribulan maksimum yang boleh dimasukkan hanya 28 sahaja kecuali tahun lompat.


Dan banyak lagi validasi.

Untuk yang mengambil subjek Bengkel 1, semoga berjaya! setakat C++, tak susah pun ;)