Haii gaes admin muncul lagi niih. Udah kangen postingan admin ya? Emang selalu ditunggu-tunggu admin tuh wkwk. Okayy kali ini admin mau bahas tentang SOCKET PROGRAMMING. Ada yang udah tau ga nih? Kalo udah tau, tetep baca yaaa, jangan lupa kasih saran juga di kolom comment:))

Jadii, socket itu sebuah cara buat berkomunikasi dengan program atau node lain menggunakan file deskriptor. Gaya pemrograman socket berawal dari sistem Unix BSD yang terkenal di bidang penanganan jaringan, sehingga terkenal dengan sebutan BSD Socket. Socket pertama kali muncul pada sistem Unix BSD versi 4.2 sebagai kelanjutan dari implementasi protokol TCP/IP yang muncul pada sistem Unix BSD versi 4.1. Hampir keseluruhan varian Unix dan Linux selalu mengadopsi BSD Socket, dikarenakan komunikasi program dapat berlangsung lewat penggunaan deskriptor file standar Unix dengan bantuan socket.

Keunggulan dari penggunaan socket yaitu dapat melakukan komunikasi antar proses maupun program melalui jaringan yang berbasis TCP/IP, bahkan socket juga dapat berkomunikasi dengan program lain yang berjalan pada platform yang berbeda, asalkan masih dalam protokol transfer yang sama. Hal tersebut dikarenakan socket merupakan fasilitas IPC (Inter Proses Communication) untuk aplikasi jaringan, dimana socket dapat berkomunikasi dengan socket lain, maka diperlukan alamt unik sebagai identifikasi. Alamat unik terdiri atas alamat IP dan nomor Port. Pada dasarnya, komunikasi socket diciptakan untuk menjembatani komunikasi antara dua program pada mesin yang berbeda, namun saat ini socket juga mampu berkomunikasi dengan mesin yang sama. Keunggulan lain dari socket yaitu mampu menangani banyak klien sekaligus (multiple clients).

Ada 2 macam socket yang umum digunakan oleh Unix, antara lain:
  • Socket Lokal atau AF_UNIX
Socket lokal adalah socket yang melakukan komunikasi dengan perantaraan sebuah file yang biasanya diletakkan pada direktori /tmp atau /usr/tmp ataupun pada /var/tmp. Socket semacam ini digunakan untuk komunikasi antar aplikasi dalam satu mesin.
  • Socket Networking atau AF_INET
Socket networking digunakan untuk komunikasi aplikasi antar mesin dalam lingkungan jaringan TCP/IP. Identifikasi socket dilkukan dengan sebuah identifier berupa nomor port TCP/IP yang disambung oleh client.  Socket networking terbagi menjadi 2 macam, antara lain: 
  1. Socket Stream atau SOCK_STREAM : Socket Stream adalah socket komunikasi full-duplex berbasis aliran (stream) data. Pada model komunikasi Socket Stream, koneksi dua aplikasi harus dalam kondisi tersambung dengan benar untuk dapat bertukar data. Koneksi model seperti ini akan menjamin data dapat dipertukarkan dengan baik, namun memiliki kelemahan dalam hal penggunaan jalur data yang relatif besar dan tidak boleh terputus. 
  2. Socket Datagram atau SOCK_DGRAM  : Socket Datagram berkomunikasi dengan cara yang berbeda. Socket ini tidak membutuhkan koneksi yang tersambung dengan benar untuk mengirimkan dan menerima data. Model koneksi semacam ini tidak dapat menjamin data dapat dipertukarkan dengan baik, namun memiliki keunggulan dalam hal penggunaan jalur data yang minimal. 
Cara kerja Socket 
Untuk membuat aplikasi socket yang sederhana diperlukan dua aplikasi. Pertama adalah aplikasi server yang akan menerima data, sedangkan aplikasi kedua adalah aplikasi client yang mengirimkan data pada server. Baik aplikasi server dan aplikasi client mendenisikan port yang sama sebagai jalur komunikasi. Obyek socket pada sisi client dan server berbeda sedikit. Pada sisi aplikasi server, suatu socket server dibentuk dan melakukan operasi listen/menunggu. Operasi ini pada intinya menunggu permintaan koneksi dari sisi client. Sedangkan pada sisi client, dibentuk suatu socket biasa. 
Pada saat socket client, informasi alamat socket server dilewatkan sebagai argumen dan socket client akan otomatis mencoba meminta koneksi ke socket server. Pada saat permintaan koneksi client sampai pada server, maka server akan membuat suatu socket biasa. Socket ini yang nantinya akan berkomunikasi dengan socket pada sisi client. Setelah itu socket server dapat kembali melakukan listen untuk menunggu permintaan koneksi dari client lainnya. Langkah ini umumnya hanya dilakukan jika aplikasi server mengimplementasikan multithreading. Setelah tercipta koneksi antara client dan server, maka keduanya dapat saling bertukar pesan. Salah satu atau keduanya kemudian dapat mengakhiri komunikasi dengan menutup socket.
Untuk protokol UDP, perbedaanya adalah socket di sisi server sama dengan socket di sisi client, dan tidak ada operasi listen pada sisi server. Kemudian saat paket data dikirimkan, alamat socket penerima harus disertakan sebagai argumen.


Sumber materi :


Hai guys, admin balik lagi nih wkwk. Kalo kemaren kita bahas masalah konektivitas pada android, kali ini kita bakal bahas sesuatu yang sering kalian temui. Yappp bener banget, kaya judul postingan aku, tentang HTTP. Enaknya kita cuap cuap gajelas dulu apa langsung aja? Langsung aja kali ya? Yauda cuss atuh dibahas:))

Pasti kalian sering banget lah ya denger istilah HTTP, apalagi waktu kalian search laman tertentu, pasti mayoritas diawali dengan HTTP. Nah udah pada tau ga nih arti HTTP itu apa? Jadi, HTTP itu singkatan dari HyperText Transfer Protocol, dimana HTTP ini sebenaarnya sebuah istilah yang diberikan kepada sebuah protokol yang digunakan untuk mengirim dokumen dari WWW (World Wide Web). HTTP sendiri pertama kali digunakan sekitar tahun 1990 (admin belum terencana ada mah tahun ini wkwk), saat itu versi yang digunakan masih versi 0.9 yang tentunya masih mentahan protokol transfer data yang masih belum bisa melihat tipe dokumen yang dikirimkan. Pada tahun 1996, versi HTTP pun berkembang menjadi HTTP versi 1.0, dan terus melakukan perkembangan dengan meluncurkanversi 1.1 yang telah berhasil mengakomodasi proxy, cache, serta koneksi yang persisten.

Fungsi HTTP
Fungsi utama dari protokol HTTP sebenarnya cukup sederhana, yaitu untuk mengkomunikasikan komputer satu sama lain. Protokol sendiri bisa diibaratkan seperti perintah yang wajib dijalankan setiap komputer agar dapat mengirim dan menerima pesan. Selain itu, HTTP juga berfungsi untuk menentukan bagaimana sebuah data atau pesan dapat ditransmisikan maupun diformat menjadi bentuk yang dapat merespon browser untuk menampilkan data-data tersebut. Internet Engineering Task Force bekerja sama dengan World Wide Web Consortium untuk pengembangan HTTP, sehingga dapat berfungsi untuk mengambil interlink dokumen teks yang disediakan web serta untuk mendapatkan akses sumber daya melalui web dengan menggunakan URL (Uniform Resource Locator).

Cara Kerja HTTP
  1. Pertama-tama, komputer klien (HTTP klien) membuat sambungan, lalu mengirimkan permintaan dokumen ke web server.
  2. HTTP server kemudian memproses permintaan klien, sementara itu, HTTP klien menunggu respon dari server tersebut.
  3. Web server merespon permintaan dengan kode status data, lalu barulah menutup sambungan ketika telah selesai memproses permintaan.
Jadi intinya, dalam kasus HTTP, client harus terlebih dahulu melakukan permintaan data kepada server agar server dapat mengirim sebuah respon berupa file HTML. File HTML ini ditampilkan ke dalam browser atau data lain sesuai permintaan klien.
Jadiiii makin paham kan yaa HTTP itu apaa? Mudah-mudahan kalian ga bingung juga ya sama bahasanku kali ini. Tetep seperti biasa, pentengin terus blog ku buat dapet bahasan-bahasan lainnya yaa, Buat kalian yang punya ilmu lebih terkait bahasan ini, bisa langsung comment di bawah postingan yaaa, kritik saran juga boleh, Thankyouuu readers, seee youu:))


Sumber materi:


Hai guys, akhirnya admin muncul lagi yaa setelah sekian lama bertapa dari dunia tulis menulis blogger. Sebenernya udah kaku nih tangan buat nulis-nulis kek gini lagi, tapi gapapa, tuntutan hidup niiih wkwk. Oke kali ini admin mulai membahas sesuatu yang berbeda. Beda mulu ya rasanyaa (?) wkwk. Emang admin pengen bikin blog admin berwarna. Blog aja dibikin berwarna, apalagi kamu yakan? wkwk. 

Di postingan admin sebelumnya, memang admin lagi gencar-gencarnya bahas manajemen sama data gitu kan yaa, tapi kali ini, admin akan bahas mengenai PEMROGRAMAN MOBILE. Pemrograman yang admin maksud ini bukan pemrograman yang langsung berat dan bikin kalian penat kok, tenang aja, disini admin cuma mau ngebahas sedikit tentang KONEKTIVITAS PADA ADROID. Oiya nih, udah ada yang tau ga seperti APA SIH KONEKTIVITAS PADA ANDROID? Oke, admin coba jelasin yaaa. 

Konektivitas pada android yaitu suatu keterkaitan atau hubungan yang terjadi di android. Konektivitas pada android perlu untuk terus dipantau. Hal ini dikarenakan, sebagian besar kegiatan/operasi pada android bergantung pada konektivitas dengan internet. Pengguna android khususnya programmer tentunya perlu untuk mengetahui, menentukan, dan memantau status konektivitasnya. Misalnya, pada kasus penerapan API Google Maps (untuk mengakses google maps), tentunya programmer perlu untuk memeriksa koneksi internet yang ada. Pengecekan ini diperlukan untuk membantu pengguna untuk melakukan pesan umpan balik ke aplikasi. Apabila koneksi internet berjalan baik, maka Google Maps dapat ditampilkan, namun jika sebaliknya, maka Google Maps tidak dapat ditampilkan.

Untuk memeriksa apakah android telah terhubung baik dengan internet, pengguna atau programmer dapat menggunakan Connectivity Manager. Connectivity Manager juga dapat mengakses tipe koneksi yang terhubung. Berikut akan admin jelaskan step by step untuk MENENTUKAN DAN MEMANTAU KONEKTIVITAS ANDROID:
  •  Menentukan apakah perangkat terkoneksi dengan internet
Menetukan apakah adanya koneksi dengan internet sangat diperlukan untuk membatasi aktivitas yang terjadi pada perangkat mobile anda. Sehingga perangkat dapat melakukan pesan umpan balik terhadap aplikasi. Berikut merupakan cara menggunakan Connectivity Manager untuk melakukan query terhadap jaringan yang aktif dan menentukan apakah jaringan memiliki konektivitas Internet

  
  • Menetukan tipe koneksi yang tersedia
Menentukan tipe koneksi yang tersambung dengan perangkat berfungsi untuk mengetahui sumber koneksi yang telah tersedia. Konektivitas perangkat yang tersedia bisa saja disediakan oleh data seluler, WiMAX, WiFi, ethernet, dan lain sebagainya. Dengan melakukan query terhadap jaringan yang aktif, pengguna dapat mengubah laju berdasarkan bandwidth yang tersedia dan memnetukan aktivitas apa yang cocok dilakukan dengan tipe koneksi yang tersedia pada perangkat.

    • Memantau perubahan dalam konektivitas
    Memantau perubahan dalam konektivitas perlu dilakukan karena perubahan dapat sering terjadi, hal ini dikarenakan adanya peralihan tipe koneksi, misalnya peralihan antara data seluler dan WiFi. Memantau perubahan konektivitas berguna untuk menjaga agar konektivitas internet tetap berjalan stabil sehingga aktivitas perangkat yang berkaitan dengan internet dapat melakukan pesan umpan balik yang lancar. Pemeriksaan konektivitas dilakukan dengan menyiarkan aksi Connectivity Action dalam Manifest apabila detail konektivitas berubah.


    Kurang lebih seperti itu deh bahasan kita terkait KONEKTIVITAS TERHADAP ANDROID. Memang sih gak lengkap-lengkap amat, tapi mudah-mudahan bermanfaat yaa. Next post bakal bahas tentang hal menarik lain di bidang Pemrograman Mobile, jadi jangan lupa buat kunjungin blog ku terus yaa. Kalau kalian punya pendapat lain atau pengetahuin lebih terkait bahasanku kali ini, cus deh comment di bawah postingan iniii. Kritik saran kalian bakal ngebantu aku banget looo. Thankyouu ma readerrsss!! See u:))


    Sumber materi dan foto :
    https://developer.android.com/training/monitoring-device-state/connectivity-monitoring?hl=id#DetermineConnection
    Hai guys, kembali lagi nih sama admin buat cuap cuap bahas materi kuliah Kualitas Data admin. Kali ini admin akan bahas tutorial terakhir admin, yaitu tentaaaang "Data Matching". Jadi disini kita bahas tentang cari similarity dari data, bukan dari sifat seseorang wkwk. Tenang aja, step kali ini jauh lebih singkat kok daripada sebelumnya. Oke langsung aja yaa kalian buka DQS SQL Server kaliaaan;)

    - Step I : Mapping
    Nah sebelum kalian masuk ke tahap mapping, pasti kalian akan dihadapkan pada 3 pilihan, gausa bingung, langsung aja pilih "Data Quality Project" lalu create New Data Quality Project dan pilih activity "Matching". Setelah kalian klik, pasti kalian akan diarahkan menuju proses mapping. Proses ini untuk melakukan input data yang ada pada data source (baik sql atau excel atau csv). Pilih nama file (file hasil cleansing) nya, lalu kelompokkan data pada data source dengan domain yang tersedia. Setelah proses mapping selesai, klik Next.

    - Step II : Matching 
    Setelah melakukan mapping, kalian akan diarahkan menuju proses matching. Untuk memulai proses matching, klik button start dan tunggu sampai data profiling, matching rules, matching results terisi lengkap.

    Setelah selesai, pofiler secara otomatis akan merekam seluruh kegiatan atau ciri dari data yang telah di inputkan sesuai dengan rules yang kita buat sebagai aturan cleasing dan matching data (cek postingan sebelumnya). 

    Selain itu, matching rules juga akan secara otomatis merekam kegiatan matching dan melakukan perbandingan dengan rules yang terekam atau dibuat sebelumnya.

    Begitu pula dengan matching results yang akan secara otomatis merekap dan mendata persentase dan diagram tentang data yang similar ataupun tidak, dsb. 

    Selain itu, juga terdapat data yang memunculkan data apa saja yang ditemukan match ataupun unmatch beserta persentase similar nya. Setelah semua dirasa cukup, klik Next untuk melanjutkan proses.

    - Step III : Export

    Step terakhir yaitu export data hasil matching ke dalam file sql, csv, atau excel. Simpan saja kedua data hasil matching (matching results dan survivorship results) dengan pilihan pivot record agar tidak membutuhkan waktu lama pada saat export data dan hasil export tersebut berguna untuk rekap data hasil matching kalian. Setelah export data selesai, kalian dapat klik finish untuk melakukan publikasi kegiatan olah data.


    Okayy sekian dulu ya bahasan TUTORIAL DQS SQL SERVER DATA CLEANSING & DATA MATCHING [PART DATA MATCHING]. Jika kalian punya pengetahuan lebih terkait postingan kali ini, kalian bisa berbagi di kolom comment. Thankyouuu. See youu:))