Wednesday, 8 October 2014

Apa itu MVC??

A little intro on MVC 

MVC ialah singkatan untuk Model, View dan Controller

Kenapa dinamakan MVC?? 
MVC ialah satu bentuk penyusunan coding (architechtural pattern) yang digunakan untuk memisahkan  applikasi simpanan (storing), paparan (displaying) dan kemas kini (update).

Sebelum masuk lebih lanjut, jom kite kenal dulu apa itu Model, View dan Controller.

Model - menguruskan data yang trdapat dalam application domain, memberi respond kepada request yang datang daripada View dan memberi respond kepada perubahan seperti yang diperlukan daripada Controller.

View - menguruskan segala bentuk paparan (View), lebih kepada interface.

Controller - menguruskan segala input (mouse input, keyborad input), memberitahu kepada  Model tentang segala input yang diberikan oleh user untuk dilakukan sebarang perubahan.

Apabila kita create satu web application yang menggunakan MVC, secara automatik visual studio akan create satu folder untuk kita yang mengandungi folder-folder yang macam ni..
 Model, View dan controller masing-masing ada folder sendiri.
Jika ada yang pernah create web application, pasti korang biasa dengan file yang format xxx.aspx, xxx.aspx.cs.

Kalu dalam web application biasa (ASP.NET webform), dia letakkan sekali file yang format aspx dan aspx.cs

Dalam MVC (ASP.NET MVC) ini, 

file yang format .aspx tu dia letak dalam folder view, format dia xxxx.cshtml
antara format yang ada dalam folder view, 
  • .htm or .html
  • .asp
  • .aspx
  • .cshtml
  • .vbhtml 
 
file yang format .aspx.cs tu pulak dia letak dalam folder controller, format dia xxxxController.cs



Dalam MVC pattern ni, dia ada 2 jenis model iaitu passive model & active model.

Figure 1 Passive model
figure 2 Active model




Passive modelActive model
Controller modified model then inform viewModel change state without influence by controller
Model no need to report changes to view (independent)Model need to notify view about any changes (dependent)
No need to use observer interfaceNeed to use observer interface


MVC digunakan untuk mengelak indepency bagi setiap view dengan model.

Jika diperhatikan, dalam active model, view dengan model masih dependent antara satu sama lain.

Untuk mengelakkan dari kebergantungan model terhadap view, observer interface diperkenalkan untuk active model SAHAJA!!

Passive model tak perlu observer interface sebab model dengan view  memang independant.

Sekian sahaja untuk kali ini, nanti kita share lagi, harap ada input untuk korang bagi entry kali ini..

Assalam..





Friday, 26 September 2014

Apa itu SYSTEM ENGINEER???

SYSTEM ENGINEER tu ape ekk??? 

Soalan yang paling blurr sekali bile nak jawab, ialah bila orang tanya, kerja apa?
Sebab apa jadi blurr? sebab next soalan mesti, apa tu? kerja macam mana tu?

System Engineer, profession kejuruteraan yang jarang dilihat sebagai satu peluang pekerjaan. Kenapa?
sebab orang tak nampak keterampilan dia di dalam kehidupan seharian. Tapi kalu sebut Engineer, orang nampak satu je, engineer yang duk bawa pelan lukisan, melawat site pembinaan, pakai safety helmet dengan kemeja sambil buka pelan lukisan and tunjuk-tunjuk bangunan yang sedang dibina. hahaha tu memang apa yang ditunjukkan kepada kita melalui rancangan television.

 So apa Sytem Engineer ni?


System engineer ialah pekerjaan yang melibatkan banyak sektor yang lain contohnya, bahagian sumber manusia, pengurusan projek, bahagian sales dan marketing, dan sebagainya.

Apa peranan system engineer? 


Peranan system engineer sama dengan peranan engineer yang lain iaitu memudahkan urusan pekerjaan orang lain.

Macam mana?? 


Ok, contoh dalam pengurusan sumber manusia (HR), macam mana nak memudahkan kerja diowg? nak lihat file seseorang pekerja, kene cari file pekerja tu dalam almari, ok kalu die susun dalam alphabet senang la sikit kan, da jumpe alphabet die, selak satu satu untuk tengok nama staff tu, nama pulak sama, kena tengok nama bapak pulak, tu baru sorang, kalu ramai pekerja dia nak check, tak ke gila orang HR tu hahaha

Ok, peranan system engineer ni (peranan kecil) ialah macam mana nak create satu system yang bilamana bahagian sumber manusia ni nak tengok file seseorang pekerja tu, dia just taip nama penuh staff tu dalam komputer dan boom!! keluar semua maklumat staff tu.

So system engineer ni dia bergelumang dengan proses kerja orang lain, workflow, risk management, kena fikir macam mana nak optimize kan system yang sedia ad dan kadang-kadang dia jugak terlibat dengan technical person..

System engineer ialah satu profession yang menarik dan patut mendapat tempat di hati para pelajar yang bakal memasuki alam universiti dan seterusnya menjadikan ia sebagai satu kerjaya.

Sekian.

Tuesday, 2 September 2014

How to allow other machines in the same network to access our site

Assalamualaikum..

Hari ini aku nak share tentang 1 lagi masalah and solution yang kita boleh try.

Ok, bila kita dah siap create satu web or system, then kita nak other machine connect to the system (pc kita act as server to the system). masalah dia adalah other machine tu tak dapat connect dengan pc kita.

Oryte ni solution yang aku jumpa la, buat sape2 yang still tak boleh solve, harap entry ni membantu.

Baik, step dia mudah saje.

1. go to window firewall > Advance setting.
2. click kat Inbound Rule (ada kat belah kiri atas) > Action (ada kat belah kanan) > New Rule.
3. click kat Predifined (radio button) > World Wide Web Services (HTTP) (dropdown list) > next.
4. thick kat box 'World Wide Web (HTTP)' (checkbox) > next.
5. untuk setiap step seterusnya,click 'allow the connection' dan next je sampai habis.

Make sure nombor port tu same dengan no port yang korang assign kat IIS. 

So korang bole la try gune pc lain and try to access kepada system yang korang dah deploy kat IIS.

Harap membantu kepada yang still mencari solution tu.

Adios!! Selamat mencuba!!
   

Friday, 22 August 2014

dah Logout tapi bile click 'Back' button kat browser,die load page yang sebelum tu jugak.

Assalamualaikum..

Hari ni aku nak share 1 penyelesaian tentang masalah bile kite logout tapi bile click button 'Back', die load balik page yang sebelum tu..kalau2 ada yang still mencari jalan penyelesaian kan, so kite share ilmu ni..

Ok..ini aku wat dalam c#.net

Kita akan ada 2 page iaitu Login page dengan Home page betul? Kat Login page ada button Log In and kat Home page ada button Log Out.

Ok.. First, kat page Login tu, lepas kita open connection dengan database kita, kita start session kita, ok ni coding dia..

con.Open();
            SqlCommand cmd = new SqlCommand("SELECT * FROM staff WHERE Id='" + TBID.Text + "' AND Password='" + TBPassword.Text + "'", con);
            SqlDataReader read;
            read = cmd.ExecuteReader();
            int count = 0;
            while (read.Read())
            {
                count = count + 1;
            }
            con.Close();

            if (count == 1)
            {
                Session["User"] = TBID.Text;
                Response.Redirect("Home.aspx");
            }


"User" tu kita tak perlu declare, just letak je pape variable yang kita nak. So kat sini, maksudnye kita dah set "User" tu sebagai session kita. Thats all untuk Login page, now kita pegi ke Home page plak.

Aku bagi coding dulu, aku explain kemudian ye..

protected void Page_Load(object sender, EventArgs e)
    {

        CurrentUser.Text = (string)(Session["User"]);
        if(!IsPostBack)
        {
            if (
CurrentUser.Text  == "" )
            {
                Response.Redirect("LogIn.aspx");
            }
        }
    }
    protected void LinkButton1_Click(object sender, EventArgs e)
    {

        Session.Clear();
        Response.Redirect("LogIn.aspx");
    }


Ok..Bila page kita start load je,kita pass nilai session tadi kat satu label. Kalu label tu keluar nilai sama macam apa yang kita log in tadi, maksudnya session kita berjaya.

LinkButton1 tu adalah button logout kita.

So kita apa kita kena buat adalah CLEAR kan session, coding dia Session.Clear()

Bila kita click LogOut button tu, dia akan logout dari home page dan kalu kita click button 'Back' dia xkan load balik dah page yang sebelum tu...

Selamat mencuba geng...

Friday, 15 August 2014

Picture fail to upload when publish website di IIS

Picture tak load time publish website di IIS

Assalamualaikum...

Hari ni just nak share,kenapa bila kita publish kita punya website, tapi gambar tak keluar, gambar tu tak load time kita publish sedangkan time develop tu, dia elok je keluar.

Ok, ada beberapa kemungkinan yang kita boleh check.

First, kesemua file web kita tu kena letak dalam directory wwwroot.  

Contoh : C:\inetpub\wwwroot\EETSB2\Images\kelapaLaut.png

Second, check gambar yang kita pakai tu ada ke tidak dlm file directory yang kita 'point'kan tu.

( kalu kita copy directory properties dari gambar tu n paste kat coding kita, dia akan keluar palang '\' ni, palang ni pun punca jugak gambar tu x keluar sebab format dalam coding, palang dia macam nie '/',  )

Kalu gambar tu ada dalam file yang kita 'point'kan tu, tapi gambar still tak keluar, troubleshoot lagi.

Third, check coding directory gambar tu, selalu time kita develop, coding dia akan kluar macam ni
( contoh : http://localhost:57354/SF62/Images/bg2.png ), bila kita deploy di IIS kita kena 'set'kan apa port yang kita nak pakai dan kita selalu lupa untuk ubah nombor port tu kat coding kita, sebab tu gambar kita tak keluar bila kita launch web kita.

So check port number tu, same ke x? Port number yang kita set kat IIS tu, ganti dengan nombor '57354' ( untuk contoh yang diberi ), then try launch blek, hopefully gambar korang akan keluar lepas tu.

Harap membantu.. :-)
All the best !!