Laporan Aktivitas Belajar
Nama Lengkap:Moch. Rahadiansyah NoorNIM/ No. Registrasi:11031416Alamat email:Thedevil.syah5@gmail.comProgram & Opsi:D1 ITB TKJ APLTahap Perkuliahan ke-:1dUSBJJ:Seamolec
Aktivitas Belajar MandiriRangkuman materi perkuliahan yang telah saya pelajari (100-400 kata):Materi 1d adalah materi tentang pengenalan komponen computer. Pengenalan disini adalah memilih salah satu komponen computer, yang saya ambil adalah motherboard. Saya menjelaskan tentang posisi komponen-komponen yang ada pada mother board beserta pemasangannya. Dari mulai pemasakan kabel power supply hingga pemasangan kabel hardisk, pada tugas yang saya buat bahwa komponen motherboard adalah komponen induk dalam sebuak computer karena semua komponen tersambung melalui matherboardKendala atau kesulitan yang telah saya atasi (termasuk cara mengatasinya) dan yang masih saya hadapi:Tidak ada kendala sama sekali
Video Dokumentasi BelajarCuplikan gambar (screenshots) dari Video Dokumentasi Belajar yang telah saya buat:Link berikut menampilkan Video Dokumentasi Belajar yang telah saya upload ke Youtube:http://www.youtube.com/watch?v=KORVtBkNXTM&client=mv-google&gl=IN&hl=id
Wednesday, December 3, 2014
Laporan tugas
Wednesday, November 26, 2014
Laporan Aktivitas Belajar
Nama Lengkap
|
:
|
Moch. Rahadiansyah
Noor
|
NIM/ No. Registrasi
|
:
|
11031416
|
Alamat email
|
:
|
Thedevil.syah5@gmail.com
|
Program & Opsi
|
:
|
Aplikasi Perangkat
Lunak
|
Tahap Perkuliahan ke-
|
:
|
1 c
|
USBJJ
|
:
|
Seamolec
|
Aktivitas
Belajar Mandiri
|
Rangkuman materi
perkuliahan yang telah saya pelajari (100-400 kata):
|
Materi pertama adalah character
building. Rangkuman materi yang ada pada tahapperkuliahan pertama atau 1a
adalah membangun karakter dan membuat sebuah rencana perhari.
a. Menumbuhkan Kemandirian
b. Mempererat Kebersamaan antar mahasiswa
c. Ketelitian dalam menghadapi tugas dan pekerjaan
d. Membentuk Karakter yang lebih matang Ilmu yang bermanfaat bagi
masyarakat
Untuk pertemuan 1 b adalah
pembuatan karakter menggunakan aplikasi blender. Karakter yang di buat adalah
golem monyet yaitu manusia batu yang memiliki wajah seperti monyet dengan
texture yang aga kasar
|
Kendala atau
kesulitan yang telah saya atasi (termasuk cara mengatasinya) dan yang masih
saya hadapi:
|
Kendala pertama
adalah saat pembuatan karakter menggunakan aplikasi blander karena saya masih
awam. Tetapi setelah megulas kembali materiyang disajikan saya akhiurnya
sedikit demi sedikit paham
|
Video
Dokumentasi Belajar
|
Cuplikan gambar (screenshots)
dari Video Dokumentasi Belajar yang telah saya buat:
|
|
|
Link berikut menampilkan Video Dokumentasi Belajar yang telah saya
upload ke Youtube:
|
Thursday, November 6, 2014
Tugas 1
1. Carilah
5 makna (arti penting) mengikuti program D1 ITB.
a. Menumbuhkan
Kemandirian
b. Mempererat
Kebersamaan antar mahasiswa
c. Ketelitian
dalam menghadapi tugas dan pekerjaan
d. Membentuk
Karakter yang lebih matang
e. Ilmu
yang bermanfaat bagi masyarakat
2. Buatlah
penilaian 5 makna tersebut dari yang paling bermakna sampai yang paling kecil
maknanya.
a. Ilmu
yang bermanfaat sangat penting karena selain menambah kemampuan diri sendiri
dalam bidang ilmu serta dapat membantu masyarakat
b. Membentuk
karakter yang lebih matang adalah lebih kepada penguasaan diri dan control
emosi untuk bertindak
c. Mempererat
kebersamaan penting untuk meniungkatkan rasa saling percaya pada sesame rekan
mahasiswa serta pelatihan untuk nanti di dunia kerja/masyarakat
d. Ketelitian
untuk membantu konsentrasi dalam belajar
e. Menumbuhkan
kemandirian karena dalam program D1 ITB yang mengusung pendidikan berbasis
e-learning maka kita harus belajar sendiri dalam pembelajaran yang diberikan
Renungkan kembali 5 makna tersebut dan selalu diperkuat
setiap hari.
Tugas 2a
• Sebelum mengikuti program D1 ITB setiap peserta pasti
memiliki kegiatan harian.
• Tulis kegiatan harian tersebut, sesuai yang dilakukan
sehari-hari.
• Tidak perlu sama untuk setiap peserta.
• Tidak perlu merasa salah kalau berbeda dengan rekan lain.
21.00 –
04.30 Tidur Malam
04.30 –
05.00 bangun, sholat
subuh
05.00 – 07.00
mengerjakan pekerjaan
rumah
07.00 –
09.30 menyiapkan diri
ketempat kerja
09.30 –
12.00 kerja di PKBM
12.00 –
13.00 Istirahat
13.00 –
17.00 kerja kembali
17.00 –
17.30 Pulang kerumah
17.30 –
19.00 rehat
19.00 –
20.30 menonton tv
20.30 –
21.00 browsing
Tugas 2b
Tulis Kegiatan Generik Harian IDEAL
• Dari
kegiatan generik harian yang ideal, buatlah rencana kegiatan generik harian
IDEAl yang sesuai dengan peserta.
– Tidak perlu sama untuk setiap peserta.
– Tidak perlu merasa salah kalau berbeda
dengan rekan lain.
– Yang
terpenting, dapat mengalokasikan waktu yang cukup untuk belajar dan mampu
dilakukan peserta secara konsisten setiap hari.
21.00 –
04.30 Tidur Malam
04.30 –
05.00 bangun, sholat
subuh
05.00 – 07.00
mengerjakan pekerjaan
rumah
07.00 –
09.30 menyiapkan diri
ketempat kerja
09.30 –
12.00 kerja di PKBM
12.00 –
13.00 Istirahat
13.00 –
17.00 kerja kembali
17.00 –
17.30 Pulang kerumah
17.30 –
19.00 rehat
19.00 –
20.30 Belajar
20.30 –
21.00 browsing
- Rancangan cara belajar mandiri
-
Tuliskan tahap atau cara belajar yang selama ini
dilakukan
-
Buatlah cara belajar mandiri berdasarkan contoh
tahapan belajar yang generik (melakukan setiap tahapan secara disiplin)
-
Variasikan cara belajar sesuai pribadi
masing-masing (dengan musik, di alam, diskusi dengan teman, membaca di
perpustakaan Dsb), agar seluruh instrumen belajar (pendengaran, penglihatan,
hati, pikiran, semuanya menjadi aktif),
-
pastikan motivasi dan rasa ingin tahu semakin
besar dengan bertambahnya pengetahuan dan keterampilan.
|
No.
|
Tahap Belajar
|
Cara belajar
|
Variasi Belajar
|
Motivasi Belajar
|
|
|
1.
|
mempersiapkanproses dalam pembentukan kepribadian
|
·
Mendefenisikan sosialisasi dan pembentukan
kepribadian
·
Mendeskripsikan peran nilai dan norma dalam
sosialisasi
·
Menjelaskan tahapan perkembangan diri manusia.
·
Menjelaskan faktor-faktor yang berpengaruh
terhadap pembentukan kepribadian.
·
Menjelaskan hubungan antara pembentukan
kepribadian dengan kebudayaan.
·
Menjelaskan agen-agen yang berperan dalam
sosialisasi.
·
Mendeskripsikan hubungan sosialisasi dengan
kepribadian
|
Sosialisasi dan pembentukan kepribadian
|
·
Mendengarkan penjelasan tentang hakikat
sosialisasi dan pembentukan kepribadian.
·
Secara individu mengamati proses sosialisasi
dalam pembentukan kepribadian di lingkungan terdekat.
·
Secara individu menceritakan hasil pengamatan
tentang proses sosialisasi dalam pembentukan kepribadian.
·
Mendiskusikan peran nilai dan norma dalam
proses sosialisasi.
·
Secara berkelompok membuat deskripsi
faktor-faktor yang mempengaruhi perkembangan kepribadian.
·
Mempresentasikan hasil diskusi tentang
factor-faktor yang mempengaruhi perkembangan kepribadian.
·
Secara individu menggali informasi dari
berbagai sumber belajar yang berkaitan dengan agen-agen sosialisasi dan
tujuan.
·
Secara berkelompok mendiskusikan hubungan
sosialisasi dengan pembentukan kepribadian
|
|
|
2.2.
|
Mendeskripsikan terjadinya perilaku menyimpang dan
sikap-sikap anti sosial.
|
·
Mengidentifkasikan terjadinya perilaku
menyimpang sebagai hasil sosialisasi
yang tidak sempurna.
·
Mengklasifikasi jenis-jenis perilaku
menyimpang
·
Mengidentifikasikan sifat dan macam perilaku
menyimpang.
·
Memberikan opini tentang berbagai perilaku
menyimpang dalam masyarakat
|
Perilaku Menyimpang
|
·
Secara individu menggali informasi melalui
data-data kepustakaan dan media massa tentang perilaku menyimpang
·
Secara individu mengamati perilaku menyimpang
yang terjadi di dalam masyarakat sekitar
·
Secara individu mengungkapkan kembali hasil
pengamatan yang didapat di masyarakat sekitar.
·
Secara bergantian melaporkan terjadinya
perilaku menyimpang sesuai dengan hasil temuan di kliping korang/internet.
·
Secara kelompok mendiskusikan jenis-jenis
perilaku menyimpang.
·
Secara berkelompok menyimpulkan solusi yang
tepat untuk menanggulangi terjadinya perilaku menyimpang.
|
|
|
2.3.
|
Menerapkan aturan-aturan sosial dalam kehidupan sehari-hari.
|
·
Mengidentifikasi jenis-jenis lembaga
pengendalian social
·
Mendeskripsikan berbagai cara pengendalian social.
·
Mendeskripsikan akibat tidak berfungsinya
lembaga social.
·
Mendefinisikan aturan-aturan sosial dalam
kehidupan masyarakat
|
Aturan-aturan sosial dalam kehidupan bermasyarakat
|
·
Secara klasikal menggali informasi melalui
kajian yang terjadi di masyarakat tentang pengendalian sosial
·
Secara klasikal mengkomunikasikan secara lisan
dan tulisan tentang jenis-jenis lembaga pengendalian sosial yang ada di
masyarakat.
·
Bekerja sama antar warga belajar untuk
menyimpulkan solusi yang paling tepat dalam cara pengendalian sosial yang
terjadi di masyarakat
·
Secara individu memberikan opini atau ulasan tentang akibat
tidak berfungsinya lembaga pengendalian social
·
Secara klasikal melalui ulasan tentang tidak
berfungsinya lembaga pengendalian sosial
·
Secara individu melalui wawancara dengan RT,
RW, tentang aturan-aturan dalam kehidupan masyarakat.
·
Secara klasikal melalui ulasan tentang hasil
wawancara kepada RT, RW tentang aturan-aturan sosial dalam kehidupan
masyarakat.
|
Monday, September 22, 2014
Go
adalah salah satu bahasa pemrograman baru yang dikembangkan oleh Robert Griesemer
(perancang Java HotSpot), Rob Pike
(pengembang Plan 9 di laboratorium Bell), Ken Thomson (pengembang bahasa
pemrograman B dan perancang UTF-8). Bahasa pemrograman Goinidipelopori oleh
Google yangmulai dikerjakan atau tepatnya dituliskandi papan pada tanggal 21
September 2007.
Pada
awalnya desain bahasa pemrograman ini hanya dilakukan paruh waktu sambil
melakukan pekerjaan lain yang tidak terkait sama sekali dengan pengembangan
bahasa pemrograman ini. Pada bulan Januari 2008, Ken mulai mengerjakan sebuah compiler yang digunakan untuk
mengeksplorasi berbagai ide, pekerjaan tersebut menghasilkan kode C sebagai output-nya.
Pada
pertengahan tahun bahasa pemrograman ini menjadi proyek full-time dan sudah cukup untukmelakukan produksi kompilasi. Pada
bulan Mei 2008, Ian Taylor sendiri membuat GCC front untuk Go menggunakan rancangan spesifikasi. Russ Cox
bergabung pada akhir 2008 dan membantu memindahkan language dan libraries
dari prototypemenjadirealita.Bahasa
pemrograman Go menjadisebuah proyek publik open
sourcepada bulan November 2009. Tentunya hal ini tidak lepas dari
dukukungan berbagai komunitas yang telah memberikan kontribusi berupa ide,
diskusi dan kode pada pengembangan program ini.
Go
adalah bahasa pemrograman yang ekspresif, ringkas, bersih dan efisien.Saat ini
perkembangan perangkat komputer sangat cepat namun tidak diimbangi dengan
bahasa pemrograman, banyak programmer
yang menemukan kerumitan pada Java atau C++ sehingga harus menuliskan beberapa
kode lagi menggunakan Phyton atau JavaScript, disisi lain isu terhadap konsep garbage-collection dan parallel-computation yang belum didukung
baik oleh beberapa bahasa pemrograman, termasuk munculnya teknologi multicore yang membuat kekhawatiran dan
kebingungan sehingga para pengembang masih mengandalkan dukungan teknologi dari
sistem operasi.
Banyak
hal yang telah dihasilkan oleh laboratorium Bell dalam dunia teknologi
informasi dan komunikasi. Di Indonesia sendiri pernah terdengar bahasa
pemrograman Nusa yang dari Infokom tools-nya
dinamakan Nusaptel. Namun bahasa pemrograman Nusa ini tidak begitu diminati di
Indonesia. Semoga dengan kehadiran bahasa pemrograman Go ini banyak hal-hal
yang dapat dipelajari dan mungkin dapat melahirkan bahasa pemrograman baru
versi Indonesia yang dikompilasi menggunakan bahasa pemrograman Go.
Ada
beberapa poin utama yang perlu diketahui tentang bahasa pemrograman ini yang
dapat menjadi pertimbangan dalam mengembangkan aplikasi Go antara lain sebagai
berikut:
·
Go
Go
adalah bahasa pemrograman yang dikompilasi yang mana proseses kompilasinya
lebih cepat dibandingkan C, concurrent, garbage-collected, dan termasuk tipe bahasa pemrograman statis yang
dikembangkan oleh Google yang langsung berkomunikasi dengan processor (tanpa menggunakan
interpreter).
·
Go
di Google
Pemrograman
Go dirancang oleh Google untuk membantu mengatasi masalah yang dihadapi Google
dan masalah besar di Google.Singkatnya, pengembangan di Google begitu besar, hal
ini membuat beberapa aplikasi menjadi lambat dan sering terjadi kejanggalan, tetapi
efektif untuk digunakan saat ini.
Menurut
keterangan Google bahwa salahsatu tujuan dari proyek Go salah satunya untuk
menghilangkan kelambatan dan kejanggalan pengembangan perangkat lunak di
Google, dan dengan demikian membuat proses lebih produktif dan terukur. Bahasa
pemrograman ini dirancang oleh dan untuk pengembang aplikasi yang menulis,
membaca, mengurangi celah, danmemelihara
sistem perangkat lunak yang besar.
·
Concurrency
Konkurensi
sangat dibutuhkan dalam lingkungan komputasi moderen yang menggunakan multicore webserver dengan multiple client. Jika komputer yang
dijalankan menggunakan single processor maka program masih tetap mendukung
konkurensi namun tidak secara paralel. Namun memang pada awalnya konkurensi
dimaksudkan untuk menangani multi-processor
dan menjalankan aplikasi secara palarel (sebagai contoh: penggunaangoroutine,threads).
·
Garbage Collection
Go
mendukung garbage collection, hal ini
untuk mereduksi waktu dan pekerjaan programmer
dalam mengembangkan aplikasi.Programmertidak
perlu melakukan pembebasan memori(free
memory) ketika selesai menjalakan operasi tertentu karena hal ini sudah
otomatis ditangani oleh garbage
collector.Selain itu Go menyediakan pointer
dalam melakukan manajemen memory dan
menghilangkan pointer arithmetic
untuk menghindari kebingungan pengguna.
·
Open Source
Go
menjadi sebuah proyek publik open sourceunderBSD
Licencepada bulan November 2009.
·
Kelebihan
lain
Go
mendukung bahasa UTF-8 tidak hanya terbatas pada string tetapi juga dalam penulisan kode programnya. Go menjaga
efisiensi penggunaan kode program dengan melemparkan error jika variabel tidak digunakan dalam program dan dapat
dikompilasi di multi-platform.Performa
aplikasi di Go tentu saja dapat dipastikan lebih cepat dan penggunaan memori
lebih sedikit dibandingkan dengan Java atau Scala.
Selain
itu, Go digunakan sebagai backend
untuk menangani Youtube, App Engine,Google Drive, Google Map, Cat-V,
SoundCloud, dotCloud, Canonical, Heroku, Iron.io, SkyDB, Heka Mozilla's, Docker,
NSQ realtime distributed messaging
platform, CloudFlare, Gobot dan beberapa perusahaan lainnya sudah
mulai mengadopsi dan mengembangkan aplikasinya menggunakan bahasa Go ini.
Setelah
mengetahui sedikit penjelasan tentang kenapa Go? Maka di sini lebih ditekankan
secara praktis sebenarnya Go ini dikembangkan untuk menyelesaikan apa? Berikut
beberapa daftar lingkup praktis pengembangan aplikasi menggunakan Go menurut
Rob Pike:
- Web servers.
- Web browsers.
- Web crawlers.
- Search indexers.
- Databases.
- Compilers.
- Programming tools.
- IDEs.
- Bahkan
tidak menutup kemungkinan digunakan untuk pengembangan Operating Systems.
Beberapa
area dalam teknologi informasi di atas dapat memanfaatkan fitur yang telah
ditawarkan oleh Go. Selain itu bahasa pemrograman ini dapat juga dimanfaatkan
untuk information processing terutama
dalam menangani hal-hal yang berkaitan dengan masalah kecepatan pemrosesan
databaik yang berkala maupun realtime.
Dalam
pengembangannya dimasa yang akan datang Go tidak hanya fukus pada beberapa
permasalahan tertentu saja, karena perkembangan teknologi informasi yang begitu
cepat inilah yang mengakibatkan lahirnya bahasa pemrograman Go. Dalam pandangan
pribadi penulis, bahwa Go tidak dirancang untuk menggantikan bahasa pemrograman
yang lain tetapi lebih ke arah saling mendukung dalam upaya menyediakan
aplikasi yang handal, efektif dan efisienkepada pengguna(end-user).
Sebelum
melanjutkan ke pokok bahasan berikutnya, sebaiknya pembaca mengkombinasikan
antara kandungan buku ini dan website http://golang.org/, frequently asked questions yang telah
disediakan online melalui http://golang.org/doc/faq, effective Gohttp://golang.org/doc/effective_go.html,
penjelasan detail spesifikasi Go http://golang.org/ref/spec dan
http://tour.golang.org
untuk menjalankan aplikasi Go secara online.
Dalam
perkembanganya Go telah didukung oleh berbagai pihak dan tentu saja atas asuhan
dari Google sehingga pengembangannya sangat signifikan. Hingga buku ini
diterbitkan, Go sudah mencapai versi 1.2 dan kemungkinan pada pertengahan tahun
2014 akan di rilis versi 1.3. Untuk membuat aplikasi di Go dibutuhkan SDK yang
dapat diperoleh melalui laman http://golang.org/. Go
yang merupakan bahasa kompilasi berjalan baik pada berbagai platform antara
lain sebagai berikut.
|
Operating system
|
Architectures
|
|
FreeBSD 7 or later
|
amd64, 386, arm
|
|
Linux 2.6.23 or later with glibc
|
amd64, 386, arm
|
|
Mac OS X 10.6 or later
|
amd64, 386
|
|
Windows 2000 or later
|
amd64, 386
|
Apabila
dijalankan di atas sistem operasi Windows maka pada Environment Variable secara otomatis terdapat GOROOT yang merupakan lokasi aplikasi Go terinstall biasanya di “C:\Go\”. Selanjutnya yang perlu
dilakukan adalah menambahkan Environment
VariableGOPATH yang nantinya akan digunakan sebagai tempat untuk menyimpan source
dan binarinya yang terkait dengan kebutuhan pengembangan project, misalnya driver untukMySQLatau MongoDB, machine learning, kumpulan rumus untuk operasi matematika dan
sebagainya.
Tentu
saja dalam pengembangan aplikasi tidak lepas dari berbagai aplikasi yang telah
tersedia di internet, yang semuanya akan disimpan pada GOPATH, aplikasi yang bersifatopen
sorce biasanya menggunakan Git atau GoogleCode sebagai repository, oleh sebab itu direkomendasikan juga kepada pembaca
untuk menginstall aplikasi tersebut melalui laman http://git-scm.com/downloads
untuk Git, danMercurial melalui laman http://mercurial.selenic.com/. Jangan
lupa untuk me-restart komputer supaya
konfigurasi Environment Variable dapat terbaca.
Dalam
membuat aplikasi menggunakan console
atau terminal, maka langkah yang harus dilakukan adalah: buatlah sebuah file dengan nama misalnya“helloworld.go”yang dapat menggunakan
aplikasi Notepad++ atau editor tertentu, kemudian letakkan pada folder yang
telah dipersiapkan misalnya “D:\go\”, lalu
tuliskan baris kode program sederhana berikut ini.
|
package main
import
"fmt"
func main()
{
fmt.Printf("hello world!\n")
fmt.Printf("hello sajarwo
anggai!\n")
}
|
Setelah
program selesai dituliskan lalu simpanlah program tersebut, dilanjutkan dengan
membuka console atau terminal, kemudian
arahkan kedirectory tempat file tersebut disimpan dan jalankan
progran dengan menggunakan perintah yang telah disediakan oleh Go berikut ini:
|
go run
helloworld.go
|
Jika
program berjalan normal, maka seharusnya yang tampil pada layar monitor seperti
gambar berikut ini.
Dalam
perkembangan dan perjalanannya, bahasa pemrograman Go banyak didukung oleh
berbagai pengembang IDE dalam mempermudah programmer
dalam menuliskan kode program, salah satunya adalah IDE IntelliJ IDEA yang
menyediakan berbagai macam fitur. IDE ini dikembangkan oleh JetBrains yang
bermarkas di Rusia. Pada pokok bahasan ini penulis memilih IDE IntelliJ IDEA
untuk membuat aplikasi dengan bahasa pemrograman Go atas pertimbangan kemudahan
dalam penggunaannya.
Pertama-tama
yang harus dilakukan adalah menginstall aplikasi IntelliJ IDEA versi Community Edition, selain handal juga
merupakan salah satu produk open source yang
dapat diunduh melalui lamanhttp://www.jetbrains.com/idea/download/.Kemudian
jalankan aplikasi tersebut, lalu pilih menu Plugins dan carilah Go Languageplugin dan pilih tombol Install.
Selanjutnya
untuk membuat project diperlukan
langkah sebagai berikut:
·
Buka Aplikasi IntelliJ IDEA,
·
Pilih “Create
New Project”,
·
Pilih Go
Module,
·
Tentukan Project
name : “HelloWorld”,
·
Tentukan Project
location,
·
Tentukan letak Project SDK dengan cara mengklik tombol New, kemudian tentukan dimana lokasi penyimpanan Go SDK. Pada umumnya
Instalasi Go SDK terdapat padadirectory
“C:\Go”, kemudian pilih Ok.
·
Selanjutnya Create source directory: “src”, kemudian pilih tombol Next.
·
Tentukan Project
SDK yang akan digunakan, kemudian pilih tombol Finish.
·
Pada Project HelloWorld, terdapat navigasi
src, yang didalamnya otomatis terdapat satu buah file“main.go”,doubleclickfile tersebut untuk melihat kode
programnya.
·
Pilih menu Run > Run (Pilih main.go) untuk menjalankan program.
·
Pada bagian bawah terdapat panel output untuk menampilkan hasil program
ketika dieksekusi.
Dengan
demikian dengan kemudahan yang ditawarkan oleh bahasa pemrograman Go, maka
proses instalasi, konfigurasi environment
variable, pembuatan aplikasi sederhana menggunakan console atau terminal, dan pembuatan aplikasi menggunakan IDE telah
selesai dipelajari. Selanjutnya semuanya diserahkan kembali kepada pembaca atas
segala pilihannya dalam mengeksplorasi bahasa pemrograman yang masih tergolong
baru dan belum cukup popular di kalangan programmer
Indonesia.
3. Standar
Input / Output
Dalam
pemrograman komputer, terdapat aliran standar (standard stream) yang akan menghubungkan antara program komputer
dengan lingkungan pengguna. Standar
tersebut adalah standar input,
standar output dan standar error. Bahasa pemrograman Go
mendefinisikan standar stream tersebut dengan menyediakan interface untuk sistem operasi low-level
primitives yang terdapat pada packagesyscall
dan secara tidak langsung dikemas kembali pada package os.
Umumnya
standar input pada lingkungan
pemrograman secara otomatis adalah keyboard.
Bahasa pemrograman Go sendiri mendefinisikannya dengan nama Stdin pada packageos.
|
package main
import ("fmt"; "bufio";
"os"; "strings";)
func main() {
fmt.Printf("Kitik
nama Anda : ")
scn
:= bufio.NewReader(os.Stdin);
data,
_ := scn.ReadString('\n');
fmt.Printf("Selamat
datang %v!", strings.TrimRight(data,"\n"))
}
|
Pada
potongan kode di atas program membutuhkan libraryos
yang tentu saja digunakan untuk mengakses standar stream, bufio yang
digunakan untuk melakukan bufferingyang
mana ukurannya sesuai dengan jumlah karakter yang dimasukkan oleh pengguna, dan
librarystring untuk memecah(slice) string.
Pada
umumnya secara otomatis standar output
adalah layar (screen) yang
ditampilkan oleh monitor. Bahasa pemrograman Go sendiri mendefinisikannya
dengan nama Stdout pada packageos. Namun Go menyediakan library tambahan yang diberi nama packagefmt.Packagefmt ini mengimplementasikan format Input/Output dengan fungsi yang mirip
dengan bahasa C printfdan scanf. Format verba ini berasal dari C, namun
lebih sederhana. Berikut adalah beberapa keterangan yang dapat digunakan untuk
memanipulasi tampilan output.
|
Key
|
Keterangan
|
|
%v
%T
%%
%t
%b
%c
%d
%o
%x
%X
%U
%f
%E
|
the value in
a default format.
a Go-syntax
representation of the type of the value
a literal
percent sign; consumes no value
the word
true or false
base 2
the
character represented by the corresponding Unicode code point
base 10
base 8
base 16,
with lower-case letters for a-f
base 16,
with upper-case letters for A-F
Unicode
format: U+1234; same as "U+%04X"
decimal
point but no exponent, e.g. 123.456
scientific notation,
e.g. -1234.456E+78
|
Untuk
lebih jelasnya silahkan amati dan jalankan kode program berikut ini yang
menerapkan beberapa fungsi standar output.
|
/**
* Created with IntelliJ IDEA.
* User: SNA8
* Date: 10/15/13
* Time: 9:32 PM
*/
package main
import
"fmt"
func main()
{
var i int = 21
var j bool = true;
fmt.Printf("%v
\n", i) // menampilakan nilai i : 21
fmt.Printf("%T
\n", i) // menampilkan tipe data dari variabel i
fmt.Printf("%%
\n") // menampilkan tanda %
fmt.Printf("%t
\n\n", j) // menampilkan
nilai boolean j : true
fmt.Printf("%b
\n", i) // menampilkan nilai boolean j : true
fmt.Printf("%c
\n", '\u042F') // menampilkan unicode russia : Я (ya)
fmt.Printf("%d
\n", i) // menampilkan nilai base 10 : 21
fmt.Printf("%o
\n", i) // menampilkan nilai base 8 :25
fmt.Printf("%x
\n", 15) // menampilkan nilai base 16 : f
fmt.Printf("%X
\n", 15) // menampilkan nilai base 16 : F
fmt.Printf("%U
\n\n", 'Я') // menampilkan unicode
karakter Я : U+042F
var k float64 =
123.456;
fmt.Printf("%f
\n", k) // menampilkan float :
123.456000
fmt.Printf("%E
\n", k) // menampilkan float
scientific : 1.234560E+02
}
|
Pemanfaatan
standar output ini tentu saja sangat bermanfaat bagi para pengembang dalam
menampilkan informasi hasil kode programnya. Selain itu ketika pengembang
melakukan eksperimen dan ingin mengetahui hasil oupur tertentu maka library ini
sangat membatu kelancaran prosesnya. Tidak hanya itu saja, ketika pengembang
mendapatkan kesalahan (error) salah
satu jalan singkat yaitu dengan menampilkan nilai yang dihasilkan lalu
menganalisa hasil tersebut.
Go
menyediakan kemudahan dalam mendefinisikan variabel baik secara eksplisit
maupun implisit. Deklarasi secara eksplisit dapat dituliskan sebagai berikut.
|
// Contoh 1, inisialisasi variabel eksplisit
var
tv ="Test Variabel!"
fmt.Println(tv)
var
a int = 1;
var
b float32 = 2.25;
fmt.Println("Nilai
var a : ", a)
fmt.Println("Nilai
var b : ", b)
|
Penulisan
variabel di atas menggunakan kata kunci var diikuti
dengan nama variabel, tipe data, dan pemberian nilai atau inisialisasi vaiabel
itu sendiri menggunakan simbol (=). Penggunaan
variabel secara explisit ini dapat dituliskan didalam fungsi maupun diluar
fungsi. Sedangkan deklarasi variabel secara implisit hanya dapat dituliskan
didalam fungsi yang mana Go dapat memberikan tipe data secara otomatis pada
suatu variabel berdasarkan nilai (inisialisasi awal) yang diberikan kepada
variabel tersebut.
|
// Contoh 2,inisialisasi variabel implisit
a1
:= 3;
b1
:= 1.9;
fmt.Println("\nTipe
data a1 : ", reflect.TypeOf(a1), " \t = ", a1)
fmt.Println("Tipe
data b1 : ", reflect.TypeOf(b1), " = ", b1)
|
Pada bahasa pemrograman Go terdapat dua tipe komentar:
-
Komentar baris,komentar ini digunakan untuk
satu baris program.
// tuliskan komentar di sini, |
-
Komentar umum, tipe komentar ini digunakan untuk menuliskan komentar lebih dari
satu baris.
|
/**
tuliskan beberapa baris komentar di sini
tuliskan beberapa baris komentar di sini
*/
|
Pada
bahasa pemrograman Go terdapat 25 kata kunci (keywords) yang dapat dituliskan sebagai berikut:
|
break
|
default
|
func
|
interface
|
select
|
|
|
case
|
defer
|
go
|
map
|
struct
|
|
|
chan
|
else
|
goto
|
package
|
switch
|
|
|
const
|
fallthrough
|
if
|
range
|
type
|
|
|
continue
|
for
|
import
|
return
|
var
|
|
Pada
bahasa pemrograman Go juga terdapat 47 operator
dan delimiteryang tidak jauh berbeda
dari beberapa bahasa pemrograman pada umumnya.
|
+
|
&
|
+=
|
&=
|
&&
|
==
|
!=
|
(
|
)
|
|
-
|
|
|
-=
|
|=
|
||
|
<
|
<=
|
[
|
]
|
|
*
|
^
|
*=
|
^=
|
<-
|
>
|
>=
|
{
|
}
|
|
/
|
<<
|
/=
|
<<=
|
++
|
=
|
:=
|
,
|
;
|
|
%
|
>>
|
%=
|
>>=
|
--
|
!
|
...
|
.
|
:
|
|
|
&^
|
|
&^=
|
|
|
|
|
|
Ada
beberapa cara yang dapat digunakan dalam memuat berbagai macam library, baik dari luar maupun yang telah
disediakan oleh bahasa pemrograman Go.
Import declaration Local name of Sin
import "lib/math" math.Sin
import m "lib/math" m.Sin
import . "lib/math" Sin
atau
dapat juga dituliskan seperti berikut ini.
import (
"fmt"
"io/ioutil"
)
Struktur
kontrol pada bahasa pemrograman Go mirip dengan bahasa C, namun cara
penulisannya yang sedikit berbeda. Tidak ada pengulangan dodan while,
semuanya sudah ditangani oleh fordan switchyang lebih fleksibel. ifdan switchmenerima
pernyataan inisialisasi seperti yang terdapat pada for. Selain itu break dan
continue mengambil opsional label
untuk mengidentifikasi dalam melakukan operasinya.
Penggunaan
kondisi atau ifsangat mudah dan
sederhana seperti yang terdapat pada kode program berikut ini:
|
package main
import "fmt"
import "os"
func main() {
var
x int = 10;
var
y int;
if
x < 20 {
y
= 20;
fmt.Println("Nilai
x =",x)
fmt.Println("Nilai
y =",y)
}
//Penggunaan
if dengan statement
if
x = 50; x > y {
fmt.Println("x
> y")
}
os_name,
err := os.Hostname()
if
err == nil {
fmt.Println("\nOs
Name : "+os_name)
}
}
|
Perhatikan
potongan kode di atas, di sana terdapat tiga contoh penggunaan kondisi dengan parameter yang berbeda. Hal ini
menunjukkan bahwa Go programming menawarkan beberapa alternatif kepada programmer dalam mengembangkan aplikasi
yang singkat dan jelas, berikut adalah tampilan ketika program dijalankan.
Bahasa
pemrograman tentu
saja tidak lepas dari kondisi maupun perulangan karena hal tersebut merupakan
dasar dalam menyusun program dalam menyelesaikan berbagai macam persoalan. Go
dalam hal ini menyediakan tiga cara penggunaan perulangan ataufor
yang mirip dengan bahasa C, seperti yang terdapat pada potongan program
berikut.
|
// seperti penulisan for pada bahasa C
for init; condition; post { }
// seperti penulisan while pada bahasa C
for condition { }
// seperti penulisan for(;;)pada bahasa C
for { }
|
Dengan demikian maka hanya dengan menggunakan
for saja programmer dapat menggukan berbagai macam kombinasi sekaligus,
bahasa pemrograman Go mencoba mereduksi penggunaan kode sehingga lebih general, mudah dipahamidan hal juga akan
menjadi pemicu para pengembang dalam mengembangkan aplikasi dengan cara yang
mudah dan berbeda.Berikut adalah implementasi perulangan for
dalam pemrograman Go.
|
package main
import "fmt"
func main() {
for i :=0; i<5; i++ {
fmt.Println("Nilai i = ",i)
}
var j int = 0;
for j<5 {
fmt.Println("Nilai j = ",j)
j++
}
for pos, char := range "САШАРВО" {
fmt.Printf("character %#U starts at byte position
%d\n", char, pos)
}
for {
if j++; j <= (10) {
fmt.Println("Nilai j = ",j)
}else{
break
}
}
}
|
Berikut
adalah tampilan hasil program ketika dijalankan.
Penggunaana switchpada pemrograman Go lebih umum daripada
bahasa C. Ekspresi yang dilewatkan tidak harus constant atau integer.
Selain itu jika switch
tidak mempunyai ekspresi, maka otomatis ekspresi pada switch diberi nilai true.
|
package main
import "fmt"
func main() {
var
karakter byte = '?'
switch
(karakter){
case
'A' : fmt.Println("Karakter
A")
case
'B' : fmt.Println("Karakter
B")
case
'?' : fmt.Println("Karakter
?")
}
var
nilai int32 = 91; // nilai silahkan diubah-ubah
switch
{
case
nilai >90 : fmt.Println("Nilai
Anda A")
case
nilai >70 : fmt.Println("Nilai
Anda B")
case
nilai >60 : fmt.Println("Nilai
Anda C")
default
: fmt.Println("Nilai Anda
D")
}
for
i:=0; i<10;i++{
switch
{
case
i%2 == 0 : fmt.Println("Nilai i % 2 = ",i)
case
i%5 == 0 : fmt.Println("Nilai i % 5 = ",i)
}
}
}
|
Berikut
adalah tampilan hasil program ketika dijalankan.
Salah satu fitur yang unik pada bahasa pemrograman
Go adalah fungsi yang dapat memberikan lebih dari satu nilai kembalian (multiple return value). Dibandingkan
dengan bahasa pemrograman lain, Go adalah bahasa program yang memberikan
kemudahan dalam menyediakan multiple
return value karena tanpa menggunakan bantuan collection atau penggabungan data sebelum di kembalikan (return). Aturan penulisan fungsi dan
method pada Go dapat dituliskan sebagai berikut:
|
func
(<parameter>,…n) (<type return value>,…n){
// isi dari fungsi
}
|
Program diawali dengan kata kunci funclalu diikuti parameter dan jenis return value yang diinginkan. Fungsi
yang dijalankan pertama kali oleh Go sebagai fungsi utama adalah func main()tanpa adanya program utama ini
makaprogram tidak akan dapat berjalan danhanya dapat dikompilasi sebagai library saja.Untuk lebih jelasnya,
silahkan mengamati dan lakukan percobaan program berikut ini.
|
package main
import "fmt"
func main() {
var
nilai, err int
//
silahkan diganti dengan bilangan negatif
nilai,
err = penjumlahan(2,3)
fmt.Println("Hasil
= ", nilai)
fmt.Println("Pesan
= ", err)
}
func penjumlahan(a int, b int) (int, int){
var
err int;
if
a<0 || b<0{ // periksa bilangan negatif
err
= -1
}
else{
err
= 0
}
return
a+b, err;
}
|
Pembuatan fungsi tentu saja dimaksudkan untuk
menangani suatu kegiatan yang sering berulang-ulang dengan cara mengelompokkannya pada bagian tertentu. Selain
itu fungsi juga digunakan untuk mempermudah programmer
dalam mengembangkan kode program yang tertata rapi sesuai dengan bagian dan
tugasnya masing-masing. Aplikasi yang besar atau kompleks tentu saja
membutuhkan fungsi sebagai kunci utama dalam menghindari kesimpang siuran tatanan
baris kode program. Apabila diperhatikan dengan saksama maka sebenarnya func di atas apabila dikombinasikan dengan kondisi
if maka dapat dimanfaatkan
juga untuk melakukan validasi pada kasus-kasus tertentu. Berikut hasil
programnya ketika dijalankan.
Subscribe to:
Posts (Atom)
