Jumat, 19 Oktober 2012

New Media Dalam Pendidikan

Dalam berbagai media, media elektronik ataupun media massa, banyak sekali berita dimana berbagai teknologi telah bermunculan, baik itu yang berhubungan dengan PDA, Personal Computer, robotika, dll. Teknologi-teknologi tersebut bermunculan seiring dengan perkembangan science yang cukup pesat. Tanpa disadari, teknologi sudah menjadi bagian dari kehidupan kita. Sebagai orang yang hidup di jaman yang terbilang cukup kaya akan teknologi ini, tentunya kita tidak bisa mengacuhkan hal ini begitu saja. Dengan kata lain kita harus memanfaatkannya. Namun, apakah kemajuan teknologi ini membawa pengaruh positif, terutama dalam bidang pendidikan? Atau malah menjadikan kita sebagai budak teknologi tersebut sehingga mengalami kegagalan? Teknologi-teknologi yang berkembang ini dapat kita sebut sebagai New Media. New media dapat berbentuk keras (hard) ataupun lunak (soft). Salah satu contoh yang berbentuk keras adalah PDA smartphone, notebook, Smart TV, dll. Sedang yang berbentuk lunak seperti internet, website, video game, dll. New Media atau media baru dapat diartikan sebagai sebuah sarana teknologi informasi yang berperan signifikan dalam kehidupan manusia dalam segi kemajuan teknologi.

Samsung Galaxy Nexus
Tanpa disadari sebenarnya New Media sering kita temui dalam kehidupan sehari-hari. Misalnya saja saat kita mencari bahan kuliah, kita menggunakan Google untuk mempermudah kita. Atau saat kita bingung akan suatu hal, kita dapat menggunakan ensiklopedia bebas dan terbuka, Wikipedia. Situs tersebut tak hanya berguna untuk kita mahasiswa, namun juga sangat berguna bagi pengajar ataupun orang pada umumnya, karena kontennya yang memang luas dan dapat dengan mudah diakses. Tidak terbatas pada hal itu, situs jejaring sosial yang sering kita gunakan juga termasuk: Facebook, Twitter, Google+, dll. Ataupun situs video streaming seperti YouTube dan Nico Nico Douga. Tak hanya media komputer, media PDA juga sering kita gunakan. Selain kemampuan mengakses internetnya, kemampuannya yang memungkinkan pemasangan OS Android atau iOS, menjadikan media ini juga menjadi salah satu ‘korban’ ideal New Media, dalam arti positif. Aplikasi yang berdatangan baik oleh perorangan atau kelompok tiap harinya ini menjadikan salah satu daya tarik utama seseorang untuk membeli dan menggunakan PDA. Selain itu masih banyak contoh lainnya yang mungkin dapat anda tahu dan dapat ditemukan sendiri.
Seperti diuraikan dalam contoh diatas, bidang-bidang yang terpengaruh oleh New Media ini sangatlah banyak; salah satunya yang akan saya tekankan adalah bidang pendidikan. Bidang pendidikan merupakan salah satu bidang yang krusial dalam perkembangan teknologi. Karena jelas saja, tanpa adanya pendidikan, teknologi baru tidak akan muncul. Dengan adanya pendidikan, teknologi akan berkembang dengan pesat. Namun selain itu, ternyata di lain pihak, New Media ini juga mempengaruhi pendidikan. Seperti dengan penemuan berbagai macam teknologi baru yang dapat menunjang keefektifan pendidikan. Contoh mudahnya internet. Internet sangatlah bermanfaat dengan kebebasan pengaksesan informasi sebanyak-banyaknya itu, walaupun tetap terbatas. Dapat dibilang kemudahan dalam pendidikan juga berkat peran New Media ini. Karena itu kedua hal ini saling mendukung satu sama lain. Berikutnya nanti akan dijelaskan secara lebih detil mengenai pengaruh masing-masing.

w3schools, one of useful tutorial sites for web developing
Dampak postif dari New Media dalam pendidikan ini sangatlah banyak. Yang paling utama adalah kemudahan untuk mencari ilmu. Dengan New Media, atau lebih spesifik, internet, pencarian ilmu sangatlah mudah karena banyak sekali situs yang mendukung untuk keperluan tersebut: Wikipedia, forum-forum, blog-blog, ataupun melalui Google. Ilmu-ilmu ini dapat diakses secara gratis (walaupun beberapa situs ada yang memerlukan user untuk register terlebih dahulu, dan gratis pula) kapanpun dimanapun, yang sangat bertolak belakang dengan apabila kita belajar ‘tradisional’, yaitu melalui buku atau guru pengajar. Selain berguna untuk kita pelajar, para guru pengajar juga dapat merasakan manfaatnya. Seperti dengan adanya infocus yang memudahkan mereka dalam mengajar, Tablet PC sebagai pengganti komputer yang bersifat portable, dll. Selain itu, New Media juga bermanfaat besar kepada para developer. Dengan teknologi-teknologi baru yang sedang marak di pasaran, mereka mendapatkan peluang yang lebih banyak dalam memperlihatkan kemampuannya, yang sering kita lihat dalam proyek-proyek mobile Android. Dengan banyaknya manfaat tersebut, dapat dikatakan New Media membawa angin positif bagi kemajuan umat manusia.
Namun, tentunya apabila angin yang tak terkendali akan membawa bencana, begitu juga dengan teknologi. New Media ini merupakan suatu teknologi yang berkembang sangat cepat dan dapat membuat user ketagihan akan hal tersebut. Hal ini sangatlah buruk, karena manusia akan menjadi budak teknologi. Hal ini membuat manusia sangat bergantung dan tidak bisa hidup tanpa teknologi. Dalam pendidikan, sangat bergantung pada teknologi sangatlah buruk, karena menjadikan seseorang menjadi malas. Contoh yang terumum adalah video game. Ketagihan akan video game menjadikan seseorang menjadikan seseorang mulai dari pemalas sampai kematian, seperti dalam kasus-kasus yang sudah terjadi. Karena itu, haruslah kita saring New Media ini dengan cermat agar kita tidak berakhir seperti itu.

Tera Online, arguably the most hyped MMORPG at present time
Pada akhirnya, New Media sangatlah membawa dampak positif bagi kemajuan hidup manusia. Dengan adanya New Media, kehidupan menjadi lebih mudah. Dampak ini sangat terasa pada bidang pendidikan yang perkembangannya bergantung, namun tak terbatas pada, pendidikan. Namun, apabila media ini tidak kita saring secara cermat, dapat membawa dampak buruk bagi kita. Tetapi, adanya arus baru ini tidak dapat kita tolak begitu saja. Karena menurut saya, ketimbang dampak negatifnya, New Media ini lebih jauh lebih membawa dampak positif.

Selasa, 14 Agustus 2012

Demo Text Field


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoTextField implements ActionListener {   
  public JLabel label1, label2, label3;
  public JTextField textField1, textField2, textField3;
  public JButton button1, button2, button3, button4;
       
  public DemoTextField() {   
       
    label1 = new JLabel("Nilai A");
    label1.setLocation(10, 10);
    label1.setSize(label1.getPreferredSize());   
       
    textField1 = new JTextField(20);
    textField1.setLocation(10, 25);
    textField1.setSize(textField1.getPreferredSize());   
       
    label2 = new JLabel("Nilai B");
    label2.setLocation(10, 45);
    label2.setSize(label2.getPreferredSize());   
               
    textField2 = new JTextField(20);
    textField2.setLocation(10, 60);
    textField2.setSize(textField2.getPreferredSize());   
       
    label3 = new JLabel("Hasil perhitungan antara A dan B");
    label3.setLocation(10, 90);
    label3.setSize(label3.getPreferredSize());
       
    textField3 = new JTextField(20);
    textField3.setLocation(10, 105);
    textField3.setSize(textField3.getPreferredSize());   
    textField3.setEditable(false);
       
    button1 = new JButton("Tambah");
    button1.setLocation(245, 10);
    button1.setSize(button1.getPreferredSize());
    button1.addActionListener(this);
    button1.setMnemonic('T');
     
    button2 = new JButton("Kurang");
    button2.setLocation(245, 40);
    button2.setSize(button1.getPreferredSize());
    button2.addActionListener(this);
    button2.setMnemonic('u');
       
    button3 = new JButton("Kali");
    button3.setLocation(245, 70);
    button3.setSize(button1.getPreferredSize());
    button3.addActionListener(this);
    button3.setMnemonic('K');
       
    button4 = new JButton("Bagi");
    button4.setLocation(245, 100);
    button4.setSize(button1.getPreferredSize()); 
    button4.addActionListener(this);
    button4.setMnemonic('B');   
  }
   
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JTextField");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.getContentPane().add(label1);
    frame.getContentPane().add(textField1);
    frame.getContentPane().add(label2);
    frame.getContentPane().add(textField2);
    frame.getContentPane().add(label3);
    frame.getContentPane().add(textField3);
    frame.getContentPane().add(button1);
    frame.getContentPane().add(button2);
    frame.getContentPane().add(button3);
    frame.getContentPane().add(button4);
       
    frame.setBounds(0, 0, 350, 200);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void actionPerformed(ActionEvent event) {
    double a=0.0, b=0.0, c=0.0;
       
    try {
      a = Double.parseDouble(textField1.getText());
      b = Double.parseDouble(textField2.getText());
    } catch (NumberFormatException nfe) {
      nfe.printStackTrace();
    }
       
    JButton btn = (JButton) event.getSource();
    if (btn == button1) {
      c = a + b;
    } else if (btn == button2) {
      c = a - b;
    } else if (btn == button3) {
      c = a * b;
    } else {
      c = a / b;
    }
       
    textField3.setText(new String().valueOf(c));     
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoTextField app = new DemoTextField();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Text Area


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoTextArea {   
  public JTextArea textArea;
  public JScrollPane scroller;
               
  public DemoTextArea() {               
    textArea = new JTextArea(345,190);
    textArea.setText(
     "Ini adalah contoh string panjang " +
     "(lebih dari satu baris) " +
     "yang dimasukkan ke dalam komponen JTextArea.");
    textArea.setLineWrap(true);  //di-wrap atau dipotong
              
    scroller = new JScrollPane(textArea,
      ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
      ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    scroller.setLocation(0,0);
    scroller.setSize(new Dimension(345, 190));           
  }
       
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JTextArea");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
    frame.getContentPane().add(scroller);
               
    frame.setBounds(0, 0, 355, 200);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoTextArea app = new DemoTextArea();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Throws


class Barang {
  private String kode;
  private String nama;
  private double harga;
   
  public void setKode(String vKode) {
    try {
      kode = vKode;
      if (kode == null) {
        throw new NullPointerException();
      }
    } catch (NullPointerException npe) {
      System.out.println("KESALAHAN: " +
        "Kode barang tidak boleh null");
    }
  }
   
  public String getKode() {
    return kode;
  }
   
  public void setNama(String vNama) {
    try {
      nama = vNama;
      if (nama == null) {
        throw new NullPointerException();
      }
    } catch (NullPointerException npe) {
      System.out.println("KESALAHAN: " +
        "Nama barang tidak boleh null");
    }
  }
   
  public String getNama() {
    return nama;
  }
   
  public void setHarga(int vHarga) {
    harga = vHarga;
  }
   
  public double getHarga() {
    return harga;
  }   
}

class DemoThrow {   
  public static void main(String[] args) {   
   
    Barang obj = new Barang();
       
    obj.setKode(null);
    obj.setNama("Buku tulis");
    obj.setHarga(2500);
       
    System.out.println("\nKode : " + obj.getKode());
    System.out.println("Nama   : " + obj.getNama());
    System.out.println("Harga  : " + obj.getHarga());   
  }       
}

Demo Interface Turunan


interface IInduk {
  double tambah(double a, double b);
  double kurang(double a, double b);
}

interface ITurunan extends IInduk {
  double kali(double a, double b);
  double bagi(double a, double b);
}

class Aritmetika implements ITurunan {   
  private double x;
  private double y;
 
  Aritmetika(double x, double y) {
    this.x = x;
    this.y = y;
  }
 
  public double tambah(double a, double b) {
    return (a + b);
  }
 
  public double kurang(double a, double b) {
    return (a - b);
  }
 
  public double kali(double a, double b) {
    return (a * b);
  }
 
  public double bagi(double a, double b) {
    return (a / b);
  }
 
  public void cetakHasil() {
    System.out.println("x = " + x);
    System.out.println("y = " + y);
    System.out.println();
    System.out.println("x + y = " + tambah(x, y));
    System.out.println("x - y = " + kurang(x, y));
    System.out.println("x * y = " + kali(x, y));
    System.out.println("x / y = " + bagi(x, y));
  }
}

class DemoInterfaceTurunan { 
  public static void main(String[] args) {
    // membuat objek Aritmetika dengan x=10.0 dan y=2.5
    Aritmetika obj = new Aritmetika(10.0, 2.5);     
    obj.cetakHasil();     
  }   
}

Demo Interface


interface AlatMusik {
  void mainkan();
  void setelNada();
  String ambilNama();
}

class AlatMusikPetik implements AlatMusik {   
  protected String nama;
   
  public void mainkan() {
    System.out.println(ambilNama() +
          " dimainkan dengan cara petik");
  }
   
  public void setelNada() {
    System.out.println("Setel nada pada " + ambilNama());   
  }
   
  public String ambilNama() {
    return nama;
  }
}

class AlatMusikTiup implements AlatMusik {   
  protected String nama;
   
  public void mainkan() {
    System.out.println(ambilNama() +
          " dimainkan dengan cara tiup");
  }
   
  public void setelNada() {
    System.out.println("Setel nada pada " + ambilNama());   
  }
   
  public String ambilNama() {
    return nama;
  }
}

class AlatMusikPukul implements AlatMusik {   
  protected String nama;
   
  public void mainkan() {
    System.out.println(ambilNama() +
          " dimainkan dengan cara pukul");
  }
   
  public void setelNada() {
    System.out.println("Setel nada pada " + ambilNama());   
  }
   
  public String ambilNama() {
    return nama;
  }
}

class Gitar extends AlatMusikPetik {
  Gitar(String nama) {
    this.nama = nama;
  }
}

class Bass extends AlatMusikPetik {
  Bass(String nama) {
    this.nama = nama;
  }
}

class DemoInterface {   
  public static void main(String[] args) {     
    AlatMusikPetik gitar, bass;
     
    gitar = new Gitar("Gitar");
    bass = new Bass("Bass");

    gitar.mainkan();
    gitar.setelNada();
     
    System.out.println();
     
    bass.mainkan();
    bass.setelNada();     
  }   
}

Demo Kelas Abstrak


// Mendefinisikan kelas abstract
abstract class Bentuk {
  // method abstrak, tidak memiliki kode implementasi
  abstract public double luas();   
}

class PersegiPanjang extends Bentuk {
  private double panjang;
  private double lebar;
   
  PersegiPanjang(int p, int l) {
    panjang = p;
    lebar = l;
  }
   
  public double luas() {
    System.out.println("Dalam objek persegi panjang:");
    return (panjang * lebar);
  }   
}

class BujurSangkar extends Bentuk {
  private double sisi;
   
  BujurSangkar(int s) {
    sisi = s;
  }
   
  public double luas() {
    System.out.println("Dalam objek bujursangkar:");
    return (sisi * sisi);
  }   
}

class Segitiga extends Bentuk {
  private double alas;
  private double tinggi;
   
  Segitiga(int a, int t) {
    alas = a;
    tinggi = t;
  }
   
  public double luas() {
    System.out.println("Dalam objek segitiga:");
    return ((alas * tinggi)/2);
  }   
}

class Lingkaran extends Bentuk {
  private double jarijari;
   
  private final double PI = 3.1416;
   
  Lingkaran(int r) {
    jarijari = r;
  }
   
  public double luas() {
    System.out.println("Dalam objek lingkaran:");
    return (PI * jarijari * jarijari);
  }   
}

class DemoKelasAbstrak2 {
  public static void main(String[] args) {   
   
    Bentuk obj;
   
    // Baris kode di bawah ini SALAH,
    // karena kelas abstrak tidak dapat diinstansiasi
   
    //obj = new Bentuk();  // SALAH
   
    PersegiPanjang pp = new PersegiPanjang(5, 3);
    BujurSangkar bs = new BujurSangkar(4);
    Segitiga st = new Segitiga(4, 3);
    Lingkaran lk = new Lingkaran(2);
   
    // obj mengacu pada objek PersegiPanjang
    obj = pp;
    // akan memanggil method yang terdapat pada PersegiPanjang
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
    // obj mengacu pada objek BujurSangkar
    obj = bs;
    // akan memanggil method yang terdapat pada BujurSangkar
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
    // obj mengacu pada objek Segitiga
    obj = st;
    // akan memanggil method yang terdapat pada Segitiga
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
    // obj mengacu pada objek Lingkaran
    obj = lk;
    // akan memanggil method yang terdapat pada Lingkaran
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
   
  }       
}