Showing posts with label Information. Show all posts
Showing posts with label Information. Show all posts

Tuesday, August 4, 2015

NET Framework

Hasil gambar untuk net framework
NET Framework (diucapkan dot net) adalah kerangka kerja perangkat lunak yang dikembangkan oleh Microsoft yang berjalan terutama padaMicrosoft Windows . Ini termasuk besar perpustakaan kelas yang dikenal sebagai Framework Class Library (FCL) dan menyediakan interoperabilitas bahasa (bahasa masing-masing dapat menggunakan kode yang ditulis dalam bahasa lain) di beberapa bahasa pemrograman. Program yang ditulis untuk .NET Framework mengeksekusi dalamperangkat lunak lingkungan (sebagai kontras dengan hardware lingkungan), dikenal sebagai Common Language Runtime (CLR), sebuah mesin virtual aplikasi yang menyediakan layanan seperti keamanan, manajemen memori , dan exception handling . FCL dan CLR bersama-sama merupakan Framework.
FCL menyediakan antarmuka pengguna , akses data , konektivitas database , kriptografi , aplikasi web pengembangan, numerik algoritma, dan jaringan komunikasi . Programmer menghasilkan perangkat lunak dengan menggabungkan mereka sendiri kode sumber dengan Framework dan perpustakaan lainnya. Framework dimaksudkan untuk digunakan oleh sebagian besar aplikasi-aplikasi baru yang dibuat untuk platform Windows. Microsoft juga menghasilkan lingkungan pengembangan terintegrasi sebagian besar untuk perangkat lunak NET disebut Visual Studio .
Framework dimulai sebagai kerangka proprietary, meskipun perusahaan bekerja untuk standarisasi software stack segera, bahkan sebelum rilis pertama. Meskipun upaya standarisasi, pengembang-khususnya di perangkat lunak bebas dan open source masyarakat-mengungkapkan kegelisahan mereka dengan istilah yang dipilih dan prospek dari setiap implementasi bebas dan open source, khususnya yang berkaitan dengan paten perangkat lunak . Sejak itu, Microsoft telah berubah pengembangan NET untuk lebih dekat mengikuti model kontemporer dari proyek software komunitas-dikembangkan, termasuk mengeluarkan update untuk paten berjanji untuk mengatasi masalah.
Keluarga .NET Framework juga mencakup dua versi untuk ponsel atau perangkat tertanam digunakan. Sebuah versi mengurangi dari kerangka, NET Compact Framework , tersedia pada Windows CE platform, termasuk Windows Mobile perangkat seperti smartphone . Selain itu, .NET Framework Micro ditargetkan pada perangkat parah sumber daya yang terbatas.

Sejarah

Microsoft memulai pengembangan .NET Framework di akhir 1990-an, awalnya dengan nama Next Generation Windows Services (NGWS). Pada akhir 2000, versi beta pertama dari NET 1.0 yang dirilis.
Pada bulan Agustus 2000, Microsoft , Hewlett-Packard , dan Intel bekerja untuk membakukan CLI dan C # . Oleh Desember 2001, keduanya diratifikasi ECMA standar. ISO diikuti pada bulan April 2003. Versi saat ini dari standar ISO ISO / IEC 23271: 2012 dan ISO / IEC 23270:. 2006
Sementara Microsoft dan mitra mereka terus paten untuk CLI dan C #, ECMA dan ISO mengharuskan semua paten penting untuk pelaksanaan dibuat tersedia di bawah " wajar dan non-diskriminatif istilah ". Selain memenuhi persyaratan ini, perusahaan telah sepakat untuk membuat paten tersedia bebas royalti. Namun, ini tidak berlaku untuk bagian dari .NET Framework tidak dicakup oleh standar ECMA / ISO, termasuk Windows Forms, ADO.NET, dan ASP.NET. Paten bahwa Microsoft memegang di daerah ini mungkin telah menghalangi implementasi non-Microsoft dari kerangka penuh.
Pada tanggal 3 Oktober 2007, Microsoft mengumumkan bahwa kode sumber untuk .NET Framework 3.5 perpustakaan adalah untuk menjadi tersedia di bawah Lisensi Microsoft Referensi (Ms-RSL ). The repositori kode sumber menjadi tersedia secara online pada tanggal 16 Januari 2008 dan termasuk BCL, ASP.NET, ADO.NET, Windows Forms, WPF dan XML. Scott Guthrie dari Microsoft berjanji LINQ, WCF dan WF perpustakaan berada di proses yang ditambahkan.
Pada tanggal 12 November 2014, Microsoft mengumumkan NET inti, dalam upaya untuk memasukkan dukungan cross-platform untuk NET, rilis sumber implementasi Microsoft CoreCLR, sumber untuk "seluruh [...] perpustakaan stack" untuk NET Inti, dan adopsi dari konvensional ("bazaar" -seperti) model pengembangan open source di bawah kepengurusanYayasan NET . Miguel de Icaza menjelaskan NET Inti sebagai "versi didesain ulang dari NET yang didasarkan pada versi sederhana dari perpustakaan kelas ", dan Microsoft Immo Landwerth menjelaskan bahwa NET Inti akan menjadi "dasar dari semua platform NET masa depan". Pada saat pengumuman, rilis awal dari proyek NET Inti telah unggulan dengan subset dari kode sumber perpustakaan dan bertepatan dengan pelisensian ulang yang ada NET sumber referensi Microsoft jauh dari pembatasan dari Ms-RSL. Landwerth mengakui kerugian yang dipilih sebelumnya lisensi sumber bersama, menjelaskan bahwa itu membuat codename Rotor "non-starter" sebagai proyek open source masyarakat berkembang karena tidak memenuhi kriteria dari OSI lisensi yang disetujui.
Microsoft juga menghasilkan update untuk hibah paten, yang selanjutnya memperluas lingkup luar janji sebelumnya.Proyek sebelum seperti Mono ada di hukum daerah abu-abu karena hibah Microsoft sebelumnya hanya diterapkan untuk teknologi dalam "spesifikasi tertutup", termasuk ketat edisi ke-4 masing-masing ECMA-334 dan ECMA-335. Janji paten baru, namun, tempat tidak ada langit-langit pada versi spesifikasi dan bahkan meluas ke setiap teknologi NET runtime didokumentasikan di MSDN yang belum secara resmi ditetapkan oleh kelompok ECMA, jika proyek memilih untuk melaksanakannya. Hal ini memungkinkan Mono dan proyek lainnya untuk menjaga fitur paritas dengan fitur NET modern yang telah diperkenalkan sejak edisi ke-4 diterbitkan tanpa beresiko litigasi paten atas pelaksanaan fitur tersebut. Hibah baru tidak mempertahankan pembatasan bahwa implementasi apapun harus menjaga kepatuhan minimal dengan bagian wajib dari spesifikasi CLI.
Siaran pers Microsoft menyoroti bahwa komitmen cross-platform sekarang memungkinkan untuk sumber terbuka penuh, modern server-side NET stack. Namun, Microsoft tidak berencana untuk merilis sumber untuk WPF atau Windows Forms.

Versi

Ikhtisar sejarah NET rilis Kerangka
Versi
nomor
CLR
versi
Pelepasan
tanggal
Alat pengembanganTermasuk dalamMenggantikan
JendelaWindows Server
1.01.02002/02/13Visual Studio NETXPN / AN / A
1.11.12003/04/24Visual Studio .NET 2003N / A20031.0
2.02.02005/11/07Visual Studio 2005N / A2003 , 2003 R2 , 2008 SP2 ,2008 R2 SP1N / A
3.02.02006/11/06Expression BlendPemandangan2008 SP2 , 2008 R2 SP12.0
3,52.02007/11/19Visual Studio 20087 , 8 , 8.12008 R2 SP12.0, 3.0
4.042010/04/12Visual Studio 2010N / AN / AN / A
4.542012/08/15Visual Studio 2012820124.0
4.5.142013/10/17Visual Studio 2013 8.12012 R24.0, 4.5
4.5.242014/05/05N / AN / AN / A4.0, 4.5, 4.5.1
4.642015/07/20Visual Studio 20151020164.0, 4.5, 4.5.1, 4.5.2
Catatan:
a. ^ Framework 1.0 adalah komponen integral dari OS edisi Windows XP Media Center atau Tablet PC edisi. CD instalasi untuk edisi Home dan edisi Professional Windows XP SP1, SP2 atau SP3 datang dengan paket instalasi .NET Framework.
b. ^ Expression Blend hanya mencakup Windows Presentation Yayasan bagian dari .NET Framework 3.0.
c. ^ ^ .NET Framework 3.5 tidak diinstal bersama dengan Windows 8 atau Windows 8.1. Ini harus diinstal baik dari media instalasi Windows atau dari Internet . Control Panel selalu mencoba yang terakhir.

Arsitektur

Gambaran visual dari Common Language Infrastructure (CLI)

Bahasa umum Infrastruktur 

Common Language Infrastructure (CLI) menyediakan platform bahasa-netral untuk pengembangan aplikasi dan pelaksanaan, termasuk fungsi untuk penanganan eksepsi , pengumpulan sampah , keamanan, dan interoperabilitas. Dengan menerapkan aspek inti dari .NET Framework dalam lingkup CLI, fungsi ini tidak akan terikat dengan satu bahasa tetapi akan tersedia di banyak bahasa yang didukung oleh framework.Implementasi Microsoft dari CLI adalah Common Language Runtime(CLR). Ini berfungsi sebagai mesin eksekusi Framework. Semua program NET mengeksekusi di bawah pengawasan CLR, menjamin sifat dan perilaku tertentu di bidang manajemen memori, keamanan, dan penanganan eksepsi.
Untuk program komputer untuk berjalan di CLI, mereka harus dikompilasi ke dalam Common Intermediate Language (CIL) - sebagai lawan yang dikompilasi ke dalam kode mesin . Setelah eksekusi, sebuah arsitektur khusus just-in-time compiler (JIT) ternyata kode CIL ke dalam kode mesin. Untuk meningkatkan kinerja, namun, .NET Framework dilengkapi dengan asli Gambar Generator (NGEN) yang melakukan depan-of-waktu kompilasi .

Kelas perpustakan

Framework termasuk satu set standar perpustakaan kelas. Perpustakaan kelas diatur dalam hirarki ruang nama . Sebagian besar API built-in merupakan bagian dari salah satu System.* atau Microsoft.* ruang nama. Perpustakaan kelas ini menerapkan sejumlah besar fungsi umum, seperti membaca dan menulis berkas, render grafis, interaksi database, dan manipulasi dokumen XML, antara lain. Perpustakaan kelas NET tersedia untuk semua bahasa CLI compliant . NET perpustakaan kelas Kerangka dibagi menjadi dua bagian: Kerangka Class Library (FCL) dan Base Class Library (BCL).
FCL termasuk bagian kecil dari seluruh perpustakaan kelas dan merupakan inti set kelas yang berfungsi sebagai dasar APIdari CLR Kelas di mscorlib.dll dan beberapa kelas di System.dll dan System.core.dll adalah bagian dari FCL. Kelas FCL tersedia dalam .NET Framework serta implementasi alternatif yang termasuk NET Compact Framework ,Microsoft Silverlight dan Mono .
BCL adalah superset dari FCL dan mengacu pada seluruh kelas perpustakaan yang dikirimkan dengan NET Framework.Ini mencakup set diperluas perpustakaan, termasuk Windows Forms , ADO.NET , ASP.NET , Bahasa Integrated Query(LINQ), Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF) dan Yayasan Workflow(WF). BCL jauh lebih besar dalam lingkup dari perpustakaan standar untuk bahasa seperti C ++ , dan sebanding dalam ruang lingkup perpustakaan standar Jawa .

NET Inti

NET Core merupakan gratis dan open source implementasi parsial dari .NET Framework. Ini terdiri dari CoreCLR dan CoreFX, yang parsial garpu dari CLR dan BCL masing-masing. NET Inti dilengkapi dengan peningkatan compiler just-in-time , yang disebut RyuJIT.

Sidang

Kode CIL dikompilasi disimpan dalam majelis CLI . Sebagaimana diamanatkan oleh spesifikasi, majelis disimpan dalamPortabel Executable (PE) format file, umum pada platform Windows untuk semua DLL dan EXE file. Setiap perakitan terdiri dari satu atau lebih file, salah satunya harus berisi manifest bantalan metadata untuk perakitan. Nama lengkap perakitan (tidak harus bingung dengan nama file pada disk) berisi nama teks sederhana, nomor versi, budaya, dan kunci publik tanda. Sidang dianggap setara jika mereka berbagi nama lengkap yang sama, termasuk revisi nomor versi.
Kunci privat juga dapat digunakan oleh pencipta perakitan untuk penamaan yang kuat . Token kunci publik mengidentifikasi yang private key perakitan ditandatangani dengan. Hanya pencipta keypair (biasanya NET pengembang menandatangani perakitan) dapat menandatangani majelis yang memiliki nama yang kuat yang sama seperti versi perakitan sebelumnya, karena pencipta dalam kepemilikan kunci pribadi. Kuat penamaan diperlukan untuk menambah majelis untuk Global Assembly Cache .

C ++ / CLI

Microsoft memperkenalkan C ++ / CLI di Visual Studio 2005 , yang merupakan bahasa dan sarana kompilasi Visual C ++program untuk dijalankan dalam Framework. Bagian-bagian tertentu dari program C ++ masih dijalankan dalam sebuah unmanaged Visual C ++ Runtime , sementara bagian yang dimodifikasi khusus yang diterjemahkan ke dalam kode CIL dan menjalankan dengan NET Framework CLR .
Majelis dikompilasi menggunakan compiler C ++ / CLI dikenal sebagai majelis campuran-mode, karena mengandung asli dan kode dikelola dalam DLL yang sama. majelis tersebut juga sulit untuk melakukan reverse engineering, karena decompilers NET seperti NET Reflector hanya mengungkapkan kode dikelola.

Prinsip-prinsip desain

Interoperabilitas

Karena sistem komputer umum membutuhkan interaksi antara aplikasi baru dan lebih tua, .NET Framework menyediakan sarana untuk mengakses fungsi diimplementasikan dalam baru dan lebih tua program yang mengeksekusi lingkungan NET luar. Akses ke COM komponen disediakan dalam System.Runtime.InteropServices danSystem.EnterpriseServices ruang nama dari akses kerangka kerja untuk fungsi lain dicapai dengan menggunakan P / Invoke fitur.

Bahasa kemerdekaan

Framework memperkenalkan Common Jenis Sistem (CTS) yang mendefinisikan semua kemungkinan tipe data dan pemrograman konstruksi didukung oleh CLR dan bagaimana mereka mungkin atau mungkin tidak berinteraksi satu sama lain sesuai dengan spesifikasi CLI. Karena fitur ini, .NET Framework mendukung pertukaran jenis dan contoh objek antara perpustakaan dan aplikasi yang ditulis menggunakan bahasa NET sesuai .

Portabilitas

Sementara Microsoft tidak pernah menerapkan kerangka kerja penuh pada setiap sistem kecuali Microsoft Windows, telah direkayasa kerangka menjadi platform agnostik, dan implementasi cross-platform yang tersedia untuk sistem operasi lain (lihat Silverlight dan implementasi Alternatif ). Microsoft mengajukan spesifikasi untuk CLI (yang termasuk perpustakaan kelas inti, CTS, dan CIL), C #  dan C ++ / CLI baik ECMA dan ISO , membuat mereka tersedia sebagai standar resmi. Hal ini memungkinkan untuk pihak ketiga untuk membuat implementasi kompatibel kerangka dan bahasa pada platform lainnya.

Keamanan

.NET Framework memiliki mekanisme keamanan sendiri dengan dua fitur umum: Kode Akses Keamanan (CAS), dan validasi dan verifikasi. CAS didasarkan pada bukti yang berhubungan dengan perakitan tertentu. Biasanya bukti adalah sumber perakitan (apakah itu diinstal pada komputer lokal atau telah didownload dari intranet atau internet). CAS menggunakan bukti untuk menentukan izin yang diberikan kepada kode. Kode lain dapat menuntut kode panggilan diberikan izin tertentu. Permintaan menyebabkan CLR untuk melakukan panggilan stack berjalan: setiap perakitan masing-masing metode dalam panggilan tumpukan diperiksa izin yang diperlukan; jika perakitan tersebut tidak diberikan izin pengecualian keamanan dilemparkan.
Dikelola CIL bytecode lebih mudah untuk reverse-engineer dari kode asli, kecuali dikaburkan. NET decompilerprogram memungkinkan pengembang tanpa keterampilan reverse-engineering untuk melihat kode sumber belakang majelis NET unobfuscated. Sebaliknya, apps dikompilasi ke kode mesin asli yang jauh lebih sulit untuk reverse-engineer dan kode sumber hampir tidak pernah diproduksi berhasil, terutama karena optimasi kompilator dan kurangnya refleksi . Salah satu perhatian adalah atas kemungkinan hilangnya rahasia dagang dan bypassing mekanisme kontrol lisensi. Untuk mengatasi ini, Microsoft telah memasukkan Dotfuscator Community Edition dengan Visual Studio NET sejak tahun 2002. alat kebingungan pihak ketiga juga tersedia dari vendor seperti vmware , Vi Labs , Xenocode , Red Gate Software . Alat enkripsi metode-tingkat kode NET tersedia dari vendor seperti SafeNet .

Manajemen memori

CLR membebaskan pengembang dari beban pengelolaan memori (mengalokasikan dan membebaskan bila dilakukan);menangani manajemen memori sendiri dengan mendeteksi ketika memori dapat dengan aman dibebaskan. Instantiations jenis NET (benda) yang dialokasikan dari tumpukan dikelola; kolam memori dikelola oleh CLR. Selama ada ada referensi ke objek, yang mungkin baik referensi langsung ke obyek atau melalui grafik dari objek, objek dianggap digunakan. Ketika tidak ada referensi ke sebuah obyek, dan tidak dapat mencapai atau digunakan, menjadi sampah, yang memenuhi syarat untuk koleksi.
Framework termasuk sampah (GC) yang berjalan secara periodik, pada terpisah benang dari benang aplikasi, yang menyebutkan semua benda tidak dapat digunakan dan mengambil kembali memori yang dialokasikan kepada mereka. Ini adalah non-deterministik, pemadatan, mark-dan-menyapu sampah kolektor. GC berjalan hanya ketika sejumlah memori telah digunakan atau ada tekanan yang cukup untuk memori pada sistem. Karena tidak dijamin ketika kondisi untuk merebut kembali memori tercapai, GC berjalan yang non-deterministik. Setiap aplikasi .NET memiliki seperangkat akar, yang pointer ke objek pada tumpukan dikelola (dikelola objek). Ini termasuk referensi ke obyek statis dan objek didefinisikan sebagai variabel atau parameter metode saat ini dalam lingkup lokal, serta benda-benda disebut dengan register CPU. Ketika GC berjalan, itu berhenti aplikasi, dan untuk setiap objek sebagaimana dimaksud dalam akar , itu rekursifmenyebutkan semua benda dijangkau dari benda akar dan menandai mereka sebagai dicapai. Menggunakan CLI metadata dan refleksi untuk menemukan objek dikemas oleh suatu benda, dan kemudian secara rekursif berjalan mereka.Kemudian menyebutkan semua objek pada tumpukan (yang awalnya dialokasikan contiguously) menggunakan refleksi.Semua benda tidak ditandai sebagai dicapai adalah sampah. ini adalah fase tanda. Sejak memori yang dimiliki oleh sampah tidak konsekuensi apapun, itu dianggap ruang bebas. Namun, ini meninggalkan potongan ruang bebas antara objek yang awalnya berdekatan. Benda-benda tersebut kemudian dipadatkan bersama-sama untuk membuat bekas memori yang berdekatan lagi. Setiap referensi ke objek batal dengan memindahkan objek diperbarui oleh GC untuk mencerminkan lokasi baru. Aplikasi ini dilanjutkan setelah pengumpulan sampah sudah selesai.
GC digunakan oleh .NET Framework juga generasi . Objek ditugaskan generasi; objek yang baru dibuat milikGeneration 0. Objek yang bertahan pengumpulan sampah yang ditandai sebagai Generasi 1, dan Generasi 1 objek yang bertahan koleksi lain adalah Generasi 2 benda. Framework menggunakan hingga Generasi 2 objek. benda generasi yang lebih tinggi sampah yang dikumpulkan lebih jarang daripada benda generasi yang lebih rendah. Ini membantu meningkatkan efisiensi pengumpulan sampah, sebagai objek yang lebih tua cenderung memiliki masa hidup lebih lama dari benda yang lebih baru. Dengan demikian, dengan menghilangkan tua (dan dengan demikian lebih mungkin untuk bertahan hidup koleksi) objek dari lingkup koleksi lari, lebih sedikit benda perlu diperiksa dan dipadatkan. 

Penyebaran disederhanakan

.NET Framework mencakup fitur desain dan alat-alat yang membantu mengelola instalasi perangkat lunak komputer untuk memastikan bahwa hal itu tidak mengganggu perangkat lunak yang diinstal sebelumnya, dan bahwa itu sesuai dengan persyaratan keamanan.

Kinerja

Ketika aplikasi pertama kali diluncurkan, Framework mengkompilasi kode CIL ke dalam kode executable menggunakan nyajust-in-time compiler , dan cache program executable ke dalam NET asli Gambar Cache. Karena caching, aplikasi meluncurkan lebih cepat untuk meluncurkan berikutnya, meskipun peluncuran pertama biasanya lebih lambat. Untuk meningkatkan kecepatan peluncuran pertama, pengembang dapat menggunakan asli Gambar Generator utilitas untuk mengkompilasi secara manual dan cache aplikasi .NET, depan-of-waktu .
Pengumpul sampah, yang terintegrasi ke dalam lingkungan, dapat memperkenalkan penundaan tak terduga eksekusi dimana pengembang memiliki kontrol langsung sedikit. "Dalam aplikasi besar, jumlah objek yang pengumpul sampah perlu berurusan dengan dapat menjadi sangat besar, yang berarti dapat mengambil waktu yang sangat lama untuk mengunjungi dan mengatur ulang semua dari mereka."
Framework menyediakan dukungan untuk memanggil Streaming SIMD Extensions (SSE) melalui kode dikelola dari April 2014 di Visual Studio 2013 Perbarui 2. Namun, Mono dukungan telah disediakan untuk SIMD Extensions pada versi 2.2 dalam namespace Mono.Simd; sebelumnya. Memimpin pengembang Mono Miguel de Icaza telah menyatakan harapan bahwa dukungan SIMD ini akan diadopsi oleh standar ECMA CLR ini.Streaming SIMD Extensions telah tersedia di x86CPU sejak diperkenalkannya Pentium III . Beberapa arsitektur lain seperti ARM dan MIPS juga memiliki ekstensi SIMD.Dalam kasus CPU memiliki dukungan bagi mereka ekstensi, petunjuk disimulasikan dalam software.

Perizinan

Komponen .NET Framework dilisensikan sebagai berikut:
KomponenLisensi
NET Inti
CoreFX dan CoreCLR
MIT License
Framework MikroApache License 2.0
NET Compiler platform (codename "Roslyn")Apache License 2.0
ASP.NETApache License 2.0
ASP.NET Web StackApache License 2.0
ASP.NET Ajax Control ToolkitLisensi BSD
ASP.NET SignalRApache License 2.0
Entity FrameworkApache License 2.0
NugetApache License 2.0
Referensi kode sumber dari .NET Framework 4.5 dan sebelumnyaLisensi Microsoft Referensi (Ms-RSL )
Referensi kode sumber dari .NET Framework 4.6MIT License
Framework paket disebarkan kembaliSoftware proprietary

Implementasi alternatif

.NET Framework adalah implementasi dominan dari teknologi NET. Implementasi lainnya untuk bagian dari kerangka yang ada. Meskipun mesin runtime dijelaskan oleh spesifikasi ECMA / ISO, implementasi lain itu dapat dibebani oleh masalah paten ; Standar ISO mungkin termasuk disclaimer, "Harap diingat kemungkinan bahwa beberapa unsur dari dokumen ini dapat menjadi subyek hak paten. ISO tidak bertanggung jawab untuk mengidentifikasi salah satu atau semua hak paten tersebut." Ini lebih sulit untuk mengembangkan alternatif untuk FCL, yang tidak dijelaskan oleh standar terbuka dan dapat dikenakan pembatasan hak cipta. Selain itu, bagian dari FCL memiliki Windows-spesifik fungsi dan perilaku, sehingga pelaksanaan non-platform Windows dapat menjadi masalah.
Beberapa implementasi alternatif bagian dari kerangka tercantum di sini.
  • .NET Framework Micro adalah platform NET untuk perangkat sangat sumber daya yang terbatas. Ini termasuk versi kecil dari CLR dan mendukung pembangunan di C # (meskipun beberapa pengembang dapat menggunakan VB.NET , meskipun dengan jumlah hacking, dan dengan fungsionalitas terbatas) dan debugging (dalam emulator atau perangkat keras), baik menggunakan Microsoft Visual Studio . Ia juga memiliki subset dari Framework Class Library (sekitar 70 kelas dengan sekitar 420 metode), sebuah GUI kerangka longgar didasarkan pada WPF, dan perpustakaan tambahan khusus untuk aplikasi embedded.
  • Mono merupakan implementasi dari CLI dan FCL, dan menyediakan fungsionalitas tambahan. Ini adalah dual-berlisensidi bawah perangkat lunak bebas dan perangkat lunak berpemilik lisensi. Ini termasuk dukungan untuk ASP.NET, ADO.NET, dan Windows Forms perpustakaan untuk berbagai arsitektur dan sistem operasi. Ini juga termasuk C # dan VB.NET compiler.
  • Portable.NET (bagian dari DotGNU ) menyediakan implementasi dari CLI, bagian dari FCL, dan C # compiler.Mendukung berbagai CPU dan sistem operasi.
  • Microsoft Shared Source Common Language Infrastructure adalah non-bebas pelaksanaan CLR. Namun, versi terakhir hanya berjalan pada Microsoft Windows XP SP2, dan tidak diperbarui sejak tahun 2006, oleh karena itu tidak mengandung semua fitur dari versi 2.0 dari Framework.
  • CrossNet merupakan implementasi dari CLI dan bagian dari FCL. Ini adalah perangkat lunak bebas menggunakan open source Lisensi MIT .

Tuesday, June 30, 2015

Berapa Lama CD Dapat Menyimpan Data kamu?

Semua orang di era modern ini pasti pernah menggunakan CD sebagai media penyimpanan kan. Mulai dari menyimpan tugas skripsi bahkan hingga untuk menonton rekaman dangdut favorit. Tapi apakah CD dapat kita andalkan untuk menyimpan data dalam waktu yang lama? Apakah piringan tersebut dapat kita wariskan kepada anak cucu kita nanti? Melalui artikel ini, mari kita kupas tuntas mengenai daya tahan dari media penyimpanan sejuta umat tersebut berdasarkaan penjelasan dari situs Make us Of.

Tersusun dari apa sih CD itu?

Sebelum kita membahas mengenai kekuatan dari CD, kita harus tahu dulu, piringan tersebut tersusun dari apa sesungguhnya. CD terdiri dari tiga lapisan yaitu:
  • Lapisan pembungkus yang berfungsi sebagai pelindung dari reflective layer.
  • Lapisan mengkilat yang berfungsi untuk memantulkan laser.
  • Lapisan keping polycarbonate untuk menyimpan data.
Sebagai tambahan, CD juga bisa dilengkapi dengan dye layer di antara lapisan reflektif dan lapisan protektif. Selain itu label yang selama ini dipasang di CD diimplementasikan pada lapisan pembungkus. Faktor yang memegang peranan penting dalam menentukan daya tahan sebuah CD adalah melalui kualitas dari lapisan reflective. Faktor lainnya adalah bahan pembuat CD, proses produksi, dan tentu saja perlakuan dari pengguna itu sendiri.

Daya Tahan

Memang sih daya tahan dari CD pasti berbeda-beda bergantung kepada poin di atas. Namun secara teori, CD sebenarnya dapat tahan hingga 200 tahun untuk CD-R dan Blu-Ray yang sudah diisi. Akan tetapi CD-R dan CD-RW diperkirakan hanya dapat bertahan 5 hingga 10 tahun apabila masih dalam keadaan kosong. DVD-RW yang sudah diisi memiliki daya tahan hingga 30 tahun, diikuti dengan CD-RW dan DVD-R yang awet hingga 20-100 tahun apabila sudah diisi.

Faktor-Faktor yang Menyebabkan Pembusukan CD

Jangan salah, CD juga bisa membusuk lho. Lapisan reflective yang terbuat dari alumunium memiliki kerentanan terhadap beberapa faktor. Berikut ini merupakan hal-hal yang dapat mempercepat pembusukan terhadap CD, terutama lapisan reflective:
  • Oksidasi atau korosi
  • Kerusakan secara fisik terhadap piringan maupun ujung dari CD
  • Reaksi galvanik antara lapisan dan pelindung
  • Reaksi kimia
  • Kerusakan akibat cahaya ultra violet
  • Kerusakan pada material kepingan

Gimana sih cara membuat CD tetap Awet?

Meskipun CD memang tidak dapat bertahan selamanya, kamu masih bisa mempertahankannya selama mungkin dengan mengikuti tips berikut:
  • Pilihlah CD dengan bahan yang bagus dan dari merk yang sudah teruji.
  • Pilihlah CD dengan lapisan emas untuk daya tahan yang lebih baik.
  • Jangan menyentuh CD pada permukaannya, hindari goresan, dan lindungi dari debu.
  • Jaga CD pada tempat yang kering, gelap, dan dingin. Suhu, sinar matahari, kelembaban, dan polutan dapat merusak lapisan.
  • Simpanlah pada kotak daripada harus pada slip kertas.
  • Gunakan marker/spidol dengan base non-solvent yang cocok untuk label CD.
  • Jangan terlalu sering me-rewrite CD.
  • Gunakan kecepatan rendah saat mem-burn CD untuk menghindari error dan meningkatkan kualitas.
Sumber: Make us Of