Haruskah pengembang front-end pernah menentukan format JSON untuk pengembang back-end?


17

Saya mengambil peran ujung depan dalam sebuah proyek. Haruskah saya menentukan rekan tim back-end saya format JSON yang tepat yang PHP mereka kembalikan ke JavaScript saya?

Sebagai contoh, haruskah saya memberi tahu mereka bahwa mereka harus menggunakan format yang mirip dengan yang dijelaskan di sini:

Cara yang tepat untuk menyusun JSON untuk konsumsi front-end

Atau haruskah saya menjaga peran saya se steril mungkin, dan cukup jelaskan dengan kata-kata input dan output yang saya butuhkan dari antarmuka back-end mereka? (Tentu saja, jika ini terjadi, mungkin akan lebih sulit bagi saya untuk menangani format struktur data yang berbeda)


10
Saya bisa melihatnya masuk akal bagi mereka untuk membuat proposal pertama berdasarkan masukan umum. Tapi itu tidak berarti pembicaraan berhenti pada proposal pertama.
Doug T.

Itu masuk akal!
LazerSharks

4
Seseorang harus menentukan format data yang terkandung dalam JSON. Mungkin juga kamu. Sungguh, siapa pun yang memiliki pengalaman paling banyak dalam menciptakan spesifikasi.
gnasher729

2
@ gnasher729: atau jika formatnya sangat sederhana sehingga Anda yakin kedua pihak lebih dari memenuhi syarat untuk menentukannya, siapa pun yang menulis kode pertama yang perlu mengetahuinya harus menentukannya. Ini juga dapat dianggap sebagai hadiah bagi siapa pun yang paling cepat untuk memulai tes mereka ;-) Secara umum orang mungkin mengatakan bahwa orang yang melakukannya tidak harus selalu orang yang paling berpengalaman, sering kali lebih baik menggunakan orang tersebut dengan paling sedikit pengalaman yang cukup untuk tugas itu, tapi itu masalah pengembangan orang.
Steve Jessop

Jawaban:


42

Ini adalah percakapan yang harus Anda lakukan bersama, membahas persyaratan dan pro dan kontra dari berbagai format.

Jika satu pihak menentukan apa yang terjadi, Anda akan berakhir dengan perangkat lunak yang buruk dan tim yang tidak bahagia.


1
Itu masuk akal! Bertanya-tanya apa yang sebenarnya / biasanya terjadi di dunia pengembangan.
LazerSharks

5
Baik. Anda bekerja bersama untuk itu. Jika itu sesuatu yang agak rumit maka idealnya Anda menemukan format umum yang didukung oleh perpustakaan di kedua ujungnya, untuk membuat pengembangan lebih mudah / lebih cepat.
AE

9

Anda harus berkontribusi terhadap bagaimana format dan struktur JSON seharusnya. Saya melihatnya lebih sering bahwa insinyur front-end, konsumen API, adalah yang mengetahui bagaimana seharusnya struktur data.

Anda adalah orang yang akan menggunakan data, memformatnya, mengulanginya dan bekerja dengannya. Anda harus memiliki pendapat tentang cara pengirimannya.


3

Selamat datang di dunia pengembangan middleware yang indah. Mungkin perlu banyak kerja keras dan debat untuk mengembangkan protokol, dan tidak ada yang bisa melihat hasilnya.

Jika Anda berada di tim kecil, maka hindari diktator: lakukan pertemuan cepat dengan semua orang untuk menuntaskan protokol.

Tim-tim berukuran sedang mungkin ingin memiliki perwakilan yang menyusun protokol.

Tim besar dan / atau tim dengan organisasi yang kompleks harus mendedikasikan orang middleware untuk mengendalikan protokol.

Dalam semua kasus, dokumentasikan! Apa saja prasyarat, apa saja kondisi pasca, apa bidang yang wajib diisi, apa bidang opsional, apa efek sampingnya, kesalahan apa yang dikembalikan ... Tetap hidupkan dokumen, ketika kondisi baru, tipe kesalahan, atau efek samping ditemukan , kemudian mereka ditambahkan ke dokumen.

Saya juga akan merekomendasikan tes unit sisi klien dan server dan tes sistem untuk memastikan kesesuaian dengan dokumen.

Ini mungkin tampak seperti banyak pekerjaan, tetapi salah langkah kecil di sini bisa sangat mahal dan memakan waktu.


Ah, senang mengetahui bahwa ada seluruh dunia yang didedikasikan untuk aspek ini. Saya berpikir aspek ini seperti di mana karet benar-benar memenuhi jalan dalam hal pembagian antara ujung depan dan ujung belakang.
LazerSharks

1

Saya hanya akan bertanya Mengapa Tidak? Ketika kita berbicara tentang sebuah proyek, kita juga berbicara tentang tim yang mengerjakannya dan diharapkan dan harus disambut dengan baik untuk mendengar pendapat tentang fitur dan struktur yang digunakan. Sebagai pengembang, saya pribadi percaya dan menghargai kontribusi rekan tim.

Anda tahu ada pepatah "jika Anda ingin pergi cepat pergi sendiri. Jika Anda ingin pergi jauh pergi bersama".

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.