Apakah ada istilah untuk kode yang tidak diterapkan yang ditulis untuk diisi orang lain?

91

Kadang-kadang dalam latihan pemrograman, pembuatan pelat, menempatkan rel panduan di sekitar tugas-tugas yang harus diimplementasikan oleh programmer junior, dll., Terjadi bahwa programmer disajikan kode yang tidak diterapkan dan disuruh "mengisi bagian yang kosong." Misalnya, tes unit yang dapat mengkompilasi, tetapi gagal, atau deklarasi kelas dengan metode kosong.

Apakah ada istilah umum untuk praktik ini?

Brandon Arnold
sumber
Bukan apa yang Anda tanyakan, tetapi terkait. Jika ada juga skrip uji yang menunjukkan apa yang diharapkan dilakukan oleh kode Anda, maka itu dikenal sebagai Test Driven Development.
AJFaraday
32
Bagi siapa pun yang memilih untuk menutup: pasti, "beri nama benda ini" mungkin bukan pertanyaan yang sangat menarik . Namun, pertanyaan ini memang memiliki jawaban obyektif yang tidak didasarkan pada pendapat. Sebagai bukti, saya menyajikan jawaban saya di bawah ini.
3
Saya akan mengatakan "Praktek pengkodean yang mengerikan."
Euforia
7
NotImplementedException :)
Pasang kembali Monica
3
"Latihan untuk pembaca" tampaknya menjadi pendekatan buku teks jika Anda berbicara tentang penanganan kesalahan.
Phil Lello

Jawaban:

177

Anda merujuk pada sebuah rintisan atau kerangka :

Rintisan

Ini biasanya merupakan metode atau fungsi dengan tubuh yang sebagian besar kosong yang hanya mengembalikan nilai dummy sehingga kode akan dikompilasi.

Kerangka

Ini adalah metode yang memiliki algoritma tingkat tinggi diimplementasikan, tetapi setiap bagian dibiarkan tidak diterapkan. Mereka mungkin berupa blok kode kosong, atau metode rintisan referensi (lihat di atas) yang pada akhirnya akan melakukan subtugas. Ini adalah cara yang baik untuk mengekspresikan desain perangkat lunak untuk seorang programmer junior yang mungkin berjuang dengan upaya desain yang lebih besar, atau untuk memastikan Anda memiliki algoritma yang benar sebelum menginvestasikan terlalu banyak waktu dalam detail tingkat rendah.


Praktik menggunakan elemen kode ini akan disebut stubbing atau membuat kerangka kode .


sumber
3
Meskipun saya lebih suka istilah Anda, saya pikir istilah 'perancah' di Ruby on Rails adalah konsep yang sama.
dcorking
Saya juga berpikir rintisan adalah kata yang tepat untuk ini, tetapi tidak yakin karena saya mendapat balasan dari orang lain di pekerjaan saya. Terima kasih.
Brandon Arnold
Ini "rintisan" jika dilakukan dalam konteks akademik. Dilakukan dalam konteks profesional / komersial, itu "utang teknis".
Agustus
10
@aroth itu bukan utang teknis jika kode tidak berfungsi - itu harus diterapkan. Utang teknis menyiratkan kode yang ditulis dengan buruk yang akhirnya digunakan dalam lingkungan produksi, yang berarti diperlukan upaya signifikan untuk melakukan refactor dengan benar. Suatu rintisan idealnya memiliki test case yang gagal, sehingga itu harus diimplementasikan dan diuji sebelum dilepas pada produksi.
2
@BrandonArnold: Saat berbicara dengan perguruan tinggi Anda, Anda harus menggunakan kata-kata yang mereka pahami. Kecuali jika Anda adalah bosnya.
Stig Hemmer
42

Saya telah melihat istilah " rintisan " digunakan.

Sebagai contoh, saya percaya bahwa Eclipse secara otomatis memasukkan komentar

String getName() {
    // TODO: Auto-generated method stub
    return null;
}

ke bertopik yang dihasilkan secara otomatis terkenal, baik,.

Perhatikan juga penggunaan istilah “rintisan” dalam konteks pengujian unit .

5gon12eder
sumber
2
"// TODO: Rintisan metode yang dibuat secara otomatis" Saya pikir.
user253751
Pasti bermanfaat untuk mengetahui hal ini. . .
Brandon Arnold
17

Dalam Visual Studio, ketika menulis kode intellisense akan memberi Anda opsi "menghasilkan metode rintisan baru". Ketika Anda memilih opsi ini, Visual Studio akan menghasilkan rintisan / kerangka kode persis seperti yang telah Anda jelaskan.

Microsoft menyebut ini sebagai rintisan, jadi saya juga akan menyebut bertopik ini.

Mengintip
sumber