โครงสร้างของภาษา ASP

หัวข้อพิเศษไอที, ASP 1 Comment »

โครงสร้างของภาษา ASP
เป็นธรรมดาของการเขียนโปรแกรมในทุกภาษา ก่อนที่เริ่มลงมือเขียนนั้นเราต้องเรียนรู้ถึงโครงสร้างของภาษาของโปรแกรมนั้นๆ ก่อน ASP ก็เช่นกัน ก่อนลงมือเขียนกันจริง ๆ เราควรต้องมาดูกันหน่อยว่า โครงสร้างทางภาษาของ ASP นั้นมีอะไรบ้าง
ไวยากรณ์ของภาษา ASP
ดังที่กล่าวไว้ในเบื้องต้นแล้วว่า ASP นั้นมีโครงสร้างทางด้านภาษาแบบเดียวกับ VBScript ซึ่งผู้ที่มีความรู้ทางด้านโปรแกรมภาษา VB (Visual Basic) ก็จะสามารถใช้งานได้โดยง่าย แต่สำหรับมือใหม่แบบ ถอดด้ามนั้นก็ไม่ต้องตกใจเพราะว่า ASP นั้น ง่ายต่อการเรียนรู้มากครับ ซึ่งจะอธิบายรายละเอียดในบทต่อๆ ไป
ส่วนประกอบต่างๆ ของการใช้งาน ASP
- HTML Code โดยเป็นการเขียนร่วมกับภาษา HTML
- Script Delimiters ()ใช้กำหนดว่า Script ที่อยู่เครื่องหมายนี้เป็นคำสั่งของ ASP โดยเครื่องหมาย หมายถึง Tag ปิดของ ASP
- Script Code เป็น Script ที่ใช้ในการทำงานหรือเขียนโปรแกรมควบคุม
- Active X Component เป็นคอมโพเน้นต์ที่ถูกสร้างขึ้นเพื่อใช้งานร่วมกับ ASP โดยใช้หลักของ Component Object Module(COM)
- ASP Object เป็น ออบเจคต์ที่ใช้งานของ ASP ซึ่งจะอธิบายในบทต่อๆ ไป ว่า Object พื้นฐานของ ASP นั้นมีอะไรบ้าง

**Tips
VBScript จะทำงานทางฝั่ง Client ส่วน ASP จะทำงานทางฝั่ง Server

ความสามรถและประโยชน์ของ ASP

หัวข้อพิเศษไอที, ASP No Comments »

ความสามรถและประโยชน์ของ ASP
ASP ง่ายต่อการเรียนรู้และทำความเข้าใจ เนื่องจากโครงสร้างของภาษาเป็นลักษณะของการเขียนสคริปต์ ซึ่งง่ายต่อการศึกษา โดยปกติ ASP จะใช้โครงสร้างภาษาเดียวกับ VBScript ดังนั้นหากเคยศึกษาภาษา Basic มาก่อนก็สามารถใช้งาน ASP ได้ทันทีแต่ถ้าเคยใช้ภาษา C/C++ มา ก็สามารถไวยากรณ์ของ Jscript ได้ทันทีเพราะมีโครงสร้างคล้ายกัน
ASP ง่ายต่อการพัฒนา เช่น กรณีที่ต้องการเขียนโปรแกรมติดต่อกับเว็บแอพพลิเคชั่น ถ้าหากต้องมีการปรับปรุงหรือแก้ไขเพิ่มเติม นักพัฒนาก็สามารถแก้ไขปรับปรุงได้เลยแล้วนำไปใช้งานทางฝั่ง Server ได้เลย โดยไม่ต้องมาเสียเวลาทำการคอมไพล์ใหม่
ASP สามารถเพิ่มประสิทธิภาพและขยายความสามารถได้โดยง่าย โดยการสร้าง Component ขึ้นมาใช้งานเอง โดยโปรแกรม VB หรือ Delphi แต่ปกติแล้ว ASP เองนั้นก็จะมี Component ที่จำเป็นพื้นฐานมาให้อยู่แล้ว เช่น Component ในการติดต่อกับ Database และ ฯลฯ เป็นต้น

ข้อดีของ ASP ที่ทำงานทางฝั่ง Server ก็คือ ข้อมูลบางอย่างที่เป็นความลับทางธุรกิจจะไม่ถูกเปิดเผย เพราะการทำงานนั้นจะทำอยู่ฝั่ง Server เท่านั้น ส่วนผู้ร้องขอข้อมูลจะได้รับข้อมูลตามที่ระบบโปรแกรมได้ออกแบบมาให้เท่านั้น เช่นการซื้อขายสินค้า ,ข้อมูลทางการค้า เป็นต้น ซึ่งจะตรงข้ามกับการทำงานของสคริปต์ทางฝั่ง Client

Cookies ASP เก็บไว้ที่ไหน

หัวข้อพิเศษไอที, ASP No Comments »

Cookies คือ Text File ชนิดหนึ่งที่ทาง Server ใช้เก็บข้อมูลลงในเครื่องของผู้ชม ( Client )
ลักษณะการเก็บคือ Server จะเขียนข้อมูลเป็น Text File ลงใน Hard Disk ของเครื่องคุณเลย ซึ่งโดยส่วนใหญ่ที่ Server จะเขียน Cookies ลงในเครื่องของคุณก็เพื่อใช้ในการ Auto Login เป็นต้น ซึ่ง ASPThai ก็ทำเหมือนกัน

     Cookies เก็บไว้ที่ไหน ??

  • ลักษณะของ Cookies จะเป็น Text File ถ้าเครื่องที่ใช้เป็น Windows 9X และ Browser เป็น IE การเก็บ Cookies จะอยู่ที่ C:\WINDOWS\Cookies ซึ่งเราสามารถใช้ Notepad เปิดดูได้โดยที่ IE จะแยกเก็บเป็นลักษณะเว็บละไฟล์
  • ถ้าเป็น XP และ Browser เป็น IE การเก็บจะเหมือนกับ 9X แต่จะเก็บที่ C:\Documents and Settings\Duay หรือชื่อ User ที่ใช้
  • สำหรับ Netscape นั้นจะเก็บ Cookies เป็นแบบ Text File แต่ว่าจะรวมทุกเว็บไว้ในไฟล์เดียวกันที่ C:\Program Files\Netscape\User\Defaultหรือชื่อผู้ใช้\Cookies.txt ก็เปิดด้วย Notepad หรือโปรแกรม Text File ทั่วๆไป

ทดสอบการติดต่อกับฐานข้อมูล

หัวข้อพิเศษไอที, ASP No Comments »

ยกตัวอย่างของการติดต่อในแบบ OLEDB นะครับในตัวอย่างนี้จะติดต่อกับฐานข้อมูลชื่อ testdb.mdb ที่มีรายชื่อของฟิลด์ต่างๆดังนี้
ฟิลด์ ID
ฟิลด์ Name
ฟิลด์ LastName
ฟิลด์ Address
ฟิลด์ City
ฟิลด์ Gender
ฟิลด์ Age
ฟิลด์ Year
 

a.bmp
ผลลัพท์ที่ได้คือ
a1.bmp

 

 

 

ASP กับ OLEDB

หัวข้อพิเศษไอที, ASP No Comments »

     การติดต่อฐานข้อมูลในแบบสุดท้ายที่จะกล่าวถึงคือแบบ OLEDB หรือ (Object Link Embedding Database)
OLEDB จะมีโพรไวเดอร์ (provider) ทำหน้าที่คล้ายกับไดร์เวอร์ในระบบการติดต่อฐานข้อมูล แบบ DNS และ DNSLess แต่โพรไวเดอร์จะมีลักษณะพิเศษกว่า คือมีการติดต่อกับฐานข้อมูลที่เร็วกว่าและรองรับการใช้ฐานข้อมูลแบบสัมพันธ์ (Relational Database) เป็นต้น

     การติอต่อฐานข้อมูลในรูปแบบของ OLEDB จะมีรูปแบบดังนี้

    Set strCon = Server.CreateObject(”ADODB.Connection”)
strCon.Open “PROVIDER=ชื่อโพรไวเดอร์; DATA SOURCE=ชื่อไฟล์หรือเซิร์ฟเวอร์; INITIAL CATALOG =ชื่อฐานข้อมูล;USER ID=ชื่อผู้ใช้;PASSWORD=รหัสผ่าน”

เช่นการติดต่อกับฐานข้อมูลที่เป็น Access ทั้ง 97 และ 2000
Set strCon = Server.CreateObject(”ADODB.Connection”)
strConn = “Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\data.mdb”
หรือถ้าคุณต้องการเรียกไฟล์ที่อยู่ใน path อื่นเช่น c:\aspthai\database
Set strCon = Server.CreateObject(”ADODB.Connection”)
strConn = “Provider=Microsoft.Jet.OLEDB.4.0; Data Source=” & Server.MapPath(”database/data.mdb”)

ASP กับ DSNLess

หัวข้อพิเศษไอที, ASP No Comments »

      แปลตามตัวก็คือไม่ใช้ DSN ใครไม่คุ้นเคยศัพท์นี้ก็ขออธิบายนิดหนึ่ง DSN หรือ Data Source Name คือการกำหนดชื่อให้กับ ODBC (Open DataBase Connectivity) ว่าเราจะติดต่อกับแฟ้มข้อมูลผ่านทางชื่อ DSN ซึ่งจะเป็นเรื่องของการติดต่อแฟ้มข้อมูลด้วยวิธี ODBC (การ set ODBC จะต้องกำหนดชื่อ DSN กำหนดชนิด Driver ว่าเป็นอะไร) ขอนอกเรื่องนิด ODBC ก็จะดีในแง่ว่าหากเราแก้ไขการกำหนด ODBC เช่นย้ายจากการใช้แฟ้มข้อมูล access ไปใช้ SQL server หรือ Oracle แต่เราไม่เปลี่ยน DSN ก็จะทำให้เราไม่ต้องไปแก้ตัว asp script ทุกตัวเพราะ asp จะติดต่อกับ ODBC ผ่าน DSN โดยไม่ได้ไปสนใจว่าข้างในใช้ driver อะไรอยู่ จะแตกต่างกับที่เราจะใช้ DSNLess คือหากเราเปลี่ยนแปลงอะไรก็ตามเช่นเปลี่ยนตำแหน่งเก็บแฟ้มข้อมูลหรือเปลี่ยน driver เราต้องตามไปแก้ ทุกเว็บเพจที่เขียน ซึ่งจะยุ่งยากกว่ามาก ได้อย่างก็ต้องเสียอย่างละครับ
แล้วทำไมต้องใช้ DSNLess
ที่ต้องใช้ก็เพราะ เราจะตัดขั้นตอนการเข้าไป set up ODBC เช่นหากเราเขียนเว็บเพจจากเครื่องๆหนึ่งที่ไม่ใช่ web server หรือเราได้พื้นที่ฟรีจาก web site ที่เขาแจก การ set up ODBC เราต้องไปทำที่เครื่อง แน่นอนไม่สะดวกและอย่าง web free เขาไม่ทำให้เราอยู่แล้วครับ สรุป เราคงต้องใช้ DSNLess ละครับ

องค์ประกอบของ DSNLess
จะประกอบด้วยข้อความที่ระบุว่าเป็น driver ชนิดไหนและ database เก็บที่ไหน เอาบางตัวนะครับ ดังนี้ครับ

  • Foxbase หรือ *.dbf จะกำหนดเป็น
    Driver={Microsoft Foxpro Driver (*.dbf)};DBQ=drive:\pathที่เก็บไฟล์ .dbf
    เช่น เก็บที่ c:\myfoxprodata ก็จะเป็น
    Driver={Microsoft Foxpro Driver (*.dbf)};DBQ=c:\myfoxprodata
    Foxpro เก็บข้อมูลแยกเป็น ไฟล์ๆ ดังนั้นการอ้างชื่อ drive:\path จะเป็นการอ้างเพื่อให้ใช้ได้ทุกๆไฟล์ใน path นั้น
  • Access หรือ *.mdb จะกำหนดเป็น
    Driver={Microsoft Access Driver (*.mdb)};DBQ=drive:\path\ชื่อไฟล์ที่จะใช้
    เช่น เก็บที่ c:\myfoxprodata ก็จะเป็น Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\mydataaccess\data1.mdb
    Access จะระบุชื่อ ไฟล์ครับเพราะในไฟล์ของ Access จะประกอบด้วยตารางข้อมูลย่อยๆ เทียบกับ Foxpro คือ ไฟล์ dbf ต่างๆ นั้นคือ ไฟล์ .mdb เทียบได้กับ drive:\path ใน Foxpro
  • SQL server หรือ Databse server จะกำหนดเป็น
    Driver={SQL Server};Server=ชื่อserver หรือ IP ที่server อยู่;Database=ชื่อdatabaseที่จะใช้;UID=ชื่อ User;PWD=รหัสผ่าน
    เช่น
    Driver={SQL Server};Server=Localhost;Database=aspthai;UID=sa;User;PWD=demo

การติดต่อกับ Database

หัวข้อพิเศษไอที, ASP No Comments »

ขั้นตอนการติดต่อฐานข้อมูล
     ปัจจุบันการติดต่อกับฐานข้อมูลภายนอก ผมหมายถึงว่า โปรแกรมต่างๆที่ต้องการติดต่อกับฐานข้อมูลภายนอกตัวเองเช่น โปรแกรม Access อยากจะติดต่อใช้งานฐานข้อมูลของ SQL server เป็นต้น นั้นหมายถึง Access กำลังติดต่อฐานข้อมูลภายนอก หรือ ASP ซึ่งไม่มีฐานข้อมูลของตัวเอง ดังนั้นก็ต้องเป็นการติดต่อฐานข้อมูลภายนอกการติดต่อฐานข้อมูลภายนอกของ ASP จะต้องอาศัย driver ของฐานข้อมูลนั้นๆเข้ามาช่วย โดยที่วิธีการติดต่อกับฐานข้อมูลปัจจุบันมี 3 วิธีคือ

  • ODBC
  • DSNLess
  • OLEDB

เรียงตามลำดับเก่าไปใหม่ ว่ากันว่าที่ดีที่สุดคือ OLEDB แต่เท่าที่ผมลองดูนะครับ แบบ DSNLess ก็อยู่ในเกณฑ์ที่ดีมาก แต่ที่ไม่แนะนำคือแบบ ODBC เพราะเป็นแบบเก่าและช้าที่สุดที่สำคัญคือหลายๆโฮสทั้งฟรีและไม่ฟรี ไม่นิยมให้ใช้แบบนี้มากนัก ดังนั้นขอข้ามไปเลยนะครับกับการติดต่อแบบ ODBC

ASP.NET ภาษาแห่งอนาคตกับ .NET

หัวข้อพิเศษไอที, ASP No Comments »

         ASP.NET หรืออีกชื่อหนึ่งว่า ASP+ ซึ่งเป็นชื่อที่ไมโครซอฟท์ใช้เรียกในตอนแรก ถือว่าเป็น ASP เวอร์ชั่นล่าสุดต่อจาก ASP 3.0 แต่คงไม่สามารถพูดได้เต็มปากว่า ASP.NET พัฒนามาจาก ASP เพราะรูปแบบ และไวยากรณ์ต่างๆ และภาษาที่นำมาใช้งานนั้นต่างจากเดิมแทบทั้งสิ้น แทบจะเรียกได้ว่ายกเครื่องใหม่เลยทีเดียว น่าจะพูดได้ว่า ASP.NET เป็นอีก Generation หนึ่งของ ASP มากกว่า เรามาลองดูกันว่าใน ASP.NET นั้นมีอะไรที่แตกต่างจาก ASP รุ่นก่อน ๆบ้าง
     1. ใช้ภาษาใดๆในการเขียนสคริปต์ก็ได้ : จากเดิมที่เราสามรถใช้ได้เฉพาะภาษาที่เป็นสคริปต์ของ VBScript และ JScript แต่ใน ASP.NET เราสามารถที่จะใช้ภาษาที่มีรูปแบบของภาษาเต็มๆ ซึ่ง ในเบื้องต้น มี3 ภาษาคือ C#, VB.NET และ JScript.Net ที่ออกมาเป็นมาตรฐาน แต่ในอนาคตไมโครซอฟท์มีแผนที่จะเพิ่มตัวแปลภาษาให้ครบทุกภาษา
     2. มีความยืดหยุ่นในการเขียนโปรแกรมมากขึ้น : โดยที่เราสามารถใช้ภาษาในการเขียน ASP.NET ได้มากกว่า 1 ภาษาภายในไฟล์เดียวกัน ทำให้สามารถเลือกรูปแบบของภาษาที่ง่ายที่สุดต่อการเขียน ในแต่ละส่วนได้
     3. ลักษณะการแปลภาษาและนามสกุลไฟล์เปลี่ยนไป : ใน ASP เวอร์ชั่นก่อนๆ มีลักษณะการแปลภาษาเป็นแบบอินเตอร์พรีเตอร์ (Interpreter) คือการจะทำคำสั่งใดค่อยแปลคำสั่งนั้น แต่ในเวอร์ชั่น .NET นี้จะมี ลักษณะเป็นคอมไพเลอร์ (Compiler) คือการแปลคำสั่งรวมทั้งโปรแกรม นอกจากนี้นามสกุลของไฟล์ก็มีการเปลี่ยนแปลงจากเดิมที่ใช้นามสกุลไฟล์เป็น ” *.asp ” เป็น ” *.aspx ”
     4. รูปแบบและการใช้งานคอมโพเนนต์ที่ง่ายขึ้น : รูปแบบของคอมโพเนนต์จะเน้นไปที่ XML มากที่สุด และที่สำคัญคือการใช้งานคอมโพเนนต์ใน ASP.NET นั้นเราสามารถอัพโหลดไฟล์ไปไว้ในไดเร็คตอรีที่ผู้ดูแลเซิร์ฟเวอร์ (Admin) กำหนดหลังจากนั้นคอมโพเนนต์จะติดตั้งตัวเองโดยอัตโนมัติ ลดปัญหาที่เกิดจาก ASP เวอร์ชั่นก่อนๆได้เป็นอย่างดี เนื่องจากใน ASP เวอร์ชั่นก่อนนั้นการติดตั้งคอมโพเนนต์กระทำได้เพียงผู้ดูแลเซิร์ฟเวอร์เพียงคดเดียวเท่านั้น ทำให้เวลาต้องการใช้คอมโพเนนตืต่างๆที่เซิร์ฟเวอร์ไม่มี จึงเป็นเรื่องที่ลำบาก
     5. มีไลบรารีให้เลือกใช้ได้มากขึ้น : ใน ASP เวอร์ชั่นก่อนๆนั้นแอพพลิเคชั่นบางอย่างสร้างได้ไม่สะดวกนัก ต้องอาศัยคอมโพเนนต์ต่างๆมากมาย แต่ใน ASP.NET นั้นได้เพิ่มไลบรารีในส่วนเหล่านี้ให้กลายเป็นพื้นฐานของการใช้งาน
     6. มีคอนโทรลทำให้การใช้งานในบางสิ่งง่ายขึ้น : เป็นส่วนพิเศษที่เพิ่มเติมมาจาก ASP รุ่นก่อนๆที่ไม่มีส่วนที่เรียกว่า คอนโทรล ซึ่งคอนโทรลนี้จะช่วยให้เราสามารถสร้างเว็บไซท์ได้อย่างง่ายและมีประสิทธิภาพมากขึ้น จึงไม่ต้องกังวลว่าบราวเซอร์รุ่นนั้นรุ่นนี้จะรองรับกับภาษาที่เราเขียนหรือไม่
     7. สามารถเรียกขอข้อมูลจากเซิร์ฟเวอร์ได้ : ใน ASP เวอร์ชั่นก่อนๆเซิร์ฟเวอร์สามารถเรียกขอข้อมูลได้จากเครื่องผู้ใช้เท่านั้นแต่ใน ASP.NET เครื่องเซิร์ฟเวอร์สามารถเรียกขอข้อมูลจากเครื่องเซอร์เวอร์ด้วยกันได้
     8. ไม่ต้องต่อ Hardware : เนื่องจากเป็นระบบใน .NET Framework ดังนั้นจึงมีคุณสมบัติของ Common Languare Runtime (CLR) ทำให้มีการคอมไพล์โปรแกรมเป็นภาษามาตรฐานที่เรียกว่า IL ก่อน ดังนั้นไม่ว่าคุณจะเล่นเครื่องปาล์มหรือโน้ตบุ๊ค PDA ก็ไม่เกิดปัญหา
     9. ง่ายต่อการหาจุดผิดพลาดในการเขียนโปรแกรม : หากเป็น ASP รุ่นก่อนเวลาเกิดความผิดพลาด (error) เครื่องจะบอกแค่ว่าเป็นความผิดพลาดชนิดใดบรรทัดไหน แต่ใน ASP.NET นี้เครื่องจะแสดงรายละเอียดที่มากขึ้น พร้อมแนวทางแก้ไข
     10. มีการตรวจสอบเหตุการณ์ต่างๆได้ภายในเว็บเพจ : มีการตรวจสอบเหตุการณ์ต่างๆ ตั้งแต่โหลดหน้าเว็บเพจไปจนถึงปิดหน้าเว็บเพจลง ทำให้เราสามารถเขียนโปรแกรมกำหนดเหตุการณ์ต่างๆได้ง่ายขึ้น
     11. แยกส่วนที่เป็น HTML กับ ASP ออกมาอย่างชัดเจน : ในเวอร์ชั่นก่อนๆส่วนที่เป็น HTML กับ ASP จะเขียนปนกันไปมา แต่ในเวอร์ชั่นนี้จะแยกส่วนกันอย่างชัดเจนว่าส่วนไหนเป็น HTML และส่วนไหนเป็น ASP

.NET Framework มีดีตรงไหน

หัวข้อพิเศษไอที, ASP No Comments »

         ประโยชน์และข้อดีของ .NET Framework นั้นพอจะสรุปออกมาได้เป็นข้อๆดังนี้
     1. เป็นระบบที่มีไลบรารีที่เป็นมาตรฐานเดียวกัน : เนื่องจากมีไลบรารีที่เป็นมาตรฐานเดียวกันทั้งหมดทำให้เราไม่ต้องกังวล ว่าภาษาที่ใช้เขียนนั้นมีไลบรารีตัวนั้นตัวนี้หรือไม่ รวมทั้งไม่ต้องคอยกังวลว่าถ้าใช้ไลบรารีของภาษาหนึ่งแล้วอีกภาษาหนึ่งจะไม่มีไลบรารีตัวนั้น
     2. ไม่ขึ้นกับระบบประฏิบัติการ (OS) : เนื่องจากระบบปฏิบัติการ ที่แต่ละบุคคลหรือองค์กรใช้นั้นย่อมไม่เหมือนกัน แต่ภายใน .NET Framework จะไม่มีปัญหานี้ของเพียงแค่มีระบบ .NET Framework ก็จะทำให้สามารถใช้งานโปรแกรมต่างๆได้ ซึ่งเป็นข้อดีตรงที่เราจะสามารถใช้โปรแกรมต่างๆได้ทุกระบบปฏิบัติการ
     3. ใช้ในการพัฒนาได้ทุกภาษา :ทำให้เราไม่ต้องคอยมาศึกษาภาษาใหม่ๆเมื่อต้องการสร้างโปรแกรมในแต่ละครั้ง นอกจากนั้นเรายังสามารถเลือก ใช้ภาษาที่เราถนัดที่สุดในการพัฒนาโปรแกรมต่างๆได้ด้วย
     4. มีการควบคุมสิ่งแวดล้อมในการทำงานเป็นอย่างดี :เนื่องจากเป็นระบบที่เป็นมาตรฐานทำให้การควบคุมจัดสรรระบบต่างๆ ทำได้ง่ายขึ้น ไม่ว่าจะเป็นการจัดสรรหน่วยความจำ ด้านการใช้งานเครื่องก็มีความรวดเร็วมากขึ้น ลดโอกาศที่เครื่องจะแฮงก์ได้เป็นอย่างดี
     5. ความปลอดภัยที่มีมากขึ้น :.NET Framework สามรถกำหนดสิทธิ์การใช้งานหรือ permission ของผู้ใช้งานได้มากขึ้นทำให้สมารถกำหนดว่า จะให้โปรแกรมในส่วนใดใช้งานได้หรือไม่ได้ แล้วแต่เฉพาะบุคคล
     ทั้งหมดนี้เป็นเพียงประโยชน์ส่วนหนึ่งในแนวคิดของไมโครซอฟท์ที่กำลังจะพัฒนาให้สำเร็จเท่านั้น บางข้อทำได้สำเร็จแล้ว แต่บางข้อก็ยังไม่สำเร็จดังนั้นจึงต้องคอยรอดูว่า ฝันของไมโครซอฟท์จะเป็นจริงและสำเร็จได้เมื่อไร

What’s .NET Framework?

หัวข้อพิเศษไอที, ASP No Comments »

        อย่างที่ได้กล่าวไปแล้วในตอนต้นว่าไมโครซอฟท์ต้องการที่จะสร้างอะไรที่เป็นมาตรฐานขึ้นมา เพื่อให้ทุกสิ่งทุกอย่าง เพื่อให้ทุกสิ่งทุกอย่างสามารถติดต่อสื่อสารกันได้หมด โดยคิดค้นระบบซึ่งหมายมั่นปั้นมือว่าจะให้เป็นระบบมาตรฐาน ระบบนี้คือ .NET Framework ซึ่งระบบนี้ไม่ใช่ระบบปฏิบัติการ (OS) แต่เปรียบเสมือนโปรแกรมหนึ่งที่จะสามารถสร้างสภาวะแวดล้อมหนึ่ง ซึ่งสามารถทำงานในระบบ .NET นี้ได้     ในอนาคตไมโครซอฟท์ก็หวังที่จะนำเอาระบบนี้ไปติดตั้งลงบนอุปกรณ์ทุกชนิด เพื่อทำให้อุปกรณ์ทุกอย่างมีระบบๆหนึ่งที่เหมือนกันหมด โดย .NET Framework นั้นมี ส่วนประกอบภายในแบ่งออกเป็น 3 ชั้นใหญ่ๆคือ
     1. Programming Language : เป็นรูปแบบของภาษาที่ออกแบบมาเพื่อให้สามารถทำงานในสภาวะที่เป็น .NET ได้โดยที่ทางไมโครซอฟท์ได้เปิดตัวภาษาหลักๆที่จะใช้พัฒนาบน .NET นี้ 3ภาษา
          °   C# เป็นภาษาใหม่ที่ไมโครซอฟท์พัฒนามาจาก C++ กับ JAVA เป็นหลัก
          °   VB.NET เป็นภาษาที่พัฒนามาจาก Visual Basic ในเวอร์ชั่น 6.0
          °   JScript.net เป็นภาษาที่พัฒนามาจาก JScript ซึ่งเป็น JavaScript ในเวอร์ชั่นของไมโครซอฟท์
     2. Base Classes Library : Library นั้นเปรียบเสมือนชุดคำสั่งสำเร็จรูปย่อยๆที่เพิ่มเข้ามา ซึ่งส่วนใหญ่จะเป็นชุดคำสั่งที่ต้องใช้งานอยู่เป็นประจำ ดังนั้นจึงมีผู้คิดค้นเพื่ออำนวยความสะดวกในการเขียนโปรแกรม ซึ่ง Library ในภาษาต่างๆส่วนใหญ่จะอยู่ในรูปแบบไฟล์ incould แต่ถ้าเป็น ASP สิ่งที่เป็น library ก็คือ คอมโพเนนท์ต่างๆนั่นเอง ซึ่งภายในระบบ .NET จะสร้างสิ่งที่เรียกว่าเป็น Library พื้นฐานขึ้น ทำให้ไม่ว่าจะใช้ภาษาใดในการพัฒนาโปรแกรมก็สามารถที่จะเรียกใช้ Library ที่เป็นตัวเดียวกันได้หมด
     3. Common Language Runtime (CLR) : นับเป็นสิ่งสำคัญแทบจะที่สุดของระบบ .NET นี้ก็ว่าได้ เพราะ CLR ที่ว่านี้มีหน้าที่ทำให้โปรแกรมที่เขียนขึ้นมาด้วยภาษาต่างๆกัน กลายเป็นภาษารูปแบบมาตรฐานเดียวกัน ทั้งหมด เราเรียกภาษาที่ว่านี้ว่า Intermediate language (IL) ซึ่งเมื่อต้องการที่จะรันโปรแกรมใด CLR ที่ว่านี้จะตรวจสอบเครื่องที่รันว่ามีสภาวะแวดล้อมการทำงานเช่นใดหลังจากนั้นก็จะคอมไพล์เป็นโปรแกรมที่เหมาะสมต่อการทำงานของเครื่องนั้น ทำให้เราสามารถใช้งานโปรแกรม ต่างๆได้อย่างมีประสิทธฺภาพสูงสุดในแต่ละเครื่อง

ASP Web Services คืออะไร

หัวข้อพิเศษไอที, ASP No Comments »

           หลายๆคนอาจเคยได้ยินคำๆนี้มากันบ้างแล้ว แต่ก็มีหลายคนสงสัยว่ามันคืดอะไรกันแน่ ซึ่งชื่อ Web Service นั้นแปลตามตัวก็คือการใช้บริการต่างๆผ่านทางเว็บนั่ยเอง ซึ่งก็ตรงตามจุดประสงค์ของไมโครซอฟท์ ที่ต้องการจะทำให้ทุกอย่างสามารถใช้งานเชื่อต่อกับอินเตอร์เน็ตได้นั่นเอง คำๆนี้จึงกลายเป็นคำฮิตติดปากมาจนถึงทุกวันนี้ แต่จริงๆแล้ว Web Service ก็คือการเรียกใช้งานชุดคำสั่งในระยะไกล ซึ่งชุดคำสั่งเหล่านี้ไม่ใช่แค่ชุดคำสั่งธรรมดา แต่เป็นชุดคำสั่งที่เขียนขึ้นมาเป็นโปรแกรมเหมือนกับการใช้งานของ Client เลยทีเดียว ทำให้เราไม่ต้องไปติดตั้งโปรแกรมต่างๆภายในเครื่องคอมพิวเตอร์ของเราเลย เมื่อใดอยากใช้งานก็ต่ออินเตอร์เน็ตเข้าไปใช้บริการในเว็บไซท์ผู้ผลิตได้ทันที โดยอาจมีการเรียกเก็บค่าบริการเป็นครั้งๆไป ซึ่งจะช่วยลดปัญหาในการละเมิดลิขสิทธิ์ และชุดคำสั่งเหล่านี้จะทำให้ ASP.NET มีบทบาทมากทีเดียว

เริ่มต้นรู้จักกับ ASP.NET ที่พัฒนาต่อจาก ASP

หัวข้อพิเศษไอที, ASP No Comments »

       โลกในยุคปัจจุบันนี้กำลังพัฒนาไปสู่โลกแห่งการสื่อสารไร้พรมแดน
ในโลกแห่งเทคโนโลยีปัจจุบันนี้ หลายๆท่านคงคุ้นเคยหรือได้ยินเกี่ยวกับเทคโนโลยีและการบริการพิเศษต่างๆมาบ้างแล้ว ไม่ว่าจากสื่อโฆษณา โทรทัศน์ บางท่านอาจจะเป็นผู้ใช้เทคโนโลยีนี้อย่างไม่รู้ตัว การเช็คเมลล์ เล่นอินเตอร์เน็ต รวมทั้งจองตั๋วชมภาพยนตร์ผ่านทางโทรศัพท์มือถือ สิ่งเหล่านี้ล้วนเป็นเทคโนโลยีที่ทันสมัยและน่าทึ่งอย่างยิ่ง แล้วตัวคุณจะรู้หรือไม่ว่าสิ่งเหล่านี้เกิดขึ้นได้อย่างไรและใช้สิ่งใดในการสร้าง

.NET แนวคิดแห่งโลกเทคโนโลยีสมัยใหม่

หัวข้อพิเศษไอที, ASP No Comments »

  .NET (อ่านว่า ด็อทเนต) คือแนนวคิดหนึ่งที่ไมโครซอฟท์ภูมิใจนำเสนอ โดย .NET ตัวนี้ไม่ได้เกี่ยวข้องกับโดเมนเนมของเว็บใดๆทั้งสิ้น แต่ .NET ตัวนี้ หมายถึง การนำเอาอุปกรณ์ทุกอย่างบนโลกมาเชื่อมโยงต่อกันเหมือนตาข่าย (net = ตาข่าย) ซึ่งหากว่าทำสำเร็จแล้วไม่ต้องนึกเลยว่าไมโครซอฟท์จะได้เป็นเจ้าแห่งเทคโนโลยีอย่างไม่ต้องสงสัย แต่เรื่องมันไม่ง่ายอย่างที่คิด เพราะอุปกรณ์ต่างๆเหล่านั้นล้วนถูกออกแบบมาต่างๆกัน การที่มันจะติดต่อสื่อสารกันรู้เรื่องนั้น ย่อมเป็นเรื่องที่เป็นไปได้ยาก ไมโครซอฟท์เล็งเห็นตุดนี้ จึงได้พยายามที่จะคิดค้นสิ่ง ที่เป็นมาตรฐานขึ้น เพื่อให้อุปกรณ์ทุกๆชนิดทั่วโลกติดต่อสื่อสารกันได้อย่างรู้เรื่อง จึงไม่ใช่เรื่องแปลกถ้าในอนาคตเราเปิดเว็ปไซท์เล่นอินเตอร์เน็ตด้วยอุปกรณ์อื่นๆนอกเหนือจากคอมพิวเตอร์

การเข้า-ถอดรหัสข้อมูลโดยใช้ ASP

หัวข้อพิเศษไอที, ASP No Comments »

วิธีการเข้า-ถอดรหัสข้อมูล (Encrypt-Decrypt) มีวิธีการมากมายในการเข้ารหัส แล้วแต่แนวคิดของแต่ละคน การเข้ารหัสข้อมูลเป็นการป้องกันการลักลอบนำข้อมูลไปใช้โดยไม่ได้รับอนุญาติ ซึ่งมีคนคิดค้นวิธีต่างๆมากมาย ส่วนใหญ่การเข้ารหัสนั้น อาจจะเข้ารหัสข้อมูลเฉพาะข้อมูลที่สำคัญเท่านั้น เช่น รหัสผ่าน เป็นต้น เพื่อนที่ใช้ ASP อาจจะน้อยใจว่าทำไมไม่มีฟังก์ชั่นนี้มาให้เหมือนกับ PHP (อีกแล้ว )มีทั้งการเข้ารหัส (Encrypt) และการถอดรหัส (Decrypt) ซึ่งวิธีที่นำมาเสนอวันนี้จะเป็นการเข้ารหัสแบบมี Key เข้ามาร่วม ไม่ใช่การเข้ารหัสหรือถอดรหัสแบบใช้โปรแกรมสั่งเปลี่ยนค่า unicode หรือ ASCII ทำให้ยากต่อการแกะรหัสขึ้นมาอีกขั้นนึง

 

11.bmp

 

จากตัวอย่าง ผมจะใช้ Key เป็นคำว่า “SiamDev” แล้วมีฟังก์ชั่นแยกมาอย่างชัดเจน 2 ฟังก์ชั่น นั่นคือ Function Encrypt ใช้สำหรับเข้ารหัสข้อมูล และ Function Decrypt ใช้สำหรับถอดรหัสข้อมูล หลักการทำงานก็อธิบายยากนิดหน่อย ในการเข้ารหัสมันจะนำ Key มาประมวลผลเพื่อเปลี่ยนคำที่ต้องการเข้ารหัสให้กลายเป็นคำที่ถูกเข้ารหัสแล้ว ข้อความที่ได้จะเป็นตัวยึกยือ ส่วนการถอดรหัสมันก็นำข้อความที่เข้ารหัสไว้มาทำการย้อนวิธีการเข้ารหัส เพื่อให้ได้คำที่ต้องการ
121.bmp

 

ข้างต้นจะเป็นตัวอย่างการนำมาใช้งานซึ่งดูแล้วก็ไม่ยาก ดังนั้นเวลาใช้งานก็จะทำการนำข้อมูลที่ถูกเข้ารหัสแล้วไปเก็บไว้ในฐานข้อมูลเวลาจะนำมาแสดงผลก็ให้ถอดรหัสก่อน ส่วนใครที่คิดว่ามันยังไม่ซับซ้อน คุณก็อาจจะเปลี่ยน key โดยจากเดิมที่เป็นค่าตายตัว คุณก็อาจจะนำ username ของคนๆนั้นมาใช้เป็น key หรือหาความสัมพันธ์อื่นมาใช้ร่วมก็ได้อันนี้ก็แล้วแต่แนวความคิดของแต่ละคน

 

วิธีการสั่งให้โปรแกรมหยุดทำงาน

หัวข้อพิเศษไอที, ASP No Comments »

 ดังที่กล่าวไว้แล้วข้างต้น บางคนอาจจะพบปัญหา เช่น มีข้อความบอก Error ขึ้นมา แล้วเราจะตรวจสอบได้ยังไงล่ะว่ามันจะ Error ที่ค่านู่นค่านี้ เพราะถึงเราจะสั่ง Response.Write ค่าออกมามันก็จะไม่แสดงค่านั้น แต่จะแสดงเป็นหน้า Error ขึ้นมาแทน ดังนั้น เราก็ต้องสั่งให้โปรแกรมหยุดทำงาน เพื่อให้มันแสดงค่าดังกล่าว แล้วจะใช้คำสั่งอะไรล่ะ วันนี้ผมเลยจะนำคำตอบมาบอกให้ครับ คำสั่งดังกล่าว คือ Response.End เรามาดูตัวอย่างกันเลยดีกว่าครับว่าใช้งานยังไง

000.bmp

 

ผลลัพท์ที่ได้จากตัวอย่างข้างต้น คือ หน้าจอจะแสดงค่าแค่ 1-5 เท่านั้น เหตุที่เป็นเช่นนั้นเพราะเราสั่งให้โปรแกรมหยุดทำงานเมื่อค่าของ i เท่ากับ 5 ซึ่งถ้าไม่มีคำสั่งนี้ โปรแกรมก็จะแสดงค่า 1-10 ตามปกติ ดังนั้นเราจึงสามารถนำคำสั่ง Response.End ไปใช้ที่ไหนก็ได้ เพราะถ้าโปรแกรมพบคำสั่งนี้จะหยุดทำงานทันที เพื่อนๆก็สามารถนำไปใช้ประโยชน์ในแง่ของการตรวจสอบการทำงานของโปรแกรมได้

 

 


   Designed By:  SadhWeb Directory  &  WP Theme

Sponsored By:  Affiliate Marketing Blog  &  Paid Directory