Bagikan melalui


Ikon Visual StudioCatatan Rilis Visual Studio 2015


Istilah | Lisensi Komunitas Pengembang Blog | Visual Studio

Catatan

Ini bukan versi terbaru Visual Studio. Untuk mengunduh rilis terbaru, silakan kunjungi catatan rilis saat ini untuk Visual Studio 2019.


Rilis Visual Studio 2015

Anda dapat melihat catatan rilis untuk semua versi Visual Studio 2015:

Unduh Visual Studio 2015

Anda dapat mengunduh Visual Studio 2015 dari My.VisualStudio.com. My.VisualStudio.com memerlukan langganan Dev Essentials gratis, atau Langganan Visual Studio.


Ikon Catatan RilisVisual Studio 2015

Dirilis 20 Juli 2015

Ringkasan Apa yang Baru dalam Rilis ini

Perubahan lainnya:

Detail Apa yang Baru dalam Rilis ini

Visual C++ untuk Pengembangan Seluler Lintas Platform

Sekarang mudah untuk berbagi, menggunakan kembali, membangun, menyebarkan, dan men-debug semua kecuali kode yang paling spesifik platform di beberapa platform aplikasi, semuanya dalam satu solusi di Visual Studio. Berikut adalah beberapa hal yang dapat Anda lakukan:

  • Buat proyek dari templat untuk aplikasi Android Native Activity, atau untuk pustaka kode bersama yang dapat Anda gunakan di beberapa platform dan di aplikasi Android asli Xamarin.

  • Gunakan IntelliSense khusus platform untuk menjelajahi API dan menghasilkan kode yang benar untuk target Android atau Windows.

  • Konfigurasikan build Anda untuk platform asli x86 atau ARM.

  • Sebarkan kode Anda ke perangkat Android yang terpasang atau gunakan emulator Android berkinerja Microsoft untuk pengujian.

  • Atur titik henti, lihat variabel, lihat tumpukan dan langkah melalui kode di debugger Visual Studio.

  • Lihat log pesan dari perangkat Android dengan menggunakan penampil LogCat. (Logcat adalah alat diagnostik dan penting untuk pengalaman edit-build-debug>> yang baik.)
    Gunakan Logcat untuk melakukan hal berikut:

    • Cari pesan log tertentu dengan menggunakan bilah pencarian.
    • Gunakan Alihkan Autoscroll untuk melihat pesan log mendatang dengan mudah.
    • Hapus pesan output log sebelumnya.
    • Pilih di antara berbagai tingkat log.
  • Tulis kode C++ yang menargetkan platform iOS dan manfaatkan fitur penulisan kode canggih kami, seperti, tetapi tidak terbatas pada, berbagi kode, IntelliSense lintas platform, pemfaktoran ulang, dan definisi intip. Dukungan iOS masih berjalan, jadi perhatikan lebih lanjut tentang hal ini segera. Anda dapat mengirimi kami umpan balik dengan menggunakan Sambungkan untuk bug. Selain itu, Anda dapat mengirimi kami pemikiran cepat Anda dengan menggunakan Send-a-Smile di Ide Visual Studio.

Kami juga menambahkan atau memperbarui hal berikut:

  • Dukungan untuk Android API Level 21 (Lollipop).
  • Templat baru yang didasarkan pada membuat dukungan file untuk Android, yang memungkinkan penggunaan sistem build eksternal (termasuk NDK- BUILD).
  • Header yang telah dikommpilasikan sebelumnya di semua templat (termasuk Pustaka Bersama Dinamis, Pustaka Statis, dan templat seluler lintas platform).

Alat Visual Studio untuk Apache Cordova

Sebelumnya dikenal sebagai Aplikasi Hibrid Multi-Perangkat untuk Visual Studio, Visual Studio Tools for Apache Cordova memudahkan untuk membangun, men-debug, dan menguji aplikasi lintas platform yang menargetkan Android, iOS, Windows, dan Windows Phone dari satu proyek Visual Studio sederhana.

Semua fitur yang tersedia di CTP sebelumnya sekarang tersedia di Visual Studio 2015 RC, termasuk peningkatan berikut:

  • Perbarui penghematan untuk Ripple - tidak perlu membangun kembali!
  • Men-debug versi iOS aplikasi Anda dari Visual Studio saat disebarkan ke Simulator iOS atau perangkat yang terhubung di Mac
  • Peningkatan keamanan dan konfigurasi yang disederhanakan untuk agen build iOS jarak jauh yang disertakan
  • Pengalaman manajemen plugin yang ditingkatkan yang mencakup dukungan untuk menambahkan plugin kustom ke proyek Anda dari Git atau sistem file
  • Pilih opsi konfigurasi khusus platform dari perancang config.xml yang ditingkatkan
  • Dukungan untuk Apache Cordova 4.0.0.

Kami mendengarkan umpan balik Anda dan memperluas jumlah perangkat yang dapat Anda debug, sebagai berikut:

  • Android 4.4, Android 4.3 dan yang lebih lama dengan jsHybugger
  • iOS 6, 7, dan 8
  • Windows Store 8.1

Kemudian, kami memperluas dukungan debugging kami lebih lanjut. Anda sekarang dapat men-debug aplikasi Apache Cordova yang menargetkan Windows Phone 8.1.

Anda dapat mengatur titik henti, memeriksa variabel, menggunakan konsol, dan melakukan tugas penelusuran kesalahan lainnya di emulator Windows Phone 8.1 atau perangkat terlampir.

Penelusuran kesalahan dengan Alat Visual Studio untuk Apache Cordova

Kami menambahkan interoperabilitas CLI untuk rilis RC. Proyek Cordova di Visual Studio sekarang akan disinkronkan dengan perubahan yang dilakukan pada folder proyek Anda di disk. Perubahan dapat mengalir masuk dan keluar dari Visual Studio apakah Anda bekerja dengan alat pihak ketiga atau pada sistem operasi lainnya. (Struktur file default untuk proyek Cordova didasarkan pada struktur yang diharapkan oleh alat baris perintah Apache Cordova, yang membuatnya lebih mudah untuk bekerja langsung dengan Apache Cordova CLI atau alat lain yang mengharapkan struktur folder tersebut.)

Visual Studio Emulator untuk Android

Anda dapat menggunakan Visual Studio Emulator untuk Android baik dalam proyek lintas platform di Visual Studio (Xamarin atau C++), atau di Visual Studio Tools untuk Apache Cordova. Emulator memungkinkan Anda beralih di antara emulator platform yang berbeda tanpa konflik Hyper-V. Ini mendukung berbagai sensor dan simulasi, termasuk GPS/Lokasi, akselerometer, rotasi layar, zoom, kartu SD, kamera, multi-sentuhan, dan akses jaringan. Ini juga mendukung Android versi 4.4 (KitKat, API Level 19) dan 5.0 (Lollipop, API Level 21).

Visual Studio Emulator untuk Android mendukung simulasi WiFi dan kemampuan untuk memilih dari beberapa konfigurasi perangkat keras perangkat yang berbeda.

Kami menambahkan fitur baru berikut untuk RTM:

  • Platform baru. Gambar Jellybean (API 17) dan Lollipop 5.1 (API 22) tersedia.
  • Antarmuka baris perintah. Menavigasi ke %programfiles(x86)%\Microsoft Emulator Manager\1.0\emulatorcmd.exe dalam prompt perintah akan memungkinkan Anda berinteraksi dengan manajer emulator (daftar, menginstal, memulai profil, dll.) tanpa UI.
  • Seret dan letakkan pustaka zip. Menyeret dan menjatuhkan zip yang dapat di-flash ke emulator sekarang akan secara otomatis membongkah dan menginstalnya.
  • Tab Kartu SD. Tab baru ini di jendela "Alat Tambahan" memungkinkan Anda mendorong dan menarik data ke dan dari Kartu SD.
  • Memperoleh sendiri. Emulator dapat diinstal pada komputer tanpa mengharuskan Anda menginstal Visual Studio. Pintasan ke Emulator Manager muncul di menu Mulai sehingga Anda dapat memulainya dan menggunakannya dari rantai alat pengembangan apa pun.

Untuk informasi selengkapnya, lihat Emulator Visual Studio untuk Android.

Alat Visual Studio untuk Pengembangan Aplikasi Windows Universal

Alat Visual Studio untuk pengembangan aplikasi Universal Windows terintegrasi dengan penyiapan Visual Studio. Alat-alat ini memungkinkan Anda untuk membangun aplikasi Windows yang berjalan di semua perangkat Windows 10 - ponsel di saku Anda, tablet atau laptop di tas Anda, PC di meja Anda, perangkat IoT dan segera, konsol Xbox di rumah Anda, Surface Hub, dan banyak lagi. Selain itu, Anda juga dapat menggunakan alat-alat ini untuk membangun Aplikasi Desktop Windows yang memanfaatkan API Windows 10. Untuk informasi selengkapnya, lihat Apa yang Baru di Alat Visual Studio untuk Aplikasi Windows Universal.

Untuk informasi selengkapnya tentang pengembangan aplikasi Windows, lihat Panduan untuk aplikasi Universal Windows dan Pusat Pengembang Windows. Untuk informasi tentang build dan SDK Windows terbaru, lihat portal Windows Insider .

Visual C++

Dalam rilis ini, pengkompilasi C++ dan pustaka standar telah diperbarui dengan dukungan yang ditingkatkan untuk C++11 dan dukungan awal untuk fitur C++14 tertentu. Mereka juga menyertakan dukungan awal untuk fitur tertentu yang diharapkan berada dalam standar C++17.

Selain itu, lebih dari 500 bug kompilator telah diperbaiki, termasuk banyak yang dikirimkan oleh pelanggan melalui Komunitas Pengembang Microsoft - terima kasih!

Fitur Bahasa

Kami menambahkan fitur baru berikut untuk mendekatkan pengkompilasi ke C++standar:

  • Fungsi yang Dapat Dilanjutkan (lanjutkan/tunggu) Kata kunci resume dan tunggu memberikan dukungan tingkat bahasa untuk pemrograman asinkron dan memungkinkan fungsi yang dapat dilanjutkan. Saat ini, fitur ini hanya tersedia untuk target x64. Diusulkan untuk C++17 [N3858]
  • Jenis parameter fungsi Lambda Ekspresi Lambda Generik (Polimorfik) sekarang dapat ditentukan menggunakan otomatis; pengompilasi menafsirkan secara otomatis dalam konteks ini untuk berarti bahwa operator panggilan fungsi penutupan adalah templat fungsi anggota dan bahwa setiap penggunaan otomatis dalam ekspresi lambda sesuai dengan parameter jenis templat yang berbeda. C++14
  • Ekspresi Pengambilan Lambda Umum Juga dikenal sebagai init-capture. Hasil ekspresi arbitrer sekarang dapat ditetapkan ke variabel dalam klausul pengambilan lambda. Ini memungkinkan jenis pindah-saja untuk ditangkap oleh nilai dan memungkinkan ekspresi lambda untuk menentukan anggota data arbitrer dalam objek penutupannya. C++14
  • Literal Biner sekarang didukung. Literal tersebut diawali dengan 0B atau 0b dan hanya terdiri dari digit 0 dan 1. C++14
  • Return Type Deduction Jenis pengembalian fungsi normal sekarang dapat disimpulkan, termasuk fungsi dengan beberapa pernyataan pengembalian dan fungsi rekursif. Definisi fungsi tersebut didahului oleh kata kunci otomatis seperti dalam definisi fungsi dengan jenis pengembalian berikutnya, namun jenis pengembalian berikutnya dihilangkan. C++14
  • decltype(auto) Ketik deduction menggunakan kata kunci otomatis untuk menginisialisasi ekspresi strip ref-qualifier dan cv-qualifier tingkat atas dari ekspresi. decltype(auto) mempertahankan ref- dan cv-qualifiers dan sekarang dapat digunakan di mana saja yang dapat digunakan secara otomatis, kecuali untuk memperkenalkan fungsi dengan jenis pengembalian yang disimpulkan atau di belakang. C++14
  • Pembuatan Implisit Dari Pindahkan Konstruktor Pemindahan Anggota Khusus dan operator penetapan pemindahan sekarang secara implisit dihasilkan ketika kondisi memungkinkan, sehingga membawa pengkompilasi ke kesamaan penuh dengan referensi rvalue C++11. C++11
  • Mewarisi Konstruktor Kelas turunan sekarang dapat menentukan bahwa ia akan mewarisi konstruktor kelas dasarnya, Base, dengan menyertakan pernyataan menggunakan Base::Base; dalam definisinya. Kelas turunan hanya dapat mewarisi semua konstruktor kelas dasarnya, tidak ada cara untuk mewarisi hanya konstruktor dasar tertentu. Kelas turunan tidak dapat mewarisi dari beberapa kelas dasar jika mereka memiliki konstruktor yang memiliki tanda tangan yang identik, juga tidak dapat mendefinisikan kelas turunan konstruktor yang memiliki tanda tangan yang identik dengan salah satu konstruktor yang diwariskan. C++11
  • Kueri Perataan dan Kontrol Perataan variabel dapat dikueri dengan menggunakan operator alignof() dan dikontrol dengan menggunakan penentu alignas(). alignof() mengembalikan batas byte pada instans jenis yang harus dialokasikan; untuk referensi, ia mengembalikan perataan jenis yang dirujuk, dan untuk array, ia mengembalikan perataan jenis elemen. alignas() mengontrol perataan variabel; dibutuhkan konstanta atau jenis, di mana jenis singkatan untuk alignas (alignof(type)). C++11
  • Ukuran yang diperluas dari Ukuran kelas atau variabel anggota struktur sekarang dapat ditentukan tanpa instans kelas atau struktur dengan menggunakan sizeof(). C++11
  • dukungan parsial constexpr untuk C++11 constexpr. C++11 (parsial)
  • Akhiran Literal yang Ditentukan Pengguna (UDL) yang bermakna sekarang dapat ditambahkan ke literal numerik dan string untuk memberi mereka semantik tertentu. Kompiler menginterpretasikan literal akhiran sebagai panggilan ke operator UDL yang sesuai. C++11
  • Variabel lokal Statis Thread-Safe "Magic" sekarang diinisialisasi dengan cara aman utas, menghilangkan kebutuhan akan sinkronisasi manual. Hanya inisialisasi yang aman untuk utas, penggunaan variabel lokal statis oleh beberapa utas masih harus disinkronkan secara manual. Fitur statis thread-safe dapat dinonaktifkan dengan menggunakan bendera /Zc:threadSafeInit- untuk menghindari mengambil dependensi pada CRT. C++11
  • Thread-Local Storage Gunakan kata kunci thread_local untuk menyatakan bahwa objek independen harus dibuat untuk setiap utas. C++11
  • Operator noexcept sekarang dapat digunakan untuk memeriksa apakah ekspresi mungkin melemparkan pengecualian. Penentu noexcept sekarang dapat digunakan untuk menentukan bahwa fungsi tidak melemparkan pengecualian. C++11
  • Namespace sebaris Namespace layanan sekarang dapat ditentukan sebagai sebaris untuk menaikkan isinya ke dalam namespace layanan penutup. Namespace sebaris dapat digunakan untuk membuat pustaka versi yang mengekspos versi terbarunya secara default, sambil tetap membuat versi API sebelumnya tersedia secara eksplisit. C++11
  • Unions Unrestricted Jenis gabungan sekarang dapat berisi jenis dengan konstruktor non-sepele. Konstruktor untuk serikat tersebut harus didefinisikan. C++11
  • Jenis Karakter Baru dan Karakter Literal Unicode dan literal string dalam UTF-8, UTF-16, dan UTF-32 sekarang didukung dan jenis karakter baru char16_t dan char32_t telah diperkenalkan. Literal karakter dapat diawali dengan u8 (UTF-8), u (UTF-16), atau U (UTF-32) seperti pada U'a', sementara literal string juga dapat diawali dengan ekuivalen raw-string u8R (UTF-8 raw-string), uR (UTF-16 raw-string), atau UR (UTF-32 raw-string). Nama karakter universal dapat digunakan secara bebas dalam literal Unicode seperti dalam u'\u00EF', u8"\u00EF adalah i", dan Anda"\U000000ef adalah I". C++11
  • func Func pengidentifikasi yang telah ditentukan sebelumnya secara implisit didefinisikan sebagai string yang berisi nama fungsi penutup yang tidak memenuhi syarat dan tidak disebutkan. C++11
  • __restrict __restrict sekarang dapat diterapkan ke referensi.
  • Ketik kata kunci nama. Pengguna sekarang dapat menulis nama jenis alih-alih kelas dalam parameter templat templat. C++14
  • Noexcept operator void globals delete(void *, std::size_t) noexcept and void operator delete[](void *, std::size_t) noexcept sekarang dapat kelebihan beban. C++14
  • Pemisah digit Sekarang, Anda dapat menyela literal numerik dengan tanda kutip tunggal untuk membuatnya lebih mudah dibaca. Misalnya, int x = 1'000'000;. C++14
  • Nama karakter universal dalam literal Anda sekarang dapat menulis karakter dasar, seperti 'A' dan karakter umpan baris, sebagai titik kode dalam literal. Misalnya, const char *s = "\u0041\u000A";. C++11
  • Penginisialisasi anggota data non-statis sekarang bekerja dengan benar dengan daftar inisialisasi. C++11
  • Atribut Anda sekarang dapat menentukan fungsi sebagai [[noreturn]] untuk memberi tahu pengkompilasi bahwa fungsi tidak ditampilkan (meskipun dapat melemparkan pengecualian). Berbagai konstruksi sekarang juga dapat ditentukan sebagai [[tidak digunakan lagi]]. Atribut sekarang diizinkan pada namespace layanan dan enumerator. C++11, C++14, dan C++17
  • Literal yang Ditentukan Pengguna (UDL) Harfiah dan string sekarang dapat memiliki akhiran yang bermakna yang melakukan komputasi yang disesuaikan pada data literal. C++11
  • Atribut pengurutan dependensi data Anda sekarang dapat menentukan parameter fungsi, parameter lambda, atau deklarasi fungsi sebagai [[carries_dependency]] untuk meningkatkan pengoptimalan untuk struktur data bersamaan yang sering dibaca tetapi jarang dimodifikasi. C++11
  • Aturan baru untuk otomatis dengan pengurangan otomatis braced-init-lists untuk copy-list-initializations sekarang akan menyimpulkan std::initializer_list atau dibentuk dengan cara lain. C++17

Fitur Pustaka Visual C++

  • Literal yang Ditentukan Pengguna (UDL) untuk Jenis Pustaka Standar Header <krono>, <string>, dan <kompleks> sekarang menyediakan operator UDL untuk kenyamanan Anda. Misalnya, 123ms berarti std::chrono::milidetik(123), "hello"s berarti std::string("hello"), dan 3.14i berarti std::complex(0.0, 3.14).
  • Null Forward Iterators Pustaka standar sekarang memungkinkan pembuatan iterator forward yang tidak merujuk ke instans kontainer. Iterator tersebut diinisialisasi nilai dan dibandingkan dengan jenis kontainer tertentu. Membandingkan iterator yang diinisialisasi nilai dengan iterator yang tidak diinisialisasi nilai tidak ditentukan. C++14
  • quoted() Pustaka standar sekarang mendukung fungsi quoted() untuk membuat bekerja dengan nilai string yang dikutip dan I/O lebih mudah. Dengan quoted(), seluruh string yang dikutip diperlakukan sebagai entitas tunggal (karena string karakter non-spasi berada dalam aliran I/O); selain itu, urutan escape dipertahankan melalui operasi I/O. C++14
  • Pencarian Asosiatif Heterogen Pustaka standar sekarang mendukung fungsi pencarian heterogen untuk kontainer asosiatif. Fungsi tersebut memungkinkan pencarian berdasarkan jenis selain key_type selama jenisnya sebanding dengan key_type. C++14
  • Urutan Bilangan Bulat Waktu Kompilasi Pustaka standar sekarang mendukung jenis integer_sequence yang mewakili urutan nilai bilangan bulat yang dapat dievaluasi pada waktu kompilasi untuk membuat bekerja dengan paket parameter lebih mudah dan untuk menyederhanakan pola pemrograman templat tertentu. C++14
  • exchange() Pustaka standar sekarang mendukung fungsi utilitas std::exchange() untuk menetapkan nilai baru ke objek dan mengembalikan nilai lamanya. Untuk jenis kompleks, exchange() menghindari penyalinan nilai lama ketika konstruktor pemindahan tersedia, menghindari penyalinan nilai baru jika bersifat sementara atau dipindahkan, dan menerima jenis apa pun sebagai nilai baru yang memanfaatkan operator penugasan konversi apa pun. C++14
  • Dual-Range equal(), is_permutation(), mismatch() Pustaka standar sekarang mendukung kelebihan beban untuk std::equal(), std::is_permutation(), dan std::mismatch() yang menerima dua rentang. Kelebihan beban ini menangani urutan dengan panjang yang berbeda. C++14
  • get<T>() Pustaka standar sekarang mendukung fungsi templat get<T>() untuk memungkinkan elemen tuple ditangani oleh jenisnya. Jika tuple berisi dua elemen atau lebih dari jenis yang sama mendapatkan<T>() tuple tidak dapat diatasi oleh jenis tersebut; namun, elemen lain yang diketik secara unik masih dapat ditangani. C++14
  • tuple_element_t Pustaka standar sekarang mendukung alias jenis tuple_element_t<I, T> yang merupakan alias untuk typename tuple_element<I, T>::type. Ini memberikan beberapa kenyamanan untuk pemrogram templat, mirip dengan alias jenis metafunksi lainnya di <type_traits>. C++14
  • Spesifikasi Teknis Sistem File "V3" Implementasi yang disertakan dari Spesifikasi Teknis Sistem File telah diperbarui ke versi akhir.
  • Alokator Minimal Pustaka standar sekarang mendukung antarmuka alokator minimal di seluruh; perbaikan penting termasuk std::function, shared_ptr, allocate_shared(), dan basic_string. C++11
  • <chrono> Jenis chrono high_resolution_clock dan steady_clock telah diperbaiki. C++11
  • constexpr telah diimplementasikan di seluruh Pustaka Standar C++. C++11, C++14, dan C++17
  • quick_exit() Anda sekarang dapat mengakhiri proses multithreaded dengan lebih bersih dengan memanggil quick_exit() dan menjalankan kode pembersihan di at_quick_exit(). C++11
  • void_t mendukung metaprogram templat tingkat lanjut. C++17
  • Konversi ke unique_ptr<T[]> sekarang diizinkan jika diketahui aman. C++17
  • invoke() memungkinkan objek fungsi, penunjuk ke fungsi anggota, dan penunjuk ke anggota data untuk dipanggil dengan sintaks yang seragam. C++17
  • noexcept Pustaka standar telah membersihkan penggunaan noexcept pada fungsi tertentu. C++17
  • uncaught_exceptions() melaporkan jumlah pengecualian dalam penerbangan (yang mungkin lebih dari 1). C++17
  • reference_wrapper sekarang dapat disalin secara sepele. C++17
  • map/unordered_map sekarang mendukung insert_or_assign()/try_emplace(). C++17
  • fungsi non-anggota size(), empty(), dan data() sekarang disediakan. C++17
  • auto_ptr, random_shuffle(), dan mesin fungsi> lama <tidak digunakan lagi di C++11/14 dan dihapus di C++17. Visual Studio 2015 menyediakannya secara default, tetapi menentukan _HAS_AUTO_PTR_ETC ke 0 di seluruh proyek akan menghapus definisinya.
  • unique_ptr tugas sekarang dibatasi dengan tepat. C++17
  • bool_constant sekarang didukung sebagai alias untuk bool> integral_constant<. C++17

Visual C++ Build Yang Lebih Cepat

  • Pembuatan Kode Waktu Tautan Bertambah Bertahap (LTCG) Sekarang Anda dapat memberi tahu LTCG untuk membangun kembali hanya bagian proyek Anda yang terpengaruh oleh pengeditan. Ini dapat secara signifikan mengurangi waktu tautan aplikasi yang menggunakan LTCG. Aktifkan fitur ini dengan menggunakan sakelar linker /LTCG:inkremental.
  • Penautan Bertambah Bertahap untuk Pustaka Statis Berubah ke pustaka statis yang direferensikan oleh modul kode lain sekarang ditautkan secara bertahap.
  • /Debug:FastLink secara substansial mengurangi waktu tautan dengan menggunakan teknik pembuatan PDB baru.
  • Peningkatan algoritma telah dilakukan pada linker untuk mengurangi waktu tautan.
  • Penyempurnaan telah dilakukan yang akan memungkinkan pembuatan kode berat templat lebih cepat.
  • Instrumentasi Fast Profile Guided Optimization (PGO) Mode instrumentasi baru yang ringan untuk game dan sistem real time telah diperkenalkan di PGO. Bersama dengan fitur baru lainnya yang tersedia melalui sakelar linker /GENPROFILE dan /FASTGETPROFILE, Anda sekarang dapat menyeimbangkan kualitas kode dan kecepatan build saat menggunakan PGO.
  • Pengurangan ukuran file objek Compiler dan penyempurnaan pustaka standar C++ menghasilkan file objek dan pustaka statis yang jauh lebih kecil. Penyempurnaan ini tidak memengaruhi ukuran pustaka yang ditautkan secara dinamis (DLL) atau executable (EXEs) karena kode redundan telah dihapus secara historis oleh linker.

Performa Visual C++ dan Kualitas Kode

  • Penyempurnaan vektorisasi otomatis. Kami telah meningkatkan vektorisasi alur kontrol (jika kemudian-lain), vektorisasi saat mengkompilasi di bawah /O1 (Minimalkan ukuran), dan meningkatkan kualitas kode vektor secara keseluruhan, termasuk dukungan untuk STL Paralel, vektorisasi lebih banyak berbasis rentang untuk perulangan, dan dukungan untuk perulangan #pragma (ivdep).
  • Peningkatan pengoptimalan skalar. Kami telah menambahkan pembuatan kode operasi bit-test yang lebih baik, penggabungan dan pengoptimalan alur kontrol (peralihan loop-if), dan pengoptimalan skalar lainnya (misalnya, pembuatan kode yang lebih baik untuk std::min dan std::max).
  • Pengoptimalan Terpandu Profil (PGO). Kami membuat sejumlah penyempurnaan pada PGO, termasuk set referensi yang ditingkatkan, kemampuan tata letak data yang lebih baik, dan kemampuan untuk menggunakan kembali keputusan inlining, kecepatan vs. ukuran, dan tata letak yang dibuat sebelumnya.
  • Control Flow Guard (CFG). Kami menambahkan fitur keamanan baru; cukup tambahkan opsi baru ke proyek Anda, dan pengkompilasi Visual C++ sekarang akan menyuntikkan pemeriksaan keamanan tambahan ke biner Anda untuk membantu mendeteksi upaya untuk membajak kode Anda. Ketika pemeriksaan diaktifkan, itu akan menghentikan eksekusi kode Anda sebelum pembajak dapat melakukan kerusakan pada data atau PC Anda.

Catatan

Kami telah memperbarui opsi perintah. Alih-alih menggunakan sakelar /d2guard4 seperti yang Anda lakukan di rilis sebelumnya, Anda sekarang harus menggunakan /guard:cf.

Produktivitas, Debugging, dan Diagnostik Visual C++

Kami telah menambahkan dukungan refaktor untuk C++ dengan fitur-fitur berikut:

  • Ganti Nama Simbol Mengubah semua kemunculan simbol menjadi nama baru.
  • Fungsi Ekstraksi Pindahkan kode yang dipilih ke fungsinya sendiri. Pemfaktoran ulang ini tersedia sebagai ekstensi untuk Visual Studio di Visual Studio Gallery.
  • Terapkan Virtual Murni Menghasilkan definisi fungsi untuk fungsi virtual murni yang diwariskan oleh kelas atau struktur. Pewarisan beberapa dan rekursif didukung. Aktifkan refaktor ini dari definisi kelas warisan untuk mengimplementasikan semua fungsi virtual murni yang diwariskan, atau dari penentu kelas dasar untuk mengimplementasikan fungsi virtual murni dari kelas dasar tersebut saja.
  • Buat Deklarasi atau Definisi Menghasilkan deklarasi dari definisi yang ada atau definisi default dari deklarasi yang ada. Akses refaktor ini dari deklarasi atau definisi yang ada, atau dari indikator bola lampu.
  • Pindahkan Definisi Fungsi Memindahkan isi fungsi antara kode sumber dan file header. Aktifkan pemfaktoran ulang ini dari tanda tangan fungsi.
  • Konversi ke Literal String Mentah Mengonversi string yang berisi urutan escape menjadi literal raw-string. Urutan escape yang didukung adalah \n (baris baru), \t (tab), ' (tanda kutip tunggal), " (tanda kutip ganda), dan ? (tanda tanya). Aktifkan fitur ini dengan mengklik kanan di mana saja di dalam string.

Penyempurnaan Program Database (PDB) di Visual C++ meliputi yang berikut ini:

  • Kecepatan Pemindaian Solusi telah ditingkatkan, terutama untuk solusi besar.
  • Operasi seperti Definisi Buka tidak lagi diblokir selama pemindaian solusi kecuali selama pemindaian solusi awal ketika solusi baru dibuka untuk pertama kalinya.

Peningkatan Keterbacaan IntelliSense: Instansiasi templat yang kompleks dan typedef disederhanakan dalam bantuan parameter dan quickinfo untuk membuatnya lebih mudah dibaca.

Visualisasi Debugger di C++

Tambahkan visualisasi debugger Natvis ke proyek Visual Studio Anda untuk memudahkan manajemen dan integrasi kontrol sumber. File Natvis yang ditambahkan ke proyek lebih diutamakan evaluasi daripada visualizer Natvis di luar proyek. Untuk informasi selengkapnya, lihat Membuat tampilan kustom objek asli di debugger.

Dan karena RC, Anda dapat menggunakan file Natvis saat men-debug C++ di Android. Debugger mencakup visualisasi untuk banyak templat umum, dan mendukung pemuatan file kustom yang ditambahkan ke proyek C++.

Diagnostik Memori Asli

  • Sesi diagnostik memori (Alt+F2) memungkinkan Anda memantau penggunaan memori langsung aplikasi asli Anda.
  • Rekam jepret memori mengambil gambar sesaat dari konten timbunan aplikasi Anda. Perbedaan dalam status timbunan dapat diperiksa dengan membandingkan dua rekam jepret memori. Lihat jenis objek, nilai instans, dan tumpukan panggilan alokasi untuk setiap instans setelah menghentikan aplikasi.

Deteksi dan pemulihan kebuntuan yang ditingkatkan saat memanggil fungsi C++ dari jendela Watch dan Immediate.

Diagnostik kompilator yang ditingkatkan - Pengkompilasi memberikan peringatan yang ditingkatkan tentang kode yang mencurigakan. Peringatan baru telah ditambahkan (misalnya, variabel bayangan dan string format cetak yang tidak cocok). Pesan peringatan yang ada telah diperjelas.

Bendera /Wv - Peringatan yang diperkenalkan setelah versi kompilator tertentu XX.YY. ZZZZ dapat dinonaktifkan dengan menggunakan /Wv:XX.YY. Bendera ZZZZ. Peringatan lain dapat dinonaktifkan secara khusus selain yang ditentukan melalui bendera /Wv.

Dukungan yang Ditingkatkan untuk Debugging Kode yang Dioptimalkan - Kode debug dengan bendera /Zi, /Zo, atau /Z7 diaktifkan.

Visual C++ Diagnostik Grafis

Diagnostik Grafis telah ditingkatkan dengan fitur-fitur berikut:

  • Pengambilan Berturut-turut hingga 30 bingkai berturut-turut dengan satu tangkapan.
  • Tangkapan Terprogram Memulai pengambilan bingkai secara terprogram. Pengambilan terprogram sangat berguna untuk men-debug shader komputasi dalam program yang tidak pernah memanggil Ada, atau ketika masalah penyajian sulit ditangkap secara manual tetapi dapat diprediksi secara terprogram dari status aplikasi saat runtime.
  • Daftar Peristiwa Grafis yang Disempurnakan Tampilan Panggilan Gambar baru ditambahkan yang menampilkan peristiwa yang diambil dan statusnya dalam hierarki yang diatur oleh Gambar Panggilan. Anda dapat memperluas panggilan gambar untuk menampilkan status perangkat yang ada saat ini pada saat panggilan gambar dan Anda dapat memperluas setiap jenis status lebih lanjut untuk menampilkan peristiwa yang mengatur nilainya.
  • Dukungan untuk Windows Phone 8.1 Graphics Diagnostics sekarang sepenuhnya mendukung penelusuran kesalahan aplikasi Windows di emulator Telepon atau di Telepon yang ditambatkan.
  • Analisis Bingkai Grafis Alat ini mengumpulkan pengukuran performa pada bingkai yang diambil; selain itu, alat ini melakukan serangkaian eksperimen yang telah ditentukan sebelumnya yang memberikan wawasan tentang bagaimana performa akan terpengaruh ketika berbagai teknik tekstur diterapkan. Analisis Bingkai juga mengumpulkan penghitung kinerja dari perangkat keras.
  • Antarmuka pengguna khusus untuk Analisis Grafis Jendela Visual Studio Graphics Analyzer baru adalah ruang kerja khusus untuk menganalisis bingkai grafis.
  • Shader Edit dan Terapkan Lihat dampak perubahan kode shader dalam log yang diambil tanpa menjalankan kembali aplikasi.
  • Mengonfigurasi opsi pengambilan di Diagnostik Alat-Opsi-Grafis>>.
  • Alat baris perintah untuk menangkap dan memutar bingkai belakang.
  • Dukungan Diagnostik Grafis untuk DirectX 12. Alat Visual Studio Graphics Diagnostics sekarang mendukung masalah rendering debugging di aplikasi DirectX 12.

Alat Penggunaan GPU baru

Alat Penggunaan GPU di Visual Studio 2015 dapat digunakan untuk memahami penggunaan GPU aplikasi DirectX. Grafik Frame Time, Frame Rate, dan Pemanfaatan GPU tersedia saat aplikasi berjalan secara langsung. Selain itu, dengan mengumpulkan dan menganalisis data penggunaan GPU terperinci, alat ini memberikan wawasan tentang waktu eksekusi CPU dan GPU dari peristiwa DirectX individu, dan oleh karena itu dapat berguna untuk menentukan apakah CPU atau GPU adalah hambatan performa.

Mengaktifkan penelusuran kesalahan Proyek Pengujian Terkelola Visual C++

Baru dalam rilis ini: Untuk mengaktifkan penelusuran kesalahan Proyek Pengujian Terkelola Visual C++, buka "Alat | Opsi | Penelusuran kesalahan | Panel Umum", dan periksa opsi "Tekan pengoptimalan JIT pada beban modul (Hanya terkelola)".

C# dan Visual Basic

Fitur Bahasa

Dalam rilis ini, beberapa fitur bahasa C# dan Visual Basic baru membantu mengurangi boilerplate dan kekacauan dalam kode sehari-hari, mendorong gaya pemrograman yang lebih deklaratif, dan menyatukan kedua bahasa tersebut. Misalnya, ada peningkatan sinaks pada jenis dan deklarasi anggota dan pemeriksaan null. Selain itu, variabel lokal dapat dideklarasikan di dalam ekspresi, dan menunggu dapat digunakan dalam menangkap dan akhirnya memblokir. Banyak dari fitur ini diimplementasikan hanya untuk salah satu dari dua bahasa dalam rilis sebelumnya, tetapi akan tersedia untuk kedua bahasa dalam rilis akhir.

  • Nameof menyediakan cara refaktor yang aman untuk mendapatkan nama misalnya parameter, anggota, atau jenis sebagai string.
  • Dengan menggunakan operator null-conditional, Anda bisa mendapatkan pemeriksaan null bawaan saat mengakses dan memanggil anggota dan pengindeks.
  • Interpolasi string: Interpolasi string menyediakan cara ringkas untuk menjelaskan templat string yang menyisipkan ekspresi ke dalam string format (C# hanya di Pratinjau, baik VB maupun C# di RTM).
  • Metode, properti getter-only, dll., sekarang dapat memiliki ekspresi tunggal sebagai tubuh mereka, sama seperti lambda.
  • Properti otomatis dapat memiliki penginisialisasi dan tidak lagi memerlukan setter.
  • Penginisialisasi indeks: Di dalam penginisialisasi objek, Anda sekarang dapat menginisialisasi indeks tertentu dari objek baru. C# saja.
  • Filter pengecualian memungkinkan Anda melihat pengecualian dan memutuskan apakah akan menangkapnya dengan blok tangkapan tertentu.
  • Menggunakan klausul untuk kelas statis membawa anggota statis mereka langsung ke dalam cakupan, sehingga Anda dapat memanggil misalnya WriteLine() atau Sqrt() tanpa awalan dengan nama kelas.
  • Tunggu sekarang bekerja dalam tangkapan dan akhirnya memblokir, mengaburkan beberapa solusi yang sangat sulit.

Antarmuka Pengguna dan Pengeditan Editor Kode

Antarmuka pengguna editor kode dan pengalaman pengeditan untuk C# dan Visual Basic telah diganti dengan pengalaman baru yang dibangun di .NET Compiler Platform ("Roslyn"). Banyak fitur yang Anda sukai saat ini telah ditingkatkan atau direvamping.

  • Bola lampu adalah rumah baru untuk semua tindakan cepat yang Anda ambil di Visual Studio Editor, termasuk perbaikan untuk masalah kode umum dan kode pemfaktoran ulang. Saat Anda mengalami masalah dalam kode, bola lampu menunjukkan perbaikan yang disarankan untuk masalah tersebut. Semua operasi pemfaktoran ulang telah dipindahkan ke bola lampu. Anda dapat mengakses bola lampu kapan saja dengan mengetik Ctrl + <titik>.

Bola lampu menunjukkan saran

  • Ada dua operasi refaktor inti baru: Variabel sementara sebaris dan Perkenalkan lokal. Berikut adalah contoh fitur lokal Pengenalan baru:

Memperkenalkan bola lampu lokal

Dan contoh variabel sementara Sebaris:

Bola lampu sementara sebaris

  • Dukungan refaktor untuk Visual Basic telah ditambahkan untuk pertama kalinya, dan juga telah dipindahkan ke bola lampu.
  • Penggantian nama juga telah ditingkatkan; sekarang menyoroti semua instans pengidentifikasi yang ingin Anda ganti namanya, memungkinkan Anda mengetikkan nama baru ke semua instans sekaligus langsung di editor.

Penyempurnaan pada penggantian nama sebaris

  • Anda bisa mendapatkan analisis kode langsung dan perbaikan otomatis saat mengetik, dengan panduan sadar kode tertentu untuk platform Microsoft dan paket NuGet yang Anda targetkan. Pada Pratinjau, Anda perlu menambahkan penganalisis FxCop langsung melalui paket NuGet yang Anda dapatkan dari Galeri NuGet, seperti yang Anda lakukan pada paket lain. Saat Anda menarik aturan langsung tertentu, aturan tersebut akan menggantikan aturan FxCop pasca-build yang setara, sehingga Anda tidak mendapatkan hit duplikat. Berikut adalah contoh dari paket Analisis Kode untuk Azure .

Contoh dari paket Analisis Kode untuk Azure

  • Evaluator ekspresi untuk C# dan Visual Basic telah ditulis ulang. Peningkatan termasuk dukungan untuk ekspresi LINQ dan lambda di Windows Watch dan Immediate.

F#

Fitur Bahasa dan Runtime

F# 4.0 berisi banyak bahasa baru dan penambahan runtime yang mengisi celah, membuat lebih banyak hal "hanya berfungsi," dan meningkatkan performa di area utama. Banyak bug dan pengoptimalan performa kecil juga telah diimplementasikan di seluruh kompilator dan runtime.

  • Konstruktor sebagai fungsi kelas satu - Nama kelas sekarang dapat digunakan sebagai nilai fungsi kelas satu, mewakili konstruktor untuk kelas tersebut.
  • Penyatuan 'mutable' dan 'ref' - Sintaks 'dapat diubah' sekarang dapat digunakan di mana-mana, dan nilai yang diambil akan secara otomatis dikonversi ke nilai 'ref' berbasis timbunan oleh kompilator saat diperlukan. Peringatan opsional baru telah ditambahkan jika pengembang ingin diberi tahu ketika ini terjadi.
  • Parameter statis untuk metode yang disediakan - Metode individual yang disediakan oleh penyedia jenis sekarang dapat menentukan parameter statis.
  • Jenis yang disediakan tidak dapat diubah ke null - Jenis yang disediakan sekarang dapat ditentukan sebagai tidak dapat diubah ke null melalui standar [<AllowNullLiteral(false)>].
  • Kutipan implisit argumen metode - Argumen metode jenis Expr< sekarang tidak> dapat dikutip secara transparan secara otomatis, meneruskan nilai argumen dan AST ekspresi yang menghasilkannya.
  • Tata bahasa prapemrosedaan yang diperluas - Operator Boolean ||, && dan ! sekarang dapat digunakan, bersama dengan ( ) pengelompokan, dalam #if arahan prapemrossor.
  • Eksponen rasional dalam satuan pengukuran - satuan ukuran sekarang mendukung eksponen rasional, yang kadang-kadang digunakan dalam ilmu fisik seperti teknik listrik
  • Penggunaan unit nilai pengukuran yang disederhanakan dengan fungsi 'printf'-style - Nilai numerik yang disatukan sekarang bekerja dengan mulus dengan penentu format cetak numerik, tanpa mengharuskan unit dihapus.
  • Dukungan untuk array .NET dimensi tinggi - array .NET peringkat 5 atau lebih besar sekarang dapat digunakan oleh kode F#.
  • Properti ekstensi dalam penginisialisasi objek - Properti ekstensi yang dapat diatur sekarang dapat ditetapkan dalam ekspresi penginisialisasi objek.
  • Warisan dari beberapa instansiasi antarmuka generik - Kelas yang ditulis F#sekarang diizinkan untuk mewarisi dari kelas yang menerapkan beberapa instansiasi antarmuka generik.
  • Beberapa properti di 'StructuredFormatDisplayAttribute' - %Pemformatan yang ditentukan melalui [<StructuredFormatDisplay>] sekarang dapat menyertakan beberapa properti.
  • Namespace layanan 'Microsoft' terkemuka opsional - Saat menggunakan atau membuka modul dan namespace layanan dari FSharp.Core, "Microsoft" terkemuka sekarang bersifat opsional.

F# Runtime

  • Normalisasi modul Array, List, dan Seq - kumpulan fungsi pemrosesan koleksi sekarang konsisten di seluruh modul Array, List, dan Seq (API barring tidak berlaku untuk jenis tertentu), dengan implementasi khusus yang dioptimalkan untuk setiap jenis.
  • Hash struktural yang dioptimalkan - Pengoptimalan signifikan telah dibuat untuk meningkatkan performa perbandingan hash generik untuk jenis primitif, yang mengarah pada perolehan performa oleh API seperti 'berbeda' dan 'groupBy'.
  • Operator perbandingan non-struktural yang dioptimalkan - Modul FSharp.Core.Operators.NonStructuralComparison sekarang dapat dibuka, mengganti operator perbandingan struktural F# default dengan operator non-struktural yang lebih efisien. Ini dapat memberikan keuntungan performa yang signifikan saat memproses jenis dengan implementasi operator kustom, terutama jenis nilai.
  • Mengiris sintaks pada daftar F# - Daftar F# sekarang mendukung sintaks pemotongan untuk mendapatkan sub-daftar.
  • Ekstensi asinkron untuk System.Net.WebClient' - Ekstensi WebClient AsyncDownloadFile dan AsyncDownloadData sekarang tersedia.
  • Jejak tumpukan Asinkron yang Lebih Baik - Pengecualian yang terjadi dalam komputasi asinkron F# sekarang membawa jejak tumpukan yang lebih ramah pengguna, sehingga lebih mudah untuk mendiagnosis masalah.
  • API Interop untuk Opsi - Berbagai API baru ditambahkan ke modul Opsi untuk mengonversi ke dan dari objek null dan nilai System.Nullable.
  • Pola aktif kutipan untuk nilai System.Decimal - Pola aktif sekarang dibangun untuk mencocokkan nilai Literal System.Decimal konstan dalam kutipan.

Fitur F# IDE

Ada pengalaman dan fitur baru di alat Visual F#, juga, bersama dengan sejumlah perbaikan bug.

  • Penelusuran kesalahan skrip - Skrip F# sekarang dapat di-debug langsung di debugger Visual Studio.
  • Metadata rakitan dalam templat proyek - Semua templat proyek F# sekarang berisi file AssemblyInfo.fs yang berisi atribut metadata tingkat rakitan umum.
  • Pemeriksaan terbaru terintegrasi - Proyek F# sekarang melaporkan status "terbaru" mereka dengan benar saat membangun di Visual Studio.
  • Penyelesaian IntelliSense dalam penginisialisasi objek - Ekspresi penginisialisasi objek sekarang mendukung penyelesaian IntelliSense dari properti yang dapat diatur, menggunakanCtrl+Space.
  • Penyelesaian IntelliSense untuk parameter bernama - Metode dan panggilan konstruktor sekarang mendukung penyelesaian otomatis IntelliSense dari parameter bernama, menggunakanCtrl+Space.
  • Perbaikan bug di sekitar dukungan folder - Alat Visual F# tidak secara langsung mendukung folder dalam proyek, tetapi sejumlah bug sistem proyek telah diperbaiki meningkatkan dukungan folder yang ditambahkan oleh ekstensi Visual F# Power Tools.

.NET Framework 4.6

Versi terbaru .NET Framework adalah 4.6. Ini fitur banyak peningkatan dalam teknologi pengembangan aplikasi seperti ASP.NET, Windows Communication Foundation, dan Windows Presentation Foundation. Ada juga perubahan dalam jaringan, pustaka kelas dasar .NET Framework, dan runtime bahasa umum (termasuk kompilator JIT 64-bit baru, kompilasi kode asli untuk aplikasi Platform Windows Universal, peningkatan pemuat rakitan).

Hanya pengambilan sampel perubahan meliputi:

  • ASP.NET metode Pengikatan Model sekarang mengembalikan tugas.
  • ADO.NET sekarang mendukung fitur Always Encrypted yang tersedia di SQL Server 2016 Community Technology Preview 2 (CTP2).
  • Windows Presentation Foundation (WPF) menawarkan dukungan yang lebih baik untuk sentuhan dan tata letak HDPI yang ditingkatkan.
  • Windows Communication Foundation (WCF) sekarang mendukung SSL versi TLS 1.1 dan TLS 1.2, selain SSL 3.0 dan TLS 1.0.
  • Pustaka kelas dasar .NET Framework mencakup peningkatan pengumpulan sampah, ke pola asinkron berbasis tugas, dan ke kriptografi. Ini juga menambahkan jenis vektor berkemampuan SIMD, serta dukungan untuk sakelar kompatibilitas yang memungkinkan pengembang untuk menyediakan mekanisme penolakan seragam untuk fungsionalitas yang didukung oleh vesi baru pustaka mereka.

Untuk detail tambahan dan daftar lengkap fitur baru yang ditambahkan ke .NET Framework, lihat Apa yang Baru dalam .NET Framework.

Kerangka Kerja Entitas

Rilis ini mencakup versi pratinjau Entity Framework 7 dan pembaruan Entity Framework 6 yang terutama mencakup perbaikan bug dan kontribusi komunitas.

Kerangka Kerja Entitas 7

Versi baru Entity Framework memungkinkan platform baru dan penyimpanan data baru. Windows Phone, Windows Store, ASP.NET 5, dan aplikasi desktop tradisional sekarang dapat menggunakan Entity Framework. Versi kerangka kerja ini mendukung database relasional serta penyimpanan data non-relasional seperti Azure Table Storage dan Redis. Ini termasuk pratinjau awal runtime EF7 yang diinstal di proyek ASP.NET 5 baru. Untuk informasi selengkapnya tentang EF7, lihat Tentang apa itu EF7.

Kerangka Kerja Entitas 6.x

Rilis ini mencakup versi Entity Framework 6.1.3 dari runtime dan alat. Entity Framework 6.1.3 mencakup perbaikan bug dan kontribusi komunitas; Anda dapat melihat daftar perubahan yang disertakan dalam Kerangka Kerja Entitas 6.1.3.

Runtime Entity Framework 6.1.1 disertakan dalam sejumlah tempat dalam rilis ini.

  • Runtime akan diinstal jika Anda membuat model baru menggunakan Alat Kerangka Kerja Entitas dalam proyek yang belum menginstal runtime EF.
  • Runtime telah diinstal sebelumnya di proyek ASP.NET baru, tergantung pada templat proyek yang Anda pilih.

Visual Studio IDE

Akun Bersama

Baru dalam rilis ini, Anda dapat berbagi akun pengguna yang Anda tambahkan di Visual Studio dengan aplikasi lain, seperti dengan Blend untuk Visual Studio atau dengan Microsoft Test Manager (dan sebaliknya).

Proyek Bersama

Dalam rilis ini, templat baru tersedia untuk membuat proyek bersama kosong untuk Visual Basic, C#, dan JavaScript. Proyek bersama ini sekarang dapat dirujuk oleh beberapa jenis proyek:

  • Setiap proyek VB/C# yang tidak beraroma (misalnya aplikasi konsol, pustaka kelas, aplikasi formulir Win)
  • Windows Store 8.1 dan Windows Phone 8.1 (VB/C#/JavaScript)
  • Windows Phone Silverlight 8.0/8.1 (VB/C#)
  • WPF dan PCL

Anda dapat menambahkan/menghapus referensi ke proyek bersama melalui Pengelola Referensi, pada tab Proyek Bersama. Referensi proyek bersama muncul di bawah simpul Referensi di Penjelajah Solusi, tetapi kode dan aset dalam proyek bersama diperlakukan seolah-olah file tersebut ditautkan ke proyek utama.

Editor Kode (Semua Bahasa)

Temukan di File telah ditingkatkan dengan mengaktifkan hasil berikutnya untuk ditambahkan ke hasil sebelumnya; akumulasi hasil dapat dihapus.

Dukungan sentuh sekarang tersedia di editor Visual Studio untuk gerakan berikut:

  • Menggulir (mengetuk dan menyeret pada permukaan editor pada bilah gulir reguler dan ditingkatkan)
  • Mencubit ke Zoom
  • Pilih seluruh baris dengan mengetuk di margin editor, dan pilih kata-kata dengan mengetuk dua kali
  • Memanggil menu konteks editor dengan menekan dan menahan

Kami menyadari satu masalah dengan sentuhan, karena gerakan ketuk dua kali tidak selalu dapat diandalkan pada tingkat zoom yang lebih rendah. Kami ingin mendengar umpan balik tentang dukungan sentuhan baru, dan khususnya masalah apa pun yang mungkin Anda temukan.

Perancang XAML

Pelanggan Visual Studio sekarang akan dapat mengedit Templat dan Gaya mereka yang disimpan dalam kamus sumber daya eksternal dalam konteks penggunaan mereka. Pengalaman ini telah disempurnakan lebih lanjut untuk menggunakan Peek untuk mengaktifkan pengeditan sumber daya in-situ yang sebenarnya di perancang XAML.

Tata Letak Jendela Kustom

Anda sekarang dapat menyimpan tata letak jendela kustom dengan mengklik Simpan Tata Letak Jendela dari menu Jendela, dan terapkan tata letak kustom dengan mengklik Terapkan Tata Letak Jendela dari menu Jendela . Anda juga dapat menerapkan tata letak dengan menggunakan pintasan keyboard yang telah ditetapkan sebelumnya. Sembilan tata letak pertama juga memiliki pintasan keyboard dari Ctrl + Alt + 1 ke Ctrl+Alt+9. Tugas lain yang bisa Anda lakukan termasuk menghapus, mengganti nama, dan menyusun ulang tata letak dengan mengklik Kelola Tata Letak Jendela dari menu Jendela.

Ikon Resolusi Tinggi

Visual Studio mendukung ikon resolusi tinggi di bilah perintah, toolbar jendela alat (standar), menu utama, daftar kesalahan, bilah status, dan beberapa jenis proyek Penjelajah Solusi saat perangkat Anda berjalan pada penskalakan DPI yang lebih besar dari 100%.

Penyempurnaan UI

  • Menu sekarang muncul dalam gaya Huruf Judul alih-alih semua gaya CAPS.
  • Nilai dropdown Konfigurasi dan Platform untuk dialog Halaman Properti Visual C++ telah diubah untuk mengingat pilihan pengguna terakhir saat halaman properti ditutup dan dibuka kembali.

Umpan Balik Visual Studio

Kami meningkatkan pengalaman Kirim Frown dengan alat yang lebih baik untuk melaporkan kelambatan, macet, dan crash. Anda sekarang dapat melampirkan file atau menandai umpan balik Anda, untuk menggambarkan masalah dengan lebih baik juga. Selain itu, kami memperbarui ikon Umpan Balik dan item menu untuk meningkatkan kemudahan ditemukan.

Ekstensibilitas Visual Studio

  • Sekarang Anda dapat menggunakan ikon resolusi tinggi di ekstensi Visual Studio Anda.
  • Add-in tidak lagi didukung dalam rilis ini. Kami menghapus templat proyek add-in Visual Studio dan Manajer Add-in. Kami menyarankan agar Anda mengonversi add-in Anda ke ekstensi VSPackage. Untuk informasi selengkapnya, lihat FAQ: Mengonversi Add-in ke Ekstensi VSPackage.
  • Anda sekarang dapat membuka proyek ekstensibilitas meskipun Anda tidak menginstal Visual Studio SDK.
  • Selain itu, Anda dapat menginstal Visual Studio SDK dengan menggunakan penyiapan Visual Studio; Anda tidak lagi harus membuka situs web. Untuk melakukan ini: Pada menu Tambahkan Hapus Program, klik kanan Visual Studio 2015, lalu pilih Ubah. Dari dialog Pengaturan Visual Studio, periksa Alat Ekstensibilitas Visual Studio di bawah Alat Umum.
  • Untuk peningkatan portabilitas dan berbagi proyek ekstensi, Anda dapat menggunakan versi NuGet dari Rakitan Referensi SDK Visual Studio. Untuk informasi selengkapnya, lihat rakitan yang diterbitkan oleh Visual Studio Extensibility.

Pelajari selengkapnya tentang Ekstensibilitas Visual Studio.

Mencampuri

Kami mendesain ulang Blend untuk Visual Studio 2015 untuk memberi Anda pengalaman pengembangan antarmuka pengguna yang ditingkatkan untuk membuat aplikasi XAML yang indah. Blend memiliki tampilan baru yang ramping yang konsisten dengan Visual Studio, dukungan untuk Solusi dan Team Explorer, dan pengalaman muat ulang file yang diperkaya untuk memfasilitasi alur kerja yang lebih baik antara Blend dan Visual Studio. Kami juga mengirimkan fitur paling dicari Blend untuk membantu Anda menjadi lebih produktif:

  • Anda sekarang dapat menulis XAML dengan lebih efisien menggunakan XAML IntelliSense yang menyediakan penyelesaian pernyataan dan navigasi ke sumber.
  • Anda juga dapat melihat dan mengedit kontrol dan sumber daya XAML dalam konteks yang digunakan dengan Definisi Intip XAML.
  • Menemukan dan memperbaiki masalah UI di aplikasi yang sedang berjalan sekarang lebih mudah menggunakan alat UI untuk penelusuran kesalahan XAML yang memungkinkan Anda memeriksa pohon visual langsung dan properti elemen apa pun di pohon.
  • Dengan dukungan NuGet ditambahkan, Anda dapat mengelola paket NuGet di Blend.
  • Kami juga mengganti fitur Ruang Kerja Animasi dengan fitur Tata Letak Yang Disinkronkan yang lebih kuat yang dapat Anda gunakan untuk membuat banyak tata letak jendela yang berbeda dan menjelajahnya di seluruh mesin.
  • Untuk pengguna daya yang lebih suka menggunakan keyboard mereka alih-alih mouse, kami membuat panel Desainer Blend dapat diakses sepenuhnya.
  • Akhirnya, sebagai bagian dari upaya berkelanjutan Microsoft dalam menciptakan perangkat lunak yang dapat diakses secara universal, Blend sekarang menjadi pembaca layar penuh dan dapat diakses dengan kontras tinggi.

Untuk mempelajari selengkapnya tentang fitur baru yang ditambahkan ke Blend, kunjungi posting blog Pratinjau kami.

Penelusuran Kesalahan dan Diagnostik

Edit Terkelola dan Lanjutkan pada Lampirkan

Pada RC, Anda dapat mengedit dan melanjutkan saat melampirkan ke aplikasi .NET dan kapan variabel lingkungan

complus_forceenc diatur ke 1 dalam proses target.

Konfigurasi Titik Henti

Jendela Pengaturan Titik Henti baru memungkinkan Anda menentukan kondisi dan tindakan untuk titik henti Anda. Jendela mencakup dukungan IntelliSense yang ditingkatkan untuk kondisi dan tindakan titik henti. Anda dapat menggunakan batalkan (CTRL+Z) untuk memulihkan titik henti yang dihapus.

Ekspresi Lambda di Windows Debugger

Anda sekarang dapat menggunakan ekspresi lambda di jendela Watch, Immediate, dan debugger lainnya di C# dan Visual Basic.

PerfTips

Anda dapat menggunakan fitur PerfTips untuk melihat berapa lama kode yang diperlukan untuk dijalankan langsung di editor saat Anda mengatur titik henti dan langkah dengan debugger.

Penggunaan GPU

Anda dapat menggunakan alat Penggunaan GPU untuk memahami penggunaan GPU aplikasi DirectX. Grafik Frame Time, Frame Rate, dan Pemanfaatan GPU tersedia saat aplikasi berjalan secara langsung. Selain itu, dengan mengumpulkan dan menganalisis data penggunaan GPU terperinci, alat ini dapat memberikan wawasan tentang waktu eksekusi CPU dan GPU dari setiap peristiwa DirectX individu, dan oleh karena itu dapat berguna untuk menentukan apakah CPU atau GPU adalah hambatan performa.

Penyempurnaan di Debugger C++

Ketika debugger C++ dihentikan pada titik henti, debugger dapat menjalankan kode untuk menghitung hasil, seperti menampilkan data di jendela Watch dan Immediate. Jika debugger mendeteksi bahwa fungsi yang disebut mengalami kebuntuan, debugger akan mencoba mengatasi masalah tersebut.

Ketika debugger C++ meluncurkan proses, Windows sekarang mengalokasikan memori menggunakan timbunan normal daripada tumpukan normal debug. Ini menghasilkan awal yang lebih cepat untuk penelusuran kesalahan.

Alat penelusuran kesalahan UI untuk XAML

Kami menambahkan dua alat baru, Live Visual Tree dan Live Property Explorer yang memeriksa pohon visual aplikasi WPF Anda yang sedang berjalan, serta properti pada elemen apa pun di pohon. Alat-alat ini memungkinkan Anda memilih elemen apa pun di aplikasi yang sedang berjalan dan menampilkan properti akhir, komputasi, dan yang dirender. Alat-alat ini juga mencakup hal-hal berikut:

  • Pohon Visual Langsung. Sekarang, Anda dapat melihat pohon visual lengkap aplikasi yang sedang berjalan selama sesi debug. Live Visual Tree tersedia saat Anda menekan F5 di Visual Studio atau melampirkan ke aplikasi yang sedang berjalan. Anda dapat menggunakan Live Visual Tree untuk memilih elemen dalam aplikasi yang sedang berjalan untuk inspeksi di Penjelajah Properti Langsung. Jumlah turunan ditampilkan, dan jika informasi sumber tersedia, Anda dapat langsung menemukan file dan lokasi definisi elemen.
  • Penjelajah Properti Langsung. Gunakan alat baru ini untuk memeriksa properti yang ditetapkan pada elemen apa pun dalam aplikasi yang sedang berjalan, dikelompokkan menurut cakupan yang ditetapkan. Anda dapat mengubah properti ini selama sesi penelusuran kesalahan dan segera melihat perubahannya dalam aplikasi yang sedang berjalan.

Memilih terpisah bagaimana properti mengambil alih satu sama lain dan mencari tahu perilaku menang dapat terbukti sulit pada waktu desain. Sekarang, dengan menggunakan alat penelusuran kesalahan UI baru kami untuk XAML, Anda dapat melakukan inspeksi ini pada runtime.

(Dukungan untuk aplikasi Windows Store akan dirilis dalam pembaruan mendatang.)

Alat Debugging UI untuk XAML, layar penuh

Pengaturan Pengecualian

Anda dapat mengonfigurasi pengaturan pengecualian debugger dengan menggunakan jendela alat Pengaturan Pengecualian. Jendela baru tidak modal dan mencakup peningkatan performa, pencarian, dan kemampuan filter.

Pengaturan Pengecualian - Hentian saat jendela Dilemparkan

Alat Garis Waktu

Alat Garis Waktu baru kami memberi Anda tampilan sumber daya yang berpusat pada skenario yang digunakan aplikasi yang dapat Anda gunakan untuk memeriksa, mendiagnosis, dan meningkatkan performa aplikasi WPF dan Windows Store 8.1 Anda.

Alat Garis Waktu yang ada di hub Performa dan Diagnostik menunjukkan kepada Anda berapa banyak waktu yang dihabiskan aplikasi Anda dalam menyiapkan bingkai UI dan dalam melayani jaringan dan permintaan disk. Alat ini melakukannya dalam konteks skenario seperti Beban Aplikasi dan Beban Halaman.

Alat Garis Waktu baru

Alat Diagnostik

Kami menambahkan jendela Alat Diagnostik baru yang muncul saat Anda mulai men-debug (tekan F5). Jendela Alat Diagnostik berisi fitur-fitur berikut:

  • Peristiwa (dengan IntelliTrace)
    Peristiwa (dengan IntelliTrace) memberi Anda akses ke semua peristiwa Debugger Break, Output, dan IntelliTrace yang dikumpulkan selama sesi debugging Anda. Data disajikan baik sebagai garis waktu maupun sebagai tampilan tabular. Kedua tampilan disinkronkan dan dapat berinteraksi satu sama lain.
  • Penggunaan Memori
    Alat Penggunaan Memori memungkinkan Anda memantau penggunaan memori aplikasi saat Anda menelusuri kesalahan. Anda juga dapat mengambil dan membandingkan rekam jepret terperinci memori asli dan terkelola untuk menganalisis penyebab pertumbuhan memori dan kebocoran memori.
  • Pemakaian CPU
    Alat Penggunaan CPU memungkinkan Anda memantau penggunaan CPU aplikasi Anda saat Anda menelusuri kesalahan.
    (Alat ini menggantikan PerfTip waktu CPU yang tersedia dalam rilis Pratinjau Visual Studio 2015.)

Dalam rilis sebelumnya, jendela Alat Diagnostik mendukung jenis proyek dan konfigurasi penelusuran kesalahan berikut:

  • Proyek WPF, WinForms, dan Console terkelola
  • Proyek Win32, Konsol, dan MFC asli
  • ASP.NET 4 menggunakan IIS express saja
  • Proyek Bursa Windows Terkelola atau Asli berjalan secara lokal
    (Proyek Bursa Windows yang menggunakan JavaScript atau berjalan di ponsel tidak didukung)

Jendela Alat Diagnostik dalam rilis RC memiliki peningkatan berikut:

  • Ini dapat dipindahkan ke lokasi jendela mana pun dalam Visual Studio dan mengingat lokasi dan ukurannya antara sesi penelusuran kesalahan
  • Ini muncul dan menunjukkan data untuk satu proses saat melampirkan ke proses menggunakan Debug -> Lampirkan ke proses
  • Ini muncul saat penelusuran kesalahan ASP.NET proyek yang berjalan di IIS
  • Ini muncul saat penelusuran kesalahan ASP.NET 5 proyek
  • Ini muncul saat men-debug aplikasi yang berjalan di perangkat desktop Windows jarak jauh
  • Rekam jepret memori dapat dilihat setelah Anda menghentikan penelusuran kesalahan
  • Peristiwa Debugger (peristiwa pemutusan saja) tersedia saat men-debug proyek asli

Kami juga menambahkan fitur baru berikut untuk rilis RC:

Hanya kode saya. Ketika Anda menekan F5 untuk meluncurkan debugger, itu hanya akan menampilkan kode Anda sehingga Anda dapat memahami masalah performa dan pengecualian tanpa kebisingan dari kerangka kerja dan kode lainnya. Karena fungsionalitas pemfilteran kode baru di IntelliTrace ini menekan kode sistem dan hanya mengekspos kode pengguna, itu memudahkan Anda untuk men-debug "hanya kode saya."

Alat Diagnostik Jaringan. Alat diagnostik jaringan baru ini dapat membantu Anda mendiagnosis masalah terkait jaringan saat membangun aplikasi penyimpanan Windows serta aplikasi universal yang berjalan di semua perangkat Windows 10, dari Windows Phone ke Xbox dan Windows Store.

Alat diagnostik jaringan merekam informasi tentang operasi jaringan HTTP aplikasi Anda, termasuk header permintaan dan respons HTTP, payload permintaan dan respons, cookie dan informasi waktu terperinci, dan banyak lagi. Alat diagnostik jaringan juga dapat membantu menjawab pertanyaan tentang skenario umum, seperti:

  • Masalah terkait autentikasi (misalnya, mengapa Anda tidak dapat mengakses sumber daya)
  • Masalah terkait cache (misalnya, mengapa Anda tidak mendapatkan versi terbaru sumber daya)
  • Berapa banyak byte yang diunduh saat menjalankan tugas umum aplikasi Anda
  • Di mana hambatan saat mengakses dan mengunduh sumber daya

Untuk mengakses alat Jaringan, buka jendela Alat Diagnostik di Visual Studio 2015. Pada menu Debug , pilih Mulai Alat Diagnostik tanpa Penelusuran Kesalahan. Atau, cukup tekan Alt+F2.

Kami melakukan penyempurnaan berikut pada jendela Alat Diagnostik yang muncul saat Penelusuran Kesalahan:

  • Peristiwa dari aplikasi Anda sekarang muncul dalam satu trek Peristiwa IntelliTrace alih-alih dibagi antara trek Peristiwa IntelliTrace dan Peristiwa Output.
  • Peristiwa dari aplikasi Anda sekarang muncul saat program Anda sedang berjalan; sekarang Anda tidak perlu lagi menekan "Break All" untuk melihat peristiwa.
  • Anda sekarang dapat mengaktifkan Historis Debugging untuk Tracepoints yang telah Anda tetapkan dalam kode Anda, memungkinkan Anda melihat kode sumber dan tumpukan panggilan.
  • Anda sekarang dapat melihat peristiwa Pengumpulan Sampah dan Rekam Jepret pada grafik Penggunaan Memori sehingga Anda dapat melihat kapan pengumpulan sampah terkelola terjadi dan ketika Anda mengambil rekam jepret dengan alat Penggunaan Memori.

ASP.NET

ASP.NET 4.6

ASP.NET Model Binding mendukung metode pengembalian Tugas

ASP.NET metode Pengikatan Model yang sebelumnya mengembalikan Tugas tidak didukung dan melemparkan pengecualian saat runtime jika dikonfigurasi. Jika aplikasi disebarkan dengan metode tersebut, metode ini sekarang dijalankan dengan benar. Perubahan ini hanya berlaku untuk aplikasi yang secara khusus menargetkan .NET 4.6 atau yang lebih baru.

Mengaktifkan .NET Compiler Platform ("Roslyn") dalam aplikasi ASP.NET

Anda dapat menggunakan fitur bahasa baru C# dan VB dalam proyek ASP.NET 4.6 apa pun. Templat Formulir Web di VS 2015 memiliki paket Microsoft.CodeDom.Providers.DotNetCompilerPlatform yang telah diinstal sebelumnya.

Menambahkan dukungan untuk HTTP/2

Di Windows 10 dan .NET Framework 4.6, kami menambahkan dukungan untuk HTTP/2. Tujuan utama untuk HTTP/2 adalah untuk meningkatkan performa, latensi, dan penggunaan jaringan dengan menggunakan satu koneksi dari browser ke situs Web.

Kerangka Kerja dan kontrol yang diperbarui untuk mendukung Kerangka Kerja Entitas 6

Kami memperbarui Kerangka Kerja Data Dinamis, Kontrol Sumber Data Entitas, dan Penyedia Universal sehingga berfungsi dengan Kerangka Kerja Entitas 6.

Pembaruan Autentikasi

Templat ASP.NET 4.6 sekarang menggunakan middleware Open Id Connect untuk mengautentikasi dengan Microsoft Azure AD. Ini membuat model pemrograman untuk mengautentikasi dengan Microsoft Azure AD jauh lebih mudah.

Jika Anda memilih opsi "Akun Pengguna Individual", templat ASP.NET 4.6 menunjukkan cara menggunakan autentikasi dua faktor dan login sosial menggunakan ASP.NET Identity.

ASP.NET MVC 5.2.3, Halaman Web 3.2.3 dan Web API 5.2.3

Kami memperbarui paket templat untuk menggunakan paket runtime terbaru untuk MVC 5.2, Web Pages 3.2 dan Web API 2.2. Untuk detail tentang pembaruan paket ini, lihat posting blog Rilis ASP.NET MVC 5.2.3, Halaman Web 3.2.3 dan Web API 5.2.3.

ASP.NET Web API OData 5.3.1

Kami memperbarui perancah OData API Web untuk menggunakan ASP.NET Web OData 5.3.1. Untuk informasi selengkapnya, lihat Apa yang Baru di ASP.NET Web API OData 5.3.

SignalR 2.1.2

Kami memperbarui paket templat untuk menggunakan SignalR 2.1.2. Lihat catatan rilis SignalR di GitHub.

Paket Microsoft Owin 3.0

Kami memperbarui paket templat untuk menggunakan paket NuGet Microsoft Owin 3.0. Lihat proyek Katana.

identitas ASP.NET 2.2.1

ASP.NET Identity 2.2.1 memiliki banyak perbaikan bug dan peningkatan performa lebih dari 2.1. Baca posting blog ASP.NET Identity 2.2.1 ini untuk detail selengkapnya.

Pembaruan Alat ASP.NET

Penyempurnaan Editor JSON

Kami telah melakukan beberapa peningkatan di editor JSON, termasuk peningkatan performa seperti memuat skema JSON secara asinkron, penembolokan skema anak, dan mendukung IntelliSense yang lebih baik. Selain itu, ada fitur baru berikut:

  • Validasi Skema JSON. Tambahkan fitur validasi skema JSON, berdasarkan skema yang ditentukan dalam daftar drop-down skema.
  • Menu konteks un-minify. Anda dapat mengklik kanan editor JSON dan memilih Menu konteks Batalkan minifikasi untuk membatalkan minifikasi array panjang apa pun dalam file JSON.
  • Muat ulang menu konteks Skema. Visual Studio akan menyimpan cache skema yang diunduh dari Internet dan akan menggunakan cache bahkan setelah Anda menghidupkan ulang Visual Studio. Jika Anda tahu skema diubah, Anda dapat menggunakan menu konteks Muat Ulang Skema Ctrl+Shift+J untuk mengunduh ulang skema yang digunakan saat ini dalam dokumen JSON aktif, lalu menggunakannya segera pada dokumen saat ini.
  • IntelliSense untuk package.json/bower.json. Selain membuktikan IntelliSense dan validasi untuk file package.json dan bower.json, Visual Studio juga menyediakan IntelliSense langsung untuk paket Bower dan npm langsung dalam editor JSON.
  • Validasi properti duplikat. Editor JSON sekarang akan memberikan validasi untuk properti duplikat apa pun. Ini membantu menangkap masalah umum dengan penulisan file JSON.
  • Dukungan untuk IntelliSense dan validasi file JSON telah sangat ditingkatkan dengan sepenuhnya mendukung spesifikasi draf Skema JSON v4. Sekarang jauh lebih mudah untuk mengidentifikasi properti yang diperlukan dan editor memungkinkan Anda dengan mudah mengurutkan properti menurut abjad. Memformat file JSON yang dikurangi sekarang akan secara otomatis melepasnya.
  • Kami menambahkan dukungan untuk SchemaStore.org, kumpulan sumber terbuka file Skema JSON yang berguna. Ini berarti bahwa setiap file JSON yang dibuka di Visual Studio yang memiliki skema yang terkait pada SchemaStore.org secara otomatis mendapatkan IntelliSense dan validasi.
  • Dukungan untuk penulis Skema JSON juga telah ditingkatkan oleh validasi kewarasan skema yang lebih baik.

Penyempurnaan Editor HTML

Editor HTML telah memperbarui IntelliSense untuk standar web dan memperkenalkan fitur baru berikut:

  • Pemformatan templat klien yang lebih baik. Editor HTML tidak lagi mengurai atau memformat sintaks kurator ganda {{...}}. Ini untuk memastikan bahwa konten sintaksis tersebut tidak diperlakukan HTML dan karenanya tidak valid, juga tidak mencoba memformat konten, yang tidak dapat dilakukan dengan benar dengan menggunakan formatter HTML. Ini bagus untuk sintaksis templat Angular, Handlebars, Mustache, dan keriting ganda lainnya.
  • Dukungan untuk elemen kustom, elemen polimer, dan atribut. Editor HTML tidak lagi memvalidasi atribut yang tidak diketahui untuk elemen kustom, karena kerangka kerja yang berbeda memiliki banyak tag kustom. Tidak akan ada lagi squiggle di bawah elemen yang tidak diketahui.
  • IntelliSense Dasar untuk Komponen Web. Editor HTML memiliki IntelliSense untuk <tautan rel="import" /> yang merupakan bagian dari standar Komponen Web.
  • Tipsalat elemen HTML. Tipsalat disediakan untuk elemen HTML di editor.
  • #region dukungan. Editor HTML sekarang mendukung pelipatan wilayah. Anda juga dapat menggunakan cuplikan di sekitarnya untuk mengelilingi pilihan saat ini.
  • Dukungan komentar Todo/Hack di Daftar Tugas.
  • Ikon sudut. Kedua arahan Angular (misalnya. <<tampilan ng>) dan atribut (misalnya pengontrol ng) sekarang ditampilkan di IntelliSense dengan logo Angular untuk memudahkan mengidentifikasinya.
  • Ikon bootstrap. IntelliSense yang disediakan dalam atribut kelas HTML sekarang menunjukkan dengan logo Bootstrap jika nama kelas ditentukan oleh file Bootstrap CSS.

Penyempurnaan Editor CSS/LESS/Sass

  • Dukungan komentar Todo/Hack di Daftar Tugas.
  • @viewport perbaikan untuk editor LESS. Di editor LESS, @viewport tidak lagi menampilkan peringatan verifikasi.
  • Berikan lebih banyak cuplikan. Editor CSS/LESS/Sass sekarang menyediakan lebih banyak cuplikan untuk membuat pengalaman pengembangan Anda lebih mudah.
  • Ekstensi sekarang tersedia untuk Visual Studio 2015 untuk mengkompilasi LESS, Scss, dan CoffeeScirpt. Unduh di sini.

Editor JSX (React.js)

Visual Studio sekarang mendukung sintaks JSX dari file apa pun dengan ekstensi file .jsx. Dapatkan IntelliSense, pemformatan, dan validasi di editor saat Anda mengetik. Editor ini dibangun bekerja sama dengan tim Facebook yang bertanggung jawab atas pustaka React.js.

Tautan Browser

CSS secara otomatis disinkronkan. Menyimpan file CSS atau mengubahnya secara eksternal (misalnya, dengan menggunakan pengkompilasi LESS/SASS) menyebabkan seluruh file CSS dimuat ulang di browser. Jika file tidak dapat disinkronkan secara otomatis, Ctrl + S menyebabkan isi ulang otomatis, dan harus mengembalikannya ke status yang baik tanpa harus menyegarkan browser yang ditautkan (Ctrl + Alt + Enter). Fitur ini dapat dinonaktifkan di toolbar.

Pelajari selengkapnya tentang ASP.NET.

ASP.NET 5

ASP.NET 5 adalah tumpukan .NET yang ramping dan dapat disusun untuk membangun aplikasi web modern untuk server cloud dan lokal. Ini termasuk fitur-fitur berikut:

  • Alur permintaan ringan baru
  • Jalankan di IIS, atau dihost sendiri dalam proses Anda sendiri
  • Dibangun di atas .NET Execution Environment (DNX) baru yang dapat berjalan pada .NET Framework lengkap atau di .NET Core, runtime baru yang dioptimalkan cloud yang mendukung penerapan versi berdampingan yang sebenarnya
  • Menjalankan lintas platform di Windows, Mac, dan Linux
  • NuGet semuanya, bahkan runtime itu sendiri
  • Mendukung ASP.NET MVC 6 - kerangka kerja Web terpadu untuk UI Web dan API Web
  • Konfigurasi berbasis lingkungan untuk transisi yang mulus ke cloud
  • Injeksi dependensi di luar kotak
  • Sistem proyek Visual Studio baru dan pengalaman alat produktivitas tinggi
  • Semua sumber terbuka di GitHub melalui .NET Foundation

Visual Studio 2015 menyertakan paket runtime ASP.NET 5 beta5. Paket ini masih dalam pratinjau dan tidak direkomendasikan untuk digunakan dalam produksi. Anda dapat menemukan semua detail tentang penyempurnaan tertentu yang ditambahkan dan masalah yang diperbaiki dalam catatan rilis yang diterbitkan di GitHub.

Visual Studio 2015 hadir dengan sistem proyek baru dan pengalaman alat terintegrasi untuk membangun aplikasi ASP.NET 5 dan untuk bekerja dengan proyek DNX. Beberapa fitur alat baru meliputi:

  • Sistem proyek baru untuk membuat proyek berbasis DNX lintas platform yang dibangun dan dijalankan di Windows, Mac, dan Linux.
  • Templat untuk membuat ASP.NET 5 Situs Web dan API Web menggunakan MVC 6, Identity 3, dan Entity Framework 7.
  • Templat untuk membuat pustaka kelas dan aplikasi konsol berbasis DNX
  • Membuat dan mendistribusikan alat baris perintah lintas platform melalui NuGet.
  • Instal dan kelola versi DNX yang berbeda menggunakan .NET Version Manager (DNVM) dari Prompt Perintah Pengembang.
  • Pengalaman terintegrasi untuk menemukan, menginstal, dan memulihkan paket NuGet.
  • Gunakan CTRL + . untuk menemukan dan menginstal paket NuGet untuk simbol yang tidak terselesaikan dalam kode C# Anda.
  • Alat terintegrasi untuk pengembangan Web sisi klien menggunakan NPM, Grunt/Gulp, dan Bower, termasuk integrasi manajemen paket dan Task Runner Explorer baru.
  • Jalankan perintah DNX tingkat proyek langsung dari dalam Visual Studio dengan menggunakan menu dropdown tombol Jalankan.
  • Buat profil peluncuran kustom yang meluncurkan IIS Express, termasuk pengaturan variabel lingkungan kustom.
  • Buat paket NuGet dari satu proyek yang menargetkan beberapa kerangka kerja termasuk .NET Core.
  • IntelliSense gabungan saat membangun beberapa kerangka kerja target dari satu proyek.
  • Fitur Razor baru yang diperkenalkan oleh ASP.NET 5, seperti Pembantu Tag, sekarang menyala di IntelliSense dan penyorotan sintaks.

Fitur baru dalam rilis ini

  • Saat Anda membuka proyek yang memerlukan versi DNX yang tidak tersedia, Visual Studio akan meminta untuk menginstal versi DNX yang diperlukan.
  • Sekarang Anda dapat menambahkan referensi untuk kehilangan rakitan menggunakan dialog Tambahkan Referensi.
  • Templat Aplikasi Web ASP.NET 5 sekarang mendukung opsi Akun Kerja dan Sekolah untuk autentikasi.
  • Opsi Host di Cloud dalam dialog Proyek ASP.NET Baru sekarang tersedia untuk ASP.NET 5 proyek.
  • Gunakan Server Explorer untuk melakukan pengeditan file jarak jauh di bawah persetujuan untuk ASP.NET 5 proyek yang dihosting di Azure.

Untuk detail tambahan, lihat catatan rilis alat di GitHub, dan Blog Pengembangan web dan Alat .NET kami.

Azure Tooling

Integrasi Pemilih Akun

Pemilih Akun digunakan di seluruh dialog pembuatan/pemilihan Web Publishing dan Web App, untuk mengaktifkan akses satu klik ke beberapa akun. Anda dapat masuk sekali ke beberapa akun, dan memiliki akses cepat dan mudah untuk memilih akun individual saat Anda menerbitkan sumber daya.

Aplikasi API

Templat pratinjau API Apps, dukungan penerbitan, dan visibilitas Server Explorer semuanya telah dimigrasikan ke Visual Studio 2015. Sekarang Anda dapat membuat dan menyebarkan Azure API Apps menggunakan versi terbaru Visual Studio. Selain itu, kami meningkatkan fungsionalitas output Swagger sehingga pengembang aplikasi API memiliki dukungan out-of-the-box yang lebih baik untuk Swagger yang dihasilkan secara dinamis dari ASP.NET Web API.

Alat WebJobs

Anda sekarang dapat mengontrol pekerjaan web pada simpul WebJob Server Explorer di dalam Situs Web Azure dengan cara berikut:

  • Simpul WebJobs di bawah simpul Situs Web di Server Explorer.
  • Mulai/Hentikan WebJobs Berkelanjutan dari Server Explorer.
  • Jalankan pekerjaan Sesuai permintaan atau Terjadwal dari Penjelajah Server.
  • Lihat Dasbor WebJob dari Server Explorer.
  • Menu konteks Lihat Dasbor; gunakan untuk masuk ke dasbor WebJob situs web Azure.

WebJobs SDK

Templat proyek Azure WebJob memiliki WebJobs SDK yang telah diinstal sebelumnya.

NuGet

NuGet 2.8.3

Kami menambahkan dukungan untuk proyek DevExtreme dan BizTalkProject 2.8.3. Untuk informasi selengkapnya, lihat Catatan rilis NuGet 2.8.3.

Pengelola Paket NuGet

Kami memperbarui antarmuka pengguna NuGet Package Manger untuk menyediakan manajemen paket yang lebih mudah di seluruh solusi di Visual Studio 2015. Dengan tampilan tunggal di seluruh paket yang diinstal dalam proyek Anda, Anda dapat memfilter daftar paket yang tersedia dari galeri NuGet, paket yang diinstal, dan paket yang memiliki pembaruan yang tersedia.

Galeri NuGet

Kami meningkatkan performa galeri NuGet dengan layanan web baru dan klien terintegrasi. Detail selengkapnya tentang pembaruan NuGet dapat ditemukan di http://docs.nuget.org.

JavaScript

Dukungan Editor JavaScript

Kami memperbarui editor JavaScript untuk membuatnya lebih berguna.

  • Dukungan alat untuk AngularJS. Sekarang, ketika Anda menulis aplikasi menggunakan AngularJS, IntelliSense memberikan saran untuk pengontrol Angular, layanan, pabrik, arahan, dan animasi.
  • Fitur bahasa JavaScript baru (dari JavaScript versi ES6) didukung, termasuk kelas, fungsi panah, dan string templat.
  • Dukungan proyek bersama bilah navigasi. Sekarang Anda dapat menggunakan bilah navigasi di proyek Bersama untuk proyek Windows Universal App.
  • Bilah navigasi baru. Bilah navigasi baru memudahkan untuk menavigasi antar elemen utama dalam kode sumber JavaScript.
  • Komentar JSDoc. Komentar dokumentasi yang ditulis dalam format JSDoc sekarang ditampilkan saat menggunakan IntelliSense. (Untuk informasi selengkapnya tentang komentar JSDoc, lihat https://jsdoc.app/.)
  • IntelliSense literal objek. Editor JavaScript memberi Anda saran IntelliSense saat meneruskan objek secara harfiah ke fungsi yang didokumenkan menggunakan JSDoc.
  • Perluas/ciutkan. Anda dapat memperluas dan menciutkan lebih banyak bagian dari kode JavaScript Anda, termasuk komentar multibaris, array multibaris, dan semua blok multibaris.
  • Dukungan Daftar Tugas. Anda dapat menggunakan fitur Daftar Tugas untuk meninjau komentar tugas, seperti // TODO, dalam kode JavaScript Anda.

TypeScript

Visual Studio 2015 menyertakan rilis 1.5 dari alat TypeScript. Rilis ini menambahkan dukungan kaya untuk ECMAScript 6, termasuk modul, destructuring, for.. dari, menyebarkan, simbol, properti komputasi, let/const untuk ES3/ES5, dan templat string yang ditandai untuk ES3/ES5. Selain dukungan untuk ES6, TypeScript 1.5 juga menambahkan dukungan untuk proposal dekorator ES7 eksperimental, output modul UMD dan System.js, dan file proyek portabel ringan baru yang disebut "tsconfig.json".

IntelliTest

Di Visual Studio 2015, kami menambahkan IntelliTest yang menjelajahi kode .NET Anda untuk menghasilkan data pengujian dan serangkaian pengujian unit. Untuk setiap pernyataan dalam kode, dihasilkan input pengujian yang akan menjalankan pernyataan tersebut. Analisis kasus dilakukan untuk setiap cabang kondisional dalam kode. Contohnya,

Semua operasi yang dapat melemparkan pengecualian, seperti, jika pernyataan dan pernyataan, dianalisis. Analisis ini digunakan untuk menghasilkan data pengujian untuk pengujian unit berparameter untuk setiap metode Anda, membuat pengujian unit dengan cakupan kode maksimum. Kemudian Anda membawa pengetahuan domain Anda untuk meningkatkan pengujian unit ini.

Kami juga menambahkan fungsionalitas berikut ke IntelliTest:

  • Pengujian Unit Berparameter. IntelliTest memungkinkan dukungan untuk API yang dapat Anda gunakan untuk memandu pembuatan data pengujian, menentukan properti kebenaran kode yang sedang diuji, dan mengarahkan eksplorasi kode yang sedang diuji. API ini tersedia di namespace Microsoft.Pex.Framework dan dapat digunakan dalam metode pengujian (pengujian unit berparameter, metode pabrik) yang dihasilkan oleh IntelliTest. Akibatnya, perintah menu konteks "IntelliTest" sekarang tersedia dari metode pengujian yang dihasilkan juga.
  • Menguji pembuatan stub. "Buat Pengujian Unit" sekarang tersedia di menu konteks sebagai perintah yang menyediakan kemampuan untuk membuat dan mengonfigurasi proyek pengujian, kelas pengujian, dan stub pengujian.

Untuk informasi selengkapnya tentang IntelliTest (sebelumnya dikenal sebagai "Pengujian Unit Pintar"), lihat Membuat pengujian unit untuk kode Anda dengan IntelliTest.

Application Insights

Seiring dengan berbagai peningkatan performa dan perbaikan bug, Application Insights sekarang menyertakan pembaruan berikut:

  • Alat Application Insights di Visual Studio sekarang menjadi bagian dari Visual Studio Connected Services. (Untuk menambahkan Application Insights, buka dialog Connected Services dan pilih Application Insights dari daftar layanan.)
  • Pembaruan ini sepenuhnya kompatibel dengan proyek yang menambahkan Application Insights di Visual Studio 2013 Update 3 atau di Visual Studio 2013 Update 4.
  • ASP.NET 5 pengembang, pengembang Windows 10 Universal Apps, dan pengembang Aplikasi Universal Windows 8.1 dapat menambahkan Application Insights ke proyek mereka langsung dari Visual Studio.
  • Pengembang Aplikasi Universal Windows 10 tidak perlu masuk ke Azure untuk menambahkan SDK Application Insights; sebagai gantinya, mereka dapat menambahkannya dengan menggunakan alat Application Insights di Visual Studio.
  • Karena Application Insights menggunakan pemilih akun global di Visual Studio, Anda dapat menggunakan akun yang sama di seluruh Visual Studio.
  • Sekarang Anda dapat melihat informasi "memulai" untuk Application Insights langsung dari folder Referensi Layanan Proyek; cukup klik folder Memulai.

Lihat Informasi Memulai untuk Application Insights dari folder Referensi Layanan Proyek.

Manajemen Rilis

Dengan fitur ini, Anda dapat meningkatkan proses pengelolaan rilis aplikasi, menyebarkan aplikasi ke lingkungan tertentu untuk setiap tahap terpisah, dan mengelola langkah-langkah dalam proses dengan persetujuan untuk setiap langkah. Anda dapat menyiapkan alur rilis dari check-in hingga penyebaran tanpa harus menginstal dan memelihara server manajemen rilis lokal menggunakan layanan Manajemen Rilis untuk Visual Studio Online.

Versi Manajemen Rilis yang diperbarui tersedia untuk Visual Studio 2015. Ini sangat mirip dengan Manajemen Rilis yang ada untuk Visual Studio 2013, tetapi memberikan peningkatan performa di area berikut:

  • Halaman peluncuran klien manajemen rilis yang menunjukkan gambaran umum proses rilis dan pemberitahuan.
  • Penyajian dan interaktivitas di halaman klien manajemen rilis lainnya, melalui penembolokan tambahan.
  • Sinkronisasi Direktori Aktif dan grup keamanan TFS.
  • Pembuatan rilis baru.

Anda sekarang dapat menentukan komponen dan definisi rilis untuk definisi build dari sistem build baru yang disertakan dalam Team Foundation Server 2015. Saat menentukan komponen, Anda juga dapat menentukan artefak untuk komponen dengan menggunakan nama komponen yang sama dengan (atau berisi) nama artefak yang diterbitkan dari definisi build.

Kontrol versi Git

Lebih mudah untuk bekerja dengan cabang dan melihat bagaimana perubahan dalam riwayat Anda berbeda.

Cabang

Anda dapat mengatur cabang Anda secara hierarkis dengan menentukan awalan:

Cabang lokal dan cabang jarak jauh (termasuk yang belum Anda buat secara lokal) ditampilkan secara terpisah dalam tampilan pohon.

Cabang Git

Dan pada RC, kami mengerjakan ulang halaman Cabang:

  • Anda sekarang dapat menggabungkan dari cabang jarak jauh, serta cabang lokal.
  • Cabang yang Anda gabungkan sekarang diperbaiki ke cabang yang saat ini dicek keluar.
  • Anda sekarang dapat melakukan rebase dari cabang saat ini ke cabang lokal atau jarak jauh mana pun.
  • Anda dapat memeriksa cabang jarak jauh dengan mengklik dua kali, atau mengklik kanannya lalu memilih Checkout.

Manajemen jarak jauh

Sekarang Anda dapat mengonfigurasi remote Git di Team Explorer. Di Pengaturan Repositori, ada bagian Jarak Jauh baru yang memperlihatkan jarak jauh yang saat ini dikonfigurasi tempat Anda dapat menambahkan, mengedit, atau menghapus jarak jauh. Misalnya, jika Anda perlu mengubah URL jarak jauh asal, Anda dapat mengklik Edit dan mengubah PENGAMBILAN dan/atau URL pendorongan.

Riwayat terperinci

Anda sekarang dapat melihat bagaimana penerapan berbeda dalam riwayat.

Tampilan riwayat terperinci

Dalam grafik, penerapan penggabungan berwarna abu-abu dan tidak bergabung adalah warna yang lebih cerah. Anda dapat beralih bolak-balik antara tampilan sederhana dan tampilan terperinci. Jika grafik terpotong, Anda dapat mengubah ukurannya.

Kami membuat beberapa pembaruan untuk grafik Riwayat dalam rilis RC:

  • Kami menambahkan toolbar yang memungkinkan Anda mengontrol tingkat detail yang Anda lihat di grafik.
  • Kami sekarang menyoroti baris riwayat untuk menunjukkan penerapan mana yang dapat dijangkau dari penerapan yang saat ini dipilih.
  • Kami sekarang menunjukkan kedua baris riwayat jika cabang lokal dan jarak jauh berbeda. Ini sangat berguna setelah merebasing cabang lokal.

Rebase di Team Explorer

Kami sekarang mendukung rebase di Team Explorer. Untuk memulai rebase, klik flyout rebase pada halaman Cabang, atau klik kanan pada cabang dan pilih "Rebase Onto..."

Repositori VSO

Kami meningkatkan pengalaman "memulai" saat membuat Repo VSO, dan ada lebih banyak perubahan yang datang untuk menyederhanakan pembuatan repositori baru. Untuk RC, kami membuat perubahan kecil untuk mempermudah penambahan kode baru ke repositori yang ada: Jika Anda terhubung ke repositori apa pun menggunakan Team Explorer, lalu pilih File > Proyek Baru, dialog sekarang akan dimulai di akar repositori yang terhubung.

Terbitkan ke Visual Studio Online

Fitur Terbitkan ke Visual Studio Online secara dramatis menyederhanakan proses mendapatkan repositori lokal Anda ke Visual Studio Online. Apa yang digunakan untuk mengambil 12 langkah sekarang membutuhkan 2. Dari halaman Sinkronisasi Team Explorer, bagian Terbitkan ke Visual Studio Online yang baru memungkinkan Anda memilih salah satu akun pengguna di manajer akun Visual Studio. Akun online Visual Studio Anda tersedia secara otomatis dalam daftar; tidak perlu mengingat URL. Ketika Anda siap untuk berbagi kode Anda, cukup pilih proyek tim baru atau yang sudah ada untuk menghosting repositori Anda, klik terbitkan, dan Anda sudah selesai.

Kotak dialog Terbitkan ke Visual Studio Online

Akses menyeluruh

Anda, seperti banyak pengembang lain saat ini, memanfaatkan beberapa layanan cloud saat mengembangkan aplikasi Anda. Misalnya, Anda mungkin telah menambahkan backend cloud ke aplikasi Anda untuk menyimpan data, menyimpan kode sumber Anda di cloud, atau menerbitkan aplikasi ke penyimpanan.

Di masa lalu, masing-masing layanan ini memerlukan proses masuk terpisah, dan setiap layanan mengelola status pengguna yang masuk secara terpisah.

Dengan rilis ini, kami mengurangi permintaan autentikasi yang diperlukan untuk mengakses banyak layanan cloud terintegrasi di Visual Studio. Sekarang, saat Anda mengautentikasi ke layanan cloud pertama di Visual Studio, kami akan secara otomatis memasukkan Anda, atau mengurangi permintaan autentikasi untuk layanan cloud terintegrasi lainnya.

CodeLens

Cari tahu lebih lanjut tentang kode Anda, sambil tetap fokus pada pekerjaan Anda di editor. Temukan referensi kode, perubahan pada kode Anda, item TFS terkait, dan pengujian unit - semua tanpa melihat jauh dari kode.

Dalam rilis ini, kami telah mengganti indikator "Penulis" CodeLens dengan indikator riwayat "Garis Waktu Aktivitas Tim" dan "Penulis dan Perubahan" baru.

  • Indikator Garis Waktu Aktivitas Tim menunjukkan penulis terakhir, dan kapan perubahan terakhir dilakukan. Memilih indikator ini akan membuka Tampilan Aktivitas Tim, tempat Anda dapat mencari pola dalam perubahan pada kode. Ini dapat membantu Anda menilai dampak perubahan dari waktu ke waktu.
  • Indikator Penulis dan Perubahan menunjukkan jumlah penulis yang telah mengubah file, dan jumlah perubahan. Memilih indikator ini membuka daftar semua perubahan, detail perubahan, dan tautan untuk mendapatkan informasi selengkapnya dan melihat versi sebelumnya.

Semua informasi dari indikator tersedia ketika kode Anda dihosting di Team Foundation Version Control (di Team Foundation Server dan Visual Studio Online) dan di repositori Git. Saat bekerja di Team Foundation Server atau Visual Studio Online, Anda juga bisa mendapatkan informasi tentang item kerja.

Indikator ini, bersama dengan indikator yang tersedia dalam versi sebelumnya, ditampilkan pada tingkat elemen kode (metode, bidang, atau kelas) untuk file C# dan Visual Basic. Berikut ini adalah contoh indikator Garis Waktu Aktivitas Tim untuk file C#:

Indikator Garis Waktu Aktivitas Tim untuk file C#

Berikut ini adalah contoh indikator Penulis dan Perubahan untuk file C#:

Indikator Penulis dan Perubahan untuk file C#

Namun, indikator sekarang ditampilkan pada tingkat file untuk semua jenis file lainnya (misalnya, C++, SQL, JavaScript, dan jenis file lainnya). Berikut ini adalah contoh indikator Garis Waktu Aktivitas Tim untuk file yang bukan file kode C# atau Visual Basic:

Indikator Garis Waktu Aktivitas Tim untuk file yang bukan file kode C# atau Visual Basic

Arsitektur, Desain, dan Pemodelan

Peta kode dan grafik dependensi

Saat Anda ingin memahami dependensi tertentu dalam kode Anda, visualisasikan dengan membuat peta kode. Anda kemudian dapat menavigasi hubungan ini dengan menggunakan peta yang muncul di samping kode Anda. Peta kode juga dapat membantu Anda melacak tempat Anda dalam kode saat Anda bekerja atau men-debug kode, sehingga Anda akan membaca lebih sedikit kode saat Anda mempelajari lebih lanjut tentang desain kode Anda.

Dalam rilis RTM akhir, kami membuat menu pintasan untuk elemen kode dan tautan jauh lebih mudah digunakan dengan mengelompokkan perintah ke dalam bagian yang terkait dengan memilih, mengedit, mengelola grup, dan mengubah tata letak konten grup. Perhatikan juga bahwa proyek pengujian ditampilkan dengan gaya yang berbeda dari proyek lain dan bahwa kami memperbarui ikon untuk elemen di peta ke versi yang lebih sesuai.

Pengelompokan baru dalam peta kode

Kami juga mengubah cara konten elemen kode ditampilkan, sehingga Anda sekarang dapat memilih lebih dari satu grup dan menerapkan gaya tata letak yang Anda inginkan untuk semuanya. Sekarang, Anda selalu bisa mendapatkan diagram dependensi yang berguna saat memperluas assembly, namespace, atau jenis pada peta kode.

Pilih beberapa grup dan terapkan satu tata letak dalam Peta Kode

Dalam versi pratinjau dan rilis visual Studio 2015 sebelumnya, kami membuat perubahan yang memungkinkan Anda untuk:

  • Dapatkan diagram top-down yang ditingkatkan. Untuk solusi Visual Studio menengah hingga besar, Anda sekarang dapat menggunakan menu Arsitektur yang disederhanakan untuk mendapatkan peta kode yang lebih berguna untuk solusi Anda. Rakitan solusi Anda dikelompokkan menurut folder solusi, sehingga Anda dapat melihatnya dalam konteks dan memanfaatkan upaya yang telah Anda lakukan dalam menyusun solusi. Anda akan segera melihat referensi proyek dan perakitan, lalu jenis tautan muncul. Selain itu, rakitan di luar solusi Anda dikelompokkan dengan cara yang lebih ringkas.
  • Dapatkan peta kode reaktif dengan lebih cepat. Operasi seret dan letakkan menghasilkan hasil langsung dan tautan antar simpul dibuat lebih cepat, tanpa memengaruhi operasi yang dimulai pengguna berikutnya seperti memperluas simpul atau meminta lebih banyak simpul. Secara khusus, opsi "Lewati pembangunan kembali solusi Anda" memungkinkan Anda mendapatkan performa yang lebih baik saat membuat dan mengedit diagram. Saat Anda membuat peta kode tanpa membangun solusi, semua kasus sudut, seperti rakitan yang tidak dibangun, sekarang diproses.
  • Memfilter node dan grup elemen kode. Anda dapat dengan cepat merapikan peta Anda dengan menampilkan atau menyembunyikan elemen kode berdasarkan kategorinya, serta dengan mengelompokkan elemen kode berdasarkan folder solusi, rakitan, namespace, folder proyek, dan jenis.
  • Memfilter hubungan untuk membuat diagram lebih mudah dibaca. Ini termasuk tautan lintas grup, yang membuat bekerja dengan jendela filter kurang mengganggu daripada pada rilis sebelumnya.
  • 'Telusuri ke dalam tautan dependensi' memperhitungkan filter. Anda mendapatkan diagram yang berguna dan jelas saat memperluasnya untuk memahami kontribusi ke tautan dependensi. Diagram kurang berantakan, dan memperhitungkan opsi pemfilteran tautan yang Anda pilih.
  • Buat diagram dari Tampilan Kelas dan Browser Objek. Seret dan letakkan file dan rakitan ke dalam peta baru atau yang sudah ada dari jendela Tampilan Kelas dan Browser Objek.

Secara keseluruhan, daftar penyempurnaan komprehensif yang kami lakukan pada peta kode meliputi:

  • Proyek Pengujian ditata secara berbeda dan dapat difilter. Anda sekarang dapat dengan cepat mengidentifikasi proyek pengujian di peta karena ditata berbeda. Selain itu, mereka dapat difilter sehingga Anda dapat fokus pada kode kerja aplikasi.
  • Elemen kode ditambahkan dengan konteksnya. Karena diagram sekarang muncul dengan konteksnya (hingga folder perakitan dan solusi yang dapat Anda filter jika diperlukan), Anda mendapatkan diagram yang lebih berguna saat menyeret dan menghilangkan elemen kode dari Penjelajah Solusi, Tampilan Kelas, dan Browser Objek; atau saat memilih elemen di Penjelajah Solusi dan memilih Tampilkan di Peta Kode.
  • Tautan dependensi eksternal yang disederhanakan. Tautan dependensi tidak lagi mewakili pewarisan dari System.Object, System.ValueType, System.Enum, dan System.Delegate, yang memudahkan untuk melihat dependensi eksternal di peta kode Anda.

Perubahan desain dan pemodelan lainnya dalam rilis ini:

  • Diagram lapisan. Perbarui diagram ini menggunakan Tampilan Kelas dan Browser Objek. Untuk memenuhi persyaratan desain perangkat lunak, gunakan diagram lapisan untuk menjelaskan dependensi yang diinginkan untuk perangkat lunak Anda. Jaga agar kode tetap konsisten dengan desain ini dengan menemukan kode yang tidak memenuhi batasan ini dan memvalidasi kode di masa mendatang dengan garis besar ini.
  • Diagram UML. Anda tidak dapat lagi membuat diagram kelas UML dan diagram urutan dari kode. Namun, Anda masih dapat membuat diagram ini menggunakan elemen UML baru.
  • Penjelajah Arsitektur. Anda tidak dapat lagi menggunakan Architecture Explorer untuk membuat diagram. Namun, Anda masih dapat menggunakan Penjelajah Solusi.

Layanan Bahasa XAML

Kami membangun kembali layanan bahasa XAML di atas .NET Compiler Platform ("Roslyn") sehingga kami dapat memberi Anda pengalaman pengeditan XAML yang cepat, andal, dan modern yang mencakup IntelliSense.

Ini membuat pengalaman penulisan XAML sama dengan bahasa kelas satu lainnya di Visual Studio. Kami juga akan memberikan set fitur yang kuat di sekitar refaktor lintas bahasa kepada Anda dengan irama yang jauh lebih cepat.

Miscellaneous

Agen untuk Visual Studio 2015 tidak lagi memerlukan Pengontrol Pengujian

Di Agen untuk Visual Studio 2015, Anda tidak memerlukan pengontrol pengujian terpisah karena agen dapat menangani orkestrasi dengan berkomunikasi dengan TFS 2015 atau Visual Studio Online.

Dalam semua skenario Visual Studio 2015 dan TFS 2015 baru, kami sarankan Anda menggunakan Agen untuk Visual Studio 2015.

Namun, jika Anda memerlukan Test Agent atau Test Controller untuk bekerja dengan TFS 2013, kami sarankan Anda menggunakan Agen untuk Visual Studio 2013 Update 5 dan mengonfigurasi Test Controller.

Pengontrol Pengujian kompatibel dengan TFS 2015 serta TFS 2013. Namun, dukungan Pengujian Beban di Visual Studio 2015 bukan bagian dari agen, oleh karena itu rekomendasi kami bahwa Anda menginstal Agen untuk Visual Studio 2013 Pembaruan 5 dan mengonfigurasi pengontrol.

Layanan Tersambung

Dialog Tambahkan Layanan Tersambung baru di Visual Studio 2015 memungkinkan Anda untuk dengan mudah menyambungkan aplikasi Anda ke Azure Application Insights, Azure Storage, Azure Mobile Services, Office 365, dan Salesforce. Untuk menambahkan Layanan Tersambung, klik kanan simpul Referensi lalu pilih Tambahkan Layanan Tersambung....

Menambahkan Layanan Tersambung

Dialog Tambahkan Layanan Tersambung berisi semua penyedia Connected Service yang saat ini diinstal dan menyediakan cara untuk mendapatkan informasi selengkapnya tentang penyedia, teknologi yang digunakannya, dan jika didukung dalam proyek saat ini. Penyedia lain dapat ditemukan di galeri Ekstensi dan Pembaruan menggunakan tautan Temukan layanan lainnya... . Dialog Tambahkan Layanan Tersambung juga dapat diperluas. Jika Anda adalah pengembang layanan, Anda dapat menggunakan SDK Connected Services kami untuk membangun penyedia yang dapat meningkatkan penemuan dan mendorong penggunaan layanan Anda.

Akses Menyeluruh Perusahaan

Tugas umum untuk aplikasi bisnis adalah mengonfigurasi aplikasi untuk akses menyeluruh perusahaan menggunakan Azure Active Directory. Anda sekarang dapat melakukan ini dengan mudah kapan saja selama pembangunan aplikasi Anda dengan mengklik kanan aplikasi Anda dan memilih Konfigurasikan Autentikasi Microsoft Azure AD.... Ini akan memunculkan wizard yang mirip dengan pengalaman Tambahkan Layanan Terhubung untuk memandu Anda melalui proses mengonfigurasi aplikasi Anda untuk bekerja dengan Direktori Aktif. Menentukan Domain Direktori Aktif dalam wizard akan mendaftarkan aplikasi Anda dengan Direktori Aktif tersebut dan mengonfigurasi aplikasi Anda untuk meminta masuk.

Tentukan Domain Direktori Aktif dalam wizard

IIS 10 Express untuk Visual Studio 2015 RC

Rilis RC menyertakan versi baru IIS 10 Express; fungsionalitas barunya mencakup dukungan untuk HTTP 2.0, serta sinkronisasi bit dengan Windows 10.

Perubahan Lain: Perbaikan Bug dan Masalah yang Diketahui

Untuk deskripsi lengkap tentang peningkatan teknologi, perbaikan bug, dan masalah yang diketahui dalam rilis ini, lihat artikel Pangkalan Pengetahuan (KB) berikut ini.

Azure SDK 2.7 untuk .NET

Azure SDK 2.7 adalah Azure SDK pertama yang didukung untuk rilis akhir Visual Studio 2015. Berikut adalah beberapa fitur dan pembaruan baru yang akan membantu meningkatkan pengalaman pengembangan Azure Anda:

  • Peningkatan masuk untuk Visual Studio 2015: Azure SDK 2.7 untuk Visual Studio 2015 sekarang menyertakan dukungan untuk akun yang mengakses Azure melalui Kontrol Akses Berbasis Peran, Penyedia Solusi Cloud, DreamSpark, dan jenis akun dan langganan lainnya.
  • Cloud Explorer untuk Visual Studio 2015: Azure SDK 2.7 menyertakan Cloud Explorer untuk Visual Studio 2015 yang menyediakan alat yang sangat berkinerja tinggi dan dapat diskalakan untuk mencari dan melihat sumber daya Azure Anda, memeriksa properti mereka, dan melakukan pengembang utama dan tindakan diagnostik dari dalam Visual Studio.
  • Penelusuran kesalahan jarak jauh untuk Komputer Virtual di Visual Studio 2015: Proses debug jarak jauh yang berjalan di Komputer Virtual yang dibuat menggunakan tumpukan Azure Resource Manager.
  • Alat Azure Resource Manager: Kami memperbarui Alat Azure Resource Manager untuk mempermudah bekerja dengan tugas build Visual Studio Online baru. Selain itu, kami menambahkan peningkatan untuk bekerja dengan Role Based Access Control (RBAC) dan jenis langganan baru.
  • Alat Azure App Service: App Service Tools sekarang juga tersedia di Visual Studio 2015. Pembaruan ini menghadirkan dukungan Remote Profiling untuk Web Apps, peningkatan pada pembuatan Swagger untuk API Apps, dan beberapa dukungan masuk akun. Alat App Service sekarang menggunakan API Azure Resource Management untuk semua fitur, dan memungkinkan dukungan untuk DreamSpark dan Penyedia Layanan Cloud. Kami juga menambahkan dukungan untuk rilis pratinjau Azure API Apps untuk pengembang Visual Studio 2015 dalam pembaruan ini.
  • Alat HDInsight: Dalam rilis ini, kami telah menambahkan tampilan grafik eksekusi untuk pekerjaan Apache Hive yang berjalan di Tez, memperluas dukungan Apache Hive DML IntelliSense kami, menambahkan NuGet untuk SCP.Net, meningkatkan templat Storm kami, dan menambahkan templat baru untuk Pig.
  • Alat Azure Data Factory: Sekarang yang disertakan dalam Azure SDK adalah Azure Data Factory Tools. Tujuan kami adalah menyederhanakan pengalaman penulisan Azure Data Factory dan menghapus tantangan on-boarding dan penyebaran. Pengalaman kami yang disesuaikan dan alat yang kaya di Alat Azure Data Factory meningkatkan produktivitas dan efisiensi untuk pengguna baru dan tingkat lanjut. Dengan rilis ini, pelanggan dapat menulis dan menyebarkan alur data secara interaktif dengan menggunakan antarmuka Visual Studio. Lihat posting blog Azure Data Factory untuk informasi selengkapnya tentang alat-alat ini.

Windows 10 SDK

Alat ini merilis pembaruan Visual Studio 2015 untuk menyediakan semua yang Anda butuhkan untuk membangun, men-debug, dan mengirimkan aplikasi untuk perangkat Windows apa pun yang menjalankan Platform Windows Universal. Sorotan meliputi:

  • Buat aplikasi Universal Windows dalam bahasa pilihan Anda - C#, VB, C++ atau JS - dan sebarkan ke perangkat Windows 10.
  • Alat penelusuran kesalahan dan diagnostik baru, termasuk alat penelusuran kesalahan UI untuk aplikasi XAML dan profiler jaringan.
  • Buat paket aplikasi untuk pengiriman ke Penyimpanan terpadu.
  • Windows 10 Mobile Emulator sekarang memanfaatkan perangkat keras grafis (GPU) PC Anda untuk membuat layar dirender lebih cepat. Ini menyediakan lingkungan penelusuran kesalahan yang lebih cepat dan lebih responsif menggunakan Microsoft RemoteFx.
  • Anda sekarang dapat menggunakan fitur simulasi NFC di Windows 10 Mobile Emulator untuk membangun dan menguji aplikasi universal berkemampuan NFC/kedekatan.
  • Dukungan perancang XAML yang kaya untuk menciptakan pengalaman pengguna yang disesuaikan untuk perangkat.
  • Kompilasi .NET Native dari aplikasi .NET di cloud.

Untuk informasi selengkapnya tentang alat pengembang Windows 10, lihat Saatnya untuk meningkatkan dunia Anda, dan aplikasi Anda.

Alat Python untuk Visual Studio 2.2

Dukungan Python gratis sepenuhnya dalam Visual Studio.

  • CPython, PyPy, IronPython, dan banyak lagi
  • IntelliSense Terperinci
  • Penelusuran kesalahan interaktif
  • Terintegrasi dengan fitur Visual Studio
  • Gratis dan sumber terbuka

Untuk informasi selengkapnya, lihat Alat Python untuk Visual Studio.

Alat Visual Studio untuk Unity 2.0

Ubah Visual Studio menjadi lingkungan pengembangan Unity yang kuat.

  • Membangun game multi-platform
  • Debug dari Visual Studio
  • Membuat skrip Unity di Visual Studio
  • Rasakan peningkatan produktivitas dengan Visual Studio

Untuk informasi selengkapnya tentang Alat Visual Studio untuk Unity, lihat Pengembangan Game dengan Visual Studio.

alat Node.js untuk Visual Studio 1.1 (RC)

Diperbarui Oktober 2021:

Perbarui Node.js Alat Visual Studio dengan aman untuk Apache Cordova

Ubah Visual Studio menjadi lingkungan pengembangan Node.js yang kuat.

  • Gratis dan sumber terbuka
  • Penyelesaian kode cerdas
  • Penelusuran kesalahan dan pembuatan profil tingkat lanjut
  • Integrasi dengan fitur Visual Studio lainnya dan alat pihak ketiga
  • Node.js, io.js, JavaScript, TypeScript, HTML, CSS, dan dukungan JSON

Pelajari selengkapnya tentang alat Node.js untuk Visual Studio.

Alat Pengembang Office untuk Visual Studio 2015

Pengembangan dengan API Office 365

  • Office 365 API Tools menggunakan Connected Services baru di Visual Studio 2015 untuk memberikan pengalaman terpandu bagi pengembang untuk mengintegrasikan API Office 365 ke dalam proyek.
  • Sekarang Anda dapat mengizinkan Office 365 API Tools mengonfigurasi akses menyeluruh secara otomatis di aplikasi web MVC ASP.NET Anda hanya dengan memilih "Konfigurasikan Akses Menyeluruh menggunakan Microsoft Azure AD" di wizard Connected Services.
  • Saat Mengintegrasikan API Office 365 ke dalam proyek Anda, Alat API Office 365 sekarang mengunduh dan menginstal versi terbaru paket NuGet pustaka klien Office 365 API dari NuGet.org.

Pengembangan add-in SharePoint

  • Saat membuat add-in SharePoint, alat mengatur versi SharePoint target menjadi versi situs web SharePoint debugging yang Anda tentukan dalam panduan pembuatan proyek. Panduan memperlihatkan versi SharePoint yang dipilih dan memungkinkan Anda mengambil alih default tersebut. Anda bisa mengubah versi target setelah membuat proyek dengan menggunakan tab SharePoint di Project Designer.
  • Alat sekarang menginstal paket NuGet yang berisi Model Objek Sisi Klien (SPO-CSOM) SharePoint Online ke dalam proyek Anda, saat versi targetnya adalah SharePoint Online. Alat menambahkan referensi ke rakitan CSOM SharePoint Online ke proyek. Alat tidak lagi mengandalkan SDK Komponen Klien SharePoint Online yang dirilis di Pusat Unduhan Microsoft. Ini memudahkan Anda untuk meningkatkan rakitan CSOM di masa mendatang dengan menggunakan Manajer Paket NuGet di Visual Studio.
  • Sekarang Anda dapat menggunakan string koneksi SAS atau ACS untuk Microsoft Azure Bus Layanan untuk men-debug dan memecahkan masalah penerima peristiwa jarak jauh di add-in SharePoint.

Pengembangan add-in Office

  • Dalam rilis ini, alat selalu membuat aplikasi baru untuk Office dengan manifes v1.1 alih-alih v1.0, sehingga aplikasi Anda dapat mendukung kemampuan baru di aplikasi web Office dan klien Office 2013. Untuk aplikasi yang sudah ada untuk Office yang menggunakan manifes v1.0, alat memutakhirkan manifes ke v1.1 saat kemampuan baru digunakan yang memerlukan manifes v1.1.

Pelajari selengkapnya tentang Alat Pengembang Office untuk Visual Studio.

Ekstensi GitHub untuk Visual Studio 2015

Cara term mudah untuk terhubung ke repositori GitHub Anda di Visual Studio.

  • Mudah diinstal
  • Menyambungkan ke GitHub di Visual Studio
  • Membuat repositori
  • Mengkloning repositori dengan satu klik
  • Menerbitkan pekerjaan lokal Anda ke GitHub

Pelajari selengkapnya tentang Ekstensi GitHub untuk Visual Studio.

Pengujian Beban berbasis cloud

Pengujian beban berbasis cloud dari pusat data Azure di seluruh dunia

Menyiapkan infrastruktur yang diperlukan untuk menjalankan pengujian beban menjadi lebih mudah: Sekarang, Anda dapat melakukan pengujian beban berbasis cloud dari salah satu pusat data Azure yang didukung di seluruh dunia.

Uji Beban berbasis cloud sekarang mendukung diagnostik agen tingkat lanjut

Untuk rilis ini, kami menambahkan kemampuan untuk melakukan diagnostik agen pengujian untuk pengujian beban berbasis cloud.

Penelusuran kesalahan di cloud sulit karena komputer tidak dapat diakses, dan oleh karena itu, mengumpulkan log atau informasi lain dari agen pengujian tidak selalu dimungkinkan. Namun demikian, dengan diagnostik agen tingkat lanjut, Anda dapat mengumpulkan log dari agen pengujian dan melampirkannya ke hasil pengujian beban cloud.