Kamis, 04 Mei 2017

PERTEMUAN 6

Latihan Soal !
1.    Diketahui struktur file sekuen
Parameter hardisk
a)    Putaran disk = 8000 rpm
b)    Seek Time = 5 ms
c)    Transfer Rate = 2048 byte/ms
d)    Waktu untuk pembacaan dan penulisan = 2ms
2.    Parameter penyimpanan
a)    Metode blocking : fixed blocking
b)    Ukuran block = 4096 byte
c)    Ukuran pointer block = 8 byte
d)    Ukuran interblock GAP = 1024 byte
3.    Parameter file
a)    Jumlah record di file = 100.000 record
b)    Jumlah field = 8 field
c)    Jumlah nilai = 25 byte
4.    Parameter Reorganisasi
File log transaksi = 0 record
5.    Parameter Pemroses
Waktu untuk pemroses block = 2 ms
Hitung R, TF, TN, TI, TU, TX, TY
Jawaban !
·         R = a . V
= 8 . 25 byte
    = 200
·         TF = non kunci
TF = ½ .n (R / t')
t' = (t / 2) (R / (R + W))
WG = G / Bfr
Bfr = B / R
       = 4096 byte / 200
       = 20,48
WG = G / Bfr
        = 1024 byte / 20,48
        = 50
WR = B / Bfr
       = 4096 byte / 20,48
       = 200
W = WG + WR
     = 50 + 200
     = 250
t' = (t / 2) (R / (R + W))
    = (2048 byte / 2) (200 / (200 + 250))
    = 1024 (200 / 450)
= 1024 . 0,44 = 450,56
TF = ½ . n (R / t')
= ½ . 100.000 (200 / 450,56)
     = 50.000 . 0,44 = 22.000
·         TN = btt / Bfr
btt = B / t
      = 4096 byte / 2048 byte
      = 22
TN = 2/ 20,48
      = 0,09
·         TI = TF + ½ (n / Bfr) (btt / TRW)
    = 22.000 + ½ (100.000 / 20,48) (2 / 2)
    = 22.000 + 1/2. 4882,81
    = 22.000 + 2441,4 = 24441,4
·         TU = TF + TRW
= 22.000 + 2
      = 22.002
·         TX = Tsort + (o) + (n + o) (R / t')
      = 0 (o) + (100.000 + 0) (200 / 450,56)
= 0 + (100.000 . 0,44)
      = 44.000
·         TY = Tsort (o) + 2 (n + o) (R / t')
     = 0 (o) + 2 (100.000 + 0) (200 / 450,56)
     = 0 + (200.000 . 0,44)
     = 88.000

PERTEMUAN 5

Tugas Organisasi File Pile
Latihan Soal !
1.      Hitung R, TF, TN, TI, TU, TX, TY
Struktur File : Pile
Parameter Harddisk
a)      Putaran disk (RPM) adalah 6000 rpm
b)      Seek Time (s) 5 ms
c)      Transfer rate (t) sebesar 2kbyte/ms atau 2048 byte/ms
d)      Operasi pembacaan dan penulisan (TRW) sebesar 2 ms
              Parameter Penyimpanan
a)      Variabel Lenght Spanned Blocking
b)      Ukuran Block (B) = 4096 byte
c)      Ukuran Pointer Block (P) = 8 byte
d)      Ukuran Interblock gap (G) = 512 byte
               Parameter File
a)      Jumlah Record (n) adalah 10.600 rekord
b)      Jumlah field (a') rata – rata adalah 15
c)      Panjang nama rata – rata (A) adalah 12 byte
d)      Panjang nilai rata – rata (U) adalah 128 byte
                Parameter Reorganisasi
a)      Jumlah penambahan rekord (o) adalah 1.200 rekord
b)      Jumlah rekord ditandai sebagai dihapus (d) adalah 600 rekord
                Parameter Pemrosesan
                Waktu untuk pemroses blok (C) = 2 ms
Jawaban !
·         R = a' (A + V + 2)
   = 15 (12 + 128 + 2)
   = 15 . 142
   = 2.130
·         TF = ½ . n (R / t')
t' = (t / 2) (R / (R + W))
W = P + ( P + G) / Bfr
Bfr = (B – P) / (R + P)
      = (4096 – 8) / (2.130 + 8)
      = 4.088 / 2.130 = 1,91
W = P + (P + G) / Bfr
     = 8 + (8 + 512) / 1,91
     = 8 + (520 + 1,91)
     = 8 + 272,25
     = 280,25
t' = (t / 2) (R / (R + W))
   = (2.098 / 2) (2.130 + (280,25))
   = 1.024 (2.130 / 2410,25)
   = 1.024 . 0,88
   = 901,12
TF = 1/2 . n (R / t')
     = ½ . 10.600 (2.130 / 901,12
     = 5.300 . 2,36 = 12.508
·         TN = TF
TN = 12.508
·         TI = § + r + btt + TRW
r = ½ (60 . 1000) / Rpm
   = ½ (60.000 / 6000)
   = 5
Btt = B / t
       = 4.096/ 2.048
       = 2
TI = 5 + 5 + 2 + 2
     = 14
·         TU = TF + TRW
      = 12.508 + 2
      = 12.510
TU = TF + TRW + TI
      = 12.508 + 2 + 14
      = 12.524
·         TX = 2 . TF
      = 2 . 12.508
      = 25.016
·         TY = ((n + o) (R / t') + ((n + o - d) (R / t'))
     = ((10.600 + 1.200) + (2.130 / 901,12) + ((10.600 + 1.200 – 600) (2.130 / 901,12))
     = (11.800) (2,36) (11.200) (2,36)
     = 27,84 + 26,43
     = 54,27

Pertemuan 4

Organisasi File
·         Ukuran Record
Record Size (R) adalah R = a' (A + V + 2)
Dimana :
a' = rata – rata jumlah atribut
A = ukuran rata – rata atribut (field)
V = ukuran rata – rata nilai
2 = nilai separator konstanta untuk pemisah antar field dan antar record
·         Waktu Pengambilan Record Tertentu (TF)
Fecth Record adalah TF = ½ . n (R / t')
Dimana :
n = jumlah record
R = ukuran record
t' = bulk transfer time
·         Waktu Pengambilan Record Berikutnya (TN)
Next Record (TN) adalah TN = TF
·         Waktu Penyisipan Record (TI)
Insert Record adalah TI = S + r + Btt + TRW
·         Waktu Pembaharuan Record (TV)
-          Hanya dilakukan penimpaan, tanpa, penyisipan diakhir file
     Perhitungan: TV = TF + TRW
-          Dilakukan penandaan hapus dan penyisipan diakhir file
          Perhitungan: TV = TF + TRW + TI
·         Waktu Pembacaan Record (TX)
TX = 2.TF = n (R / t')
·         Waktu Reorganisasi File (TY)
TY = (n + o) (R / t') + (n + o – d) (R / t')
o= n insert
d = n delete

Selasa, 02 Mei 2017

SOAL SISTEM BERKAS PERTEMUAN 3

Fixed blocking
a)      BFR = B/R
= 2048/250
= 8,192
b)      TR    = R/T
= 250/2048
= 0,122
c)       BTT = B/T
= 2048/2048
= 1
    d)      WG = G/BFR
= 256/8,192
=31,25
   e)      WR = B/BFR
= 2048/8.192
= 250
   f)       W = WG/WR
= 31,25 + 250
=281,25
g)      T’ = (T/2)*{(R/(R+W)}
= (2048/2)*{250/(250+281,5)}
= 1024*(250/531,25)}
= 1024*0,47
= 481,28
Variable unspanned
a)      BFR = (B- R) / (R+P)
                      =(2048-) / (250+8)
= 1923/258
=7,453
   b)      W= P+( R+G) / BFR
Add caption
     = 8+(/7,453
            = 8+(381/7,453)
= 59,120
c)       T’= (T/2)* (R/ (R+W)
                                  = (2048/2)*(250/(250+59.120)
= 827,392
Variable spanned
                     a)      BFR = (B-P) / (R+P)                          
            = 2048 / 258
                           = (2048-8) / (250+8)       
 =7,90
b)      W = P+(P+G) / BFR
           = 8+(8+256) / 7,90
= 272 / 7,90
=34,40
c)       T’ = (T/2)*{R/(R+W)}
                             = (2048/2)*(250/(250+34,404)
=1024*0,879
= 900,096

MATERI SISTEM BERKAS PERTEMUAN 2

Primary Memory: memori inti dalam suatu komputer dan merupakan media penyimpanan dalam bentuk array yang disusun word atau byte, kapasitas daya simpannya bisa jutaan susunan. Setiap word atau byte mempunyai alamat tersendiri. Data yang disimpan pada memori utama ini bersifat volatile, artinya data yang disimpan bersifat sementara dan dipertahankan oleh sumber-sumber listrik, apabila sumber listrik dimatikan maka datanya akan hilang. Memori utama digunakan sebagai media penyimpanan data yang berkaitan dengan CPU atau perangkat I/O. Internal Storage: suatu penamaan konsep yang bisa menyimpan data dan program. Kemudian ditambah dengan kata internal, yang dimaksud adalah bahwa memori terpasang langsung pada motherboard. Dengan demikian, pengertian memory internal sesungguhnya itu dapat berupa : · First-Level (L1) Cache · Second-Level (L2) Cache · Memory Module Akan tetapi pengelompokan dari memory internal juga terbagi atas : · RAM (Random Access Memory) · ROM (Read Only Memory) *Penjelasan dari masing- masing pengertian diatas adalah sebagai berikut : RAM (Random Access Memory): Kelompok memori yang diberi nama Random Access Memory ini memiliki karakteristik yang sesuai dengan namanya. Dalam pengaksesan data yang tersimpan dalam memori dilakukan dengan cara acak (random) bukand engan cara terurut (sequential) seperti pada streamer. Hal ini berarti untuk mengakses elemen memori yang terletak dimanapun di dalam modul ini, akan diakses dalam waktu yang sama. ROM (Read Only Memory): Kelompok memori yang bernama Read Only Memory ini juga memiliki karakteristik yang sesuai dengan namanya. Data yang ada di dalam ROM ini adalah data yang telah dimasukkan oleh pembuatnya. Data yang telah terkandung di dalamnya tidak dapat diubah-ubah lagi melalui proses yang normal, dan hanya dapat dibaca saja. Secondary memory: adalah penyimpanan yang terpisah atau tidak berhubungan langsung dengan Central Processing Unit (CPU). Memori sekunder digunakan untuk menyimpan atau menampung data yang lebih besar dan permanen, bisa juga dikatakan sebagai back-up dari memori utama. Exsternal Storage: Memori eksternal adalah perangkat keras untuk melakukan operasi penulisan, pembacaan dan penyimpanan data, di luar komponen utama yang telah disebutkan di atas. Contoh dari memori eksternal adalah floppy disk, harddisk, cd-rom, dvd. Hampir semua memori eksternal yang banyak dipakai belakangan ini berbentuk disk/piringan sehingga operasi data dilakukan dengan perputaran piringan tersebut. Dari perputaran ini, dikenal satuan rotasi piringan yang disebut RPM (Rotation Per Minute). Makin cepat perputaran, waktu akses pun semakin cepat,namu makin besar juga tekanan terhadap piringan sehingga makin besar panas yang dihasilkan. Untuk media berkapasitas besar dikenal beberapa sitem yang ukuran RPM nya sebagai berikut: 3600 RPM Pre-IDE 5200 RPM IDE 5400 RPM IDE/SCSI 7200 RPM IDE/SCSI 10000 RPM SCSI Setiap memori eksternal memiliki alat baca dan tulis yang disebut head (pada harddisk) dan side (pada floppy). Tiap piringan memiliki dua sisi head/side, yaitu sisi 0 dan sisi 1. Setiap head/side dibagi menjadi lingkaran lingkaran konsentris yang disebut track. Kumpulan track yang sama dari seluruh head yang ada disebut cylinder. Suatu track dibagi lagi menjadi daerah-daerah lebih kecil yang disebut sector. Hirarki Memory: sebuah pedoman yang di lakukan oleh para perancang demi menyeryakan kapasitas, waktu akses dan harga memori untuk tiap bitnya. Hirarki memori itu sendiri terbagi menjadi dua macam, yakni: 1. Hirarki Memori tradisional. 2. Hirarki Memori Kontemporer. Kemudian jika timbul pertanyaan mengapa jika didasarkan pada hirarki memori, semakin kebawah semakin murah dan bila semakin keatas semakin mahal? jawabannya adalah karena hirarki memori memang disusun sedemikian rupa agar semakin ke bawah memori dapat mengalami hal-hal berikut : 1. peningkatan waktu akses memori (semakin ke bawah semakin lambat, semakin ke atas semakin cepat. 2. peningkatan kapasitas (semakin ke bawah semakin besar, semakin ke atas semakin kecil). 3. peningkatan jarak dengan prosesor (semakin ke bawah semakin jauh, semakin ke atas semakin dekat). 4. penurunan harga memori tiap bitnya (semakin ke bawah semakin semakin murah, semakin ke atas semakin mahal). REPRESENTASI DATA DAN DENSITY PADA MAGNETIC TAPE Data direkam secara digit pada media tape sebagai titik-titik magnetisasi pada lapisan ferroksida. Magnetisasi positif menyatakan 1 bit, sedangkan magnetisasi negatif menyatakan 0 bit atau sebaliknya. Tape terdiri atas 9 track, 8 track dipakai untuk merekam data dan track yang ke 9 untuk koreksi kesalahan. Salah satu karakteristik yang penting dari tape adalah density (kepadatan) dimana data disimpan. Density adalah fungsi dari media tape dan drive yang digunakan untuk merekam data ke media tadi. Satuan yang digunakan density adalah bytes per inch (bpi). Umumnya density dari tape adalah 1600 bpi dan 6250 bpi. (bpi ekivalen dengan character per inch). PARITY DAN ERROR CONTROL PADA MAGNETIC TAPE Salah satu teknik untuk memeriksa kesalahan pada magnetic tape adalah dengan parity check. Ada 2 jenis Parity Check, yaitu: • Odd Parity (Parity Ganjil) Jika data direkam dengan menggunakan odd parity, maka jumlah 1 bit yang merepresentasikan suatu karakter adalah ganjil. Jika jumlah 1 bit nya sudah ganjil, maka parity bit yang terletak pada track ke 9 adalah 0 bit, akan tetapi jika jumlah 1 bit nya masih genap, maka parity bit nya adalah 1 bit. • Even Parity (Parity Genap) Bila kita merekam data dengan menggunakan even parity, maka jumlah 1 bit yang merepresentasikan suatu karakter adalah genap. Jika jumlah 1 bitnya sudah genap, maka parity bit yang terletak pada track ke 9 adalah 0 bit, akan tetapi jika jumlah 1 bit nya masih ganjil, maka parity bit nya adalah 1 bit. Sistem Block pada Magnetic Tape: Data yang dibaca dari atau ditulis ke tape dalam suatu grup karakter disebut block. Suatu block adalah jumlah terkecil dari data yang dapat ditransfer antara secondary memory dan primary memory pada saat akses. Sebuah block dapat terdiri dari satu atau lebih record. Sebuah block dapat merupakan physical record.Diantara 2 block terdapat ruang yang kita sebut sebagai gap (inter block gap). Keuntungan Penggunaan magnetic tape: 1. Panjang record tidak terbatas. 2. Density data tinggi. 3. Volume penyimpanan datanya besar dan harganya murah. 4. Kecepatan transfer data tinggi. 5. Sangat efisiensi bila semua atau kebanyakan record dari sebuah tape file memerlukan pemrosesan seluruhnya Keterbatasan Magnetic Tape: 1. Akses langsung terhadap record lambat 2. Masalah lingkungan 3. Memerlukan penafsiran terhadap mesin 4. Proses harus sequential KARAKTERISTIK SECARA FISIK PADA MAGNETIC DISK: Disk pack adalah jenis alat penyimpanan pada magnetic disk, yang terdiri dari beberapa tumpukan piringan alumunium. Dalam sebuah pack/tumpukan umumnya terdiri dari 11 piringan, setiap piringan diameternya 14 inch (8 inch pada minidisk) dan menyerupai piringan hitam. Permukaannya dilapisi dengan metal oxide film yang mengandung magnetisasi seperti pada magnetic tape. Banyaknya track pada piringan menunjukkan karakteristik penyimpanan pada lapisan permukaan, kapasitas disk drive dan mekanisme akses. Disk mempunyai 200-800 track per permukaan (banyaknya track pada piringan adalah tetap). Pada disk pack yang terdiri dari 11 piringan mempunyai 20 permukaan untuk menyimpan data. Kedua sisi dari setiap piringan digunakan untuk menyimpan data, kecuali pada permukaan yang paling atas dan paling bawah tidak digunakan untuk menyimpan data, karena pada bagian tersebut lebih mudah terkena kotoran/debu dari pada permukaan yang di dalam. Arm pada permukaan luar hanya dapat mengakses separuh data. Untuk mengakses, disk pack disusun pada disk drive yang didalamnya mempunyai sebuah controller, access arm, read/write head dan mekanisme untuk rotasi pack. Ada disk drive yang dibuat built-in dengan disk pack, sehingga disk pack ini tidak dapat dipindahkan yang disebut non removable, sedangkan disk pack yang dapat dipindahkan disebut removable. Disk Controller menangani perubahan kode dari pengalamatan record, termasuk pemilihan drive yang tepat dan perubahan kode dari posisi data yang dibutuhkan disk pack pada drive. Controller juga mengatur buffer storage untuk menangani masalah deteksi kesalahan, koreksi kesalahan dan mengontrol aktivitas read/write head. Susunan piringan pada disk pack berputar terus menerus dengan kecepatan perputarannya 3600 per menit, tidak seperti pada tape, perputaran disk tidak berhenti diantara pengaksesan block. Read/Write head pada disk drive disusun pada access arm yang posisinya terletak diantara piringan-piringan pada device. Kerugiannya bila terjadi situasi dimana read/write head berbenturan dengan permukaan penyimpanan record pada disk, hal ini disebut head crash. EPRESENTASI DATA DAN PENGALAMATAN PADA MAGNETIC DISK: Data pada disk juga di block, seperti data pada magnetic tape. Pemanggilan sebuah block adalah banyaknya data yang diakses pada sebuah storage device. Data dari disk dipindahkan ke sebuah buffer pada main storage komputer untuk diakses oleh sebuah program. Kemampuan mengakses secara direct pada disk menunjukkan bahwa record tidak selalu diakses secara sekuensial. Ada 2 teknik dasar untuk pengalamatan data yang disimpan pada disk, yaitu: - Metode Silinder - Metode Sektor Organisasi Berkas dan Metoda Akses pada Magnetic Disk: Untuk membentuk suatu berkas di dalam magnetic disk bisa dilakukan secara sequential, index-sequential ataupun direct. Sedangkan untuk mengambil suatu data dari berkas yang disimpan dalam disk, bisa dilakukan secara langsung dengan menggunakan direct access method atau dengan sequential access method (secara sequential). D. Kelebihan dan Kekurangan Magnetic Disk Media magnetik seperti disket floppy dan hard disk mempunya sejumlah keunggulan dibanding dengan media lainnya. Penyimpanan data pada media ini bersifat nonvolatile, artinya data yang telah disimpan tidak akan hilang ketika komputer dimatikan. Data pada media ini dapat dibaca, dihapus dan ditulis ulang. Keunggulan lainnya ialah, media ini mudah digunakan. Selain memiliki keunggulan, media ini juga mempunyai kelemahan. Musuh utama dari media magnetik seperti disket floppy dan hard disk. Karena jamur dan karat ini, maka daya tahan atau umur media ini menjadi pendek. Jika dipakai secara kontinu atau terus menerus sekitar 8 jam per hari, maka umur suatu disket floppy paling lama 1 (satu) tahun, dan umur hard disk paling lama 3 (tiga) tahun. Kelemahan lain dari media magnetik ini ialah bentuknya yang bergaris-garis (track, sector), sehingga kecepatan dan kapasitas simpannya termasuk rendah jika dibanding dengan media optik. Optical disk: adalah media penyimpanan data elektronik yang dapat ditulis dan dibaca dengan menggunakan sinar laser bertenaga rendah. Jenis-Jenis Optical disk: ada beberapa Jenis Optical disk saat ini, dimulai dari CD, DVD, Blu Ray, hingga saat ini ada yang terbaru dari optical disk yaitu FM DISK

Sabtu, 17 Januari 2015

Bagaimana Cara Menjadi Programmer

Tidak mudah untuk menjadi seorang programmer, kamu harus terus belajar dan disiplin. Seperti yang saya jelasakan di posting saya sebelumnya, kamu harus mempunyai minat pada program komputer, website, aplikasi mobile, game dan semua yang berhubungan dengan software. Oleh karena saya membuat posting, ini akan menjelaskan apa yang dibutuhkan untuk menjadi seorang programmer yang profesional.


1. Coding Setiap Hari
Menguasai bahasa pemrograman membutuhkan waktu yang tidak sebentar. Bahkan bahasa sederhana seperti Phyton, membutuhkan setidaknya sekitar satu atau dua hari untuk bisa benar-benar menguasai syntaxnya. Biasakan untuk setidaknya menyempatka sedikit waktu untuk belajar pemrograman setiap hari, setidaknya luangkan waktu sekitar satu jam per hari. 

2.Tentukan Tujuan Dari Programmu
Dengan menentukan tantangan dan tujuan, kamu akan bisa menyelesaikan suatu permasalahan. Cobalah untuk membuat aplikasi sederhana seperti kalkulator, lalu kembangkanlah sampai benar-benar sesuai harapanmu. Aplikasikan syntak dan konsep yang telah kamu pelajari.

 3. Diskusikan dan Pelajari Program Lain
Ada banyak komunitas pemrograman yang berdedikasi pada bahsa pemrograman yang lebih spesifik. Menemukan dan berpartisipasi dalam komunitas akan membantumu dalam proses pembelajaran. Kamu akan menemui hal-hal baru dalam suatu komunitas. Mempelajari kode pemrograman orang lain juga akan membantumu.
  • Periksalah forum pemrograman dan komunitas online yang sesuai dengan bahasa pemrograman yang ingin kamu pelajari. Pastikan kamu tidak hanya berpartisipasi tapi juga bertanya dan aktif dalam forum tersebut. Selain rajin untuk bertanya, sempatkan juga untuk menunujukan hasil dari karyamu.your

4. Tantanglah Dirimu
Cobalah untuk melakukan sesuatu yang belum pernah kamu coba sebelumnya. Belajarlah untuk hal baru tersebut dan cobalah untuk menguasainya.
 
5. Perluas Wawasanmu
Take a few training courses. Many universities, community colleges, and community centers offer programming classes and workshops that you can attend without having to enroll in the school. These can be great for new programmers, as you can get hands-on help from an experienced programmer, as well as network with other local programmers.

6. Beli atau Pinjam Buku
There are thousands of instructional books available for every conceivable programming language. While your knowledge should not come strictly from a book, they make great references and often contain a lot of good examples.

7. Belajarlah Matematika dan Logika
Most programming involves basic arithmetic, but you may want to study more advanced concepts. This is especially important if you are developing complex simulations or other algorithm-heavy programs. For most day-to-day programming, you don't need much advanced math. Studying logic, especially computer logic, can help you understand how best to approach complex problem solving for more advanced programs.

8. Jangan Pernah Berhenti Belajar Bahasa Pemrograman
There is a popular theory that becoming an expert takes at least 10,000 hours of practice. While this is up for debate, the general principle remains true: mastery takes time and dedication. Don't expect to know everything overnight, but if you stay focused and continue to learn, you may very well end up an expert in your field.

9. Pelajari Bahasa Pemrograman Yang Lain
While you can certainly get by with mastering one language, many programmers help their chances of success in the field by learning multiple languages. Their second or third languages are usually complementary to their first one, allowing them to develop more complex and interesting programs. Once you have a good grasp on your first program, it may be time to start learning a new one.
  • You will likely find that learning your second language goes much quicker than the first. Many core concepts of programming carry over across languages, especially if the languages are closely related.
10. Buatlah Daftar Pencapaian Di Masa Mendatang
While not strictly necessary, a four year program at a college or university can expose you to a variety of different languages, as well as help you network with professionals and other students. This method certainly isn't for everyone, and plenty of successful programmers never attended a four-year institution.

 11. Buat Portofolio
As you create programs and expand your knowledge, make sure that all of your best work is saved in a portofolio. You can show this portfolio to recruiters and interviewers as an example of the work you do. Make sure to include any work done on your own time, and ensure that you are allowed to include any work done with another company.

 12. Cobalah Pekerjaan Freelance
There is a very large freelance market for programmers, especially mobile app developers. Take on a few small freelance jobs to get a feel for how commercial programming works. Oftentimes you can use the freelance jobs to help build your portfolio and point to published work. 

13. Kembangkanlah Programmu Sendiri
You don't have to work for a company to make money programming. If you have the skills, you can develop software yourself and release it for purchae, either through your own website or through another marketplace. be prepared to be able to provide support for any software you release for commercial sale, as customers will expect their purchase to work.
  • Freeware is a popular way to distribute small programs and utilities. The developer doesn't receive any money, but it's a great way to build name recognition and make yourself visible in the community.

Rabu, 14 Januari 2015

Bagaimana Cara Belajar Bahasa Pemrograman

Jika kamu suka dengan program komputer, mobile apps, website, game atau semua yang berhubungan dengan perangkat lunak, maka kamu harus belajar pemrograman. Semua program diciptakan dengan menggunakan bahasa pemrograman. Bahasa ini mempunyai fungsi untuk mengendalikan sebuah mesin yang sedang berjalan, entah itu komputer, handphone atau semua perangkat keras lainnya.



1. Tentukan Tujuanmu
Kamu bisa memulai belajar bahasa pemrograman apapun yang menurutmu paling mudah, jadi kamu nantinya mempunyai tingkatan yang ingin dikuasai. Ini akan membantumu menentukan bahasa pemrograman apa yang ingin kamu kuasai.
  • Jika kamu ingin menjadi web developer, kamu harus menguasai semua bahasa pemrogaman yang berhubungan dengan pengembangan program komputer. Sedangkan aplikasi mobile membutuhkan tingkat pemrograman yang berbeda dengan pemrograman komputer. Semua pilihan yang kamu ambil akan menentukan tujuanmu.

2. Mulailah dari yang paling "Mudah".
Semua hal selalu ada tahapan-tahapannya, merangkak dulu sebelum berjalan, berjalan sebelum berlari begitu juga belajar bahasa pemrograman. Mulailah dari yang paling mudah, lalu melangkah ke yang lebih sulit jika merasa mampu, begitu seterusnya sampai benar-benar mahir. 
  • Dua bahasa pemrograman dasar yang terkenal adalah Phyton dan Ruby. Kedua bahasa bersifat OOP dan syntax yang mudah dipelajari..
  • "Object-oriented" berarti bahasa tersebut bersifat seperti objek atau sekumpulan data yang dibangun dengan konsep seperti sebuah objek. Konsep ini biasanya dipakai oleh beberapa bahasa pemrograman natara lain C++, Java, Objective-C, and PHP.

3. Mulalilah dengan tutorial dasar
Jika kamu masih bingung dalam menentukan bahasa pemrograman yang ingin kamu pelajari, maka membaca beberapa tutorial dasar beberapa bahasa pemrograman mungkin akan membantumu. Jika kamu sudah menemukan bahasa pemrograman yang ingin kamu pelajari, maka saatnya kamu untuk mencobanya.
  • Phyton- Mudah untuk dipelajari dan juga sangat familiar dengan user. Digunakan pada banyak aplikasi web dan beberapa game.
  •  Java- Digunakan pada segala jenis program, dari mulai game ke aplikasi web juga digunakan pada software ATM.
  •  HTML- Tempat bermula para programer yang ingin mempelajari aplikasi web. Mempelajari adalah ilmu wajib bagi para web developer.
  • C- Adalah pemrograman yang paling berguna dan merupakan dasar dari modern C++, C#, dan Objective-C.

4. Pelajari Inti Dari Bahasa Pemrograman
Setiap bahasa pemrograman mempunyai konsepnya masing-masing tergantung pada fungsinya. Belajar mengenai konsep dan kugunaan setiap bahasa pemrograman akan sangat berguna dan efektif dalam pembelajaran. Berikut adalah beberapa konsep inti dari beberapa bahasa pemrograman:
  • Variables - Sebuah variable berfungsi untuk menjalankan dan memanipulasi data. Variable biasanya sering didefinisikan dengan "integers", "characters" dan lain-lainnya. Ini akan mempermudah pemahaman bagaimana varibel berinteraksi dengan kode yang lain.
  • Conditional Statements - Sebuah conditional statement adalah sebuah pernyataan yang berfungsi untuk menentukan benar atau salah. Pernyataan yang sering digunakan adalah "true" atau "false".
  • Functions atau Subroutines - Nama dari fungsi ini berbeda-beda tergantung dari setipa bahasa pemrograman. Juga sering disebut "Procedure" atau "Method". Sebuah fungsi juga bisa dipanggil atau digunakan berulang-ulang, sehingga akan memudahkan para programer dalam membuat program yang rumit. 
  • Data input - Ini adalah konsep umum yang sering digunakan pada setiap bahasa pemrograman,. Bagaimana beberapa data digunakan tergantung pada tipe pada suatu program. Ini juga tergantung pada input dari user, yang hasilnya nanti juga akan dikembalikan pada user melalui output. 

5. Install Software Yang Diperlukan.
Banyak bahasa pemrograman yang membutuhkan sebuah "compiler", dimana beberapa program memang didesain seperti itu. Bahasa pemrograman yang lain, seperti Phyton menggunakan penerjemah yang bisa berjalan tanpa "compiler".
  • Beberapa bahasa pemrograman menggunakan IDE (Integrated Development Environment) yang biasanya berisi kode editor, compiler atau interpreter dan debugger. Ini memungkinkan programmer untuk memanfaatkannya dengan sebaik mungkin.
  • Ada banyak macam kode editor yang bisa didapatkan secara online. Beberapa juga ada yang menyediakan pewarnaan syntax dan tampilan yang bersahabat.

6. Fokus Pada Satu Tujuan
Di setiap bahasa pemrograman selalu diajarkan program "Helo World". Ini adala program yang sangat simpel karena hanya menampilkan teks "Hello, World" atau variasi lain. Ini merupakan sybtax dasar yang sangat mudah untuk dipelajari.

7. Carilah Tutorial di Internet 
Ada banyak ribuan contoh code dari setiap bahasa pemrograman yang bisa dicari di internet. Gunakanlah contoh dari internet tersebut untuk menguji macam-macam aspek yang ada di dalam bahasa pemrograman. Kumpulkan lalu buatlah programmu sendiri.

8. Ujilah Syntaxmu.  
Syntax adalah salah satu cara untuk memepelajari cara kerja compiler dan interpreter. Setiap bahasa pemrograman mempunyai syntaxnya masing-masing, meskipun mempunyai beberapa kesamaan dalam beberapa hal. Di dalam kehidupan syntax adalah pondasi dasar dari sebuah bangunan. Mempelajari syntax sama dengan mempelajari bahasa pemrograman itu sendiri.

9. Mulailah Belajar debugging.
Jika kamu sedang belajar bahasa pemrograman, maka kamu pasti akan menemukan error atau yang biasa debugging. Ada banyak masalah yang disebabkan oleh error yang bisa berakibat pada proses running atau compiling. Menemukan dan memperbaiki sebuah error adalah kegiatan utama dari seorang prrogrammer, jadi biasakanlah.
  • Semakin sering kamu bereksperimen dengan program kamu, maka kamu akan menemukan cara untuk menyelesaikan suatu masalah. Menemukan berbagai alternatif untuk menyelesaikn amasalah adalah salah satu syarat yang harus dimiliki oleh seorang programmer.
10. Beri Komentar Pada Semua Kodemu.
Hampir semua bahasa pemrograman mempunyai fungsi komentar yang mengijinkanmu untuk memberi pengingat mengenai kode tersebut, entah itu fungsi, error atau yang alinnya. Komentar tidak hanya berfungsi sebagai pengingat, tapi juga bisa sebagai penjelasan atau definisi dari kode tersebut. Ini akan sangat berguna untuk memahami atau mempelajari fungsi dari suatu kode pada program.