pure::variants – Konektor untuk
Manual Manajemen Kode Sumber
Teknologi Parametrik GmbH
Versi 6.0.7.685 untuk pure::varian 6.0
Hak Cipta © 2003-2024 Parametric Technology GmbH
2024
Perkenalan
Konektor pure::variants untuk Manajemen Kode Sumber (Konektor) memungkinkan pengembang untuk mengelola variabilitas kode sumber menggunakan pure::variants. Manajemen Kode Sumber pure::variants menyediakan peluang fleksibel untuk menyinkronkan struktur direktori dan kode sumber filemudah dengan model pure::variants. Dengan demikian, manajemen varian dapat diterapkan secara praktis bahkan pada proyek perangkat lunak yang kompleks. Lebih jauh lagi, koneksi antara fitur pure::variants dan kode sumber dapat dikelola lebih mudah dengan pembangun dan sangat mudah diakses melalui Manajemen Kode Sumber.
1.1. Persyaratan Perangkat Lunak
Konektor pure::variants untuk Manajemen Kode Sumber adalah ekstensi untuk pure::variants dan tersedia pada semua platform yang didukung.
1.2. Instalasi
Harap konsultasikan bagian pure::variants Connectors di Pure::variants Setup Guide untuk informasi rinci tentang cara memasang konektor (menu Help -> Help Contents dan kemudian pure::variants Setup Guide -> pure::variants Connectors).
1.3. Tentang manual ini
Pembaca diharapkan memiliki pengetahuan dasar tentang dan pengalaman dengan pure::variants. Harap baca materi pengantarnya sebelum membaca panduan ini. Panduan ini tersedia dalam bantuan daring dan juga dalam format PDF yang dapat dicetak di sini.
Menggunakan Konektor
2.1. Memulai pure::variants
Bergantung pada metode instalasi yang digunakan, jalankan Eclipse yang mendukung pure::variants atau pada Windows pilih item pure::variants dari menu program.
Jika perspektif Manajemen Varian belum diaktifkan, lakukan dengan memilihnya dari Buka Perspektif->Lainnya… di menu Jendela.
2.2. Mengimpor Pohon Direktori ke Model Keluarga
Sebelum mengimpor pohon direktori ke dalam Model Keluarga, proyek varian harus dibuat. Sebaiknya fitur-fitur sudah didefinisikan dalam Model Fitur. Silakan lihat dokumentasi pure::variants untuk bantuan tentang langkah-langkah ini.
Impor sebenarnya dimulai dengan memilih tindakan Impor… baik di menu konteks Proyek view atau dengan menu Impor… di File menu. Pilih Variant Models atau Projects dari kategori Variant Management dan tekan Next. Pada halaman berikutnya pilih Import a Family Model dari folder sumber dan tekan Next lagi.
Pilih jenis kode sumber yang akan diimpor
Panduan impor akan muncul (lihat Gambar 1, “Halaman panduan impor untuk memilih jenis kode sumber yang dapat diimpor”). Pilih jenis proyek yang akan diimpor dan tekan Berikutnya. Setiap jenis berisi serangkaian kode sumber yang telah ditentukan sebelumnya. file jenis yang akan diimpor ke model.
Gambar 1. Halaman wizard impor untuk memilih jenis kode sumber yang dapat diimporPilih Sumber dan Target
Pada halaman panduan berikutnya (Gambar 2, “Halaman panduan impor untuk memilih sumber dan target impor”) direktori sumber dan model target harus ditentukan.
Tekan tombol Browse… untuk memilih direktori tempat kode sumber berada dan ingin diimpor. Secara default, ruang kerja saat ini dipilih karena ini mungkin merupakan titik yang berguna untuk memulai navigasi.
Di bawah ini Anda dapat menentukan pola penyertaan dan pengecualian. Pola ini harus berupa ekspresi reguler Java. Setiap jalur masukan, relatif terhadap folder akar sumber, diperiksa dengan pola ini. Jika pola penyertaan cocok, folder diimpor, jika pola pengecualian tidak cocok. Artinya pola penyertaan memilih folder yang akan diimpor terlebih dahulu, pola pengecualian membatasi pemilihan awal ini.
Setelah memilih direktori kode sumber, model target harus ditentukan. Oleh karena itu, pilih proyek varian atau folder tempat model harus disimpan dan masukkan nama model. file nama akan diperpanjang secara otomatis dengan ekstensi .ccfm jika tidak diberikan dalam dialog ini. Secara default, nama akan ditetapkan sama dengan nama model itu sendiri. Ini adalah pengaturan yang direkomendasikan.
Setelah folder sumber yang sesuai dan nama model yang diinginkan ditentukan, dialog dapat diakhiri dengan menekan Finish. Jika tombol Next ditekan, halaman selanjutnya akan muncul di mana pengaturan tambahan dapat dilakukan.
Gambar 2. Halaman wizard impor untuk memilih sumber dan target imporUbah Preferensi Impor
Pada halaman wizard terakhir (Gambar 3, “Halaman wizard impor untuk menentukan konfigurasi individual”) ada preferensi yang dapat dilakukan untuk menyesuaikan perilaku impor untuk proyek perangkat lunak yang diimpor.
Halaman dialog menunjukkan tabel yang berisi file jenisnya didefinisikan, yang akan dipertimbangkan oleh proses impor.
Setiap baris terdiri dari empat bidang.
- Bidang Deskripsi berisi teks deskriptif singkat untuk mengidentifikasi file jenis.
- Itu File bidang pola nama digunakan untuk memilih files yang akan diimpor saat cocok dengan nilai bidang. Bidang tersebut menggunakan sintaks berikut:
- Kasus penggunaan yang paling umum mungkin adalah file ekstensi. Sintaks yang biasa digunakan adalah .EXT, di mana EXT adalah ekstensi yang diinginkan. file ekstensi (misalnya .java).
- Situasi umum lainnya adalah situasi khusus file, seperti membuatfileOleh karena itu, dimungkinkan untuk mencocokkan pada titik yang tepat file nama. Untuk melakukan ini, cukup masukkan file nama ke dalam bidang (misalnya build.xml).
- Dalam beberapa kasus, keinginan pemetaan lebih spesifik, jadi hanya fileyang sesuai dengan pola khusus harus diimpor. Untuk memenuhi persyaratan ini, dimungkinkan untuk menggunakan ekspresi reguler di File bidang pola nama.
Menjelaskan sintaks ekspresi reguler akan melampaui tujuan bantuan ini. Silakan lihat bagian ekspresi reguler dari bab referensi dalam panduan pengguna pure::variants (misalnya .*).
- Bidang tipe elemen yang dipetakan mengatur pemetaan antara elemen file tipe dan tipe elemen keluarga pure::variants. Tipe elemen keluarga adalah deskriptor untuk sumber file untuk memberikan informasi lebih lanjut ke elemen yang dipetakan dalam model yang diimpor. Pilihan yang umum adalah ps:class atau ps:makefile.
- Yang Dipetakan file jenis bidang menetapkan pemetaan antara file ketik dan pure::variants file mengetik. file ketik pure::variants adalah deskriptor untuk sumber file untuk memberikan informasi lebih lanjut ke elemen yang dipetakan dalam model yang diimpor. Pilihan yang umum adalah impl untuk implementasi atau def untuk definisi files.
Gambar 3. Halaman wizard impor untuk menentukan konfigurasi individualBaru file Jenis dapat ditambahkan dengan menggunakan tombol Tambahkan Pemetaan. Semua bidang diisi dengan nilai yang tidak ditentukan dan harus diisi oleh pengguna. Untuk mengedit nilai dalam bidang, cukup klik bidang tersebut dengan mouse. Nilai tersebut menjadi dapat diedit dan dapat diubah. Tidak mungkin untuk mengubah nilai default file pola nama tabel. Untuk membuat penyesuaian fleksibel, dimungkinkan untuk membatalkan pilihan file ketik dengan membatalkan pilihan baris. Batal dipilih file pola nama tetap berada dalam konfigurasi tetapi tidak akan digunakan oleh pengimpor. Ditentukan pengguna file jenis dapat dihapus lagi dengan menggunakan tombol Hapus Pemetaan.
Secara default Lainnya files file pola nama tersedia di tabel tetapi tidak dipilih. Biasanya tidak ingin mengimpor semua files tetapi ini dapat dengan mudah diubah dengan memilih baris yang sesuai.
Ada tiga opsi impor umum untuk menyesuaikan perilaku importir.
- Jangan mengimpor direktori tanpa mencocokkan files (misalnya direktori CVS).
Jika importir menemukan direktori yang tidak cocok file ada di dalamnya dan tidak ada subdirektori yang cocok file, direktori tidak akan diimpor. Ini sering berguna, jika proyek dikelola oleh sistem manajemen versi seperti CVS. Untuk CVS, setiap direktori yang relevan berisi direktori CVS jika tidak relevan filedisimpan. Jika opsi ini dipilih dan CVS-files tidak cocok dengan apa pun file tipe yang didefinisikan di atas, direktori tidak akan diimpor sebagai komponen ke dalam Model Keluarga. - Menyortir files dan direktori.
Aktifkan opsi ini untuk mengurutkan files dan direktori masing-masing dalam urutan abjad. - Penanganan jalur impor.
Untuk sinkronisasi lebih lanjut, importir perlu menyimpan jalur asli semua elemen yang diimpor ke dalam model.
Dalam banyak kasus, Model Keluarga dibagikan dengan pengguna lain. Struktur direktori mungkin berbeda untuk setiap pengguna. Untuk mendukung sebagian besar skenario penggunaan umum, pengimpor dapat bekerja dalam berbagai mode:
Mutlak | Jalur absolut ke elemen yang diimpor akan disimpan ke dalam model. Untuk sinkronisasi selanjutnya dan selama transformasi, fileharus ditempatkan pada lokasi yang sama persis seperti saat impor pertama. |
Relatif terhadap Ruang Kerja | Jalur disimpan relatif terhadap folder ruang kerja. Untuk sinkronisasi, files harus menjadi bagian dari ruang kerja Eclipse. Transformasi harus menggunakan ruang kerja Eclipse sebagai direktori input. |
Relatif terhadap Proyek | Jalur disimpan relatif terhadap proyek. Untuk sinkronisasi, files adalah bagian dari proyek di dalam Eclipse. Transformasi harus menggunakan folder proyek sebagai direktori input. |
Relatif terhadap Jalur | Jalur disimpan relatif terhadap jalur yang diberikan. Untuk sinkronisasi, files harus ditempatkan pada lokasi yang sama persis. Direktori input transformasi sama dengan jalur relatif selama impor. |
Semua preferensi dialog ini disimpan secara terus-menerus. Kustomisasi pribadi tidak boleh dilakukan ulang setiap kali impor dijalankan. Hal ini membuat alur kerja impor menjadi mudah dan cepat.
2.3. Memperbarui Model dari Pohon Direktori
Tekan tombol Sinkronisasi untuk menyinkronkan model yang diimpor dengan jalur direktorinya. Jalur akar proyek disimpan dalam model sehingga akan disinkronkan ke direktori yang sama seperti sebelumnya. Untuk mengaktifkan tombol Sinkronkan, buka model dan pilih elemen apa pun. Setelah menekan tombol Sinkronkan, Editor Pembanding dibuka di mana Model Keluarga saat ini dan model struktur direktori saat ini ditentang (lihat Gambar 4, “Pembaruan model dari Pohon Direktori di Editor Pembanding”).
Gambar 4. Pembaruan model dari Pohon Direktori di Editor Pembanding Editor pembanding digunakan di seluruh pure::variants untuk membandingkan versi model, tetapi dalam kasus ini digunakan untuk membandingkan struktur direktori fisik (ditampilkan di sisi kanan bawah) dengan model pure::variants saat ini (sisi kiri bawah). Semua perubahan dicantumkan sebagai item terpisah di bagian atas editor, diurutkan berdasarkan elemen yang terpengaruh.
Memilih item dalam daftar ini akan menyoroti perubahan masing-masing pada kedua model. Dalam contohample, elemen yang ditambahkan ditandai dengan kotak di sisi kanan dan dihubungkan dengan posisi yang memungkinkan dalam model di sisi kiri. Toolbar Gabung antara jendela editor atas dan bawah menyediakan alat untuk menyalin satu atau bahkan semua perubahan (yang tidak bertentangan) secara keseluruhan dari model pohon direktori ke Model Fitur.
Catatan
Sinkronisasi dilakukan dengan pengaturan importir yang terakhir digunakan. Hal ini memungkinkan untuk memperbarui model dengan pengaturan lain yang dibuat saat impor dilakukan.
Menggunakan Relation Indexer
Konektor untuk Manajemen Kode Sumber meningkatkan Hubungan View dengan informasi tentang hubungan antara elemen model pure::variants dan kode sumber. Hubungan ditambahkan untuk fitur yang digunakan dalam kondisi elemen ps:condxml dan ps:condtext.
Untuk ps:flag dan ps:flagfile elemen lokasi konstanta preprosesor dalam sumber C/C++ files ditampilkan. Selain itu, lokasi konstanta praprosesor yang cocok ditampilkan untuk fitur yang dipilih dengan menggunakan pemetaan antara nama unik fitur dan konstanta praprosesor.
3.1. Menambahkan Relation Indexer ke dalam Proyek
Pengindeks relasi dapat diaktifkan pada halaman properti proyek khusus. Pilih proyek dan pilih item Properti dalam menu konteks. Pada dialog yang muncul, pilih halaman Pengindeks Relasi.
Gambar 5. Halaman Properti Proyek untuk Pengindeks Relasi
Pengindeks relasi diaktifkan untuk proyek dengan memilih opsi Aktifkan Pengindeks Relasi (1). Setelah mengaktifkan pengindeks, ada beberapa opsi lagi untuk menentukan perilaku khusus proyek. Pengindeksan Kondisi pure::variants dan Konstanta Preprosesor C/C++ dapat diaktifkan secara terpisah (2). Daftar dengan file pola nama (3) digunakan untuk memilih files untuk pengindeksan. Hanya fileyang cocok dengan salah satu pola dipindai. Tambahkan “*” sebagai pola untuk memindai semua filedari suatu proyek.
Setelah mengaktifkan pengindeks untuk sebuah proyek, pembangun ditambahkan ke proyek tersebut. Pembangun ini memindai perubahan files untuk relasi baru ke elemen model pure::variants secara otomatis.
3.2. Hubungan dengan Kode Sumber
Dengan pengindeks relasi yang diaktifkan, Relasi View berisi entri tambahan. Entri ini menunjukkan nama file dan nomor baris titik varian. Tip alat menunjukkan bagian yang sesuai dari fileDengan mengklik dua kali entri tersebut, file akan dibuka ke editor.
pure::variants Kondisi
Kondisi pure::variants dapat digunakan untuk memasukkan atau mengecualikan bagian dari file tergantung pada pilihan fitur. Pengindeks Kondisi memindai aturan tersebut dan mengekstrak fitur yang direferensikan. Jika fitur tersebut dipilih di editor, Relasi View akan menunjukkan semuanya files dan garis di mana kondisi dengan fitur yang dipilih berada (lihat Gambar 6, “Representasi Kondisi dalam Hubungan View”).
Gambar 6. Representasi Kondisi dalam Relasi ViewUntuk mendapatkan penjelasan terperinci tentang cara menentukan kondisi, lihat bagian ps:condtext dari bab 9.5.7 dari Panduan Pengguna pure::variants (Referensi–>Jenis Elemen Sumber yang Telah Ditetapkan Sebelumnya–>ps:condtext).
Konstanta Praprosesor C/C++
Pengindeks Praprosesor C/C++ memindai files untuk konstanta yang digunakan dalam aturan praprosesor (misalnya #ifdef, #ifndef, …).
Jika ps:flag atau ps:flagfile elemen dipilih Hubungan View menunjukkan penggunaan konstanta praprosesor yang ditentukan.
Hubungan View juga menunjukkan konstanta praprosesor yang terhubung ke fitur dengan menggunakan pola pemetaan. Untuk ini, pola diperluas dengan data fitur yang dipilih. Simbol yang dihasilkan digunakan untuk mencari konstanta praprosesor yang cocok. Gambar 7, “Representasi Konstanta Preprosesor C/C++ dalam Hubungan View” menunjukkan mantanample dengan pola fame{Name}. Pola tersebut diperluas dengan nama unik fitur tersebut menjadi fameNative. Dalam kode yang diindeks terdapat 76 lokasi tempat konstanta praprosesor fameNative digunakan.
Lokasi ini ditunjukkan dalam Hubungan ViewPola dapat didefinisikan dalam preferensi (lihat Bagian 3.3, “Preferensi”).
Gambar 7. Representasi Konstanta Preprosesor C/C++ dalam Relasi View
3.3. Preferensi
Untuk mengubah perilaku default pengindeks, buka preferensi Eclipse dan pilih halaman Pengindeks Relasi dalam kategori Manajemen Varian. Halaman tersebut menampilkan dua daftar.
Gambar 8. Halaman Preferensi Pengindeks RelasiDaftar atas berisi default file pola untuk pengindeks (1). Daftar ini adalah pengaturan pola awal untuk proyek yang baru diaktifkan.
Daftar di bawah berisi pemetaan antara fitur dan konstanta praprosesor (2). Pemetaan ini digunakan untuk semua proyek. Tabel 1, “Penggantian Pemetaan yang Didukung” menunjukkan semua kemungkinan penggantian.
Tabel 1. Penggantian Pemetaan yang Didukung
Kartu liar | Keterangan | Example: FiturA |
Nama | Nama Unik dari fitur yang dipilih | FLAG_{Nama} – FLAG_FiturA |
NAMA | huruf kapital Nama Unik dari fitur yang dipilih | BENDERA_{NAMA} – FITUR_BENDERA |
nama | huruf kecil Nama Unik dari fitur yang dipilih | flag_{nama} – flag_fitura |
Dokumen / Sumber Daya
![]() |
Konektor pure-systems 2024 untuk Perangkat Lunak Manajemen Kode Sumber [Bahasa Indonesia:] Panduan Pengguna 2024, 2024 Konektor untuk Perangkat Lunak Manajemen Kode Sumber, Konektor untuk Perangkat Lunak Manajemen Kode Sumber, Perangkat Lunak Manajemen Kode Sumber, Perangkat Lunak Manajemen, Perangkat Lunak |