Dalam artikel ini, kami akan terus membiasakan diri dengan pengembangan REST API dan melihat pendekatan Code-First.
Mengembangkan API ISTIRAHAT yang baik adalah penting untuk memiliki layanan microser yang baik. Pendekatan Code-First berfokus pada menghasilkan kontrak dari kode. Apakah ini pendekatan terbaik?

Kamu akan belajar
- Apa pendekatan Code-First untuk mengembangkan REST API?
- Apa manfaat dari pendekatan Code-First?
- Apa kerugian dari pendekatan Code-First?
- Kapan Anda menggunakan pendekatan Code-First?
API SISA
Ini adalah artikel keempat dalam serangkaian artikel di REST API:
Apa pendekatan Code-First?
Setiap kali Anda mengembangkan layanan, seperti REST API atau SOAP API, Anda dapat memilih salah satu dari dua pendekatan:
- Kode Pertama dan hasilkan kontrak dari kode
- Kontrak Pertama dan pengembangan kode berbasis kontrak
Mari kita mulai dengan contoh cepat untuk Code First.
Spring Boot Code Contoh Pertama REST API
Kami sedang mengembangkan layanan web RESTful menggunakan Spring Boot Framework untuk menghasilkan API. Misalnya, dalam API recoverveAllUsers (), kami membuka URI "
/ pengguna " dan
kami mengembalikan semua pengguna (sumber daya
/ pengguna ),
memanggil metode layanan.
Saat kami membuka URL ini, kami mengembalikan semua pengguna:

Metode layanan lain didefinisikan dengan cara yang sama, masing-masing memiliki URI sendiri. Dalam contoh ini, kami mengambil kode dan menghasilkan dokumentasi darinya. Dokumentasi ini menjelaskan bagaimana pengguna dapat menggunakan layanan ini. Untuk melakukan ini, kami menggunakan format dokumentasi Swagger:

Kesombongan memungkinkan kita menghasilkan dokumentasi dari kode. Misalnya, inilah yang dihasilkan oleh Swagger untuk meminta semua pengguna:

Ini menampilkan jenis pesan respons yang kami terima dan status respons yang menyertainya. Anda bahkan dapat menghubungi layanan ini dari Swagger untuk mendapatkan jawaban:

Anda juga dapat mengirim permintaan
POST ke "
/ pengguna ":

Swagger akan memberi tahu kami bagaimana menyusun pesan permintaan dan menentukan format masing-masing bidang di dalamnya. Dia juga akan memberi tahu Anda jenis respons yang akan Anda terima, bersama dengan kode respons. Apa yang dihasilkan oleh Swagger dari kode disebut
kontrak .
Manfaat Kode Pertama
Keuntungan utama dari pendekatan ini:
- Kontrak dengan upaya minimal : menghasilkan kontrak tidak memerlukan upaya tambahan. Ini hanyalah produk sampingan dari pengembangan layanan, karena dapat dihasilkan secara otomatis dari kode.
- Sinkronisasi kode dan kontrak : karena kontrak dihasilkan dari kode, mereka selalu disinkronkan satu sama lain
Kerugian Kode Pertama
Kerugian dari pendekatan ini adalah sebagai berikut:
Tidak ada pengembangan paralel
Produsen layanan dan konsumen layanan tidak dapat berkembang secara paralel. Pertama, Anda perlu mengembangkan layanan, kemudian menghasilkan kontrak, dan hanya setelah itu Anda dapat menulis kode konsumen yang akan mematuhi kontrak. Tanpa memahami kontrak, konsumen tidak dapat dikembangkan.
Tidak ada tujuan untuk tim
Karena kontrak tidak dapat diketahui sebelum layanan dikembangkan, tidak ada tujuan untuk berbagai pemangku kepentingan dalam pengembangan. Oleh karena itu, ada kemungkinan bahwa arah akan menyimpang dan perubahan yang tidak perlu akan dilakukan, yang akan mengakibatkan pemborosan usaha.
Tidak ada kompatibilitas lintas platform
Pada beberapa platform lama, tidaklah mudah untuk menghasilkan kontrak dari kode. Sebagai akibatnya, ketidakcocokan antar platform sering terjadi untuk kontrak yang dihasilkan.
Pada masalah ini ada
video penulis.
Ringkasan
Dalam artikel ini, kami menjelajahi pendekatan Code First untuk membangun REST API. Meskipun pendekatan berbasis kode efektif dari sudut pandang pengembang, pendekatan ini menghadapi masalah serius dalam hal pengembangan bersama antara pemasok dan konsumen.
Bacaan tambahan
Pengembangan API: Desain-Pertama atau Kode-Pertama?Cara Mengembangkan Layanan Web TENANG di ASP.NET Web API