Seperti yang disebutkan orang lain, itu tergantung pada beberapa hal:
- Seperti apa lingkungan Anda?
- Apakah Anda memiliki hak akses yang memadai untuk melakukan pengembangan?
- Apakah HW Anda siap mati?
Lingkungan Hidup
Menggunakan VM dapat membantu jika Anda mengerjakan beberapa versi proyek; berbagai proyek; atau menargetkan OS yang berbeda dari yang biasa Anda jalankan (host OS). Saya melakukan banyak pekerjaan SharePoint dan dapat menjalankan mesin yang berbeda untuk berbagai versi rilis sangat membantu karena saya hanya dapat memulai mesin yang berbeda dan memiliki perasaan yang baik untuk keadaan GAC / database. Juga jika Anda perlu menargetkan lingkungan aplikasi * nix tetapi memiliki mesin Windows maka Anda masih dapat melakukan pengembangan dalam VM (ini adalah bagaimana saya belajar Ruby di rumah meskipun saya biasanya melakukan .NET dev work). Saya biasanya menganjurkan ketika melakukan pengujian pengembangan / pengembangan ASP.NET pada versi IIS yang sama bahwa aplikasi pada akhirnya akan berjalan di bawah (rasional yang sama ini berlaku untuk lingkungan target server lain). Tergantung pada versi OS mungkin ada beberapa perbedaan kecil tapi kritis. Catatan ini tidak menyiratkan Anda harus kode ke versi IIS / OS tertentu tetapi mari kita jujur itu benar-benar harus benar-benar bekerja di mana Anda akan menyebarkannya tidak hanya pada mesin lokal Anda.
VM juga (tergantung dari perangkat lunak yang digunakan) memungkinkan Anda untuk mengambil snapshot dari kondisi mesin saat ini dan / atau mengkloningnya. Ini bisa sangat berharga ketika membuat prototipe sesuatu dan Anda tidak perlu khawatir tentang apa yang terjadi di GAC / Registry / dll. Saya juga menemukan mereka sangat berharga dalam menyiapkan demo klien sebelumnya. Karena lingkungan demo berada dalam VM, saya dapat terus bekerja hingga menunjukkan kepada klien apa yang telah kami selesaikan karena saya bekerja di mesin yang berbeda .
Hak-hak yang memadai
Ini umumnya berlaku untuk orang-orang yang bekerja untuk perusahaan dengan serangkaian kebijakan hak akses yang agak tegang. Jika Anda tidak dapat memiliki admin yang tidak dikekang di mesin Anda, ini akan menjadi saat yang tepat untuk bekerja di VM. Biasanya kekuatan hanya khawatir tentang mengunci OS host Anda, tamu bisa terbuka lebar (izin izin). Saya telah mengalami masalah aneh dengan profil roaming, hak admin lumpuh, dan menjalankan VS 2010; menggunakan VM memungkinkan saya untuk menghindari masalah ini.
Apakah HW Anda siap mati?
Ini intinya adalah baik gambar VM Anda berada di server dan remote Anda ke mereka ATAU Anda menjalankannya secara lokal. Jika Anda menjalankan di server maka kekhawatiran terbesar mungkin akan ada terlalu banyak VM yang berjalan pada perangkat keras yang sama. Secara lokal Anda pada dasarnya menginginkan banyak RAM dan untuk meminimalkan seberapa sering Anda kelebihan buffer R / W untuk hard drive Anda. Untuk pengembangan LOB / SharePoint / ASP.NET dasar saya telah menemukan bahwa minimal 8 GB RAM dan konfigurasi hard drive ganda berfungsi dengan baik dalam praktiknya (menjalankan i5 tapi saya juga sudah bekerja dengan Core 2). Hard drive kedua membuat perbedaan terbesar dalam kinerja.
Catatan: Saya tidak memiliki statistik untuk mendukung hal ini tetapi saya perhatikan bahwa Virtual PC memiliki kecenderungan untuk berkinerja lebih rendah dibandingkan dengan VMWare dan Virtual Box. Saya tidak dapat berbicara dengan Hyper-V karena saya belum pernah menggunakannya. Saya tidak akan terkejut jika menggunakan Virtual PC (sebagai perampokan awal untuk menggunakan VM) membuat pengembang lesu menggunakan perangkat lunak virtualisasi.