Sabtu, 29 Oktober 2011

Konsep Pemrograman (Chapter_1)


Pemrograman ialah:
  • Sarana komunikasi antara manusia dan komputer disebut bahasa komputer.
  • Bahasa Pemrograman Komputer adalah tata cara penulisan program (kata, ekspresi, pernyataan) berupa langkah untuk menyelesaikan masalah.
  • Faktor yang perlu diperhatikan adalah sintaksis, semantik dan logika.
  • Bahasa pemrograman: tingkat tinggi, menengah dan rendah.

Konsep Pemecahan masalah
  • Menganalisa dan memahami permasalahan dan membuat algoritma (pola berfikir terstruktur berisi tahap-tahap penyelesaian masalah).
  • Membuat kode dari algoritma dalam pernyataan sesuai dengan bahasa pemrograman.
  • Testing (menjalankan program) dan debugging (menemukan kesalahan).
  • Melakukan dokumentasi terhadap setiap langkah.

Definisi Algoritma ialah :
Pola pikir yang terstruktur yang berisi tahap-tahap penyelesaian masalah untuk diimplementasikan dalam pemrograman.

Biasanya dalam program terdapat tiga struktur program:
1. Struktur Urut
2. Struktur Keputusan
3. Struktur Perulangan

Struktur Penulisan Program C
main()
{
statemen-statemen; //fungsi utama
}

fungsi_fungsi­_lain()
{
statemen-statemen; // fungsi-fungsi lain
}


Pengenalan Fungsi Dasar
#include
main()
{
printf(“HALLO C”);
}


keterangan :

  • stdio.h, header standard input output karena ada printf
  • main(), program utama
  • {}, awal program dan akhir program
  • printf(“HALLO C”); mencetak tulisan Hallo C di monitor

Penentu Format
%d : untuk menampilkan bilangan bulat (int)
%f : untuk menampilkan bilangan pecahan (float)
%c : untuk menampilkan sebuah karakter (char)
%s: untuk menampilkan sebuah string (char [])
Contoh :


#include
main( )
{
printf(“No : %d\n”, 10);
printf(“Nama : %s\n”, “Ali”);
printf(“Nilai : %f\n”,80.5);
printf(“Huruf : %c\n”,‘A’);
}

Komentar
Untuk keperluan dokumentasi dengan maksud agar program mudah dipahami

/* Tanda ini adalah komentar */
#include
main()
{
printf(“Coba\n”); /* Ini adl program pertama */
}

Praprosesor #include
#include merupakan satu jenis pengarah praprosesor yang dipakai untuk membaca file yang dinamakan file judul (header file), yaitu file yang berisi deklarasi fungsi dan definisi konstanta.
Contoh:

#include
#include
#include

Proses Kompilasi dan Linking Program C







Kelebihan dan Kekurangan Bahasa Pemrograman C

Pada matakuliah Algoritma dan Pemrograman 1 ini, mahasiswa diwajibkan BISA dan MENGUASAI bahasa pemrograman C. Dan mungkin sebelum kita memulai dengan pemrogramannya, kita bisa melihat dahulu, apa sih sebenarnya kelebihan maupun kekurangan bahasa pemrograman C ini??
Mari kita simak pembahasannya, dari hasil Googling..



KELEBIHAN

1. Bahasa C tersedia hampir di seluruh jenis komputer.
Bahasa C merupakan Bahasa komputer yag tersedia baik di komputer mikro maupun di komputer besar (mainframe computer).

2. Kode bahasa C sifatnya adalah portable dan fleksibel.
Aplikasi yang ditulis dengan bahasa C untuk suatu komputer tertentu dapat digunakan di komputer lain hanya dengan modifikasi yang sedikit saja.

3. Bahasa C hanya menyediakan sedikit kata kunci.
Telah kita ketahui bahwa bahasa C standar ANSI cuma menyaratkan sebanyak 32 kata-kata kunci kunci, turbo hanya menyediakan 39 kata-kata kunci, C++ hanya menyediakan 48 kata kunci. Coba kita bandingkan dengan bahasa-bahasa yang lain yang memang menyediakan ratusan kata-kata kunci. Semakin sedikit kata-kata kunci yang digunakan oleh suatu bahasa, semakin mudah bagi si pemakai untuk mempelajari dan menggunakan bahasa itu.

4. Proses executable program bahasa C lebih cepat.
Karena filosoli bahasa C yang memang hanya menyediakan sedikit kata-kata kunci, maka konsekuensinya program hasil dari kompilasi bahasa C bisa dibilang relatif akan lebih cepat prosesnya di bandingkan dengan hasil dari bahasa lain. Dengan demikian, aplikasi yang dibuat dengan bahasa C akan menjadi aplikasi yang efisien dan kompetitif.

5. Dukungan pustaka yang banyak.
Telah disebutkan bahwa keandalan bahasa C dicapai dengan fungsi-fungsi pustakanya. Fungsi-fungsi pustaka ini disediakan oleh versi-versi bahasa C masing-masing atau dapat dibeli dari sumber yang lain. Ribuan fungsi-fungsi pustaka C telah tersedia di pasaran sampai sekarang, mulai dari fungsi-fungsi pustaka yang sederhana sampai dengan yang rumit, misalnya itu funsi pustaka untuk membuat indeks dari file database menggunakan B+ tree yang digunakan di dBASE. Dukungan pustaka fungsi dan kelas yang cukup banyak ini memungkinkan pembuatan aplikasi makro.

6. Bahasa C adalah bahasa yang terstruktur.
Bahasa C mempunyai struktur yang baik sehingga mudah untuk dipahami. C disebut dengan bahasa yang terstruktur karena menggunakan fungsi-fungsi sebagai program-program bagiannya. Struktur bahasa C yang baik selain mudah dipelajari, juga memudahkan dalam pembuatan program, memudahkan pelacakan kesalahan program dan akan menghasilkan dokumentasi program yang baik.

7. Bahasa C termasuk bahasa tingkat menengah dan lebih dekat dengan bahasa mesin.

8. Kode program bersifat reuseable, sehingga dapat digunakan kembali pada project lain dengan hanya menggunakan library dan file header.

9. C++ dapat membuat aplikasi graphic processor berkualitas tinggi.


KEKURANGAN
1. Banyaknya Operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai.

2. Bagi pemula pada umumnya akan kesulitan menggunakan pointer
Jadi, dapat kita simpulkan, tidak ada salahnya kan kita belajar pemrograman dengan Bahasa C / C++ ini. Sebab cukup terorganisir, dan memungkinkan untuk pembuatan skala besar / makro.

sumber :
http://megaworld.multiply.com/journal/item/3/Kelebihan_Bahasa_C
http://kampoeng-it.blogspot.com/2009/08/kelebihan-kekurangan-bahasa-c.html
http://acieee.wordpress.com/2010/02/25/kelebihan-bahasa-c/

Minggu, 16 Oktober 2011

Pemanfaatan IT Dalam Kehidupan dan Tantangan Dunia IT


Teknologi Informasi dan Komunikasi dapat kita rasakan manfaatnya seperti transformasi ilmu pengetahuan bagi sektor-sektor pendidikan. Sementara ekonomi dapat mendorong usaha kecil dan menengah pedesaaan agar mendapatkan nilai lebih, serta menggerakkan roda perekonomian desa.

Coba kita pikirkan manfaatnya, jika penduduk desa dapat mencari informasi terbaru mengenai benih padi unggul, bibit unggul tanaman budidaya lainnya atau informasi komoditas hortikultura unggulan. Begitu juga dengan peternak yang dapat mengetahui tentang primadona produk unggulan peternak, tentunya akan meningkatkan taraf hidup masyarakat pedesaan.


Untuk e-education, kita sudah mengenal program Internet Goes to School, Community Access Point, e-Learning, Smart Campus dan Generasi Baru Guru Indonesia.

Internet dapat membuka peluang dan memberikan manfaat yang sangat banyak, termasuk dalam bidang keagamaan, bahkan dapat mempercepat penyebaran teknologi informasi ke wilayah-wilayah pedesaan.

Teknologi Informasi dan Komunikasi juga banyak diterapkan dalam perusahaan-perusahaan. Kebutuhan efisiensi waktu dan biaya menyebabkan setiap pelaku usaha merasa perlu menerapkan teknologi informasi dalam lingkungan kerja. Hal ini akan membantu dalam sistem manajemen dalam suatu perusahaan.


Semakin cepatnya perkembangan teknologi informasi dan  komunikasi menuntut manusia untuk mencoba membuat perubahan di segala jenis kehidupannya yang tujuannya adalah mendapatkan hasil maupun kondisi yang terbaik yang dapat dicapai. Banyaknya sector kehidupan yang ada diharapkan membuka inovasi baru bagi kita untuk menciptakan sesuatu yang baru untuk kemajuan peradaban manusia. 

Namun banyak juga tantangan yang harus kita hadapi dengan semakin berkembangnya dunia IT sekarang ini. Sebab dampak sebuah perkembangan IT bisa berdampak positif seperti yang dijelaskan di atas, maupun negatif. Jika akses yang terlalu bebas bisa berakibat fatal bagi perkembangan masyarakat, terutama di daerah yang haus akan informasi. Selain itu, perkembangan virus, phishing, dan berbagai ancaman di dunia IT juga semakin maju. Maka dari itu, semua inovasi tersebut hendaknya harus dibatasi oleh suatu aturan hukum Negara dan pemerintah juga harus menyiapkan perangkat peraturan terkait pembatasan kebebasan akses internet.


Minggu, 12 Juni 2011

Sedikit Cerita Tentang Modern Warfare 3



Pada bulan November 2011 mendatang kabarnya Activision akan merilis lanjutan game First Person Shooter yang sudah sangat populer Call of Duty Modern Warfare 2. Ya, sudah dapat kita tebak pasti akan berjudul Modern Warfare 3. Walaupun Activision belum memberikan secara rinci alur cerita di Modern Warfare 3, namun melalui video yang telah beredar gamer pun sudah bisa menebak, seperti apa game ini nanti.

Ada beberapa adegan dalam video berurasi 2 menit itu. Mulai dari reruntuhan kota New York, hingga baku tembak di berbagai tempat. Video itu pun sedikit mengindikasikan perang dunia 2.

Dikutip bloganakkomputer dari detikinet, Senin (13/6/2011), berikut adalah tebakan alur cerita dalam Modern Warfare 3.


Tidak tampak karakter yang dikenal
Tidak ada wajah Kapten Price atau Soap MacTavish dalam video itu. Ini berarti alur cerita diperkirakan berbeda dari sebelumnya. Namun bisa saja Activision menyediakan kejutan jika mendekati peluncurannya nanti.


Siapakah prajurit di atas?
Seorang narator yang mengisi suara dalam video tersebut berkata, "Tidak perlu tetara elit paling kuat di Bumi untuk menciptakan konflik besar, hanya perlu seorang pria,".

Jika gamer masih ingat, pernyataan tersebut sebenarnya pernah diucapkan oleh Makarov, pemimpin grup teroris Rusia. Namun belum jelas siapa karakter yang dimaksud dalam game itu.







Pertempuran di laut 

Cuplikan Modern Warfare 3 menayangkan sebuah kapal selam lengkap dengan persenjataan canggih untuk bertempur. Ini berarti pemain akan berkesempatan mencicipi serunya menjadi angkatan laut.


Sekutu atau Musuh Perancis?
Ada menara Eiffel dalam cuplikan Modern Warfare 3, berarti sudah jelas jika game ini akan mebawa pemain untuk bertempur di Paris. Namun belum bisa diketahui pemain akan bersekutu dengan Perancis, atau malah menjadi musuh besar mereka.

Modern Warfare 3, rencananya bakal dirilis pada 8 November 2011 untuk berbagai platform seperti PC, Xbox 360, dan PS3.

Mari kita tunggu kedatangan game ini.
:)

Kamis, 12 Mei 2011

Membuat Proxy Server berbasis Debian 5 (Lenny) sebagai Content Filter


Jenis aplikasi yang berfungsi untuk mem-blokir informasi yang datang dari internet di kenal dengan istilah Content Filter. Dengan aplikasi ini maka kita bisa menyaring informasi tertentu seperti pornografi, hacking, kekerasan dll yang tidak pantas muncul di browser client. Software yang bisa kita gunakan untuk membangun content filter diantaranya squid. Mari kita coba bersama bagaimana membangun proxy server sebagai content filter.

1. Pertama kita harus men-setting router dahulu. Untuk setting router dan IP nya dapat dilihat DI SINI.

2. Kemudian kita install paket-paket yang diperlukan yaitu squid.
Perintahnya :
D4V1D:~# apt-get install squid

3. Lalu remove / hapus pengaturan squid dasar, sebab kita akan membuat pengaturan dan rule yang baru.
D4V1D:~# rm /etc/squid/squid.conf

4. Setelah di hapus, buat squid.conf yang baru.
Perintahnya :
D4V1D:~# nano /etc/squid/squid.conf
Lalu isi squid.conf ini dengan script di bawah ini.
acl all src all
acl localnet src 192.168.1.0/26
acl situs url_regex -i "/etc/squid/blokir.txt"
http_access deny situs
http_access allow localnet
http_access allow all
http_port 3128 transparent
cache_mem 8 mb
memory_replacement_policy heap GDSF
cache_replacement_policy heap LFUDA
store_dir_select_algorithm round-robin
cache_dir aufs /cache 10000 24 256
cache_store_log none
cache_access_log /var/log/squid/access.log
cache_effective_user proxy
cache_effective_group proxy
visible_hostname proxy.bloganakkomputer.blogspot.com

Screenshoot squid.conf
keterangan :
Pada “acl localnet src 192.168.1.0/26” dapat disesuaikan dengan pengaturan IP anda yaitu ip yang anda gunakan pada eth1 dan merupakan gateway client. 

5. Buat list situs yang akan di blokir.
D4V1D:~# nano /etc/squid/blokir.txt
Isi dengan website atau kata kunci yang akan di blokir, sebagai contoh list di bawah.






blokir.txt



6. Buat cache.
D4V1D:~# mkdir /cache

7. Lalu ketik perintah di bawah ini secara urut untuk membuat Swap Directories.
D4V1D:~# chown –R proxy:proxy /etc/squid/blokir.txt
D4V1D:~# chown –R proxy:proxy /cache
D4V1D:~# /etc/init.d/squid stop
D4V1D:~# squid –z

8. Start squidnya
D4V1D:~# /etc/init.d/squid start

9. Edit file rc.local.
D4V1D:~# nano /etc/rc.local

Lalu masukkan iptables di bawah ini sebelum #exit 0
iptables -A PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 3128

Screenshoot rc.local

10. Terakhir, restart squidnya lagi.
D4V1D:~# /etc/init.d/squid restart

Pengujian

Untuk menguji content filter kita apakah sudah berhasil atau belum kita jalankan aplikasi Mozila Firefox. Sebelumnya kita perlu setting dahulu proxy nya. Ini cara settingnya…

1. Pilih Tools – Option

2. Kemudian pilih tab Advanced - Network, pilih Settings
Pada halaman Connection Settings, pilih Manual proxy configuration dan setting supaya menggunakan HTTP proxy 192.168.1.1 dan pada port 3128 (seperti gambar di bawah).


3. Nah sekarang kita coba ketik salah satu url yg telah kita setting pada blokir.txt di atas. Kita masukkan facebook.com pada address bar.


4. Jika hasilnya seperti pada gambar di atas, maka content filter kita sudah bekerja dengan baik dengan memblok situs facebook.com. Dapat juga kita coba dengan situs-situs yang telah kita masukkan.

Ok, teman-teman sekian dahulu sedikit ilmu dari saya (dari hasil browsing dan googling, hehe...) tentang Membuat Proxy Server berbasis Debian 5 (Lenny) sebagai Content Filter.
Semoga bermanfaat kawan.

D4V1D

Selasa, 10 Mei 2011

Membuat Proxy Server berbasis Debian 5 (Lenny) sebagai Autentikasi User


Dengan squid memungkinkan kita untuk membuat pembatasan koneksi melalui autentikasi. Dengan autentikasi maka user dipaksa harus memasukkan username dan password. Bila username dan password tersebut cocok dan terdaftar dalam database squid maka user tersebut diperbolehkan terkoneksi ke internet. Nah, pada tutorial kali ini saya ingin membahas sedikit tentang membuat proxy server berbasis Debian Lenny yang digunakan untuk autentikasi user sederhana. Bagaimana cara membangunnya? Mari kita coba bersama…

a. Pertama kita harus men-setting router dahulu. Untuk setting router dan IP nya dapat dilihat DI SINI.

b. Sebelum kita mengkonfigurasi autentikasi user mode ncsa dengan squid kita install dulu paket-paket yang dibutuhkan yaitu squid dan apache2. Kita install kedua paket tersebut dengan perintah :

D4V1D:~# apt-get install squid apache2

c. Ketikkan perintah di bawah ini secara urut.

D4V1D:~# touch /etc/squid/squid_passwd
D4V1D:~# chmod o+r /etc/squid/squid_passwd
D4V1D:~# htpasswd /etc/squid/squidpasswd david
(masukkan password baru)
(masukkan ulang password baru)







Screenshoot

Gunakan program htpasswd untuk menambahkan user ke file password. Anda bisa menambahkan setiap user setiap saat tanpa harus merestart Squid. Dalam hal ini, anda menambahkan satu username david.

d. Konfigurasi file squid.conf
Pada file squid.conf ada 2 konfigurasi utama yaitu meng-enablekan ncsa_auth dan konfigurasi acl serta http_access.
perintah :
D4V1D:~# nano /etc/squid/squid.conf


Hilangkan tanda “#” pada baris yang di dalam kotak. Pada bagian akhir kita ubah menjadi “/etc/squid/squid_passwd” (lihat gambar di atas).

Lalu tambahkan script seperti yang saya beri tanda kotak (seperti gambar di atas). Kita buat acl (access control list) dan http_access untuk mengatur apakah user diijinkan untuk melakukan autentikasi. Pada intinya hanya seperti itu.

Setelah semua konfigurasi selesai kita restart squid dengan perintah
D4V1D:~# /etc/init.d/squid restart

Pengujian

Untuk menguji autentikasi user kita apakah sudah berhasil atau belum kita jalankan aplikasi Mozila Firefox. Sebelumnya kita perlu setting dahulu proxy nya. Ini cara settingnya…

1.    1. Pilih Tools – Option

2.    2. Kemudian pilih tab Advanced - Network, pilih Settings
     Pada halaman Connection Settings, pilih Manual proxy configuration dan setting seperti gambar di bawah



3.    3. Sekarang kita coba ketik google.com pada address bar  dan hasilnya seperti di bawah ini


     Kita akan diminta memasukkan username dan password untuk dapat browsing.

4.    4. Nah kita masukkan nama user dan kata sandi nya seperti yang telah kita buat di atas. Kebetulan nama user saya “david” dan kata sandinya “123”. Setelah kita memasukkan nama user dan kata sandi squid akan meredirect to google.com.. Kemudian langsung browsing aja deh.

Ok, teman-temanku sebangsa dan setanah air sekian dahulu sedikit ilmu dari saya (sebenarnya dari hasil browsing dan googling, hehehe) tentang Membuat Proxy Server berbasis Debian 5 (Lenny) sebagai Autentikasi User.
Semoga berguna ya.
D4V1D

Membangun DHCP Server pada Debian 5 (Lenny)

 


DHCP (Dynamic Host Configuration Protocol) adalah sebuah mekanisme yang memunkinkan sebuah server untuk memberikan IP Address secara dinamik bagi client. Client melakukan permintaan IP Address kepada server, dan server memberikan alokasi bagi si client tersebut. Mekanisme ini akan sangat memberikan keuntungan bagi manajemen jaringan di karenakan proses setting IP Address tidak harus dilakukan manual untuk setiap client yang ada.

1. Instalasi

Software yang diperlukan untuk membuah sebuah service DHCP adalah dhcp3-server. Untuk melakukan instalasi dhcp3-server lakukan perintah:
D4V1D:~# mount /dev/dvd /cdrom  (berfungsi untuk mengenalkan cd installernya / proses mounting)
D4V1D:~# apt-get  install dhcp3-server  (untuk proses instalasi)

2. Konfigurasi

File konfigurasi dhcp3-server terletak di file /etc/dhcp3/dhcpd.conf. Gunakan editor nano untuk melakukan editing terhadap file konfigurasi tersebut. Sebelum melakukan konfigurasi DHCP Server, beberapa hal harus kita perhatikan diantaranya:

1. Alokasi IP Address yang akan diberikan kepada client harus berada satu network dengan IP Address server
2. Tentukan rentang IP Address yang akan diberikan kepada client tersebut
3. Alokasi IP Address untuk si client harus pula dilengkapi dengan subnet,  netmask,  dns server,   gateway,   broadcast

Edit file dhcpd.conf dengan perintah:
D4V1D:~# nano /etc/dhcp3/dhcpd.conf

Contoh konfigurasi DHCP yang saya buat, sesuai dengan IP yang telah kita setting pada pembuatan Router sebagai berikut.

# A slightly different configuration for an internal subnet.
  subnet 192.168.1.0 netmask 255.255.255.192 {
  range 192.168.1.10 192.168.1.20;
  option domain-name-servers 172.16.16.1;
  option domain-name "bloganakkomputer.com";
  option routers 192.168.1.1;
  option broadcast-address 192.168.1.63;
  default-lease-time 600;
  max-lease-time 7200;
}


Screenshoot dhcpd.conf

Jangan lupa lakukan proses restart terhadap service setiap kali kita melakukan perubahan pada
file konfigurasi:
D4V1D:~# /etc/init.d/dhcp3-server restart

3. Pengujian

Pengujian di Client
Untuk melakukan pengujian di sisi client, beberapa hal harus dilakukan diantaranya:
1.  Pastikan server dan client saling terkoneksi
2 . Lakukan proses pengaturan di sisi client bahwa settip IP Address di lakukan secara automatic.

1. Ikuti langkah-langkah berikut untuk melakukan setting di sisi client:
    Klik menu start - Control Panel
    Pilih Network Connection
    Pilih Local Area Network - klik kanan mouse - pilih Properties
    Pilih Internet Protocol (TCP/IP) - Pilih Properties
    Pilih opsi Obtain an IP address automatically
    Pilih opsi Obtain DNS server address automatically - tekan tombol OK



2. Setelah langkah diatas dilakukan, kita harus melakukan pengujian terhadap layanan service DHCP dari server. Ikuti langkah berikut:
     (a) Klik menu start - run ketik "cmd" . Maka akan muncul halaman dos prompt
     (b) Pada halaman Dos prompt tersebut lakukan perintah ipconf ig /release, pastikan bahwa IP address 
            dari interface berubah menjadi 0.0.0.0
     (c) Masih pada halaman yang sama ketikkan perintah ipconf ig /renew untuk memperoleh IP Address 
           dari server.
     (d) Bila tidak terjadi kesalahan seharusnya client sudah mendapat IP Address dari server.

Perhatikan gambar berikut yang membuktikan bahwa DHCP Server telah bekerja dan client memperoleh IP Address dari server.





Jika kita lihat Propertiesnya akan terlihat sebagai berikut.


Lalu coba kita ping gatewaynya..


Jika hingga langkah ini kita telah mendapat IP dari server dan ping gateway lancar berarti DHCP Server yang kita buat telah dapat berjalan dengan baik.
Sekian tutorial tentang DHCP server dan selamat mencoba.
D4V1D