Ini adalah cerita fiktif yang bernuasa teknologi. Cerita ini
merupakan cerita pertama .Sebelum masuk ke cerita, mungkin diperkenalkan
terlebih dulu tokoh penting yaitu Ki Mantab (KM) adalah guru spiritual
yang bisa dihubungin melalui jarak jauh dan Bejo (BJ) adalah anak
mahasiswa yang kuliah di salah satu kampus di Jawa.
BJ
Selamat malam Ki Mantab
KM
Selamat malam anakku, bagaimana keadaan kuliahmu hari ini?
BJ
Kuliahku baik-baik aja tapi ada siang ada keramaian dikampus yaitu
ada seminar. Saya sendiri tidak mengikuti seminar tersebut cuman
waktu dikelas banyak teman-teman berdiskusi tentang Dotnet
(temanku menulisnya .NET). Ki manteb tahu apa itu .NET ?
KM
.NET itu merupakan suatu framework software yang mirip dengan apa
yang kau pelajari dikampus yaitu Java dimana .NET juga mempunyai
virtual machine yang merubah code menjadi Intermediate Language
(IL) dan jika kita eksekusi maka IL code ini diubah ke machine code.
BJ
Sejak kapan .NET muncul?
KM
Ki mantab tidak tahu persisnya tetapi teknologi .NET pertama kali
diperkenalkan oleh Bill Gate , dia adalah CEO dari Microsoft yaitu
perusahan yang membuat .NET ini , pada 20 juni 2000 ketika acara
Forum 2000 dimana Bill Gate menjelaskan visi dari teknologi .NET
BJ
Kalau saya memakai .NET, Operating System apa yang harus dipakai?
KM
Runtime .NET hanya bisa running di OS Windows 98/ME, NT, 2000, XP,
2003 dan OS generasi selanjutnya.
Khsusus untuk ASP.NET
diinstall IIS dan jika OS tidak mempunya IIS seperti XP Home
edition maka bisa diinstall Cassini Web Server, ini dapat didownload di
www.asp.net
Pada awalnya .NET memang tidak dirancang untuk OS Linux tetapi
para komunitas .NET telah berhasil membuat tiruan framework .NET
yang berjalan di OS Linux yaitu project Mono, framework Mono dapat
didownload di www.mono-project. com
BJ
Ki Mantab, kenapa ini disebut .NET ?
KM
Hmm..anakku, ki mantab juga tidak tahu kenapa disebut .NET, kok
tidak disebut .NOT. Mungkin bisa nanya ke Mr. Bill Gate
BJ
Tool apa yang saya dapat gunakan untuk membuat aplikasi .NET ?
KM
Anakku, banyak tool yang dapat digunakan untuk membuat aplikasi
.NET. Berikut ini Ki mantab sebutkan mulai dari tool yang gratis
hingga commercial
* .NET Framework SDK, ini adalah SDK framework .NET,
gratis dan juga sudah disediakan command-line compiler untuk
C++, C#, VB.NET
mendukung pembuatan aplikasi .NET. SDK ini dapat didownload di
http://msdn. microsoft. com/netframework
* ASP.NET
untuk membuat aplikasi ASP.NET
telah disediakan mini web server untuk OS yang tidak mempunyai web
server seperti OS Windows XP Home Edition. Tool ini dapat didownload
di www.asp.net
* SharpDevelop, tool gratis yang dikembangkan oleh
komunitas .NET yang dapat digunakan untuk membuat aplikasi
.NET yang dulu hanya untuk bahasa C# tapi sekarang sudah
dapat membuat aplikasi VB.NET
dilengkapi dengan N-unit untuk testing dan semua ini dapat
didownload di http://www.icsharpc ode.net/OpenSour ce/SD/default. asp
* Visual Studio.NET , tool ini tidak gratis alias
komersial yang dibuat oleh Microsoft. Banyak kelebihan yang
didapat ketika memakai tool ini untuk membuat aplikasi .NET.
Untuk informasi detail nya: http://msdn. microsoft. com
* C# Builder, tool ini juga komersial yang dibuat oleh
Borland. Tool ini mempunyai kelebihan untuk mengintegrasikan
code-code Delphi dan java kedalam C#. Untuk informasi
detailnya http://www.borland. com
* Dan banyak lagi tool yang lainnya...
Oleh karena itu tidak ada alasan bahwa belajar.NET susah karena
tool nya komersial. Banyak yang juga yang gratisan
BJ
Kalau saran Ki mantab bagaimana?
KM
Anakku, ini pertanyaan yang susah. Semua akan kembali ke
masing-masing style dari orang yang membuat applikasi .NET. Baik
gratisan maupun komersial mempunyai kelebihan masing-masing.
Kalau mempunyai uang banyak, Ki mantab menyarankan untuk membeli
tool komersial karena kelebihan fitur yang disediakan yang mana
dapat menurunkan development time. Disamping itu, dukungan technical
support dari pihak pembuat tool tersebut juga sangat berguna ketika masa
development.
BJ
Balik lag ke topik .NET, mungkin Ki mantab bisa menjelaskan detail
dari .NET terutama dibagian Framework nya.
KM
.NET itu hadir sebagai jawaban dari permasalahan persistance API.
Kita ketahui bersama sebelum .NET, API dimasing-masing OS itu
kadangkala nya berbeda. Nah, dengan hadir nya .NET diharapkan
masalah Gap API antar OS dapat diselesaikan. Sebagai contoh
menampilkan MessageBox
HWND hwndMain = CreateWindowEx(
0, "MainWClass" , "Main Window",
WS_OVERLAPPEDWINDOW | WS_HSCROLL | WS_VSCROLL,
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
(HWND)NULL, (HMENU)NULL, hInstance, NULL);
ShowWindow(hwndMain , SW_SHOWDEFAULT) ;
UpdateWindow( hwndMain) ;
Parameter CreateWindowEx, kadangkalanya tidak ada di Windows
98/2000 dibandingkan OS Windows 2003. Dengan .NET dapat
menyederhanakan code diatas tanpa pusing apakah pakai Windows
98/2000 ataupun 2003
Form form = new Form();
form.Text = "Main Window";
form.Show();
BJ
Terus mengenai Frameworknya bagaimana?
KM
.NET Framework sendiri, Ki mantab bisa gambar seperti ini
Framework .NET terdiri dari
* Common Language Runtime
* Base Class Library
* Library .NET
* Common Language Specification
BJ
Oh...mungkin Ki mantab bisa menjelaskan dari bawah keatas, mungkin
dimulai dengan apakah itu Common Language Runtime?
KM
CLR (Common Language Runtime) bisa dikatakan sebagai jembatan
antara framework .NET dengan OS. CLR ini yang bertanggun jawab
untuk beberapa urusan seperti
* Manajemen memory
* Manjemen object life yang telah dibuat oleh code .NET
* Manajemen threading
* Interaksi dengan OS dalam level machine code
* Mengubah dari code IL menjadi machine code
Ki mantab bisa gambarkan diagram dari CLR seperti ini
BJ
Ki mantab, bagaimana peranan CLR mulai dari code yang kemudian di
eksekusi?
KM
CLR merupakan core dari framework .NET, proses eksekusi/kompilasi
code .NET melibatkan CLR bisa dilihat pada gambar dibawah ini
* Mula-mula code dicompile menjadi IL+Meta Data
* Didalam Meta data berisi informasi tentang lokasi file,
library yang digunakan ..dan sebagainya
* Ketika code ini dieksekusi maka JIT yang dibantu CLR mengubah
code IL menjadi Machine code
BJ
Oh begitu ya..terus bagaimana bagian yang berwarna ungu dari
framework .NET?
KM
Yang berwarna ungu merupakan kumpulan kelas-kelas/ library yang
dapat digunakan oleh aplikasi-aplikasi .NET.Library tersebut
seperti tergambar dibawah ini
Disini library .NET sangatlah banyak sekali sehingga saran Ki
mantab tidak perlu dihafal semua library. Semakin banyak membuat
aplikasi .NET semakin lama makin hafal sendiri
BJ
Terus bagaimana peranan Common Language Specification?
KM
Common Language Specification (CLS) merupakan jembatan antara
bahasa .NET dengan bahasa Framework sehingga memungkinkan .NET dapat
dicoding dengan berbagai bahasa pemrograman seperti C++, C#, VB, J#,
Cobol...
BJ
Bagaimana cara memilih bahasa pemrograman .NET ?
KM
Anakku, .NET menawarkan banyak pilihan bahasa yang dapat digunakan
untuk membuat aplikasi .NET. Semua akan tergantung dari style
masing-masing orang. Jika dulu pernah coding C/C++/Java maka akan lebih
enak menggunakan bahasa C# sebagai bahasa .NET tetapi mereka yang
mempunyai background di VB maka akan sangat bagus untuk menggunakan
VB.NET
BJ
Saya mempunyai bakground bahasa pemrograman bahasa java, bagaimana
strateginya untuk belajar .NET?
KM
Kalau mempunyai background java, Ki mantab menyarankan untuk
menggunakan C# karena baik java maupun C# mempunyai kemiripan sintak dan
style
BJ
Bagaimana teman-teman saya yang mempunyai background di VB?
KM
Untuk yang mempunyai background VB, Ki mantab menyarankan untuk
membuang jauh-jauh VB nya,cukup ambil sedikit sintak dan kemudian fokus
ke VB.NET
BJ
Ah, kenapa mesti dibuang jauh-jauh VB ketika belajar VB.NET
KM
Ya, anakku..memang harus dibuang jauh-jauh VB nya ketika belajar
VB.NET
yang baru pada .NET dimana sangat berbeda di VB6 terutama
paradigma OOP. Di .NET semua harus support OO sehingga yang VB6
dulu gak bisa OOP maka ketika di .NET harus support OOP.
BJ
Ki mantab, tadi sore saya sudah mencoba membuat aplikasi .NET
dengan menggunakan tool Visual Studio .NET 2003 tetapi
teman-temanku bilang sudah muncul Visual Studio 2005 beta 2. Apakah saya
menunda belajar .NET nya sampai muncul Visual Studio 2005
KM
Anakku, Ki mantab mengingatkan bahwa .NET itu tidak sama dengan
Visual Studio. Visual Studio merupakan salah satu tool untuk
membuat aplikasi .NET. Jadi sebaiknya fokus ke bahasa .NET. Kalau kita
hanya fokus ke tool misalkan sekarang pakai tool Visual Studio 2003
kemudian muncul Visual Studio 2005, belum belajar tool Visual Studio
2005 nanti muncul Visual Studio 2006...padahal esensialnya bukan
di tool.
Ki mantab takut ketika tidak mempunyai tool Visual Studio, kita
tidak bisa coding .NET...itu kesalahan besar..banyak cara dan tool
untuk membuat aplikasi .NET jadi fokus ke bahasa .NET dan solusi.
BJ
Alangkah enaknya kalau saya belajar .NET secara bersama-sama tidak
sendirian. Adakah solusinya?
KM
Coba bergabung ke komunitas .NET Indonesia (INDC)
www.netindonesia. net
juga sudah disediakan milis dotnet. Cara mendaftarnya cukup dengan
kirim email kosong ke dotnet-subscribe@ netindonesia. net
http://groups. yahoo.com/ group/csharp_ indo <../csharp_indo>
BJ
Adakah resource mengenai .NET yang berbahasa indonesia?
KM
Anakku, kamu bisa mengunjungi website komunitas .NET (INDC)
www.netindonesia. net
otak. Project otak merupakan project komunitas yang bertujuan
untuk menyediakan resource tentang teknologi .NET dalam bentuk
e-book gratis berbahasa indonesia. Portal project otak :
http://otak. csharpindonesia. net
www.project- otak.org
development)
Author Unknown
Kami perusahaan outsourcing IT membutuhkan tenaga IT sebanyak 60 orang untuk ditempatkan di Jabotabek dengan kualifikasi sebagai berikut:
ReplyDeleteDeveloper (Code : Dev)
1 to 2 years of actual delivery experience on a software development project (Desktop & Web applications)
Strong in logic and algorithm
Good knowledge of Object Oriented Programming (C#, VB.NET, ASP.NET + AJAX)
Good knowledge of Object Oriented Analysis/Design
Good knowledge and skill of RDBMS (knowledge in SQL Server is an advantage)
Senior Developer (Code : Sr.Dev1)
At least 2 years experience in full life-cycle development of large-scale applications (object-oriented and/or distributed component based, especially .NET)
Strong in logic and algorithm
Excellent knowledge of Object Oriented Programming (C#, VB.NET, ASP.NET + AJAX)
Experience with Object Oriented Analysis/Design & some knowledge and skills on Software Architecture
Good knowledge and skill of RDBMS (experience in SQL Server is a must)
Knowledge of Software Development Life Cycle Methodologies (such as MSF, RUP and Agile Methodologies)
Experience in a mentoring/coaching role
Senior Developer (Code : Sr.Dev2)
At least 2 years experience in full life-cycle development of large-scale applications (object-oriented and/or distributed component based, especially .NET)
Strong in logic and algorithm
Excellent knowledge of Object Oriented Programming (C#, VB.NET, ASP.NET ,VB.NET,Pseudo OOP,ORACLE,Office Windows Component,Crystal Report,VBScript,JAvaSCript)
Experience with Object Oriented Analysis/Design & some knowledge and skills on Software Architecture
Good knowledge and skill of RDBMS (experience in SQL Server is a must)
Knowledge of Software Development Life Cycle Methodologies (such as MSF, RUP and Agile Methodologies)
Experience in a mentoring/coaching role
Quality Assurance/Tester (Code : QA)
1-2 years experience as QA/Tester
Able to create Test Plan & Scenario based on Use Case Diagram/Functional Specification
Able to perform Functional Testing
Familiar with Load Testing/Stress Testing and its tools
Familiar with Performance Testing/Profiling and its tools
Able to make test scripts
Knows .NET Technology
Senior Quality Assurance/Tester (Code : SQA)
At least 2 years experience as QA/Tester or 1 year as Senior QA/Tester
Able to create Test Plan & Scenario based on Use Case Diagram/Functional Specification
Experienced and knowledgeable with all types of software testing (unit, functional, integration, load and stress tests)
Experienced in using testing tools (VSTS usage is a plus)
Proficient in code review
Able to make test scripts
Skilled in C#, VB.NET, ASP.NET and SQL Server 2000/2005
A team player with good leadership skills
Junior System Analyst/Senior System Analyst (Code : JSA)
1-2 years experience as System Analyst
Good analytical skills
Familiar with Software Development Life Cycle (SDLC)
Able to create Design Documents (Functional Specification Diagram, ERD)
Familiar with UML (Use Case Diagram, Sequence Diagram, Activity Diagram)
Good knowledge in database design
Familiar with SQL Server 2000/2005
Knows .NET Technology
Team Lead (Code : TL)
1-2 years experience as Team Leadear
Good analytical skills and organization
Familiar with Software Development Life Cycle (SDLC)
Able to create Design Documents (Functional Specification Diagram,ERD)
Familiar with SQL Server 2000/2005
Knows .NET Technology
Skilled in C#, VB.NET, ASP.NET and SQL Server 2000/2005
Knowledge of Software Development Life Cycle Methodologies (such as MSF, RUP and Agile Methodologies)
Jika anda berminat dan memiliki kualifikasi diatas dapat mengirimkan aplikasi berupa CV dan lamaran lengkap (*.doc) dan cantumkan posisi yang dilamar ke hrd_muthiacharissa@yahoo.com.Hanya kandidat terpilih yang akan dihubungi selanjutnya.