Pemrograman WCF: Membuat Aplikasi Windows berbasis Layanan

Penyingkapan: Dukungan Anda membantu menjaga situs tetap berjalan! Kami mendapatkan biaya referensi untuk beberapa layanan yang kami rekomendasikan pada halaman ini.


Windows Communication Foundation (WCF) adalah lingkungan runtime dan satu set API di .NET Framework yang digunakan dalam pembuatan aplikasi yang berorientasi layanan dan terhubung. WCF adalah model pemrograman terpadu Microsoft untuk membangun aplikasi berorientasi layanan.

Sejarah Singkat

Meningkatnya popularitas komunikasi dan aplikasi yang berorientasi layanan selama dekade terakhir memiliki pengaruh besar pada pengembangan perangkat lunak. Aplikasi mengandalkan berbagai layanan untuk interaksi telah menjadi norma. Pada platform pengembangan Windows Microsoft, perubahan ini dimungkinkan oleh Platform Komunikasi Windows (WCF).

WCF pertama kali diperkenalkan sebagai bagian dari .NET Framework 3.0 pada 2006, dan selanjutnya diperbarui dalam .NET Framework versi 3.5 dan 4.0. Versi terbaru dari WCF tersedia sebagai bagian dari .NET Framework versi 4.5.

Windows Communication Foundation digunakan di banyak perangkat lunak berbasis pada .NET Framework.

Fitur WCF

WCF adalah alat untuk pengembang membuat aplikasi berorientasi layanan, mengandalkan layanan web untuk mengirim dan menerima data. Layanan web memiliki keuntungan umum karena secara longgar digabungkan, daripada secara khusus dikodekan untuk setiap aplikasi. Dengan kata lain, aplikasi apa pun yang dibuat pada platform apa pun dapat terhubung ke layanan apa pun.

WCF mengimplementasikan standar industri modern untuk interoperabilitas layanan web, seperti HTTP, SOAP, XML, WS-Addressing, W3C Web Services Addressing, dan banyak lagi. Pesan (atau harus kita katakan data) dapat dipertukarkan dalam beberapa pola yang berbeda.

Pola komunikasi yang paling umum adalah permintaan-balas, tetapi WCF juga mendukung pola lain, seperti pesan satu arah atau pola pertukaran dupleks. Pesan dapat dienkripsi untuk perlindungan data, dan otentikasi pengguna dapat ditegakkan. Keamanan diimplementasikan menggunakan solusi standar industri seperti SSL atau WS-SecureConversation. Pesan dapat diangkut menggunakan protokol dan penyandian yang berbeda, paling umum sebagai pesan SOAP yang disandikan teks melalui HTTP. WCF juga mendukung pengiriman pesan melalui TCP, MSMQ atau pipa bernama, disandikan sebagai teks atau menggunakan biner yang dioptimalkan menggunakan standar MTOM. Protokol dan penyandian transpor kustom juga dapat dibuat.

WCF mendukung pertukaran pesan yang andal menggunakan sesi yang dilaksanakan melalui WS-ReliableMessaging dan pesan antrian menggunakan MSMQ. Dukungan untuk pengiriman pesan yang tahan lama juga ada di WCF, mencegah kehilangan data yang disebabkan oleh masalah komunikasi.

Dukungan transaksi luas tersedia di WCF, menggunakan salah satu dari tiga model transaksi: WS-AtomicTransactions, API dari System.Transaction namespace, atau Microsoft Distributed Transaction Coordinator.

WCF adalah platform yang sangat fleksibel, memungkinkan perluasan yang mudah dan integrasi dengan teknologi Microsoft lainnya, misalnya Windows Workflow Foundation (WF), Microsoft BizTalk, dan Silverlight.

Menggunakan WCF

Faktanya, WCF adalah mekanisme komunikasi generik yang digunakan untuk mengatur komunikasi host-host antara dua pihak. Itulah yang membuatnya sangat berguna, karena Anda dapat mengkonfigurasi parameter layanan seperti protokol transport, keamanan, pengodean, dan sebagainya – tanpa modifikasi pada kode aplikasi klien. Anda juga dapat mengatur komunikasi antara layanan dan klien yang ditulis dalam berbagai bahasa pemrograman yang berjalan pada platform yang berbeda.

Membuat layanan WCF dan klien di Visual Studio IDE memerlukan enam langkah:

  1. Menentukan Kontrak Layanan WCF menentukan operasi yang didukung oleh layanan. Kontrak dibuat dengan mendefinisikan antarmuka C ++, C #, atau Visual Basic, dan setiap metode dalam antarmuka harus sesuai dengan operasi layanan tertentu. Setiap antarmuka harus menerapkan ServiceContractAttribute, dan setiap operasi harus menerapkan OperationContractAttribute, jika tidak, mereka tidak akan diekspos.
  2. Menerapkan Kontrak Layanan dilakukan dengan membuat kelas yang mengimplementasikan antarmuka yang ditentukan pengguna untuk layanan.
  3. Hosting dan Menjalankan layanan WCF terdiri dari tugas-tugas berikut: membuat instance URI untuk alamat dasar layanan, hosting layanan, menambahkan titik akhir yang mengekspos layanan, mengaktifkan pertukaran metadata, dan membuka host layanan.
  4. Membuat Klien termasuk membuat proksi ke layanan dan file konfigurasi menggunakan Alat Utilitas Metadata Model Layanan baris perintah.
  5. Mengkonfigurasi klien terdiri dari menentukan titik akhir yang digunakan klien untuk mengakses layanan. Titik akhir memiliki alamat, ikatan dan kontrak, dan masing-masing harus ditentukan dalam proses mengkonfigurasi klien.
  6. Menggunakan klien sebenarnya memanggil layanan dari proksi yang dihasilkan dan menutup klien setelah panggilan operasi selesai.

Menggunakan templat Perpustakaan Layanan WCF, atau templat Aplikasi Layanan WCF di Visual Studio dapat secara signifikan menyederhanakan langkah-langkah yang disebutkan di atas, karena sebagian besar tugas yang dijelaskan akan dilakukan secara otomatis.

Haruskah Saya Mempelajari dan Menggunakan WCF?

Dalam sebagian besar kasus, ini berkaitan dengan tugas khusus yang ada: bagaimana hal itu dapat diselesaikan, dan apa solusi yang paling efisien dan tahan masa depan? Mungkin contoh sederhana adalah jawaban terbaik untuk pertanyaan ini.

Anda sedang mengembangkan suite perangkat lunak titik penjualan untuk klien dengan banyak lokasi penjualan yang tersebar, dan Anda harus terhubung ke database SQL bisnis inti klien yang sudah ada. Ada dua kemungkinan solusi. Yang pertama adalah mengatur WAN dan menghubungkan semua lokasi penjualan klien ke basis data inti menggunakan router atau koneksi VPN.

Solusi kedua adalah dengan hanya mengimplementasikan solusi klien-server WCF dan mengakses database melalui internet. Dalam banyak skenario, menggunakan WCF bisa sangat membantu dan ekonomis.

Sumber Daya WCF

Jika Anda bekerja mengembangkan aplikasi server klien untuk platform Microsoft, Anda harus melihat sumber daya berikut di WCF:

  • Halaman utama Microsoft Developer Network (MSDN) Windows Communication Foundation menyediakan tinjauan lengkap WCF – termasuk dokumentasi, sumber referensi, panduan, dan tutorial.
  • Microsoft Developer Network (MSDN) WCF di bagian Visual Studio menjelaskan alat-alat WCF yang tersedia di Visual Studio dan menyediakan cara-cara singkat.
  • Skenario Penerapan Aplikasi WCF Microsoft Developer Network (MSDN) adalah artikel yang bagus yang menampilkan berbagai skenario penggunaan WCF dan kasus penggunaan.

Buku WCF

Kami memilih beberapa buku yang paling dihormati tentang WCF:

  • Pemrograman Layanan WCF: Desain dan Bangun Sistem yang Berorientasi Layanan (2015) oleh Juval Lowy dan Michael Montgomery: buku ini memberikan wawasan yang unik, daripada dokumentasi, untuk membantu Anda mempelajari topik dan keterampilan yang Anda butuhkan untuk membangun yang dapat dipertahankan, dapat diperluas, dan dapat digunakan kembali. Aplikasi berbasis WCF.
  • Pengembangan Layanan Multi-Layer WCF dengan Entity Framework (2014) oleh Mike Liu: jika Anda adalah pengembang C #, VB.NET, atau C ++ dan ingin memulai dengan WCF dan Entity Framework, maka buku ini adalah untuk Anda. Buku ini akan mengajarkan Anda semua hal penting untuk mengembangkan layanan WCF menggunakan Kerangka Entitas sebagai backend.

Kesimpulan

Karena WCF adalah produk Microsoft, bergantung pada .NET Framework untuk membuat solusi perangkat lunak berorientasi layanan, ia memiliki daya tahan. Ini bukan hal baru, tetapi masih relevan, dan mungkin akan bertahun-tahun ke depan.

Kami telah menguraikan beberapa contoh di mana WCF dapat membuat perbedaan besar dari perspektif teknis. Meskipun ini adalah teknologi Microsoft, WCF mendukung interoperabilitas dengan sebagian besar sistem non-Windows, selama mereka menjalankan Java.

Bacaan Lebih Lanjut dan Sumberdaya

Kami memiliki lebih banyak panduan, tutorial, dan infografis yang berkaitan dengan pengkodean dan pengembangan:

  • Microsoft Visual Basic / Visual Studio: ini adalah primer dasar kami pada Visual Studio dengan fokus pada Visual Basic.
  • Pengantar ADO.NET: sistem .NET utama untuk berinteraksi dengan basis data.
  • C # Resources: sebagai salah satu bahasa paling populer di cakrawala .NET, C # sangat membantu untuk diketahui.

Kode apa yang harus Anda pelajari?

Bingung tentang bahasa pemrograman apa yang harus Anda pelajari kode? Lihat infografis kami, Apa Kode Yang Harus Anda Pelajari? Itu tidak hanya membahas berbagai aspek bahasa, itu menjawab pertanyaan-pertanyaan penting seperti, “Berapa banyak uang yang akan saya hasilkan untuk pemrograman Java sebagai mata pencaharian?”

Kode Apa Yang Harus Anda Pelajari?
Kode apa yang harus Anda pelajari?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map