ตอน 33 การเขียนโปรแกรมบนเว็บด้วยภาษา C#

ไปหน้าแรก | สารบัญ | Laploy.comระเบียนบทความ | บทความจากลาภลอย

เว็บไซต์นี้เป็นตัวอย่างเนื้อหาบางตอนในหนังสือ "เรียนรู้ด้วยตนเอง OOP C# ASP.NET" ครอบคลุม บทที่ 1 ถึงบทที่ 6 (ในหนังสือมี 21 บท) เนื้อหาใน Blog อาจอาจแตกต่างจากในหนังสือเพราะเป็นเนื้อหาที่ยังไม่ได้ตรวจแก้ขัดเกลา (edit)

กดที่นี่เพื่อดูรายละเอียดเนื้อหาในแต่ละบท

กดที่นี่เพื่อไปยังเว็บบอร์ด ถาม-ตอบ 

 

มันยากที่จะอ่านหนังสือสอนเล่นกลโดยไม่พลิกดูที่ปกบ่อยๆ เพื่อให้มั่นใจว่ามันไม่ใช่หนังสือสอนการเขียนโปรแกรม

Bruce Tognazzini

 

บทที่ 6 การเขียนโปรแกรมบนเว็บด้วยภาษา C#

ก่อนหน้าที่จะมี ASP.NET การสร้าง desktop application (โปรแกรมที่ทำงานในเครื่องคอมพิวเตอร์ส่วนบุคคลต่อไปจะเรียก Win app) กับการสร้าง web application (โปรแกรมที่ทำงานร่วมกับ sever ในอินเตอร์เน็ต โดยใช้ web browser เป็นตัว client ต่อไปจะเรียก Web app) เป็นงานที่แตกต่างกันมาก จนกระทั่ง ASP.NET ทำให้ความแตกต่างนี้แคบลง

ในบทนี้ท่านจะได้เรียนหัวข้อต่างๆ ที่สำคัญสำหรับการเขียนโปรแกรมในเว็บด้วยภาษา C# ซึ่งมีหัวข้อหลักดังนี้

  • การเขียน Web app
  • กายวิภาคของของ ASP.NET
  • สิ่งที่ต้องใช้เพื่อการพัฒนา ASP.NET
  • โครงสร้างเว็บไซต์ ASP.NET
  • ไฟล์ชนิดต่างๆ ใน ASP.NET
  • การทำงานของหน้าเว็บแบบ ASP.NET
  • Postback และ Round trip
  • Server Controls
  • Event อันเกิดจาก Page และ Server control
  • event ที่มีความถี่สูง
  • สถาปัตยกรรมของ ASP.NET
  • System.Web.UI Namespace
  • ASP.NET Page Class
  • Code-Behind
  • Web User Control
  • CSS กับ Web server control
  • Global.asax
  • Web.config
  • เว็บไซต์ catalog สินค้า

 

การเขียน Web app

ในปี ค.ศ. 1988 บริษัทไมโครซอฟท์นำ OS/2 มาปรับปรุงใหม่และตั้งชื่อว่า Windows NT พอถึงปี 1995 Windows NT ก็ถูกพัฒนามาจนถึงเวอร์ชัน 3.51 และในเวอร์ชันนี้ไมโครซอฟท์ได้แนะนำสิ่งใหม่ที่เรียกว่า Internet Information Services (IIS) เป็นชุดของ service เกี่ยวกับอินเตอร์เน็ต ปัจจุบันนี้ IIS (ร่วมกับ Windows NT ที่บัดนี้กลายเป็น Windows Server 2005) ซึ่งกลายเป็น web server ที่ได้รับความนิยมมากที่สุดเป็นที่สองรองจาก Apache HTTP server และความแตกต่างเริ่มลดลงเรื่อยๆ (คือความนิยมใน IIS เพิ่มขึ้น ขณะที่ความนิยมใน Apache ลดลง อ้างจาก Netcraft)

IIS ได้รับการปรับปรุงมาเรื่อย (ปัจจุบันเป็น version 7.0) แต่สิ่งสำคัญเกิดขึ้นในปี 1996 เมื่อ IIS ออกเป็น version 3.0 เพราะมันได้ผนวกตัว add-on ใหม่ชื่อ ASP 1.0 เข้ามาด้วย ASP หรือ Active Server Pages คือเทคโนโลยีที่ทำให้ server สามารถสร้างหน้าเว็บได้อย่างมีพลวัต ทำให้การเขียนโปรแกรมด้วย server script (เช่น vbscript) สามารถเปลี่ยนแปลงหน้าเว็บได้ ทำให้สามารถสร้าง web app ได้ง่ายขึ้น

ปัจจุบัน ASP ได้กลายเป็น ASP.NET โดยกลายเป็นส่วนหนึ่งของเทคโนโลยี .NET Framework (ออก version 2.0 ในเดือนธันวาคม ค.ศ. 2005) ASP.NET มีความก้าวหน้ากว่า ASP มาก มันทำให้นักเขียนโค้ดสามารถเขียนโปรแกรมด้วยภาษา .NET กับหน้าเว็บได้เลย โดยจะเขียนแทรกเข้าไปในหน้าเว็บโดยตรง (inline code) หรือจะเขียนแยกส่วนโค้ดไว้เป็นอีกไฟล์ต่างหากก็ได้ (code behind) ในหนังสือเล่มนี้จะใช้แบบ code-behind

 

รูปแบบหรือ model การเขียนโปรแกรมใน .NET Framework มีสามแบบคือ WinForm ซึ่งเป็นการสร้าง desktop application WebForm เป็นการสร้าง Web application และ Web Service เป็นการสร้างโปรแกรมที่ทำงานในคอมพิวเตอร์หลายๆ เครื่องในเครือข่าย หนังสือเล่มนี้มีเฉพาะแบบที่สองคือ WebForm

 

การเขียนโปรแกรมด้วยภาษา .NET เพื่อทำงานกับเว็บไซต์โดยทั่วไปแล้วจะคล้ายคลึงกับการเขียนโปรแกรมแบบ Win app มาก แต่กระนั้นก็ยังถือว่าเป็นแบบ (model) ที่ต่างกัน โดยการสร้างซอฟท์แวร์ใน .NET จะถูกแบ่งออกเป็นสาม model คือ WinForm เป็นการสร้าง desktop app เพื่อทำงานในคอมพิวเตอร์ส่วนบุคคล WebForm คือการสร้าง web app เพื่อทำงานใน web browser โดยการทำงานส่วนใหญ่จะเกิดขึ้นใน server และอย่างที่สามคือ web service ซึ่งเป็นการทำงานประสานกันระหว่างโปรแกรมที่ทำงานอยู่ในคอมพิวเตอร์หลายๆ เครื่อง (ในอินเตอร์เน็ต)

 

สรุปเรื่องการเขียน web app

  • ASP.NET web server คือคอมพิวเตอร์ที่มีโปรแกรม Windows server (หรือ XP หรือ Vista), IIS และ .NET Framework ติดตั้งไว้
  • การเขียนโปรแกรมสร้างเว็บใน ASP.NET มีวิธีทำคล้ายการเขียนโปรแกรมแบบ desktop application
  • การเขียนโค้ดใน ASP.NET 2.0 ขึ้นไปทำได้สองวิธีคือเขียนแทรกเข้าไปในหน้าเว็บโดยตรง (inline code)กับเขียนแยกส่วนโค้ดไว้เป็นอีกไฟล์ (code behind)
  • การสร้างซอฟท์แวร์ใน .NET มีสาม model คือ WinForm, WebForm และ Web service

ตอนต่อไป: ความสัมพันธ์ของ Object lifetime, Garbage collector และ Marshalling

Post a comment or leave a trackback: Trackback URL.

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: