Saya mulai bekerja di MVC sekitar setahun yang lalu, saya terinspirasi tetapi tidak terkesan.
Saya benci tampilan negara dan melihatnya sebagai akar dari semua kejahatan dalam hal ASP.NET. Inilah mengapa saya tidak menggunakannya dan sejujurnya mengapa Anda melakukannya?
Saya pada dasarnya mengambil konsep ASP.NET MVC Framework dan membangunnya dengan cara saya sendiri. Saya mengubah beberapa hal. Saya membuat kode pembungkus pengontrol saya, atau kode perutean URL di sekitar kompilasi ulang dinamis.
Sekarang, saya akan mengatakan bahwa aplikasi ASP.NET MVC akan lebih cepat berdasarkan cara Anda menggunakannya. Jika Anda benar-benar meninggalkan WebForms, Anda akan lebih cepat karena siklus hidup ASP.NET dan model objek sangat besar.
Saat Anda menulis, Anda sedang membuat contoh pasukan ... tidak tunggu, banyak objek yang akan berpartisipasi dalam rendering tampilan Anda. Ini akan lebih lambat dibandingkan jika Anda mengekspresikan jumlah minimal perilaku di halaman ASPX itu sendiri. (Saya tidak peduli tentang abstraksi mesin tampilan karena dukungan untuk halaman ASPX di Visual Studio layak, tetapi saya telah benar-benar menjatuhkan WebForms sebagai konsep dan pada dasarnya kerangka kerja ASP.NET apa pun karena kode mengasapi atau tidak dapat mengubah hal-hal yang menghubungkan lamaran saya).
Saya telah menemukan cara untuk mengandalkan kompilasi ulang dinamis (System.Reflection.Emit) untuk memancarkan objek dan kode tujuan khusus kapan pun diperlukan. Pelaksanaan kode ini lebih cepat daripada refleksi tetapi pada awalnya dibangun melalui layanan refleksi. Ini telah memberikan kinerja yang luar biasa pada kerangka kerja rasa MVC saya, tetapi juga diketik dengan sangat statis. Saya tidak menggunakan string dan koleksi pasangan nama / nilai. Sebagai gantinya, layanan compiler kustom saya menulis ulang post formulir ke aksi pengontrol yang diberikan tipe referensi. Di balik layar ada banyak hal yang terjadi tetapi kode ini cepat, jauh lebih cepat daripada WebForms atau MVC Framework.
Selain itu, saya tidak menulis URL, saya menulis ekspresi lambda yang diterjemahkan ke dalam URL yang kemudian memberi tahu tindakan pengontrol mana yang harus dipanggil. Ini tidak terlalu cepat tetapi mengalahkan URL yang rusak. Ini seperti jika Anda memiliki sumber daya yang diketik secara statis serta objek yang diketik secara statis. Aplikasi web yang diketik secara statis? Itulah yang saya inginkan!
Saya akan mendorong lebih banyak orang untuk mencobanya.