Assalamu’alaikum Wr. Wb.
Perkenalkan
nama Muhammad Iqbal Al Mulki, saya berkuliah di Universitas Muhammadiyah
Sidoarjo dan mengambil jurusan Teknik Informatika dan jika ingin mengetahui
lebih tentang universitas saya silahkan akses link berikut: umsida.ac.id dan
fst.umsida.ac.id
Disini
saya akan menjelaskan tentang Jaringan Komputer. Dari praktikum Jaringan
Komputer ini saya mendapat ilmu yang banyak dan hampir semuanya bermanfaat,
dari yang awalnya tidak bisa menjadi bisa. Sekarang saya akan memberikan
rangkuman tentang apa yang sudah saya dapatkan pada Praktikum Jaringan
Komputer.
POKOK BAHASAN I
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.
Variabel
adalah satuan yang dipakai oleh program sebagai basis untuk penyimpanan data.Penggunaan variable harus
terlebih dahulu dideklarasikan nama dan tipenya.
Variabel yang
dimaksud antara lain :
a.
Short
Tipe variable short adalah bilangan bulat 16 bit yang
mempunyai jangkauan nilai dari -215 sampai dengan 215-1 atau dari -32768 sampai
dengan ±32767.
b.
Long
Tipe variable long adalah bilangan bulat 64 bit dengan
jangkauan nilai dari -263sampai dengan 263-1.
c.
Byte
Type variable byte adalahbilanganbulat 8 bit yang
mempunyai jangkauan nilai dari 27sampai dengan 27-1
ataudari -128 sampai dengan +127.
d.
Float
Float adalah bilangan real (pecahan, dengan format
floating point yang menggunakan tempat penyimpanan 32 bit.Tipe float mempunyai
jangkaun nilai dari 3.4e-038 sampai dengan 3.4e+038. Ketelitian
float sampai 10 angka dibelakang koma.
e.
Double
Dobel adalah bilangan real (pecahan) dengan presisi 2
kali lebih baik dari variable float. Dobel membutuhkan 64 bit untuk
penyimpanannya yang mempunyai jangkauan nilai dari 1.7e-308 sampai dengan
1.7e+308.
f.
Char
Tipe variable char menyimpan kode Unicode (karakter
internasional), karena itu membutuhkan 16 bit
g.
Boolean
Variable Boolean berisi dua nilai, yaitu true dan
false.Variabel Boolean dapat diperoleh dari operasi logika seperti perbandingan
dua bilangan, perbandingan dua
string, dan lain – lain;
h.
Casting
Casting adalah teknik konversi suatu data tipe ke data
tipe yang lain secara
eksplisit. Yang menerangkan kepada compiler bahwa terjadi perubahan tipe
variable, sehingga hasilnya harus dikonversi ke tipe variable tersebut.
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 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];
Kerangka 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 II
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:
a.
Aritmatika Operator
Java mempunyai operator aritmatika seperti + (penjumlahan), - (pengurangan)
,*(perkalian) , / (pembagian) dan % (modulo). Operator – operator ini berlaku
seperti dalam operasi aritmatika.
b.
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)
c.
Bit
per bit operator
Variabel bertipe long, int, short, byte dan char dapat
mempunyai operator yang dioperasikan langsung kesusunan binernya (bit atau
bit).
Seperti halnya aritmatika operator, Bit per bit
operator juga bias dilakukan
Penyederhanaan penulisannya.
d.
Relasional
Operator relasional digunakan untuk membandingkan dua
nilai. Hasil dari perbandingan tersebut adalah data tipe Boolean (true atau
false).
Tipe variable di
java seperti short, int, long, float, double, Boolean, dan character dapat
dibandingkan satu dengan yang lainnya .
e.
Prioritas
Setiap operator mempunyai prioritas sendiri – sendiri,
sehingga perhitungan matematika dilakukan sesuai prioritasnya .
f.
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;
g.
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;
h.
Pernyataan
switch, case dan break
Switch digunakan untuk percabangan (seleksi) lebih dari
dua. Ini digunakan untuk menghindari pergunaan if-else yang berlapis-lapis.
i.
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.
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. String dapat langsung di inialisasi tanpa kata
kunci new, contoh :
Ada beberapa method dalam String yang perlu kita
ketahui antara lain:
Int length ( )
memberikan nilai balik (return value) panjang dari
aktual string.
char charAt (int
index)
memberikan nilai balik berupa karakter pada posisi
index dalam aktual string.
POKOK BAHASAN III
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.
a.
Pendeklarasian class
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.
<class
attribute list>adalah daftar semua atribute (variable )dari class
,sedangkan <class method list>adalah
daftar semua method (fungsi\operasi)yang bisa dilakukan oleh class tersebut.
Akses modifiers dalam class attriubute maupun class
method menentukan bagaimana aksesbilitas attribute dan method dari class lain.
Ada beberapa akes modifier yaitu:
Friendly
Secara default akses modifiers adalah
friendly , yang berarti bahwa attribute
|mothode bisa diakses oleh class lain dalam satu paket (package ).
Public
Akses modifiers public membuat
attribute\metbute tersebut dapat diakses oleh pihak luar manapun.
Private
Akses modifiers private membuat
attribute\method hanya dapat diakses oleh class itu sendiri .
Protected
Akses modifiers protected membuat
attribute\method hanya dapat diakses oleh class itu sendiri dan class turunanya
(subclass nya ).
Final
akses modifiers final membuat attribute
tersebut tidak boleh diubah pada saat eksekusi . sebab attribute ini tidak
boleh diubah maka harus diberi nilai pada saat pedeklarasian misal final int SIZE 5;
Static
Akses modifiers static mebuat attribute tersebut mempunyai nilai sama untuk
semua obyek dari class tersebut.
b.
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.
c.
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> {}
d. 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:
e. 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. Contoh class yang menggunakan mekanisme
overriding :
POKOK BAHASAN IV
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 Mengembangkan
dari class Thread (extending class Thread) dan Mengimplementasikan Runnable interface
a.
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.
b.
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 V
EXCEPTION
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.
POKOK BAHASAN VI
JAVA GRAPICHAL USER INTERFACE
a.
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
b.
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.
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.
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 packagejava.awt, yaitu FlowLayout, GridLayout, BorderLayout, CardLayout, GridBagLayout, BoxLayout.
PENUTUP
Sekian
rangkuman yang bisa saya ambil dari praktikum Jaringan Komputer, semoga ini
bermanfaat bagi kita semua dan bila ada salah-salah kata di dalam blog yang
saya tulis, saya meminta maaf yang sebesar – besarnya. Sekian dan terima kasih.
Wassalamu’alaikum Wr. Wb.
EmoticonEmoticon