Menyediakan peningkatan penyelesaian kode enterprise. Saat developer menggunakan pembuatan kode, repositori kode yang diunggah oleh enterprise Anda digunakan sebagai konteks untuk penyelesaian kode inline, sehingga saran penyelesaian lebih selaras dengan standar pengkodean dan karakteristik bisnis enterprise Anda. Topik ini menjelaskan cara membangun repositori kode enterprise berkualitas tinggi serta berbagi praktik terbaik untuk skenario pengembangan frontend dan backend.
Edisi dan bahasa yang didukung
Edition | Backend | Frontend |
Enterprise Standard Edition | Java, C#, C/C++, Go, Python | JavaScript, TypeScript, Vue, React |
Enterprise Dedicated Edition | Java, C#, C/C++, Go, Python | JavaScript, TypeScript, Vue, React |
Edition | Backend | Frontend |
Enterprise Dedicated Edition | Java, C#, C/C++, Go, Python | JavaScript, TypeScript, Vue, React |
Cara administrator menyiapkan repositori kode enterprise berkualitas tinggi
Untuk memastikan data kode Anda diproses secara efektif, ikuti panduan berikut saat menyiapkan repositori kode. Hal ini meningkatkan efisiensi dan akurasi pengambilan.
Panduan untuk memilih dan menyiapkan repositori kode
Bagian berikut menjelaskan cara menyiapkan repositori kode dalam dua skenario berbeda:
Skenario 1: Pengembangan rekayasa harian — tingkatkan efisiensi R&D. Dalam pengembangan enterprise, Anda dapat menggunakan beberapa repositori kode untuk mendukung augmentasi pengambilan, yang meningkatkan penggunaan ulang kode dan efisiensi pengembangan. Berikut adalah cara utama memilih repositori kode:
Penyiapan repositori kode untuk skenario backend
[Direkomendasikan] Pilih potongan kode atau file yang sering digunakan: Pilih potongan kode yang sering muncul atau digunakan berulang kali dalam proyek Anda saat ini. Potongan-potongan ini sering dirujuk dan digunakan kembali, sehingga cocok sebagai konten basis pengetahuan. Kelompokkan potongan atau file kode yang memenuhi syarat dari suatu proyek ke dalam repositori terpisah dan unggah ke basis pengetahuan terpisah untuk memudahkan manajemen dan pemanggilan.
Kode proyek saat ini: Anda juga dapat memasukkan seluruh proyek saat ini ke dalam basis pengetahuan untuk mengaktifkan pengambilan komprehensif di seluruh basis kode, yang meningkatkan penggunaan ulang kode dan efisiensi pengembangan. Namun, kode yang mengganggu atau jumlah besar kode berkualitas rendah dalam proyek akan melemahkan efek peningkatan penyelesaian kode.
Penyiapan repositori kode untuk skenario frontend
Unggah repositori kode yang menggunakan pustaka komponen, bukan repositori kode sumber komponen tersebut. Cakup sebanyak mungkin skenario penggunaan.
[Direkomendasikan] Repositori kode halaman templat frontend: Susun komponen kustom enterprise Anda untuk mengemas halaman frontend yang sangat dapat digunakan kembali dan relevan dengan bisnis ke dalam templat. Halaman templat ini merepresentasikan kasus praktik berkualitas tertinggi, seperti halaman login, halaman registrasi, tampilan akun, dan transfer dana. Jika enterprise Anda sudah memiliki pustaka templat semacam itu, unggah terlebih dahulu ke basis pengetahuan kode enterprise.
Repositori kode proyek saat ini: Repositori kode proyek saat ini berisi kode yang paling relevan dengan tugas pengembangan saat ini. Mengunggah kode proyek yang ditulis dengan baik, terstruktur jelas, dan mengikuti praktik terbaik ke basis pengetahuan kode enterprise memungkinkan pengambilan komprehensif di seluruh basis kode, yang meningkatkan penggunaan ulang kode dan efisiensi pengembangan. Kode yang mengganggu atau jumlah besar kode berkualitas rendah dalam proyek saat ini akan melemahkan efek peningkatan penyelesaian kode.
Skenario 2: Skenario bisnis spesifik — pastikan konsistensi kode dan kurangi pengembangan berulang. Dalam pengembangan aplikasi enterprise, beberapa logika bisnis harus tetap konsisten untuk memastikan stabilitas dan kemudahan pemeliharaan sistem. Tanpa standar terpadu, developer berbeda mungkin menerapkan implementasi berbeda, yang menyebabkan ketidakkonsistenan logika bisnis, pemeliharaan kode yang lebih kompleks, dan potensi masalah stabilitas sistem.
Kasus 1: Penggunaan ulang logika framework dan middleware enterprise
Sebuah enterprise memerlukan mekanisme kunci terdistribusi terpadu untuk manajemen inventaris dalam sistem penjualan komoditasnya. Dengan mengintegrasikan framework bisnis yang dikembangkan sendiri ke dalam basis pengetahuan kode, developer dapat dengan mudah mengingat dan menggunakan kembali potongan kode terstandarisasi ini saat menulis logika bisnis terkait di integrated development environment (IDE). Hal ini meningkatkan efisiensi pengembangan, mengurangi pengembangan berulang, meningkatkan kualitas kode, dan memastikan konsistensi logika bisnis.
Memilih dan menyiapkan repositori kode:
Tentukan pola bisnis target dan mekanisme implementasi spesifik:
Identifikasi modul bisnis utama: Tentukan modul logika bisnis utama dalam sistem yang memerlukan implementasi terpadu, seperti manajemen inventaris, pemrosesan pesanan, dan sistem pembayaran.
Perjelas mekanisme implementasi operasi bisnis spesifik: Misalnya, manajemen inventaris mungkin melibatkan skenario berbeda seperti pengurangan inventaris, kueri inventaris, dan penguncian inventaris, dan setiap skenario mungkin memerlukan mekanisme implementasi berbeda.
Pilih file kode dari framework bisnis terkait dan masukkan ke dalam basis pengetahuan kode enterprise:
Filter kode inti yang mengimplementasikan logika bisnis utama dari framework bisnis, kelola, dan masukkan ke dalam basis pengetahuan kode terpisah. Misalnya, pengurangan inventaris memerlukan mekanisme kunci terdistribusi untuk memastikan keamanan konkurensi, sehingga pilih modul kode inti yang mengimplementasikan kunci terdistribusi tersebut.
/**
* Gunakan framework kunci terdistribusi yang dikembangkan enterprise untuk kontrol konkurensi
*/
@Service
public class InventoryService {
@Autowired
private DistributedLockFramework lockFramework;
@Autowired
private InventoryRepository inventoryRepository;
/**
* Kurangi inventaris. Gunakan kunci terdistribusi untuk memastikan keamanan konkurensi.
* @param productId ID produk.
* @param quantity Jumlah yang akan dikurangi.
* @return Apakah pengurangan berhasil.
*/
public boolean deductInventory(Long productId, int quantity) {
String lockKey = "inventory:" + productId;
return lockFramework.withLock(lockKey, 30, TimeUnit.SECONDS, () -> {
Inventory inventory = inventoryRepository.findByProductId(productId);
if (inventory == null || inventory.getQuantity() < quantity) {
return false;
}
inventory.setQuantity(inventory.getQuantity() - quantity);
inventoryRepository.save(inventory);
return true;
});
}
}Kasus 2: Penggunaan ulang logika bisnis inti enterprise
Sebuah enterprise ingin menetapkan strategi rekomendasi personalisasi terpadu untuk sistem rekomendasi komoditasnya. Dengan mengintegrasikan arsitektur bisnis yang dikembangkan sendiri ke dalam basis pengetahuan kode, developer dapat dengan mudah mengakses dan menggunakan kembali modul kode terstandarisasi ini saat menulis fitur terkait di integrated development environment (IDE). Hal ini mempercepat pengembangan perangkat lunak, menghindari pekerjaan ulang yang tidak perlu, meningkatkan kualitas kode secara keseluruhan, dan memastikan konsistensi serta stabilitas logika bisnis di seluruh sistem.
Memilih dan menyiapkan repositori kode:
Tentukan modul bisnis target dan perilaku spesifik:
Identifikasi modul bisnis utama: Pertama-tama tentukan modul logika bisnis utama dalam sistem yang memerlukan implementasi terpadu, seperti sistem rekomendasi komoditas.
Perjelas perilaku spesifik: Selanjutnya, definisikan perilaku bisnis spesifik dan langkah operasi inti. Misalnya, strategi rekomendasi personalisasi mungkin mencakup langkah inti berikut: memperoleh data perilaku pengguna, mengekstraksi fitur minat pengguna, memperoleh kumpulan kandidat komoditas, memberi skor dan mengurutkan komoditas, serta mengembalikan komoditas dengan skor tertinggi. Langkah-langkah ini diimplementasikan melalui kombinasi kode tetap.
Pilih file kode dari framework bisnis terkait dan masukkan ke dalam basis pengetahuan kode enterprise:
Pilih kode inti yang mengimplementasikan logika bisnis utama dari framework bisnis, kelola, dan simpan dalam basis pengetahuan kode terpisah. Contoh berikut menunjukkan mekanisme rekomendasi personalisasi dari sistem rekomendasi:
/**
* Layanan mesin rekomendasi
* Mengimplementasikan mekanisme rekomendasi personalisasi berdasarkan perilaku pengguna dan fitur komoditas
*/
@Service
public class RecommendationService {
@Autowired
private UserBehaviorRepository userBehaviorRepo;
@Autowired
private ProductRepository productRepo;
/**
* Hasilkan daftar rekomendasi personalisasi untuk pengguna tertentu
* @param userId ID pengguna.
* @param limit Jumlah rekomendasi.
* @return Daftar ID komoditas yang direkomendasikan.
*/
public List<Long> generateRecommendations(Long userId, int limit) {
// Peroleh data perilaku pengguna
List<UserBehavior> behaviors = userBehaviorRepo.findRecentByUserId(userId, 100);
// Ekstraksi fitur minat pengguna
Map<String, Double> userInterests = extractUserInterests(behaviors);
// Peroleh kumpulan kandidat komoditas
List<Product> candidateProducts = productRepo.findRecentlyActive(1000);
// Beri skor dan urutkan komoditas
List<ScoredProduct> scoredProducts = candidateProducts.stream()
.map(product -> new ScoredProduct(product, calculateScore(product, userInterests)))
.sorted(Comparator.comparing(ScoredProduct::getScore).reversed())
.collect(Collectors.toList());
// Kembalikan komoditas dengan skor tertinggi
return scoredProducts.stream()
.limit(limit)
.map(sp -> sp.getProduct().getId())
.collect(Collectors.toList());
}
// Metode bantu lainnya...
}Tambahkan komentar yang sesuai pada kode modul bisnis target yang diekstraksi, sehingga developer nantinya dapat dengan mudah mengingat potongan kode melalui komentar inline di IDE.
Kasus 3: Referensi proyek lama untuk meningkatkan efisiensi R&D proyek baru
Saat sebuah enterprise mengembangkan proyek baru, menggunakan kembali kode modul inti serupa dari proyek lama meningkatkan efisiensi pengembangan dan mengurangi waktu serta biaya menulis semua kode dari awal, sehingga kualitas proyek baru menjadi lebih andal.
Memilih dan menyiapkan repositori kode:
Tentukan bisnis dan skenario target, serta identifikasi modul bisnis utama:
Tentukan fungsi serupa: Pertama-tama identifikasi fungsi dan bagian implementasi serupa antara proyek lama dan proyek baru. Misalnya, jika kedua proyek melibatkan manajemen pengguna, tampilan komoditas, dan pemrosesan pesanan, modul-modul ini dapat menjadi fokus.
Nilai kualitas kode: Pastikan kode proyek lama telah diuji sepenuhnya, stabil, dan andal. Bersihkan file dan konfigurasi yang tidak perlu agar konten repositori kode tetap bersih dan dapat digunakan kembali.
Perjelas perilaku bisnis spesifik dan tindakan inti:
Ekstraksi fungsi inti: Dalam proyek lama, ekstraksi kode modul fungsi inti utama untuk modul yang dikonfirmasi dapat digunakan kembali. Contoh:
Manajemen pengguna: registrasi pengguna, login, dan modifikasi informasi.
Tampilan komoditas: daftar komoditas, halaman produk, dan fungsi pencarian.
Pemrosesan pesanan: pembuatan pesanan, pemrosesan pembayaran, dan pembaruan status pesanan.
Tambahkan komentar yang sesuai pada kode modul fungsi inti yang diekstraksi, sehingga developer nantinya dapat dengan mudah mengingat potongan kode melalui komentar inline di IDE.
Pilih file kode dari framework bisnis terkait dan masukkan ke dalam basis pengetahuan kode enterprise. Atur ulang kode proyek lama ke dalam struktur modular, pisahkan kode sesuai pembagian tanggung jawab di antara tim yang memiliki setiap modul proyek baru, dan buat repositori kode modul terpisah:
Isolasi basis pengetahuan kode: Berdasarkan modul fungsi proyek, unggah kode proyek lama yang telah disiapkan ke basis pengetahuan kode yang sesuai. Misalnya, simpan modul manajemen pengguna, modul tampilan komoditas, dan modul pemrosesan pesanan di basis pengetahuan terpisah yang berbeda.
Manajemen izin: Tetapkan izin akses yang sesuai agar hanya tim pengembangan terkait yang dapat melihat basis pengetahuan modul tersebut. Hal ini menghindari gangguan yang tidak perlu selama penyelesaian kode di IDE.
Spesifikasi file kode
Bahasa dan framework yang didukung:
Backend: Java, C#, C/C++, Go, Python.
Frontend: JavaScript, TypeScript, Vue, React.
Batas unggah: Hanya file kode sumber yang diterima. Repositori kode harus hanya berisi file kode sumber yang benar-benar ditulis. Misalnya, unggah file
.javauntuk Java, file.csuntuk C#, dan file.jsatau.jsxuntuk JavaScript.Hindari mengunggah konten berikut:
Data dan kode pengujian: Jangan unggah skrip pengujian, kasus uji, atau kode terkait pengujian apa pun yang tidak berisi logika bisnis.
Metode mock: Kecualikan semua kode yang dihasilkan oleh metode dan alat mock, kecuali kode tersebut berisi implementasi spesifik logika bisnis.
Artefak build:
Frontend: Kecualikan file yang dihasilkan oleh alat build seperti Webpack dan Gulp. File-file ini biasanya berada di direktori
distataubuild.Backend: Kecualikan file DLL terkompilasi dan semua output kompilasi lainnya.
Persyaratan komentar:
Tambahkan komentar detail di header setiap fungsi yang ingin diambil.
Komentar harus memberikan informasi cukup untuk membedakan fungsi berbeda. Rujuk templat komentar atau sesuaikan komentar sesuai spesifikasi enterprise Anda.
/**
* Perbarui status pesanan tertentu.
*
* @param orderId Pengidentifikasi unik pesanan.
* @param newStatus Status pesanan baru.
* @return boolean Menunjukkan apakah pembaruan berhasil.
*/Persyaratan penamaan fungsi:
Jika komentar fungsi singkat, nama fungsi harus secara akurat menggambarkan fungsinya.
Gunakan nama yang jelas dan deskriptif, seperti
exportOrdersToPDFdanupdateOrderStatus, bukanfunc1.
Panduan unggah
Paket file terkompresi: Paket file kode ke dalam format
.zip,.gz, atau.tar.gz.Batas ukuran paket kode: Setiap paket kode tidak boleh melebihi 100 MB.
Cara developer menggunakan peningkatan penyelesaian kode enterprise
Peningkatan penyelesaian kode enterprise mengambil kode dari repositori yang diunggah oleh enterprise Anda. Sebelum mencoba praktik berikut, pastikan kode target sudah berada di repositori kode enterprise.
Praktik terbaik backend
Hasilkan kode dari komentar bahasa alami
Unggah kode ke repositori kode enterprise: Unggah paket terkompresi yang berisi kode fungsi yang diperlukan ke repositori kode enterprise, misalnya kode algoritma Snowflake, dan pastikan fungsi target mengikuti spesifikasi komentar dengan komentar ditempatkan di header fungsi. Untuk informasi lebih lanjut tentang menyiapkan repositori kode, lihat Cara administrator menyiapkan repositori kode enterprise berkualitas tinggi.
/**
* Gunakan algoritma Snowflake untuk menghasilkan nomor seri unik
* @param workerId
* @return
*/
public synchronized Long getSnowFlowerId(long workerId){
long id = -1L;
if (workerId < 0 || workerId > snowFlowerProperties.getMaxWorkerId()) {
throw new IllegalArgumentException(
String.valueOf("workerID must gte 0 and lte " + snowFlowerProperties.getMaxWorkerId()));
}
// ... kode implementasi algoritma ...
return id;
}Masukkan komentar: Di IDE, buka kelas Java dan masukkan komentar yang sesuai dengan fungsi yang ingin diambil. Format komentar bisa fleksibel, tetapi pastikan maknanya akurat dan konsisten.
Metode 1
//Harap hasilkan kode yang menggunakan algoritma Snowflake untuk menghasilkan ID unik dan kembalikan ID yang dihasilkanMetode 2
/**
* Gunakan algoritma Snowflake untuk menghasilkan nomor seri unik
* @param wId
* @return
*/Persyaratan komentar:
Panjang komentar: Hindari komentar yang terlalu singkat saat menulis kode. Gunakan minimal 15 karakter. Komentar yang terlalu pendek tidak dapat memicu pengambilan.
Semantik komentar: Pastikan semantik komentar akurat dan bermakna. Sertakan kata kunci dan deskripsi nilai kembali bila memungkinkan, sehingga Qoder CN dapat memahami dan mencocokkan kode yang sesuai secara akurat.
Dukungan multi-bahasa: Komentar dalam bahasa Mandarin dan Inggris didukung. Komentar di repositori kode dan komentar yang digunakan selama pengkodean aktual dapat dalam bahasa berbeda.
Fleksibilitas nama parameter: Nama parameter dapat ditangani secara fleksibel. Qoder CN secara otomatis menyesuaikan dengan parameter yang diberikan untuk mencocokkan kode yang diambil. Berikut adalah contoh negatif:
//Algoritma Snowflake— Masalah: Informasi yang diberikan tidak cukup, dan komentar terlalu pendek.//Hasilkan nomor seri unik— Masalah: Tidak ada kata kunci spesifik yang digunakan, yang dapat memengaruhi pemahaman dan pencocokan.
Pembuatan kode: Setelah Anda menekan Enter pertama kali, Qoder CN memberikan saran penyelesaian yang dihasilkan dari komentar. Setelah Anda menekan Enter lagi, Qoder CN menyelesaikan kode berdasarkan kode di repositori kode enterprise.
/**
* Gunakan algoritma Snowflake untuk menghasilkan nomor seri unik
* @param workerId
* @return
*/
public synchronized Long get(long workerId) {
long id = -1L;
if (workerId < 0 || workerId > snowFlowerProperties.getMaxWorkerId()) {
throw new IllegalArgumentException(
String.valueOf("workerID must gte 0 and lte " + snowFlowerProperties.getMaxWorkerId()));
}
long timestamp = timeGen();
if (timestamp < lastTimestamp) {
long refusedSeconds = (lastTimestamp - timestamp) / 1000;
throw new RuntimeException(
String.valueOf("Clock moved backwards. Refusing for " + refusedSeconds + " seconds"));
}
if (lastTimestamp == timestamp) {
// Dalam milidetik yang sama, nomor urutan dinaikkan
sequence = (sequence + 1) & snowFlowerProperties.getSequenceMask();
if (sequence == 0) {
// Jumlah maksimum nomor urutan dalam milidetik yang sama telah tercapai
timestamp = tilNextMillis(lastTimestamp);
}
} else {
// Dalam milidetik berbeda, nomor urutan diatur ke 0
sequence = 0L;
}
lastTimestamp = timestamp;
// Bagian timestamp
id = (timestamp - snowFlowerProperties.getTwepoch()) << snowFlowerProperties.getTimestampLeftShift();
// Bagian pengidentifikasi pekerja
id |= (workerId << snowFlowerProperties.getWorkerIdShift());
// Bagian nomor urutan
id |= sequence;
return id;
}Jika komentar Anda berisi parameter, Qoder CN secara otomatis menyesuaikan parameter dalam kode yang dihasilkan untuk memastikan konsistensi penamaan.
Untuk menyegarkan cache dan mendapatkan saran penyelesaian baru, tekan
⌥(option)+Pdi macOS atauAlt+Pdi Windows untuk memicu penyelesaian inline secara manual.
Hasilkan kode dari signature fungsi
Unggah kode ke repositori kode: Unggah paket terkompresi yang berisi kode fungsi yang diperlukan ke repositori kode enterprise, dan pastikan fungsi-fungsi ini memiliki pengidentifikasi yang jelas dan unik untuk pengambilan dan pengenalan. Untuk informasi lebih lanjut tentang menyiapkan repositori kode, lihat Cara administrator menyiapkan repositori kode enterprise berkualitas tinggi.
Masukkan signature fungsi: Di IDE, buka kelas Java dan masukkan signature fungsi target. Nama parameter dapat ditangani secara fleksibel. Qoder CN secara otomatis menyesuaikan dengan parameter yang diberikan untuk mencocokkan kode yang diambil.
public List<Object> nextList(String name, int size)Persyaratan signature fungsi:
Nama fungsi: Gunakan nama fungsi yang jelas dengan semantik cukup untuk menjadi dasar pencocokan kemiripan.
Parameter dan nilai kembali: Jenis dan urutannya harus sesuai dengan fungsi target, tetapi nama parameter dapat ditangani secara fleksibel. Qoder CN secara otomatis menyesuaikan dengan parameter yang diberikan untuk mencocokkan kode yang diambil. Berikut adalah contoh negatif:
public List<Object> func1(String name, int size)— Masalah: Nama fungsi memiliki semantik tidak jelas dan tidak dapat secara akurat mencerminkan fungsinya.public List<String> nextList(int orderId)— Masalah: Jenis parameter dan jenis nilai kembali tidak sesuai dengan fungsi target.
Saran penyelesaian: Setelah Anda menekan Enter pertama kali, Qoder CN memberikan saran penyelesaian kode. Setelah Anda menekan Enter lagi, Qoder CN secara otomatis menyelesaikan kode berdasarkan kode di repositori kode enterprise.
Qoder CN secara otomatis menyesuaikan nama parameter dalam kode yang dihasilkan berdasarkan nama parameter yang Anda berikan, untuk memastikan konsistensi penamaan.
Untuk menyegarkan cache dan mendapatkan saran penyelesaian baru, tekan
⌥(option)+Pdi macOS atauAlt+Pdi Windows untuk memicu penyelesaian inline secara manual.
Praktik terbaik frontend
Lengkapi kode komponen kustom frontend dari tag
Unggah kode ke repositori kode: Sebelum memulai, pastikan semua kode komponen frontend yang diperlukan telah diunggah ke repositori kode enterprise. Berikut adalah contoh framework React:
<LTable
isReady={isReady}
formInitialValues={formInitialValues}
rowKey="key"
tableRef={tableRef}
toolbarLeft={
<Button type="primary">Add</Button>
}
formItems={formItems}
formRef={formRef}
columns={columns}
request={async (params, requestType) => {
const res: Record<string, any> = await apiGetUserList(params);
return {
data: res.data,
total: res.total,
};
}}
/>Tulis kode komponen: Buka file
.jsxyang sesuai di IDE Anda dan mulai menulis kode. Masukkan tag HTML dasar atau tag komponen kustom, seperti<LTable />.Penyelesaian kode otomatis: Saat kode yang Anda masukkan mencapai panjang tertentu dan sesuai dengan kode di pustaka komponen enterprise, IDE secara otomatis memicu penyelesaian kode dan menghasilkan kode komponen lengkap. Anda juga dapat menekan Enter untuk memicu penyelesaian kode secara manual.
Picu penyelesaian di dalam tag komponen lengkap.
Hasilkan kode dari komentar bahasa alami
Unggah kode ke repositori kode: Unggah paket terkompresi yang berisi kode fungsi yang diperlukan ke repositori kode enterprise, dan pastikan setiap fungsi mengikuti spesifikasi komentar dengan komentar ditempatkan di header fungsi. Untuk informasi lebih lanjut tentang menyiapkan repositori kode, lihat Cara administrator menyiapkan repositori kode enterprise berkualitas tinggi. Berikut adalah contoh JavaScript:
/**
* Hasilkan objek yang diindeks berdasarkan id berdasarkan pesan error
* @param {Array<validator,Result>} results
* @return {Record<string,string>}
*/
function getErrObj(results) {
// ... kode implementasi fungsi ...
}Masukkan komentar: Di IDE, masukkan konten komentar spesifik dalam file JavaScript, seperti pada contoh berikut:
//Hasilkan objek yang diindeks berdasarkan id berdasarkan pesan errorPersyaratan komentar:
Panjang komentar: Hindari komentar yang terlalu singkat saat menulis kode. Gunakan minimal 15 karakter. Komentar yang terlalu pendek tidak dapat memicu pengambilan.
Semantik komentar: Pastikan semantik komentar akurat dan bermakna. Sertakan kata kunci dan deskripsi nilai kembali bila memungkinkan, sehingga Qoder CN dapat memahami dan mencocokkan kode yang sesuai secara akurat.
Dukungan multi-bahasa: Komentar dalam bahasa Mandarin dan Inggris didukung. Komentar di repositori kode dan komentar yang digunakan selama pengkodean aktual dapat dalam bahasa berbeda.
Fleksibilitas nama parameter: Nama parameter dapat ditangani secara fleksibel. Qoder CN secara otomatis menyesuaikan dengan parameter yang diberikan untuk mencocokkan kode yang diambil.
Pembuatan kode: Setelah Anda menekan Enter pertama kali, Qoder CN memberikan saran penyelesaian yang dihasilkan dari komentar. Setelah Anda menekan Enter lagi, Qoder CN menyelesaikan kode berdasarkan kode di repositori kode enterprise.
//Hasilkan objek yang diindeks berdasarkan id berdasarkan pesan error
export function getErrObj(results) {
if (!results || results.length <= 0) return {};
const obj = {};
for (let i = 0; i < results.length; i++) {
const result = results[i];
if (result.ok === false) {
obj[result.id] = result.msg || '';
}
}
return obj;
}Jika komentar Anda berisi parameter, Qoder CN secara otomatis menyesuaikan nama parameter dalam kode yang dihasilkan untuk memastikan konsistensi penamaan.
Untuk menyegarkan cache dan mendapatkan saran penyelesaian baru, tekan
⌥(option)+Pdi macOS atauAlt+Pdi Windows untuk memicu penyelesaian inline secara manual.
FAQ
Setelah instalasi ulang, kode di basis pengetahuan masih tidak dapat diambil, bahkan setelah Anda restart IDE atau login kembali.
Solusi:
Di macOS, jalankan perintah berikut untuk restart proses dan membersihkan cache:
ps -ef|grep lingma|grep start|awk '{print $2}'|xargs -I {} kill -9 {}Di Windows, hentikan proses Qoder CN di Task Manager.