Sunday, January 22, 2023

Rangkuman PRAKTIKUM ALGORITMA DAN PEMROGRAMAN

 

Rangkuman PRAKTIKUM ALGORITMA DAN PEMROGRAMAN Modul 1-6

 

 

Disusun oleh :

Nama : Muh. Fahri Maulana

NIM : 191080200179

Kelompok : 12

 

BAB I

PENDAHULUAN

A.     Profil Laboratorium Algoritma Dan Pemrograman

Visi Laboratorium

“Mewujudkan Laboratorium Algoritma dan Pemrograman yang bermutu Tingkat Nasional 2020 di Bidang Informatika dan Komputasi, serta Menjadi Unit Pendukung Kegiatan di Unit Kerja Lain di Lingkungan

Umsida”.

Misi Laboratorium

1.       Menyelenggarakan praktikum berkualitas dan pembimbingan berdasarkan kurikulum yang terintegratif dan berkelanjutan untuk seluruh Mahasiswa Informatika.

2. Menyediakan sarana dan prasarana untuk kegiatan penelitian, pengembangan dan inovasi dalam bidang Informatika dan Komputer.

3.       Memberikan pelayanan laboratorium yang baik dan bermutu.

4.  Meningkatkan Kerja sama dengan instansi pemerintahan/swasta/masyarakat di bidang Informatika dan Komputer di Tingkat Nasional.

 

Sasaran Laboratorium

 

1.        Tersedianya sarana dan prasarana untuk penunjang kegiatan praktikum.

2.       Tersedianya assisten laboratorium dan assisten praktikum yang profesional dan sesuai dengan tugasnya.

3.        Adanya koordinasi atau kerja sama yang baik antara unit-unit yang terkait.

4.        Meningkatnya Pengelolaan data akademik.

5.        Meningkatnya pelayanan administrasi praktikum.

 

 

BAB II

KURIKULUM

A. Analisis Materi / Intruksional

Mahasiswa diharapkan dapat:

1.    Memecahkan  masalah  menjadi  sebuah  algoritma (langkah  –  langkah)

yang akan dijalankan oleh komputer, kemudian mengimplementasikannya menjadi sebuah program komputer.

 

2.    Memecahkan masalah pemrograman yang harus diselesaikan dengan materi yang ada pada pemrograman lanjut seperti pointer, struct, operasi file dsb.

 

3.    Merepresentasikan data yang digunakan dalam pemrograman (baik data input atau data output) dengan struktur data yang tepat.

 

4.  Mengetahui & membandingkan macam–macam algoritma dalam proses pengurutan dan pencarian dan dapat menentukan algoritma yang digunakan dalam permasalahan pemrograman yang diselesaikannya.

 

A.  Silabus Praktikum

Silabus praktikum algoritma dan struktur data :

1.       Input/Output dan Jenis Data.

2.       Struktur Pemrograman Pencabangan.

3.       Struktur Pemrograman: Lompatan dan Kalang.

4.       Struktur Pemrograman: Kalang.

5.       Varibel Larik: Matriks dan String.

6.       Fungsi.

 

BAB III

MATERI MODUL

 

POKOK BAHASAN 1

Flowchart dan Instalasi

 

PENDAHULUAN

Pada pokok bahasan ini berisi penjelasan disertai contoh mengenai konsep Flowchart, Python yang menjadi pemahaman dasar bagi mahasiswa sebelum mempelajari Algoritma dan Pemrograman dimana konsep ini nantinya digunakan untuk mempresentasikan sebuah program, diharapkan mahasiswa dapat:

1.       Memahami Bahasa pemrograman Python.

2.       Mengetahuicarainstalasi Python pada system operasi Windows.

3.       Membuat program menggunakan Bahasa pemrograman Python.

4.       Memahami dan mengimplementasikan Bahasa pemrograman Python.

 

PENYAJIAN (TUTORIAL)

 

1.       Flowchart

a.      Pengertian Flowchart

Flowchart atau bagian alur adalah diagram yang menampilkan langkah-langkah dan keputusan untuk melakukan proses dari suatu program. Setiap langkah digambarkan dalam bentuk diagram dan dihubungkan dengan suatu garis atau arah panah.

 

Flowchart berperan penting dalam memutuskan sebuah langkah atau fungsionalitas dari sebuah proyek pembuatan program yang melibatkan banyak orang sekaligus. Selain itu dengan menggunakan bagian alur proses dari sebuah program akan lebih jelas, ringkas, dan mengurangi kemungkinan untuk salah penafsiran. Penggunaan Flowchart dalam dunia pemrograman juga merupakan cara yang tepat untuk menghubungkan antara kebutuhan teknis maupun non-teknis.

b.      Fungsi Flowchart

Fungsi utama dari flowchart adalah memberi gambaran jalannya sebuah program dari satu proses ke proses lainnya. Sehingga alur program menjadi lebih mudah dipahami oleh semua orang. Selain itu fungsi lain dari flowchart adalah untuk menyederhanakan rangkaian prosedur agar memudahkan pemahaman terhadap informasi tersebut.

 

c.       Jenis Flowchart

Flowchart sendiri terdiri dari 5 jenis, masing-masing jenis memiliki karakteristik dalam penggunaannya. Berikut adalah jenis-jenisnya:

·         Flowchart Document

Pertama ada flowchart dokumen (document flowchart) atau bisa juga disebut dengan paperwork flowchart. Flowchart Document berfungsi untuk menelusuri alur form satu bagian yang lain termasuk bagaimana laporan diproses, dicatat, dan disimpan.

 

·         Flowchart Program

Selanjutnya kita akan membahas flowchart program. Flowchart ini menggunakan secara rinci prosedur dari proses program. Flowchart program terdiri dari dua macam, antara lain: flowchart logika program (Program Logic Flowchart) dan flowchart program computer terinci (Detailed Computer Program Flowchart).

 

·         Flowchart Proses

Flowchart proses adalah cara penggambaran rekayasa industrial dengan cara merinci dan menganalisis langkah-langkah selanjutnya dalam prosedur atau sistem.

 

·         Flowchart Sistem

Flowchart sistem menampilkan tahapan atau proses kerja yang sedang berlangsung di dalam sistem secara menyeluruh. Selain itu flowchart sistem juga menguraikan urutan dari setiap prosedur yang ada di dalam sistem.

·         Flowchart Skematik

Flowchart ini menampilkan alur prosedur suatu sistem, hampir sama

dengan flowchart system. Namun ada perbedaan dalam menggunakan simbol-simbol dalam menggambarkan alur. Selain simbol-simbol flowchart skematik juga menggunakan gambar-gambar computer serta peralatan lainnya untuk mempermudah dalam pembacaan flowchart untuk orang awam.

 

 

POKOK BAHASAN 2

Tipe Data dan Operator Aritmatika




PENDAHULUAN

LEMBAR KERJA DAN TUGAS

 

1.       Mencoba perdana : Hello World!

Script:

Print (“Hello World”)



 

 

Membuat program dengan menggunakan def

Assalamualaikum, Hai semua

Nama saya adalah…

Sekarang saya belajar mempemrogram memakai Bahasa Python

Ayo teman-teman belajar juga

Sampai Jumpa

 

Script:

def salam():

print(“Assalamualaikum, Hai Semua\nNama saya adalah Erika\nSekarang saya belajar memprogram memakai bahasa python\nAyo teman-teman belajar juga\nSampai jumpa”)

salam()

 

POKOK BAHASAN 3

 

STRUKTUR PEMROGRAM : BERKONDISI

 

PEMBAHASAN

 

3.1 Pernyataan If

 

Pernyataan berkondisi digunakan untuk membuat alur program agar menjadi lebih efektif dan relevan terhadap permasalahan yang ada. Dalam Bahasa Python pernyataan berkondisi if yang digunakan untuk memberikan beberapa alternative pilihan seperti bilangan, golongan, dan pangkat jabatan, jenis kelamin dan lain sebagainya.

 

Struktur kondisi if dapat digunakan dalam bentuk sebagai berikut:

 

if(kondisi):

 

 

Pernyataan 1

 

POKOK BAHASAN 4

 

STRUKTUR PEMROGRAMAN : PERULANGAN

 

4.1 Perulangan For:

Perulangan For adalah suatu perintah yang di ulang, dimana perintah tersebut dikendalikan oleh sebuah variable, sehingga dapat memudahkan kita untuk memproses setiap elemen pada list dengan variable sementara dan mengaplikasikan kode yang sama. Dalam perulangan for di pyhton sedikit berbeda dengan bahasa lainnya. Perulangan ini tentunya dirancang untuk menelusuri nilai ataupun elemen yang terdapat pada string, list, tuple dictionary, dan objek yang mempunyai tipe range.

 

Struktur perulangan for dapat digunakan dalam bentuk sebagai berikut :

 

for elemen in tipe_koleksi:

perintahl

perintah2

Dilihat dari bentuk diatas bahwa perintah1 dan perintah2 akan dilakukan perulangan lewat elemen yang terdapat didalam tipe_koleksi. Jadi, ada 3 bagian penting. Sequence adalah sebuah nilai yang bersifat iterable alias bisa diulang-ulang. Di antara tipe data yang bersifat sequence atau iterable adalah:

1.      List

2.      Tuple

3.      String

 

Dan lain sebagainya . Nilai adalah setiap item yang diekstrak dari sequence . Blok kode yaitu statemen-statemen atau perintah-perintah tertentu yang akan dieksekusi secara berulang.

4.2 Perulangan While

Struktur perulangan (atau dalam bahasa inggris disebut dengan loop) adalah instruksi kode program yang bertujuan untuk mengulang beberapa baris perintah. Dalam merancang perulangan, kita setidaknya harus mengetahui 3 komponen:

 

A.    Kondisi awal perulangan.

B.    Kondisi pada saat perulangan.

C.  Kondisi yang harus dipenuhi agar perulangan berhenti.

 

POKOK BAHASAN 5

 

TIPE DATA KOLEKSI

 

 

5.1 List

 

Dalam bahasa pemrograman Python, struktur data yang paling dasar adalah urutan atau lists. Setiap elemen-elemen berurutan akan diberi nomor posisi atau indeksnya. Indeks pertama dalam list adalah nol, indeks kedua adalah satu dan seterusnya.

 

Python memiliki enam jenis urutan built-in, namun yang paling umum adalah list dan tuple. Ada beberapa hal yang dapat Anda lakukan dengan semua jenis list. Operasi ini meliputi pengindeksan, pengiris, penambahan, perbanyak, dan pengecekan keanggotaan. Selain itu, Python memiliki fungsi built-in untuk menemukan panjang list dan untuk menemukan elemen terbesar dan terkecilnya.

 

A         Membuat List Python

List adalah tipe data yang paling serbaguna yang tersedia dalam bahasa Python, yang dapat ditulis sebagai daftar nilai yang dipisahkan koma (item) antara tanda kurung siku. Hal penting tentang daftar adalah item dalam list tidak boleh sama jenisnya.

Membuat list sangat sederhana, tinggal memasukkan berbagai nilai yang dipisahkan koma di antara tanda kurung siku. Dibawah ini adalah contoh sederhana pembuatan list dalam bahasa Python.

 

B         Akses Nilai Dalam List Python

Untuk mengakses nilai dalam list python, gunakan tanda kurung siku untuk mengiris beserta indeks atau indeks untuk mendapatkan nilai yang tersedia pada indeks tersebut.

 

A.       Update Nilai Dalam List Python

Anda dapat memperbarui satu atau beberapa nilai di dalam list dengan memberikan potongan di sisi kiri operator penugasan, dan Anda dapat menambahkan nilai ke dalam list dengan metode append().

 

POKOK BAHASAN 6

STRUKTUR PEMROGRAMAN : FUNCTION

 

PEMBAHASAN

 

6.1  Function

 

Fungsi pada python adalah kumpulan perintah atau baris kode yang dikelompokkan menjadi satu kesatuan untuk kemudian bisa dipanggil atau digunakan berkali-kali. Sebuah fungsi bisa menerima parameter, bisa mengembalikan suatu nilai, dan bisa dipanggil berkali-kali secara independen. Dengan fungsi kita bisa memecah program besar yang kita tulis, menjadi bagian-bagian kecil dengan tugasnya masing-masing.

 

Fungsi dipakai untuk mengumpulkan beberapa perintah yang sering dipakai dalam sebuah program. Dengan memakai fungsi, program yang dibuat menjadi lebih terstruktur. Lebih mudah diikuti oleh orang lain yang membaca program dibuat, Paling penting adalah mempersingkat waktu yang diperlukan untuk mengembangkan suatu perangkat lunak. Karena perangkat lunak yang dibuat, bisa jadi memakai komponen-komponen yang sama.

 

Seperti layaknya sebuah bahasa pemrograman, Python juga memberikan fasilitas pembuatan fungsi yang sangat bagus. Konsep fungsi dalam Python sama dengan bahasa pemrograman C/C-. Python menganggap fungsi dan prosedur adalah sesuatu yang sama, dalam artian cara mendeklarasikan fungsi dan prosedur adalah sama. Hanya bedanya, kalau fungsi mengembalikan suatu nilai setelah proses sedangkan prosedur tidak.

 

umsida.ac.id & fst.umsida.ac.id

 

 


Monday, January 17, 2022

RANGKUMAN PRAKTIKUM PBO

Assalamu’alaikum Wr. Wb.,

 

Nama saya Muh. Fahri Maulana, Saya Mahasiswa Universitas Muhammadiyah Sidoarjo Semester 5 Program Studi Informatika Fakultas Sains & Teknologi.

Silahkan akses link berikut untuk mengetahui informasi di kampus saya: Universitas Muhammadiyah Sidoarjo atau Fakultas Sains dan Teknik Universitas Muhammadiyah Sidoarjo

 

Nama           : Muh. Fahri Maulana

NIM             : 191080200179

Kelas            : 5B3 - Informatika.

 

Pokok Bahasan 1 ( Elemen Dasar Java)

 

Java adalah salah satu bahasa pemograman yang menggunakan paradigma pemograman berorientasi obyek.Pemograman berorientasi obyek menjadikan object dan class sebagai konsep sentralnya. Jadi dalam pemograman java object dan class menjadi suatu yang paling utama. Java adalah salah satu bahasa pemograman yang tidak tergantung pada operating system (operating system independent), yang sekarang mulai popular dikalangan programmer.

 

Konsep Dasar Variabel

 

Variabel adalah satuan yang dipakai oleh program sebagai basis untuk penyimpanan data.Penggunaan variable harus terlebih dahulu dideklarasikan nama dan tipenya.

 

Tipe dasar (primitive) dalam java adalah sebagai berikut ;

 

Tabel 1.1 Tabel Tipe Variabel

 

tipe

 

Keterangan

 

short

 

short integer, bilanganbulat 16 bit

 

int

 

integer, bilanganbulat 32 bit

 

long

 

long integer, bilanganbulat 64 bit

 

byte

 

bilanganbulat 8 bit

 

float

 

bilangan real (pecahan) 32 bit

 

double

 

bilangan real (pecahan) 64 bit

 

char

 

karakter 16 bit

 

boolean

 

boolean value true atau false

 

 

 

 

Konsep Dasar Array

 

Array adalah sekumpulan data yang sama tipenya. Isi array dapat diakses melalui index yang dimulai dari 0 sampai dengan jumlah_elemen_array-i.

 

Tipe_variabel nama_array[];

 

Contoh

 

IntMyArr[];

 

Pada saat didefinisikan (dideklarasikan), jumlah elemen array belum diketahui. Jumlah elemen yang sesungguhnya diciptakan dengan 2. Array MyArr dapat diakses dengan cara sbb;

 

            MyArr[0] = 340;

 

            MyArr[1] = -129;

 

            MyArr[2] = 499;

 

Array dapat diinialisasi secara otomatis pada saat pendeklarasian dengan caras bb:

 

IntMyArr[] = {340,-129, 499};

 

Pada saat runtime jika indeks array yang diakses melebihi jumlah elemen yang ada maka java akan mengeluarkan pesan kesalahan berupa kesalahan runtime error.

 

Array Multidimesi

 

Kita dapat mendeklarasikan array lebih dari satu dimensi. Sebagai contoh kita akan membahas array dua dimensi. Untuk array berdimensi lebih dari dua dapat kita analogikan dengan array dimensi dua.Contoh pendeklarasian array dua dimensi:

 

    Double Matrik[ ] [ ];

 

Menciptakan element array duadimensi

 

    Matrik = new double [2] [3];

 

Kerangaka Program Java

 

Progam dalam java dibagi- bagi menjadi class-class.Oleh karena itu program dalam java dimulai dengan kata kunci class atau public class.Lihat Contoh Berikut :

 

public class Hello {

 

       public static void main(String argv[]){

 

       System.out.println("Hello java programmer UMSIDA");

 

}

 

}

 

Pokok Bahasan 2 ( Operator,Control Flow dan String)

 

Operator dan Control Flow adalah jantung dari program Control Flow mempunyai kemampuan untuk mengendalikan jalan dari program. Tanpa Operator dan Control Flow, program tidak akan mampu melakukan banyak hal. Ada beberapa jenis Operator dan Control Flow dalam Java, yaitu:

 

Aritmatika Operator

 

Java mempunyai operator aritmatika seperti + (penjumlahan), - (pengurangan) ,*(perkalian) , / (pembagian) dan % (modulo). Operator – operator ini berlaku seperti dalam operasi aritmatika. Dalam Java juga dimungkinkan untuk penyederhanaan penulisan operator seperti yang terlihat di bawah ini;

 

Int a, b, c, d, e,

 

            a = 15;b =10; //=80;d=100;e=20;

 

            a+ = 5;     //sama dengan a = a+5

 

            b- =e;            //sama dengan b = b-e

 

            c* =b;       //sama dengan c = c*b

 

            d/ =4;           //sama dengan d = d/4

 

            e%=3;          //sama dengan e = e % 3, hasilnya = 2

 

            d++;            //sama dengan d = d+1 (increment )

 

            c-- ;              //sama dengan c = c-1 (decrement)

 

Logika Operator

 

Ada tiga logika Operator dalam java yaitu:

 

 

            &&      Logika /nd

 

            ||           LogikaOr

 

             |          LogikaNot

 

Ketiga operator tersebut dioperasikan terhadap Boolean data tipe yang menghasilkan bolean data type juga (true atau false)

 

Bit per bit operator

 

Variabel bertipe long, int, short, byte dan char dapat mempunyai operator yang dioperasikan langsung kesusunan binernya (bit atau bit).

 

Tabel 2.1 Tabel Bit Per Bit Operator

 

Operator

 

Nama

 

Keterangan

 

~

 

NOT

 

Mengubah 0 menjadi 1 dan 1 menjadi 0

 

&

 

AND

 

1 & 1 = 1 selain itu hasilnya selalu 0

 

|

 

OR

 

0|0 = 0 selain itu hasilnya selalu 1

 

^

 

XOR

 

0^0 = 0, 1^1 = 0 selain itu hasilnya 1

 

>>

 

SHIFT RIGT

 

Dorong 1 bit kekanan termasuk tanda minus

 

>>>

 

SHIFT RIGT

 

Dorong 1 bit ke kanan isi bit paling kiri dengan 0

 

<<

 

SHIFT LEFT

 

Dorong 1 bit kekiri

 

 

 

 

Seperti halnya aritmatika operator, Bit per bit operator juga bias dilakukan penyederhanaan penulisannya.

 

 

 

 

Relasional

 

Operator relasional digunakan untuk membandingkan dua nilai. Hasil dari perbandingan tersebut adalah data tipe Boolean (true atau false).

 

 

 

 

Tabel 2.2 Tabel Operator Relasional

 

Operator

 

Keterangan

 

>

 

Lebih Besar

 

<

 

Lebih kecil

 

>=

 

Lebih besar atau sama dengan

 

<=

 

Lebih keci latau sama dengan

 

!=

 

Tidak sama dengan

 

= =

 

Sama dengan

 

 

 

 

Tipe variable di java seperti short, int, long, float, double, Boolean, dan character dapat dibandingkan satu dengan yang lainnya .

 

Contoh :

 

            Char c = ‘*’;

 

            Inti = 0x2a;

 

            Boolean b;

 

            b = c = = i;

 

 

 

 

Prioritas

 

Setiap operator mempunyai prioritas sendiri – sendiri, sehingga perhitungan matematika dilakukan sesuai prioritasnya .Lihat contoh dibawah ini :

 

 

 

 

            C = a + b*d;

 

 

 

 

Akan dijalankan sesuai prioritas yaitu *,+,=

 

Dibawah ini diberikan table prioritas dari operator, urutan prioritas dari atas ke bawah.Operator yang sama prioritasnya akan dioperasikan dari kanan ke kiri.

 

 

 

 

Tabel 2.3 Tabel Operator Prioritas

 

Operator

 

( ) [ ]

 

++ -- ~!

 

*/ %

 

+ -

 

>>>>><<

 

>>=  <<=

 

== ! =

 

&

 

^

 

|

 

&&

 

||

 

?:

 

=

 

 

 

 

Pernyataan if

 

Pernyataan if adalah control flow yang paling sederhana Pernyataan ini mengevaluasi suatu ekspresi. Jika ekspresi benar (true) maka blok pernyataan akan dijalankan. Sebaliknya computer akan melompati blok pernyataan tersebut. Sintaks dari pernyataan if :

 

 

 

 

If (ekspresi)

 

            Pernyataan;

 

 

 

 

 

 

 

 

Pernyataan if-else

 

Pernyataan if-else mengevaluasi suatu ekspresi. Jika ekspresi benar (true) maka blok pernyataan dijalankan. Sebaliknya computer akan menjalankan blok pernyataan yang lain. Sintaks dari penyataan if-else:

 

If(ekspresi )

 

            Pernyataan_1;

 

Else

 

            Pernyataan_2;

 

 

 

 

Pernyataan switch, case dan break

 

Switch digunakan untuk percabangan (seleksi) lebih dari dua. Ini digunakan untuk menghindari pergunaan if-else yang berlapis-lapis.

 

 

 

 

Pengulangan(Loop)

 

Pengulangan dengan while

 

Alur program blok while akan dilakukan berulang-berulang selama ekspresi benar (true) Sintaks dari pengulangan while adalah sbb:

 

 

 

 

While (ekspresi)

 

            Pernyataan;

 

 

 

 

Pengulangan dengan do-while

 

Pengulangan dengan  while pemeriksaan ekspresi dilakukan sebelum pengulangan. Ada kalanya pengulangan pemeriksaan ekspresi dilakukan setelah pengulangan. Jadi minimal satu kali pengulangan dilakukan. Pengulangan ini menggunakan do-while, sintaksnya.

 

 

 

 

            do

 

            pernyataan;

 

            while (ekspresi);

 

 

 

 

 

 

 

Pengulangan dengan for

 

Pengulangan dengan for menyerupai while, namun dilengkapi dengan inialisasi, test kondisi dan update counter. Jadi sintaks pengulangan dengan for adalah :

 

 

 

 

for (inialisasi_counter ; test_kondisi ; update_counter) {

 

            instruksi;

 

            --------

 

};

 

 

 

 

Inialisasi_counter dilakukan sekali pada saat akan dilakukan pengulangan, test_kondisi diperiksa setiap kali sebelum pengulangan dilakukan, sedangkan update_counter dilakukan setiap kali selesai pengulangan.

 

 

 

 

Break, continue

 

Dalam pengulangan break digunakan untuk mematahkan (mengakhiri) pengulangan secara paksa. Sedangkan continue digunakan untuk melanjutkan pengulangan berikutnya secara paksa dengan mengabaikan perintah dibawah pernyataan continue.

 

 

 

 

String

 

String adalah obyek yang terdiri atas deretan karakter. Tidak seperti array dari karakter, String tidak perlu ditentukan jumlah panjang karakternya.

 

 

 

 

StringTokanizer

 

Class String Tokanizer berfungsi untuk membagi string berdasarkan token tertentu. Class ini sangat membantu untuk menginterprestasikan suatu string ke suatu maksud tertentu. Contoh yang paling populer adalah membagi kalimat menjadi beberapa kata.Kita juga membaca data dari file kemudian data tersebut kita uraikan berdasarkan token tertentu.

 

 

 

 

 

Pokok Bahasan 3 ( Class )

 

Class merupakan bagian pokok dari Pemrograman Berorientasi Obyek (Object Oriented Programming). Class merupakan cara merakit data-data dan menentukan semua metode yang diperlukan untuk mengakses, menggunakan dan mengubah data-data tersebut. Dalam java class juga bisa dianggap sebagai type dari object.

 

Setiap class memiliki dua hal utama. Yang pertama adalah yang kita sebut state/atribut/property. State dalam obyek tidak lain adalah nilai dari setiap variable. Bagian yang kedua adalah tool atau method yang menentukan utility yang dimiliki oleh class.

 

 

 

Pendeklarasian class

 

Sintaks  pendeklarasian class dalam java adalah

 

            modifiers class NamaClass {

 

                        <class attribute list>

 

                        <class method list>

 

            }

 

 

 

 

modifier menentukan bagaimana class dapat ditangani pada fase development berikutnya. Ada tiga jenis modifier dalam class yaitu public, final, abstract dan friendly.

 

 

 

 

Public

 

Dengan menempatkan public didepan pendeklarasian class, mempunyai arti bahwa class didefinisikan untuk public. Ini berarti class tersebut dapat dipakai atau dikembangkan (extend) oleh sembarang object.

 

Final

 

Dengan menempatkan final didepan pendeklarasian class menandakan bahwa class tersebut tidak bisa memiliki subclass (turunan). Dengan kata lain class tersebut tidak bisa dikembangkan.

 

Abstract

 

Dengan menempatkan class didepan pendeklarasian class, menandakan bahwa kita tidak bisa menciptakan obyek dari class tersebut. Class tersebut harus dipakai sebagai super class dari class lain. Dalam abstract class paling tidak ada satu method yang belum komplit.

 

Friendly

 

Secara default modifiers class adalah friendly ,artinya class tersebut tersebut boleh  dikembangkan atau dipakei oleh class lain dalam satu paket (package). jika kita tidak memberikan modifiers didepan pendefinisian class maka class bersifat friendly.

 

 

 

 

Konstruktur

 

Konstruktur adalah method dengan property yang unik dan untuk keperluan inialisasi pada saat obyek diciptakan. Jadi konstruktur digunakan memberikan niali kepada attribute tertentu pada saat obyek diciptakan.Kontruktor didefinisikan dengan nama yang sama dengan nama class. Konstruktor tidak perlu return_type sebab konstruktur secara aktual dipanggil sebagai method. Konstruktur ini dipanggil pada saat kita memberikan perintah new.

 

 

 

 

Inherintance (Pewarisan)

 

Inheritance (Pewarisan) adalah suatu mekanisme yang memungkinkan satu class mewarisi (memiliki) attribute dan method dari class lain. Mekanisme pewarisan ini diperlukan untuk mengembangkan class-class yang sudah ada tanpa harus membuka source code dari class-class tersebut. Class yang mewarisi disebut subclass sedangkan calss yang diwarisi disebut super class. Pewarisan class dalam java menggunakan sintaks:

 

            modifier<NamaSubClass>extends<NamaSuperCalss> {

 

            }

 

 

 

 

Kata Kunci this

 

this adalah referensi yang menunjuk pada obyek aktual. Nilai this ini menunjukkan bahwa obyek yang dimaksud adalah obyek yang sedang aktif itu sendiri. Contoh penggunaan dari this adalah sbb:

 

 

 

 

Overriding Method

 

 

 

Overriding method adalah suatu mekanisme pewarisan class di mana subclass mendefinisikan ulang satu atau lebih method (fungsi) yang ada di supper class. Dalam overriding ini subclass bisa mendefinisikan method (fungsi) yang di-override dengan fungsi yang baru sama sekali, atau menambahi method (fungsi) yang di-override yang sudah ada dengan fungsinal-fungsinal yang lain.

 

 

 

 

 

 

 

Pokok Bahasan 4 ( Threads )

 

Property unik dari java adalah bahwa Java memberi suport adanya threads. Threads memperbolehkan kita melakukan banyak hal pada waktu yang bersamaan. Threads adalah komponen java yang memungkinkan kita untuk membuat program yang bersifat multitasking programming. Sebenarnya setiap program dalam java selalu menggunakan paling tidak satu thread

 

Kita bisa membuat aplikasi dan class berjalan dalam threads yang terpisah dengan dua cara, yaitu :

 

1. Mengembangkan dari class Thread (extending class Thread)

 

2. Mengimplementasikan Runnable interface

 

 

 

 

Mengembangkan class Thread

 

Dengan menggunakan extends Thread, mekanisme Thread dapat diaplikasikan dengan membuat fungsi run ( )

 

Untuk melihat concurrency (multitasking) pada program tersebut tambahkan method sleep( ) untuk actual Thread (current Thread). Method sleep( ) hanya dapat dilakukan dengan menangkap sinyal interrupt dengan mekanisme try & cacth.

 

 

 

 

Method yang berhubungan dengan Thread

 

start( )

 

Mengaktifkan Thread Obyek Thread kemudian akan menjalankan method run().

 

stop( )

 

Menghentikan Thread yang sedang aktif.

 

sleep( int delta)

 

Menunda aktifitas Thread untuk delta millisecond.

 

 

 

 

Contoh selanjutnya adalah mendemonstrasikan animasi yang dilakukan dengan menjalankan Thread. Tugas Thread adalah melakukan repaint( ) pada obyek. Setelah repaint( ) dilakukan, Thread beristirahat untuk beberapa detik dan untuk kemudian melakukan repaint( ) kembali. Obyek Thread kemudian akan menjalankan method run( ).

 

Kemudian class TThread digunakan oleh class animasi di bawah ini. Class animasi merupakan pengembangan (extend) dari class Applet. Class Applet digunakan untuk class-class yang digunakan dalam aplikasi applet (untuk ditampilkan dalam html file)

 

Setelah kita compile kedua class tersebut, yaitu class TThread dan class Animasi, kita dapat membungkusnya ke dalam file html. Selanjutnya kita dapat mengeksplore file tersebut dengan internet browser.

 

 

 

 

Mengimplementasikan Runnable Interface

 

Pada contoh di atas Thread digunakan dengan mengembangkan class Thread, yang mana berarti bahwa Subclass Thread hanya dapat mewarisi sifat-sifat dari Thread. Pengikatan Class ini dapat dihindari dengan menggunakan konsep interface. Dengan mengimplementasikan Runnable interface. Interface Runnable ini hanya berisi satu method yang harus diimplementasikan, yaitu run().

 

Konstruktor Thread adalah :

 

          

 

Thread(Runnable ThreadObject)

 

Atau

 

Thread(Runnable ThreadObject, String nama Thread)

 

 

 

 

ThreadObject pada contoh di atas adalah this, yang merupakan Obyek itu sendiri yang mengimplementasikan Runnable. Method is Active( ) akan memberikan nilai true jika Thread actual aktif, dan false jika tidak aktif.

 

 

 

 

Pokok Bahasan 5 ( Exception / Eksepsi )

 

Eksepsi adalah mekanisme yang memungkinkan program untuk menangkap kondisi-kondisi tertentu yang membutuhkan penanganan khusus. Eksepsi dapat berupa kesalahan yang terjadi dalam program pada saat run time. Format eksepsi adalah :

 

Try {

 

            // blok program

 

            . . . . . .

 

} catch (EksepsiTipe1 e) {

 

            // blok program untuk EksepsiTipe1

 

            . . . . . .

 

} catch (EksepsiTipe2 e) {

 

            // blok program untuk EksepsiTipe2

 

            . . . . . .

 

} catch (EksepsiTipe3 e) {

 

            // blok program untuk EksepsiTipe3

 

            . . . . . .

 

} finally {

 

            // blok program

 

            . . . . . .

 

}

 

 

 

 

try menyatakan bahwa dalam blok try dapat terjadi suatu ekspresi dan bila ekspresi terjadi, maka aktifkan program yang berada dalam kelompok (blok) catch sesuai dengan tipe ekspresinya.

 

Object e dari tipe ekspresi dapat digunakan sebagai referensi penanganan eksepsi aktual.

 

finally menyatakan bahwa apapun jenis tipe ekspresinya, maka program dalam blok ini harus tetap dijalankan.

 

Dengan menangkap eksepsi program tidak langsung berhenti dan melaporkan kesalahan tersebut, melainkan membelokkan dengan program pengaman tertentu.

 

Pada saat run time, jika java menemukan kesalahan dan melempar pesan ke program. Dengan pesan ini, program akan melakukan suatu aksi tertentu. Mekanisme melempar ini disebut juga sebagai throw, alur program akan dihentikan, kemudian program pengendali (exception handling) akan diaktifkan.

 

 

 

 

Throw

 

Throw digunakan secara eksplisit untuk membuang sebuah eksepsi. Contoh berikutnya, TestThrow mendefinisikan Obyek Eksepsi “NullPointerException” pada sebuah variabel t.

 

Dengan instruksi throw, program Eksepsi untuk kemudian ditangkap oleh instruksi catch. Namun tentunya yang ditangkap harus sesuai degan tipe eksepsi yang dilemparkan. Dalam hal ini program main menangkap sinyal tersebut dan instruksi program diteruskan pada blok program disitu.

 

 

 

 

throws

 

Eksepsi selalu ditangkap dengan catch pada blok dimana eksepsi tersebut dilempar. Tanpa catch, program tidak akan dikompilasi. Program dibawah ini menghilangkan try dan catch pada subroutine demo( ), namun dengan menggunakan tambahan kata kunci throws Exception.

 

 

 

 

Tabel 6.1 Common Jaxa Exceptions

 

 

 

Exceptions

 

Description

 

Arithmeticexception

 

Disebabkan oleh error secara matematika seperti pembagian dengan nol

 

ArrayIndexOutOfBouns Exception

 

Disebabkan oleh array index yang salah

 

ArrayStoreException

 

Disebabkan ketika program mencoba menyimpan file data yang salah

 

FileNotFoundException

 

Disebabkan oleh usaha mengakses file yang tidak ada

 

IOException

 

Disebabkan oleh general I/O failures, seperti kegagalan membaca file

 

NullPointException

 

Disebabkan oleh mereferensi obyek null

 

NumberFormatException

 

Disebabkan ketika konversi antara string dan bilangan gagal

 

OutOfMemoryException

 

Disebabkan ketika tidak cukup memory untuk alokasi obyek

 

SecurityException

 

Disebabkan ketika sebuah applet mencoba melakukan aksi yang tidak diperbolehkan oleh setting security browser

 

StackOverflowException

 

Disebabkan ketika sistem run melebihi kapasitas stack

 

StringIndexOutOfBoundsException

 

Disebabkan ketika program mencoba mengakses posisi karakter yang tidak ada di dalam string

 

 

 

 

Pokok Bahasan 6 ( Java Graphical User Interface )

 

Graphical User Interface merupakan antar muka grafis yang memfasilitasi interaksi antara pengguna dengan program aplikasi. Salah satu komponen dalam bahasa pemrograman java untuk membangun GUI adalah Swing. Komponen ini didefinisikan di dalam paket javax,swing. Swing diturunkan dari Abstract Windowing Toolkit dalam paket java.awt. Hirarki dari komponen Swing adalah :

 

Java.swing.Jcomponent => java.awt.Container => java.awt.Component => java.lang.Object. Object Jcomponent adalah superclass dari semua komponen Swing. Sebagian besar fungsionalitas komponen diturunkan dari superclass ini. Beberapa komponen utama dalam GUI adalah:

 

Containers : merupakan wadah yang berfungsi untuk menempatkan komponen-komponen lain didalamnya.

 

Canvas : merupakan komponen GUI yang berfungsi untuk menampilkan gambar atau untuk membuat progarm grafis. Dengan canvas, kita bisa menggambar berbagai bentuk seperti lingkaran,segitiga,dll

 

User Interface (UI) components : contohnya adalah buttons,list,simple popup menus, check boxes,text fields,dan elemen lain.

 

Komponen pembentuk window : seperti frames, menu bars,windows,dan dialog boxes

 

 

 

 

 

 

 

Komponen-komponen Dasar User Interface dengan Swing

 

Berikut adalah beberapa komponen dasar antarmuka pengguna (user interface) yang disediakan oleh Swing :

 

Top level containers : adalah container dasar untuk meletakkan komponen-komponen lain. Contohnya adalah JFrame,Jdialog,dll

 

Intermediate level containers : merupakan kontainer perantara. Umumnya digunakan hanya untuk meletakkan atau mengelompokkan komponen-komponen yang digunakan, baik itu containeratau berupa atomic component. Contoh dari Intermediate level container adalah Jpanel (panel).

 

Atomic component : merupakan komponen yang memiliki fungsi khusus. Umumnya pengguna langsung berinteraksi dengan komponen ini. Contohnya JButton (tombol),JLabel (label),JtextField,JtextArea (area untuk menulis teks),dll

 

Layout Manager Berfungsi  untuk mengatur bagaimana tata letak/posisi dari komponen yang akan diletakkan, satu sama lain didalam suatu container. Secara default ada 6 buah layout : BorderLayout,BoxLayout,CardLayout,GridBagLayout & GridLayout.

 

Event Handling berfungsi untuk menangani event yang dilakukan oleh user seperti menekan tombol,memperbesar atau memperkecil ukuran frame,mengklik mouse,mengetik sesuatu dengan keyboard,dll

 

 

 

 

Konstruktor untuk membentuk JFrame adalah JFrame() atau JFrame (String Nama Frame). Salah satu method yang sering digunakan dikelas JFrame adalah setDefaultCloseOperation (int ops).

 

Method ini berfungsi untuk mengatur apa yang akan dikakukan oleh program ketika tombol close di klik. Parameter method tersebut diantaranya adalah:

 

JFrame.DO_NOTHING_ON_CLOSE : tidak ada satu aktivitas pun yang dilakukan secara otomatis apabila frame ditutup.

 

JFrame.HIDE_ON_CLOSE : frame hanya di sembunyikan, namun secara fisik frame masih ada dimemori sehingga dapat dimunculkan kembali. Merupakan aktivitas default.

 

JFrame.DISPOSE_ON_CLOSE : menghilangkan tampilan frame dari layar, menghilangkannya dari memori,dan  membebaskan resource yang dipakai.

 

JFrame.EXIT_ON_CLOSE : menghentikan eksekusi program.

 

 

 

 

Top level container yang lain adalah JDialog. Berbeda dengan JFrame, JDialog tidak dibuat berdiri sendiri, melainkan dibuat bersama-sama dengan frame sebagai parent-nya. Jika frame parent-nya ditutup, maka dialog akan dihapus dari memori. Kemunculan dialog akan membuat semua input terhadap frame parent-nya akan terblokir sampai dialog tersebut ditutup.

 

 

 

 

Layout Management

 

Untuk mengatur layout dari setiap komponen-komponen GUI yang diletakkan pada container, digunakan layout manager. Setiap pane secara default pasti memiliki layout manager. Jika ingin mengubah layout-nya, gunakan void setLayout(LayoutManeger mgr) java menyediakan 6 buah class standar yang dapat digunakan  sebagai layout manager yang terdapat dalam package java.awt, yaitu FlowLayout,GridLayout,BorderLayout,

 

CardLayout,GridBagLayout,BoxLayout.

 

 

 

Flow Layout merupakan layout manager default yang digunakan JPanel. Layout manager ini meletakkan komponen yang ada secara berurutan dari kiri ke kanan dan berpindah baris jika dbutuhkan. Jarak antar komponen baik secara vertikal maupun horizontal dapat ditentukan sendiri. Selain itu, kita bisa menentukan alignment dari komponen yang diletakkan, yaitu rata kanan, rata kiri atau di tengah.

 

Grid Layout Merupakan Layout Manager berbentuk grid. Semua komponen dalam layout ini memiliki ukuran yang sama. Konstruktor GridLayout sebagai berikut :

 

Border Layout adalah default manager untuk ContentPane. Layout ini menempatkan komponen dengan pendekatan arah mata angin north, south, west, center, east

 

Card layout digunakan untuk menampilkan container-container/panel-panel seperti tumpukan kartu. Hanya satu container yang akan tampil untuk satu waktu. Komponen yang diletakkan dengan layout ini berupa object yang bertipe intermediate container adalah tabbed pane (JTabbedPane).

 

Grid bag layout adalah pengaturan layout yang dapat digunakan untuk meletakkan komponen secara bebas. Setiap komponen dapat menepati ukuran yang berbeda dengan komponen lainnya.

 

Box layout digunakan untuk meletakkan komponen berurutan ke kanan (sumbu X) atau berurutan ke bawah (sumbu Y). Penggunaan BoxLayout menggunakan class Box dimana merupakan container yang secara internal telah menggunakan BoxLayout sebagai layout manager-nya.