0% menganggap dokumen ini bermanfaat (0 suara)
570 tayangan11 halaman

Soal Framework

Dokumen tersebut berisi pertanyaan-pertanyaan yang mungkin muncul pada ujian Quiz II dan UAS mengenai konsep-konsep dasar pemrograman C# .NET seperti Generic, Collection, Delegate, MVC, database access, dan skalabilitas aplikasi.

Diunggah oleh

Dhani GumeHo
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
570 tayangan11 halaman

Soal Framework

Dokumen tersebut berisi pertanyaan-pertanyaan yang mungkin muncul pada ujian Quiz II dan UAS mengenai konsep-konsep dasar pemrograman C# .NET seperti Generic, Collection, Delegate, MVC, database access, dan skalabilitas aplikasi.

Diunggah oleh

Dhani GumeHo
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 11

Nama : RAHMADANI

Kemungkinan pertanyaan yang akan diujikan pada Quiz II dan UAS

Generic and Collection


1. Jelaskan apa yang dimaksud dengan Generic dan Collection pada C# .net?
JAWAB :
Generic digunakan untuk menspesifikasi related method dalam single decelaration. Jadi int
sekali dipanggil, string sekali dipanggil -> pembuatan class & method dgn berbagai tipe.
Terdiri atas :
1. Generic method yang mampu untuk menspesifikasi, dengan single method declaration,
sekumpulan dari related method
2. Generic classes yang mampu untuk menspesifikasi, dengan single class declaration,
sekumpulan dari related class
3. Generic interfaces mampu untuk menspesifikasi, dengan single interface declaration,
sekumpulan dari interfaces

Sedangkan Collection adalah kelas struktur data yang masih prepackaged (prepackaged data
structure classes) yang disediakan oleh .NET Framework.

Collection classes memampukan programmer untuk menyimpan sekumpulan item dengan


menggunakan struktur data yg telah ada, tanpa concern pada bagaimana mereka
diimplementasikan.

The .NET Framework provides three namespaces dedicated to collections :

• System.Collections

• System.Collec-tions.Generic

• System.Collections.Specialized

4. Jelaskan apa yang dimaksud dengan delegate pada C# .net?


JAWAB :

Delegate adalah sebuah objek yang mampu menampung sebuah reference ke sebuah method.
Delegate menganggap method sebagai data. Method bisa di assign dalam variable.
Delegate biasanya dideklerasikan pada header.
 Objek yang memanggil method
 Cara untuk memanggil suatu method dalam suatu class yang tdk bisa dilakukan dengan
pemanggilan biasa
 Delegate memperbolehkan kamu untuk membuat method sebagai data melalui delegate,
kamu dapat meng-assign method ke variables, dan pass method ke dan dari method lainnya
Nama : RAHMADANI

5. Lengkapi code berikut:

class Program
{
delegate string delegateHurufBesar(string masukan);

static void Main()


{
Console.WriteLine("Masukan teks dalam huruf kecil");
string inputTeks = Console.ReadLine();

cetakKeluaran(inputTeks, …);

Console.ReadKey();
}

static string konversiKeHurufBesar(string input)


{
return input.ToUpper();
}

static void cetakKeluaran(string input, …)


{
Console.WriteLine("teks yang anda masukan: {0}", input);
Console.WriteLine("teks diubah menjadi huruf besar: {0}",
delegasi(input));
}

JAWAB :
1. New delegatHurufBesar(konversiKeHurufBesar)
2. delegatHurufBesar delegasi

MVC Design the Application Architecture

6. Dalam merencanakan dan memilih akses ke database pada Microsoft .net hal yang menjadi
pertimbangan adalah apakah database sudah tersedia atau belum. Jelaskan mengapa hal
tersebut menjadi pertimbangan dan teknologi apa yang sesuai untuk kedua hal tersebut?
JAWAB:
Hal tersebut harus dipertimbangkan karena hal ini adalah salah satu kunci untuk menggunakan
ASP.NET MVC untuk membuat web based business yang kamu inginkan.
Nama : RAHMADANI

Data access options :


• Using an object relational mapper (O/RM)
 O / RM adalah sebuah aplikasi atau sistem yang membantu dalam
konversi data dalam sistem manajemen database relasional ( RDBMS )
dan model objek yang diperlukan untuk digunakan dalam pemrograman
berorientasi objek .
 O / RM hidrat objek dengan data dari database , atau menciptakan
pernyataan SQL yang akan menyimpan data objek ke dalam database .
 Contoh produk O / RM yang dapat digunakan untuk mendukung ASP.NET
MVC 4 adalah NHibernate , Entity Framework , dan Linq - ke - SQL

• Writing your own component to manage interactions with the database


 menggunakan format database yang tidak murni relasional , seperti NoSQL
7. Apa yang dimaksud dengan Separation of Concern (SoC) dan loosely coupling, jelaskan!
JAWAB :
Pemisahan keprihatinan ( SoC ) adalah konsep pengembangan perangkat
lunak yang memisahkan program komputer ke dalam bagian yang berbeda ,
atau kekhawatiran , di mana setiap keprihatinan memiliki tujuan yang
berbeda

Sebuah istilah yang terkait erat dengan SoC adalah kopling longgar .

Kopling longgar adalah sebuah pendekatan arsitektur di mana desainer


berusaha untuk membatasi jumlah saling ketergantungan antara berbagai
bagian dari sistem .

8. Sebutkan fungsi utama Model, View dan Controller pada MVC?


JAWAB :
1. Model
Model adalah bagian dari aplikasi yang menangani logika bisnis .
Sebuah objek Model mengelola akses data dan melakukan logika bisnis
pada data.

Tidak seperti peran lain dalam aplikasi MVC , model tidak


mengimplementasikan antarmuka tertentu atau berasal dari kelas dasar
tertentu
2. View
VIEW adalah bagian dari aplikasi yang bertanggung jawab untuk
menampilkan informasi kepada pengguna

Kesan pertama pengguna , dan seluruh interaksi mereka dengan


aplikasi Anda , adalah melalui pandangan .

Controller memberikan pandangan referensi untuk model atau informasi


yang perlu ditampilkan .
3. Controller
Controller adalah bagian dari ASP.NET MVC 4 yang menangani
permintaan yang masuk , menangani input pengguna dan interaksi , dan
mengeksekusi logika aplikasi .
Nama : RAHMADANI

Sebuah controller panggilan model untuk mendapatkan obyek bisnis


yang diperlukan , jika ada , dan kemudian memanggil pandangan , baik
dengan atau tanpa model, untuk
membuat dan membuat output Hypertext Markup Language ( HTML ) .

9. Sebutkan dan jelaskan tiga faktor yang menjadi pertimbangan ketika memilih client side atau
server side processing ?
JAWAB :
• Application performance
• User experience
• Business requirements
Kinerja aplikasi penting karena akan selalu ada beberapa latency saat
menghubungkan melalui Internet .

Validasi di sisi client , misalnya , meningkatkan kinerja dengan


menghilangkan panggilan di seluruh jaringan untuk transaksi yang akan
gagal validasi .

Berat situs digunakan dapat meningkatkan kinerja bylowering beban


server . Namun, berhati-hatilah untuk tidak mengorbankan keamanan untuk
kecepatan .

Anda tidak harus sepenuhnya menggantikan server-side memeriksa dengan


validasi sisi klien . Dengan hanya sisi klien valida - tion , masih ada
kesempatan untuk data yang buruk sampai ke server dan memasuki proses
bisnis .
Praktek terbaik adalah untuk menempatkan validasi di kedua sisi - sisi
klien untuk memberikan UI responsifdan menurunkan biaya jaringan , dan
pada sisi server untuk bertindak sebagai gateway untuk memastikan bahwa
input Data valid

Anda tidak harus sepenuhnya menggantikan server-side memeriksa dengan


validasi sisi klien . Dengan hanya validasi sisi klien , masih ada
kesempatan untuk data yang buruk sampai ke server dan memasuki proses
bisnis .

Praktek terbaik adalah untuk menempatkan validasi di kedua sisi - pada


sisi klien untuk memberikan UI responsif dan menurunkan biaya jaringan ,
dan pada sisi server untuk bertindak sebagai gateway untuk memastikan
bahwa input data valid

10. Jelaskan perbedaan design scalability secara horijontal dan vertikal?


JAWAB :
1. HORIZONTAL
Dengan skala horisontal , Anda skala dengan menambahkan node
tambahan ke sistem .

Ini adalah skenario pertanian web , di mana sejumlah sistem


komoditas tingkat dapat ditambahkan atau dihapus karena permintaan
berfluktuasi .
Nama : RAHMADANI

Mereka disajikan menggunakan penyeimbang beban atau bagian lain dari


peralatan jaringan yang menentukan server mana yang harus disebut

2. VERTIKAL
Dengan skala vertikal , Anda skala dengan menambahkan sumber daya
untuk sistem tunggal . Ini biasanya melibatkan penambahan unit
central processing ( CPU ) atau memori

Sebuah aplikasi yang skala pada sistem tunggal mungkin lebih


memperhatikan threading , input / output ( I / O ) , pengumpulan
sampah , dan keputusan desain lain yang akan membantu aplikasi lebih
memanfaatkan memori atau CPU tambahan

11. Jelaskan apa yang dimaksud dengan Web Farm?


JAWAB :
WEB FARM ADALAH kelompok server yang berbagi beban menangani
permintaan web .
Menggunakan web FARM dengan ASP.NET MVC 4 aplikasi memberi Anda
fleksibilitas untuk menyebarkan berbagai bagian aplikasi Anda .

Karena SoC melekat dalam arsitektur MVC , Anda dapat menemukan


komponen aplikasi pada server yang berbeda : Anda dapat menempatkan
pandangan pada satu server dan model yang lain , selama Anda mengelola
komunikasi antara keduanya.

ASP.NET MVC dirancang untuk menjadi fleksibel , memungkinkan Anda


untuk menjalankan aplikasi dengan bagian-bagian yang terpisah serta
bersama-sama sebagai aplikasi tunggal

Ada banyak keuntungan menggunakan sebuah peternakan web , salah


satunya adalah ketersediaan tinggi .

Jika server di pertanian turun , penyeimbang beban pengalihan semua


permintaan yang masuk ke server lain .

Sebuah peternakan web juga meningkatkan kinerja dengan mengurangi


beban setiap server menangani , sehingga menurunkan masalah
pertengkaran .

Kemampuan untuk menambahkan server untuk pertanian juga menyediakan


skalabilitas YANG lebih baik
Nama : RAHMADANI

MVC Design the User Experience


12. Jelaskan apa yang ada ketahui dari kode Html Helper berikut, jelaskan terkait dengan apa “Add
to cart”, “AddToCart”, “ShoppingCart” dan new {id = Model.AlbumId}:

@Html.ActionLink("Add to cart", "AddToCart", "ShoppingCart", new { id =


Model.AlbumId }, "")

JAWAB :
“Add to cart” -> digunakan untuk tampilan menu yang akan diklik
“addToCart” -> View dari yang akan diklik
“ShoppingCart” -> Controller dari yang akan diklik
Maka url nya nanti : localhost:xxxx/store/ShoppingCart/addToCart

13. Pada framework MVC validasi data dapat dilakukan pada Model, jelaskan bagaimana
melakukannya?
JAWAB :
Dalam sebuah aplikasi MVC , model mengelola perilaku dan data dari domain
aplikasi . Model ini juga dapat digunakan untuk memvalidasi data yang
dimasukkan ke dalam aplikasi .

Dalam contoh berikut , model memvalidasi bidang yang diperlukan dalam


aplikasi web MVC , yang berarti data divalidasi sebelum konten disimpan
dalam database .

Validasi dicapai melalui penjelasan data, di mana aturan ditempatkan di


masing-masing bidang , menentukan apakah perlu , jenis tipe data yang
dibutuhkan untuk dapat memutuskan untuk , dan panjang minimum dan maksimum
.

Panjang minimum dan maksimum sangat penting pada string untuk disimpan
dalam database untuk memastikan tidak ada kesalahan atau truncations
disebabkan oleh data yang lebih besar dari kolom yang akan disimpan

14. Apa yang dimaksud dengan validatationSummary pada View di framework MVC?
JAWAB :

15. Pada framework MVC ModelState.IsValid digunakan dimana di Model, View atau Controller,
jelaskan cara kerjannya?
JAWAB :
Nama : RAHMADANI

16. Jelaskan dengan contoh apa yang dimaksud dengan Remote Validation?
JAWAB:
Akan ada situasi di mana Anda akan perlu melakukan lebih
validasi interaktif . Contohnya adalah Daftar bagian Pengguna aplikasi .
Anda ingin pengguna baru tahu segera jika nama pengguna mereka memasuki
tersedia .

Satu-satunya cara untuk melakukannya adalah melalui validator remote yang


posting nama pengguna kembali ke server , yang memberitahu Anda apakah
nilai yang tersedia

17. Apa yang anda ketahui tentang code berikut: @Html.Partial(“_Page”) ?


18. Apa yang anda ketahui tentang Master Page, dapatkan sebuah aplikasi MVC memiliki lebih dari
satu master page dan apa yang dimaksud dengan switch master page?
JAWAB :
UI dari aplikasi web MVC didasarkan pada tata letak halaman master .
Anda dapat mengganti layout default untuk berbeda induk atau tata letak
halaman melalui kode .

Guru atau tata letak halaman dibuat dengan cara yang sama seperti
pandangan biasa . Halaman layout default ( _Layout.cshtml ketika
menggunakan Razor tampilan mesin , Master.Page ketika menggunakan
tampilan mesin ASPX ) terletak di Views / Bersama folder dalam aplikasi
MVC .

Master standar atau tata letak halaman bertanggung jawab untuk tata letak
keseluruhan aplikasi . Tag Razor RenderBody ( ) beban berbagai pandangan ke
dalam aplikasi dalam tubuh < div > tag .

Anda dapat membuat lebih dari satu master atau tata letak dalam yang sama
folder ; layout keseluruhan ini guru atau tata letak halaman lain bisa sama
sekali berbeda dari desain master standar atau tata letak halaman

Guru atau tata letak halaman bertanggung jawab untuk loading style sheet
serta JavaScript perpustakaan yang dibutuhkan oleh setiap subhalaman tersisa
.

Tata letak master standar beban perpustakaan JavaScript jQuery serta


perpustakaan pembantu tambahan bernama Modernizr.js .

The Modernizr.js perpustakaan memudahkan pengembang untuk menulis bersyarat


JavaScript dan CSS untuk menentukan apakah browser mendukung fitur , terutama
HTML5

19. Jelaskan apa fungsi deteksi fitur pada browser?


JAWAB :
Meskipun mengetahui browser dapat membantu untuk mencegah perilaku yang
tidak diinginkan , fitur deteksi adalah metode yang lebih baik yang
dapat menghilangkan fitur yang tidak didukung dan bertindak atas
kebutuhan aplikasi .
Nama : RAHMADANI

Fitur deteksi ini sangat berguna ketika mendukung klien mobile karena
dukungan fitur dapat berubah dengan perangkat bukan oleh jenis browser .
Tergantung hanya pada identifikasi browser yang dapat memberikan hasil
yang berbeda dari deteksi fitur .

WCF
20. Sebutkan empat prinsip SOA!
JAWAB :
o Batasan yang eksplisit (Address dan Contract harus dapat dicapai)
o Service bersifat Otonom
o Service berbagi service operation (schema) dan contract, bukan berbagi kelas
o Service Compability berdasarkan sebuah kebijakan (kebijakan untuk menentukan elemen
dalam komunikasi misalnya format dan security message)

21. Sebutkan tiga prinsip ABC bagaimana WCF bekerja!


JAWAB :
Address, where
Binding, how
Contract, what

Develop the User Experience


22. Jelaskan tujuan dari Search Engine Optimization (SEO)!
JAWAB :
Search engine optimization ( SEO ) adalah proses pembuatan peringkat
situs yang tinggi pada daftar hasil pencarian yang belum dibayar

Ada dua cara utama untuk mengoptimalkan situs Anda untuk pencarian
pengindeksan :
Yang pertama adalah untuk memastikan pesan yang konsisten yang jelas
dalam
teks pada halaman .
Kedua adalah untuk memastikan bahwa situs tersebut dikodekan dengan
benar untuk memfasilitasi
Crawler mesin pencari

23. Sebutkan dua SEO toolkit!


JAWAB :
Search Engine Optimization ( SEO ) Toolkit adalah alat yang digunakan
secara luas yang meneliti HTML dan laporan tentang isu-isu Anda harus
memperbaiki

contoh :
Toolkit , yang berjalan di bawah Microsoft Internet Information Services
( IIS )
Alat Webmaster , yang ditawarkan oleh Google
Nama : RAHMADANI

24. Jelaskan atribut filter berikut yang terdapat pada controller asp.net MVC!

a) RequireHttpsAttribute
 The RequireHttpsAttribute memastikan bahwa semua panggilan ke
controller dihiasi atau metode telah melalui HTTPS untuk memastikan
transportasi yang aman .

 Anda biasanya menggunakannya setiap kali Anda mengelola informasi


rahasia atau aman , seperti informasi pribadi , pembelian kartu
kredit , atau layar yang mengharapkan nama login dan password

b) ValidateAntiForgeryTokenAttribute
 The ValidateAntiForgeryTokenAttributehelps melindungi aplikasi Anda
terhadap cross-site permintaan pemalsuan dengan memastikan bahwa ada
bersama , nilai rahasia antara data formulir dalam field tersembunyi
, cookie , dan pada server .

 Ini memvalidasi bahwa bentuk adalah salah satu yang server Anda
diposting , bahwa itu adalah sesi browser yang sama , dan itu cocok
dengan nilai yang diharapkan pada Server

c) AuthorizeAttribute
 The AuthorizeAttribute memberi Anda kontrol atas apakah pengguna
harus disahkan sebelum dapat mengambil tindakan yang dihiasi .

 Hal ini dapat dimodifikasi untuk memeriksa otorisasi juga dengan


memeriksa untuk melihat apakah pengguna memiliki peran yang dalam
daftar yang diterima : Otorisasi ( Peran = Admin , PowerUser )

d) ChildActionOnlyAttribute
 ChildActionOnlyAttribute memastikan bahwa tindakan tidak dapat
dicapai melalui proses pemetaan tradisional karena metode apapun
dihiasi dengan ChildActionOnlyAttribute bisa disebut hanya dari
metode penyuluhan Action atau RenderActionHTML

25. Jelaskan script routing berikut:

26. Sebutkan dan jelaskan bagaimana cara meminimalkan data yang dikirim melalui jaringan untuk
mengoptimalkan bandwidth jaringan!
Nama : RAHMADANI

JAWAB :
Sebagai pengembang , Anda harus selalu mencari cara untuk meminimalkan jumlah
data yang dikirim melalui jaringan untuk mengoptimalkan bandwidth yang

1. Hanya barang-barang yang diperlukan dikirim ke klien


 Anda harus membersihkan tua , tidak terpakai file Java Script atau
metode yang masih terkait , dan menghapus gaya yang tidak terpakai
atau berlebihan dalam file CSS Anda .

2. Bundling dan minification


++ Bundling menggabungkan satu set script ke dalam satu naskah . Apa
yang akan memiliki beberapa panggilan ke server menjadi satu panggilan

--Bundling Beberapa script ke dalam satu file , Anda telah sedikit


meningkat jumlah waktu yang dibutuhkan untuk menemukan fungsi yang
diperlukan atau item lainnya dari dalam file.

++ Ini mengkaji naskah dan membersihkan keluar ruang putih , komentar ,


kembali line, dan konten asing lainnya .

++ Hal ini juga meminimalkan nama variabel , mengubahnya menjadi


variabel satu dan dua karakter . Tujuan utama dari minification adalah
untuk membuat file sekecil mungkin

--Itu Memiliki efek sekunder dari obfuscating file .

3. Kompresi dan dekompresi data


 Kompresi di IIS : Server secara otomatis kompres file sebelum
mengirim respon ke Internet

 Seperti dengan semua hal yang berkaitan kinerja , ada tradeoff


antara mengirim file yang lebih kecil dan jumlah tambahan waktu yang
diperlukan pada klien untuk unzip isi .

 Ini menjadi pilihan antara penghematan waktu download versus biaya


klien ekstra untuk dekompresi file .

4. Jaringan pengiriman konten ( CDN )


 CDNs menyediakan cara untuk mendistribusikan konten Anda dari sumber
selain server Anda .
 Node pengiriman mungkin dalam jaringan atau eksternal , tetapi
mereka bukan bagian dari sistem server yang menjalankan aplikasi
ASP.NET MVC Anda

 CDNs melayani beberapa tujuan yang berbeda . Salah satunya adalah


untuk mengambil pekerjaan yang melayani gambar , file CSS , file
JavaScript , dan konten statis lain dari server aplikasi Anda

 Titik lain CDNs adalah untuk mendapatkan konten lebih dekat dengan
klien . Banyak CDNs yang lebih besar di seluruh dunia , sehingga
menempatkan konten Anda di jaringan mereka berarti Anda tidak perlu
melayani file dan pengguna dapat men-download mereka dari lokasi
lebih dekat .
Nama : RAHMADANI

Anda mungkin juga menyukai