Daftar Isi:
Video: Python Tutorial for Beginners [Full Course] Learn Python for Web Development 2024
Oleh Bill Sempf, Chuck Sphar, Stephen R. Davis
Jika ada masalah dengan. NET Framework dari perspektif C # Programmer, hanya saja ada banyak hal bagus. Banyak kelas memiliki begitu banyak properti dan kejadian sehingga sulit mengingat barang yang paling banyak digunakan. Inilah krim tanaman di kelas Collection, Connfiguration, dan Async, yang semuanya digabungkan untuk memudahkan referensi.
Menjaga Stuff di C # Kelas Koleksi
Banyak variabel untuk menyimpan satu hal, seperti angka atau kalimat. Objek dapat memiliki banyak properti, menyimpan banyak informasi tentang konsep tunggal. Terkadang, Anda hanya perlu melacak daftar barang yang besar. Di situlah kelas koleksi masuk.
Kelas koleksi di C # mengagumkan karena dapat membantu Anda menyimpan daftar item, atau sekelompok kunci dan nilai, dan menyediakan alat pencarian, proctoring, dan perawatan umum secara gratis. Itu jauh lebih mudah daripada menulis metode 'sort customers' kedua dengan nama belakang 'bulan ini.
C # memiliki kelas koleksi dasar, kelas koleksi generik, dan kelas koleksi bersamaan. Yang terakhir ini untuk operasi thread safe di lingkungan multiprosesor. Semua kelas koleksi ini berguna jika Anda tahu di mana dan kapan menggunakannya.
Koleksi reguler
Koleksi reguler menyimpan barang untyped untuk Anda. Jika Anda tidak tahu persis apa yang akan Anda simpan, koleksi reguler untuk Anda. Kebanyakan semua di kelas ini disimpan sebagai Object.
Class | Deskripsi |
---|---|
ArrayList | Ini hanyalah kumpulan objek langsung yang ukuran awalnya , dan ukuran itu meningkat sesuai kebutuhan (tapi
tidak menurun). |
HashTable | Hanya tabel dua kolom dari kunci dan nilai, di mana pasangan
terhubung untuk memilah pengambilan. |
Antrian | Daftar barang masuk terakhir, keluar terakhir (FIFO). Bagus untuk menyimpan
proses program. |
Stack | Seperti Antrean, tapi Last In First Out (LIFO). |
Koleksi generik
C # 2. 0 memperkenalkan koleksi generik. Koleksi generik memungkinkan Anda menyimpan koleksi barang yang diketik, seperti yang dinyatakan saat runtime.
Kelas | Deskripsi |
---|---|
Kamus | Hanya sebuah HastTable, kecuali diketik, jadi Anda tidak perlu
menyimpan Objek, Objek. TKey dan TValue adalah tipe, jadi Anda bisa menyimpan daftar jika Anda menginginkannya. |
List | Ini adalah Array baru. Ini adalah daftar item yang diketik. Dengan
jauh, kelas koleksi yang paling umum digunakan. Ini adalah defaultnya. Jika Anda memerlukan daftar orang, ini adalah daftar. |
Antrian | Serupa dengan Antrian untyped, tapi, yah, ketik! |
SortedList | Kamus mengagumkan ini menerapkan IComparable sehingga bisa disortir
. |
Stack | Sama seperti tumpukan untyped, kecuali diketik. |
Kelas koleksi serentak
Akhirnya, kelas Concurrent memastikan bahwa objek yang Anda simpan dalam daftar tersedia di ruang memori manapun, tidak peduli prosesor apa pun. Ini adalah kesepakatan yang lebih besar dari perkiraan Anda.
Class | Description |
---|---|
BlockingCollection | Ini adalah kelas thread-safe yang akan mencegah satu thread
untuk mengubah field yang dapat diakses oleh thread lain. Hal-hal keren, sungguh. |
ConcurrentDictionary |
Berbicara tentang brilian, kumpulan pasangan kunci / nilai ini dapat
diakses oleh banyak benang. |
ConcurrentQueue | Ingat bahwa tumpukan FIFO? Ya. Yang ini aman dan generik.
aman. |
ConcurrentStack | Koleksi yang diatur sangat berguna. Mereka
bermanfaat untuk memori, untuk satu hal. Lagi pula, yang satu ini adalah LIFO dan thread-safe juga. |
Mengkonfigurasi C #
Seluruh namespace kelas dirancang untuk mengkonfigurasi aplikasi yang ditulis dalam bahasa apapun. NET bahasa, seperti C #, VB. NET, atau salah satu dari beberapa lainnya. Objek di dalamnya, paling tidak, agak sulit dinavigasi. Konfigurasi dalam aplikasi.NET berlangsung di a. file konfigurasi File berformat XML ini memiliki sebuah simpul, dan keseluruhan tumpukan node spesifik proyek ada di dalamnya. Mendapatkan referensi ke konfigurasi memerlukan panggilan ke OpenExeConfiguration.
Sistem Konfigurasi. Konfigurasi konfigurasi = ConfigurationManager. OpenExeConfiguration ();
Setelah selesai, mendapatkan referensi ke bagian cukup mudah. Metode GetSection hanya membutuhkan sebuah string yaitu nama node, dan karena file config hanya teks, Anda bisa ambil kapan saja.
var sectionName = & ldquo; Terserah! & rdquo;; Sistem. Konfigurasi. AppSettingsSection section = (Konfigurasi Sistem. AppSettingsSection) config. GetSection (sectionName);
Anda dapat menambahkan bagian ke file konfigurasi menggunakan alat manipulasi XML dalam kerangka. Anda dapat menggunakan grup preset pada beberapa bagian untuk fungsionalitas yang sesuai.
Bagian | Deskripsi |
---|---|
Startup | Menjelaskan. Versi NET untuk digunakan |
Runtime | Daftar. NET elemen untuk mengikat executable. |
Network | Menggambarkan proxy dan pengaturan jaringan lainnya. |
Kriptografi | Tempat untuk menyimpan nilai yang dapat diakses yang merujuk sumber kripto |
Konfigurasi | Bagian yang paling sering digunakan. Di situlah Anda menyimpan bagian kustom dari file konfigurasi. |
Trace / Debug | Dua pengaturan yang memungkinkan Anda mengatur pelacakan dan logging. |
Application Settings (appsettings) | Aplikasi scoped hal-hal seperti koneksi database string. |
Setelan Web (Setelan Web) | ASP. Rincian spesifik NET |
Pemrograman Asynchronous
Banyak Windows 8 adalah tentang menjadi cepat dan lancar. Cara untuk melakukannya adalah dengan menggunakan metode asinkron dalam callback dari fungsi yang berjalan lama.Masalahnya dengan ini adalah bahwa di C #, cara terbaik untuk menerapkan metode asinkron adalah dengan threading. Tapi Anda tidak bisa selalu bergantung pada kapan barang dari operasi threading akan kembali. Perlu ada beberapa kontrol jika Anda ingin pengguna merasa seperti ada kontrol.
Masukkan async dan tunggu. Async digunakan untuk mendeklarasikan fungsi asinkron, yang mengembalikan sebuah Task. Semua metode async harus mengandung setidaknya satu menunggu ekspresi. menunggu C # untuk mengambil kode yang dimaksud dan menjalankannya di thread terpisah daripada thread pengguna. Tabel memecah bagian asynchronous bahasa yang baru.
Pernyataan | Deskripsi |
---|---|
async | Pengubah yang menunjukkan kompilator bahwa fungsinya
memodifikasi adalah asinkron. |
menunggu | Operator yang menunda eksekusi metode
yang berisi sampai tugas yang telah dinanti selesai. |
Tugas | Merupakan operasi asinkron. |
Tugas | Operasi asinkron yang mengembalikan nilai. |
Tugas ContinueWith | Kelanjutan yang dimulai setelah operasi di Tugas
selesai. |