Kamus asp.net (1)

Trim
——
Trim :  fungsi Trim digunakan untuk menghapus karakter spasi di kedua sisi baik kiri/awal maupun kanan/akhir kalimat
Contoh :
UserName = ” Lisa Shea ”
ada spasi dalam penulisan username. Dengan menggunakan
UserName = Trim(UserName)
dapat mengubah Username menjadi “Lisa Shea” dengan tanpa spasi

Regex
——–
Regex (Regular Expression Validator) merupakan cara terbaik untuk mem-validasi textfield misalnya nama, alamat email, no.telepon, dan informasi lain tentang user. Kita menggunakan regex untuk membatasi inputan, menerapkan format tertentu, dan memeriksa panjang karakter.

Contoh beberapa Format validation expression :
untuk alamat url :
http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

untuk Format alamat email :
\w+([-+.’]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

Validation expression lainnya, lihat disini

Substring
————
Fungsi substring mengembalikan bagian dari string mulai dari starting index karakter ke panjang karakter string yang didefinisikan secara spesifik. Penggunaan fungsi substring pada C# ada 2 cara, yaitu:

1. Substring(int startIndex) : menerima hanya sebuah parameter dengan tipe integer starting index dari posisi karakter dalam string.
2. Substring(int startIndex, int length) : menerima 2 parameter, pertama tipe integer untuk starting index posisi karakter dalam string dan parameter kedua yaitu tipe integer untuk panjang atau jumlah karakter yang ditampilkan pada string.

Contoh program menggunakan fungsi substring dapat dilihat disini

Empty, clear, nullable
—————————
utk mengeset textbox dengan karakter kosong dapat menggunakan :
txtTitle.Text = String.Empty;

untuk menghapus textbox agar kosong dapat menggunakan :
textBox.clear();

Untuk mengeset tipe data yang pada dasarnya tidak ada nilai null tapi ingin ditambah ada null dapat menggunakan :
Nullable<Int32>, Nullable<bool>

Iklan

File Global.asax

File Global.asax yang disebut juga sebagai file aplikasi dalam ASP.NET merupakan file optional (digunakan hanya saat dibutuhkan) yang berisi code untuk merespon event ataupun error di level aplikasi dan session. File ini bisa juga digunakan untuk keamanan aplikasi. Isi file Global.asax ini meliputi Application_Init, Application_Disposed, Application_Error, Application_Start, Application_End, Application_BeginRequest, Application_EndRequest, Session_Start, Session_End, dll.

File Global.asax diatur agar tiap HTTP request yang langsung(via URL) dapat ditolak secara otomatis, sehingga user eksternal tidak dapat men-download atau melihat isi Web. Framework halaman ASP.NET secara otomatis mengenali tiap perubahan yang dibuat ke file Global.asax. Framework me-reboot aplikasi, termasuk menutup semua session browser, membersihkan semua informasi, dan me-restart domain aplikasi.

Tiap aplikasi ASP.NET dapat berisi maksimal satu file global.asax. File ini berada dalam direktori root pada aplikasi ASP.NET.  Saat runtime, Global.asax di-parse dan di-compile kedalam sebuah class framework .NET yang di-generate secara dinamis dari class base HttpApplication. Proses compile pada file ini dilakukan saat pertama kali halaman aplikasi Web dikunjungi.

Jika menggunakan Visual Studio.NET untuk membuat proyek Web, maka akan ada code dibelakang fitur Global.asax ini.  Saat menggunakan compiler C#, code file berada pada Global.asax.cs.   Disini dapat dilihat contoh code pada Global.asax.

Cara menambahkan Global.asax : Application -> Add –> Component -> Global Application class

solution explorer

File Global.asax merupakan central untuk aplikasi ASP.NET. Ini menyediakan banyak event handler untuk menangani bermacam task pada aplikasi misalnya user authentication, application start up, dan menangani user session. Maka, file optional ini mampu membangun aplikasi ASP.NET yang handal.

Referensi :
http://articles.techrepublic.com
http://www.dotnetcurry.com
http://aspalliance.com

Overview Javascript

JavaScript adalah bahasa scripting (bahasa scripting adalah sebuah lightweight programming language) yang terdiri dari baris-baris code executable computer dan dirancang untuk menambah interaktif HTML pages. JavaScript biasanya embedded secara langsung pada HTML pages dan disebut juga interpreted language yang artinya bahwa scripts dijalankan tanpa di kompile terlebih dahulu.

Kemampuan Javascript :
* JavaScript dapat bereaksi terhadap events, artinya javaScript dapat di-set untuk dijalankan saat terjadi sesuatu, misalnya sebuah page telah selesai dipanggil atau saat seorang user meng-klik pada HTML element
* JavaScript dapat membaca dan menulis/mengubah isi dari HTML elements
* JavaScript dapat digunakan untuk mem-validasi form data sebelum di-submitted ke server, hal ini akan mengamankan server dari pemrosesan ekstra
* JavaScript dapat digunakan untuk mendeteksi browser pengunjung dan memanggil page lain yang secara specifik didesain untuk browser tersebut
* JavaScript dapat digunakan untuk membuat cookies(menyimpan dan memanggil informasi) di komputer pengunjung

Program JavaScript dituliskan pada file HTML (.html atau .htm) menggunakan tag dan output dari program JavaScript ditampilkan secara langsung seolah-oleh dimasukkan dalam HTML.

Contoh penulisan format javascript :

1

Untuk mempelajari cara penulisan javascript lainnya dapat dilihat di www.w3schools.com/js

Agar program JavaScript yang telah dibuat dapat bereaksi terhadap suatu event tertentu, maka digunakan event handler. Ada bermacam-macam Atribut event handler, antara lain :
– onClick : memberikan efek interaktif dengan user melalui Penekanan dengan tombol
– onLoad : memberitahukan user akan akibat dari tindakannya
– onMouseOver : mengatur apa yang akan terjadi saat mouse kita gerakkan ke atasnya
– onMouseOut : membuat gambar yang bisa berubah saat didekati mouse
– onSubmit : bekerja saat user mengklik tombol submit
– onSelect : bekerja saat user memilih (memblok) isi kotak
– onFocus : bekerja saat user terfokus pada sebuah item
– onBlur : kebalikan dari onFocus
– onkeyup : melakukan aksi ketika tombol mouse diangkat (moment setelah mengklik), jadi selama kita menekan tombol mouse aksi tidak akan dijalankan
– onkeydown : kebalikan dari onkeyup, jadi aksi dilakukan saat menekan tombol mouse, mirip dengan onclick
– onKeyPress : event yang terjadi saat user menekan atau menahan suatu kunci

Web Service & Distributed System

Web service merupakan sistem yang dirancang untuk dapat mendukung interaksi komunikasi antar mesin-mesin pada suatu jaringan dengan menggabungkan SOAP, XML, and HTTP. Dengan teknologi Web Service, maka memungkinkan kita untuk dapat menghubungkan berbagai jenis software yang memiliki platform dan sistem operasi yang berbeda. Jadi, kita tetap mendapatkan sebuah potongan informasi dari suatu website tanpa harus mengunjungi website tersebut.

Pada Web Services hanya tersedia fungsi-fungsi yang nantinya dapat digunakan oleh aplikasi lainnya, jadi kita dapat mengakses potongan informasi itu dengan meletakkan fungsi/method itu pada aplikasi kita. Aplikasi web service tidak mempunyai sebuah “User Interface” atau tampilan web pada umumnya. Web service hanya berupa class dan method dari sebuah fungsi dan mempunyai output dalam format XML. Web Service tersimpan di Web Server sehingga dapat diakses oleh berbagai bahasa pemrograman dengan lebih mudah baik dalam lingkungan LAN maupun Internet. Sistem Web Service ini diharapkan meningkatkan kolaborasi antar pemrogram dan perusahaan, yang memungkinkan sebuah fungsi di dalam Web Service dapat dipinjam oleh aplikasi lain tanpa perlu mengetahui detail pemrograman yang terdapat di dalamnya.

Web services pada dasarnya bekerja menggunakan HTTP and SOAP untuk membuat data tersedia di dalam Web.  SOAP dan HTTP mengizinkan user eksternal untuk masuk dan melakukan pemanggilan function secara remote tanpa proses registrasi dalam lingkungan internal terlebih dahulu seperti halnya aplikasi tersebut mengakses method lokal dan menggunakan format XML yang berbasis teks dalam melakukan pertukaran datanya.

Secara umum ada 5 aspek keamanan dasar yang perlu diperhatikan dalam mengimplementasikan sistem berbasis Web pada umumnya termasuk dalam hal ini adalah aplikasi Web Service, yaitu :
1. Authentication(mengidentifikasi Pengirim mupun penerima),
2. Authorization(menjamin bahwa requester yang telah berhasil melakukan otentikasi dapt meng-akses sumber daya yang ada sesuai dengan karakteristik akses (access control) yang disediakan)
3. Confidentiality(menjamin kerahasiaan (privacy) terhadap data/informasi yang dipertukarkan)
4. Data Integrity(komunikasi antara client dan server dilindungi dari adanya kemungkinan untuk merubah data oleh user/aplikasi yang tidak memiliki hak)
5. Non-Repudiation(pihak yang terlibat dalam transaksi (client & service provider) tidak dapat menyangkal terjadinya transaksi yang telah dilakukan)

Referensi :
1. http://krisosa.wordpress.com
2. http://huu132.buzzdsign.com
3. http://archive.devx.com
4. http://www.dotnet-friends.com

Kegunaan Stored Procedure

Untuk melakukan retrieving suatu data dalam table, kita bisa menggunakan stored procedure. Stored Procedure ini sebaiknya digunakan apabila database server terpisah secara fisik dengan aplikasi atau disebut aplikasi Multi Tier. Dengan mengggunakan stored procedure SQL tidak akan akan melakukan loading semua table yang ter-relasi, tetapi langsung melakukan filtering berdasarkan query yang kita maksud. Stored procedure menyimpan statement-statement SQL dalam sebuah berkas yang disimpan di database server, sehingga dari sisi performa eksekusi, utilitas jaringan, dan keamanan, stored procedure banyak dipakai sebagai solusi akses data.

Setiap kali Query Processing menjalankan query, gambaran prosesnya sbb:
1. Pengecekan Syntax
2. Pemilihan execution plan yang paling optimal
3. Eksekusi query

Query yang ada di SP sudah di-compile terlebih dahulu, jadi ada 1 step yang di-skip pada SP. Compile maksudnya adalah pemilihan mana execution plan yang paling optimal.

Keuntungan menggunakan Stored Procedure :
– Stored Procedure lebih fleksibel karena ada parameter didalamnya
– Proses dilakukan di Database Server sehingga lebih cepat, aplikasi cukup memanggil stored
procedure dan mengirim parameter yang diperlukan
– untuk membagi beban resource yang terpakai saat aplikasi di jalankan. Jika semua query dijalankan pada aplikasi/client (Front End) maka resource yang terpakai pada client tersebut akan besar, oleh karena itu perintah query tersebut dibuat pada stored procedure (eksekusi pada server)
– untuk mempermudah maintain aplikasi. Apabila ada proses query yang sama dan berulang, dengan stored procedure akan lebih simple dalam proses pembuatan aplikasi.
– Mendukung ANSI model terhadap database. Ansi model adalah sebuah model database yang memodelkan penglihatan user terhadap database menjadi 3 komponen yaitu user view, logical view dan fisikal view
– Stored procedure mencegah terjadinya SQL injection

Kekurangannya :
Apabila ingin mengganti Database Server, misalnya dari Oracle ke SQL
Server, porting Stored Procedurenya menyulitkan, antara PL SQL ke T-SQL. Berbeda jika embedded di Aplikasi, kita cukup mengganti Koneksinya karena Logicnya dilakukan di Aplikasi dan menggunakan SQL Standard.

Referensi :
prihastomo.files.wordpress.com/2008/04/view_or_sp.pdf
www.cert.or.id/~budi/courses/security/2006-2007/Report-Nial.doc

Berkenalan dengan SEO

SEO (Search Engine Optimization) merupakan sebuah metode / cara agar Search Engine selalu mengindex website kita diinternet agar setiap proses pencarian dengan keyword melalui search engine dapat ditampilkan pada halaman utama.

SEO juga tak kalah pentingnya dengan Content,bahkan dapat dikatakan SEO adalah proses yang sangat khusus dalam membangun sebuah website komersial yang berhasil, karena untuk mendatangkan pengunjung, meningkatkan traffic dan mendapatkan Page Ranking, sebuah website harus dapat ditemukan dalam mesin pencari utama seperti Google, Yahoo, MSN Live Search dll. Tak Kenal SEO maka Tak Terindex di Search Engine. Ini adalah tugas dan tantangan webmaster untuk mengoptimalkan sebuah website dengan cara memperbaiki struktur tag-tag HTML tertentu pada halaman web.

Pada kenyataannya bahwa hampir 90 % pengunjung-pengunjung baru menemukan sebuah website dari hasil Search Engine dan Search Directory dengan keyword tertentu, disini peran SEO sangat menentukan. Sebagai seorang internet marketer pemahaman tentang SEO merupakan salah satu skill yang dibutuhkan dalam memasarkan produk / jasa. Karena kebanyakan pengunjung dalam mencari info selalu menggunakan search engine dengan memanfaatkan kata kunci dengan harapan mendapatkan info yang relevan. Jadi untuk promosi website, SEO adalah cara yang efektif untuk meningkatkan Traffic yang nantinya akan memberikan banyak pengunjung dan dengan semakin banyaknya pengunjung maka diharapkan akan banyak penjualan yang terjadi melalui rekomendasi web kita.

Tujuan dari SEO adalah :
** Menaikkan rangking sebuah website agar selalu terindex pada search engine sehingga dapat di munculkan di halaman pertama search engine untuk keyword yang telah ditentukan
**  Mendatangkan trafik / pengunjung ke website kita dengan media Search Engine secara gratis
**  Mencari pengunjung yang targeted / Pengunjung yang kita harapkan untuk web kita
**  Membantu meningkatkan pencapaian target penjualan (Income / Omzet penjualan) melalui Rekomendasi webIncome / Omzet penjualan
**  Meminimalkan biaya pemasaran online

Untuk mengaplikasikan SEO, pada dasarnya proses SEO ada dua cara yaitu Internal SEO dan External SEO yang berbeda dalam melakukan optimizasinya, apakah dalam page pada situs kita atau dengan bantuan situs lain.

Internal SEO, yang perlu dipehatikan:
#  Title Tag : Judul halaman yang biasanya pertama kali di index oleh Search Engine jadi biasakan membuat judul yang relevan dengan keyword yang paling banyak dicari pengunjung.
# Keyword Meta Tag : Bagian dari kata Meta Tag yang berfungsi agar keyword dalam suatu halaman agar dapat dikenali robot search engine.
# Header Tag : Titel dan sub titel yang biasanya berada pada isi halaman / content dari artikel yang ditulis.
# Alt Tag : Keterangan tambahan untuk sebuah link atau file image
# Deskripsi : Ringkasan dari sebuah halaman yang tampil pada list search engine yang memungkinkan menarik perhatian bagi pengguna search engine
# Sitemap : Peta situs yang biasanya berupa script xml yang diletakkan pada home directory yang berguna untuk memudahkan spider dari Search Engine untuk menelusuri url-url yang ada dalam situs agar dapat mengupdate perubahan-perubahan yang terjadi dalam situs
# Content : Isi dari artikel yang ditulis usahakan agar banyak mengandung keyword tetapi memperhatikan penyusunan kalimat agar pengunjung mudah mengerti maksudnya.

External SEO dengan membangun link pada situs-situs luar :
*  Web Submission : Gunakan layanan Web Submission pada situs-situs yang mempunyai page rank 3 atau 4 keatas untuk mendafatarkan url-mu.
* Link Exchange: Pertukaran Link dengan teman-teman Blog. Cara ini juga punya pengaruh terhadap Page Rank.
* Submit Directoy : Daftarkan situs anda ke direktori online yang profesional dengan begitu link dan jaringan situs semakin banyak karena search engine biasanya mendapatkan hasil pencarian dari web directory yang dikelola profesional.
* Tinggalkan jejak dalam forum-forum yang aktif diikuti dengan menambahakan url-mu diakhir komentar.
* dll art metris ( dan lain-lain artikel metris )

Referensi :
http://metris-community.com/tips-internal-eksternal-seo
http://metris-community.com/definisi-seo/
http://www.seo-id.com/tujuan-fungsi-seo.html

WinForm & Smart Client

Saat ini saya sedang mempelajari sedikit mengenai WinForm & Smart Client. Berikut informasi yang bisa saya tangkap. Maaf jika ada yang salah, mohon dikoreksi.

Aplikasi berbasis Windows adalah aplikasi yang dikembangkan dibawah Sistem Operasi Windows, tidak termasuk aplikasi yang dikembangkan dibawah Sistem Operasi lain seperti Linux & Unix. Ada 2 macam aplikasi berbasis Windows di .net yaitu WinForm & Web application.

Salah satu teknologi Desktop Client Windows yang berbasis .NET dikenal dengan teknologi WinForm (Windows Form). Windows Form adalah perkembangan desktop client berbasis Win32 yang sering kita pakai pada saat ini.  Basis dari Windows Form adalah suatu class form dari namespace System.Windows.Form. yang merupakan class base dari teknologi Windows Form. Berdasar class ini kita dapat menaruh berbagai macam control, component hingga jenis form yang hendak ditampilkan (SDI atau MDI).

Pada umumnya aplikasi di bagi dalam 3 layer:
– Presentation / User Interface Layer
– Business Logic / Domain Layer
– Data Access Layer

WinForm terdapat pada layer Presentation. Tidak ada yang dilakukan kecuali ‘takes & validates’ inputan user dan juga menampilkan result. Tidak boleh ada business logic maupun akses ke database.

WinForm merupakan cara terbaik untuk membangun aplikasi smart client saat ini. Aplikasi Smart Client memiliki sebuah User Interface yang kaya yang menampilkan informasi yang datang dari sumber yang bermacam-macam. Untuk end user, data terlihat seperti datang dari sebuah sistem back-end. Tiap ada perubahan dalam aplikasi, sebuah perubahan tersebut akan tercermin ke semua client saat itu juga. Ini disebut Smart Client.

Proces yang terjadi saat user membuka sebuah aplikasi Smart Client :
1. User membuka aplikasi
2. Aplikasi merujuk pada assembly hosted dalam sebuah Web Server
3. Framework .NET memeriksa apakah assembly yang terakhir di download adalah benar versi terakhir
4. Jika tidak me-download versi terakhir dari server, unduh assembly secara lokal dan buka aplikasi

Dengan cara ini, tiap ada perubahan pada aplikasi dapat ditangani secara mudah pada satu lokasi, sehingga pengembangan aplikasi menjadi lebih mudah.

Karakteristik dari Smart Client, antara lain :
1. Mendukung kerja offline – smart clients dapat bekerja bahkan saat tidak terhubung dengan Internet. Saat client terbuhung, aplikasi Smart Client mampu meningkatkan performansi dan kegunaaannya dengan mengambil data dan mengaturnya dengan cara yang cerdas.
2. Aplikasi Smart client dapat dikembangkan dan diperbaharui secara real time di atas jaringan dari sebuah server pusat.
3. Aplikasi Smart client mendukung platform dan bahasa yang berbeda-beda karena dibangun dalam Web services.
4. Aplikasi Smart client dapat berjalan hampir di semua device yang dapat melakukan koneksi ke Internet, termasuk desktops, workstations, notebook, tablet PCs, PDA, dan mobile phones.