370 likes | 655 Vues
Visual Basic .NET. ประพันธ์ มอนแก้ว แผนกคอมพิวเตอร์ วิทยาลัยอาชีวศึกษาเชียงราย. เนื้อหา. Introduction to VB.NET คำสั่งและฟังก์ชันพื้นฐาน Windows Application Object และ Class Class ของ . NET Framework Inheritance. เนื้อหา. ADO.NET การจัดการข้อผิดพลาดและควบคุมความถูกต้องของข้อมูล
E N D
Visual Basic.NET ประพันธ์ มอนแก้วแผนกคอมพิวเตอร์ วิทยาลัยอาชีวศึกษาเชียงราย
เนื้อหา • Introduction to VB.NET • คำสั่งและฟังก์ชันพื้นฐาน • Windows Application • Objectและ Class • Classของ .NET Framework • Inheritance
เนื้อหา • ADO.NET • การจัดการข้อผิดพลาดและควบคุมความถูกต้องของข้อมูล • Web Applicationและ Console Application • Multithreading
Introduction to VB.NET • VB.NET ? • คำศัพท์พื้นฐาน • เริ่มต้นใช้งาน • การเปิดProjectใหม่ขึ้นมาใช้งาน • ส่วนประกอบของจอภาพที่ใช้ในการพัฒนา • สรุป
VB.NET ? • VB.NETย่อมาจาก Visual Basic.NETเป็นภาษาที่พัฒนาต่อยอดมากจาก Visual Basic 6.0โดยเพิ่มเทคโนโลยี .NET Frameworkเข้าไป เพื่อทำให้ VB.NETเป็นภาษาที่สามารถพัฒนา Applicationได้ทั้งบนระบบปฏิบัติการวินโดว์ และ เว็บ โดยบริษัทไมโครซอฟท์ (Microsoft)
VB.NET ? (ต่อ) • พัฒนาขึ้นภายใต้จุดมุ่งหมายของแนวคิดแบบ Reusable Codeเพื่อช่วยลดความแตกต่างในด้านต่างๆ ของการพัฒนาโปรแกรม เช่น • ภาษาที่ใช้ในการพัฒนาโปรแกรม • แนวคิดในการพัฒนาโปรแกรมที่จะอยู่ได้บนหลาย Platform • ดังนั้นไม่ว่าภาษาใดก็ตามที่ทำงานอยู่ภายใต้ .NET Frameworkก็จะสามารถใช้ทรัพยากรต่างๆ ของ .NET Frameworkได้เช่นกัน เพียงแต่จะต่างกันที่รูปแบบของการนำไปใช้ และไวยากรณ์ของภาษานั้น ๆ
ข้อแตกต่างระหว่าง VB.NETและ VB 6.0 • VB.NET • มีแนวคิดแบบ Object-Orientedมากขึ้น • ทุกอย่างอยู่ในรูป Classที่สนับสนุน ReusableCode • .NET Frameworkได้นำเอา Common Language Runtime: CLRและ MS Intermediate Language: MSILเขามาใช้ทำให้ทุกภาษาที่สนับสนุน .NET Frameworkเช่น VB.NET, C#, Jscript.NETฯลฯ เมื่อถูก Compile จึงมี Machine Codeที่อยู่ในรูปแบบที่สอดคล้องกัน ทำให้โปรแกรม 1 โปรแกรมสามารถใช้ภาษา มากกว่า 1 ภาษาในการพัฒนาโปรแกรม • VB 6.0 • มีแนวคิดแบบ Object-Oriented • ใช้ Wizardในการสร้าง Class • ใช้ได้เฉพาะภาษาเดียว
ข้อแตกต่างระหว่าง VB.NETและ VB 6.0(ต่อ) • VB.NET • สนับสนุน Reusable Codeที่ .NET Frameworkเตรียม ฟังก์ชันการทำงาน ต่างๆ ไว้ในรูปแบบของ Class Libraryเพื่อที่จะสามารถใช้งานกับ Classที่เราสร้างขึ้นได้ในทันที • สามารถทำ Inheritanceได้ • VB 6.0 • ไม่สนับสนุน Reusable Code • ไม่สามารถทำ Inheritanceได้
ข้อแตกต่างระหว่าง VB.NETและ VB 6.0(ต่อ) • VB.NET • มี Garbage Collectorใช้สำหรับคืนพื้นที่ของหน่วยความจำ กรณีที่ไม่ได้ใช้งานโปรแกรมแล้ว • สนับสนุนการทำงาน Multithreadingมาก • VB 6.0 • ไม่มีการจัดการคืนพื้นที่ของหน่วยความจำที่ดีพอ กรณีที่เลิกใช้งานโปรแกรม • สนับสนุนการทำ Multithreadingน้อย
Class Vehicle 4 Wheels 1 Engine Drive() Turn() Honda Toyota 4 Wheels 1 Engine 4 Wheels 1 Engine Drive() Turn() Drive() Turn() คำศัพท์พื้นฐาน Class Property • Class • Object • Instance • Namespace • Form • Project • Solution Method Inherit Object (Instance)
Class • คือ ต้นแบบของวัตถุ (Object)ที่จะทำหน้าที่ ถ่ายทอด(Inherit)ประกอบด้วย • คุณสมบัติ (Property) • ฟังก์ชันการทำงาน (Method)
Object • สิ่งต่างๆ ที่กำหนดขึ้น ประกอบด้วย Form, Control, ActiveX Control, Component, etc.ประกอบด้วย 2 ส่วน คือ • Propertyคือ คุณสมบัติของ Objectแต่ละตัว เช่น ชื่อ(Name),ตำแหน่ง(Position),ขนาด(Size) เป็นต้น • Methodคือ ฟังก์ชันการทำงานต่าง ๆ ที่ใช้กำหนดพฤติกรรมให้กับแต่ละ Object
Object(ต่อ) • การอ้างอิงของ Propertyของ Object ตัวอย่าง: Text1.Text โดยที่ Text1คือ Objectและ Textคือ Property • การอ้างอิงของ Methodของ Object ตัวอย่าง: Text1.Focus( ) โดยที่Text1คือObjectและFocus()คือMethod
Instance • ได้แก่ ตัวแปรประเภท Objectที่ใช้สำหรับนำ Objectต้นแบบที่อยู่ใน Classมาใช้ผ่านการถ่ายทอด (Inheritance)
Namespace • เนื่องจาก .NET Frameworkจะเก็บทุกอย่างไว้ในรูปแบบของ Classซึ่งมีจำนวนมาก ดังนั้นจึงมีการแบ่งกลุ่มการออกนำไปใช้ เรียกว่าNamespaceเช่น • System.Windowsเก็บ Classที่เกี่ยวข้องกับWindows • System.Windows.Forms • System.Windows.Forms.KeyEventArgs
Form • ฟอร์ม เป็นโมดูล(Module)เสมือนโปรแกรม หนึ่งโปรแกรม ที่ประกอบด้วยจอภาพ และส่วนควบคุมการทำงานของฟอร์ม ที่จะถูกจัดเก็บในแฟ้มข้อมูลนามสกุล .vbซึ่งต่างจาก VB 6.0ที่จะถูกจัดเก็บไว้ใน แฟ้มนามสกุล .frm
Project • โปรเจ็คหนึ่งๆ จะประกอบไปด้วย 1 ถึงหลายๆโมดูลหรือหลายๆ ฟอร์มที่สัมพันธ์เข้าไว้ด้วยกัน โดยจัดเก็บไว้ในแฟ้มข้อมูลนามสกุล .vbprojแต่ VB 6.0จะเก็บในแฟ้มข้อมูล .vbp • โปรเจ็ค ของ VB.NETจะต้องอยู่ภายใต้ SolutionใดSolutionหนึ่งเสมอ ต่างจาก VB 6.0ที่โปรเจ็คจะเป็นโมดูลสูงสุด
Solution • เปรียบเสมือนตู้เอกสารที่ใช้เก็บรายละเอียดต่าง ๆ ที่จำเป็นกับโปรแกรมที่เราพัฒนาขึ้น เช่นแฟ้มของโปรเจ็ค, รูปภาพ, Resources, Metadata,เอกสาร XMLและ อื่นๆ • ดังนั้นถ้าโปรเจ็คที่เปิดขึ้นใหม่ มิได้อยู่ภายใต้ Solutionใดๆ การเปิดนี้ก็จะทำให้ Solution ถูกสร้างขึ้นโดยอัตโนมัติ และจะมีชื่อเดียวกับโปรเจ็ค และเนื่องจาก 1 Solutionอาจมีมากกว่า 1 โปรเจ็ค. Solutionก็จะมีความคล้ายคลึงกับ GroupProjectใน VB 6.0นั้นเอง
เริ่มต้นใช้งาน • Start • All Programs • Microsoft Visual Studio .NET 2003
การเปิด Projectใหม่ขึ้นมาใช้งาน 1 1.ชนิดของโปรเจ็ค 2.แม่แบบ (Template) 3.ชื่อ Application 4. สถานที่จัดเก็บโปรเจ็ค 5. ชื่อของ Solution 2 3 4 5
แม่แบบ (Templates) • Windows Application • Class Library • Windows Control Library • ASP.NET Web Application • ASP.NET Web Service • ASP.NET Mobile Web Application • Web Control Library • Smart Device Application • Console Application • Windows Service • Empty Project • Empty Web Project • New project in Existing Folder
แม่แบบ (Templates) • Windows Application เป็นโปรเจ็คที่ใช้สำหรับสร้างโปรแกรมที่มีจอภาพ อยู่ในรูปแบบของ Windows • ClassLibraryเป็นโปรเจ็คที่ใช้สำหรับสร้าง Classซึ่งเป็นโปรแกรมในลักษณะ ReusableCodeที่สามารถนำไปใช้ในโปรแกรมอื่นๆได้ คล้ายกับ COMComponentที่เราสร้างขึ้นจากโปรเจ็ค ประเภท ActiveXDLLหรือ ActiveXEXE
แม่แบบ (Templates) • WindowsControlLibraryเป็นโปรเจ็คที่ใช้สำหรับสร้าง ActiveXControlขึ้นใช้งานสำหรับโปรเจ็ค ประเภท WindowsApplication • ASP.NET Web Applicationเป็นโปรเจ็คที่ใช้สำหรับสร้างWebApplicationในรูปแบบ Dynamicขึ้นใช้งานร่วมกับ HTMLและ ASP.NET
แม่แบบ (Templates) • ASP.NET Web Serviceเป็นโปรเจ็คที่ใช้ในการสร้าง WebServiceเพื่อใช้งานใน WebApplicationต่างๆ • ASP.NETMobileWebApplicationเป็นโปรเจ็คที่ใช้ในการสร้าง WebApplicationสำหรับมือถือ และ PDA • WebControlLibraryเป็นโปรเจ็คที่ใช้ในการสร้าง Controlขึ้นมาใช้งานสำหรับโปรเจ็คประเภท WebApplication
แม่แบบ (Templates) • SmartDeviceApplication เป็นโปรเจ็คที่ใช้ในการสร้าง Applicationสำหรับมือถือ และ PDA • ConsoleApplication เป็นโปรเจ็คที่ใช้ในการสร้าง Applicationที่มีจอภาพอยู่ในรูปแบบของโปรแกรม DOS • WindowsServiceเป็นโปรเจ็คที่ใช้สำหรับโปรแกรมที่สามารถ Runโดยอัตโนมัติ เมื่อเครื่องเริ่ม Bootสำหรับโปรแกรมประเภทนี้จะไม่มีส่วนของจอภาพ
แม่แบบ (Templates) • EmptyProject เป็นโปรเจ็คที่ใช้สำหรับสร้างโปรแกรมบน Windows,Class Librariesและ Services • EmptyWebProjectเป็นโปรเจ็คที่ใช้สำหรับสร้าง WebApplication • NewprojectinExistingFolderเป็นโปรเจ็ค ที่ใช้สำหรับสร้าง EmptyProjectภายใน Folderที่มีการสร้าง Projectไว้ก่อนหน้า
ส่วนประกอบของจอภาพที่ใช้ในการพัฒนาส่วนประกอบของจอภาพที่ใช้ในการพัฒนา 1 1.Menu bar 2.Toolbar 3.Solution Explorer 4. Class View 5. Properties 6. Dynamic Help 7. Toolbox 2 7 4 3 6 5
Menu Bar • เมนูบาร์ เป็นส่วนที่เราใช้บริหารและจัดการ VB.NETตามที่เราต้องการ เช่น • File:การจัดการโปรเจ็ค • Edit:การแก้ไขปรับปรุงส่วนต่างๆ ของ โปรเจ็ค • เครื่องมือต่าง ๆ เป็นต้น
Toolbar • แถบเครื่องมือที่ประกอบด้วย Iconต่างๆ ที่จะประมวลผลคำสั่งเพื่อให้โปรแกรม Editorของ VB.NET ทำตามเมื่อมีการคลิก
Solution Explorer • ใช้แสดง Folderและไฟล์ต่าง ๆ ที่เกี่ยวข้องกับ Solutionที่เราเปิดใช้งาน โดยที่ Solutionจะอยู่เหนือกว่า Projectและมี Projectที่กำกับอยู่ภายใต้วงเล็บด้านหลัง • ภายใต้ Folderของ Projectจะได้แก่ Folderและไฟล์ต่างๆดังนี้ (หน้าต่อไป)
Solution Explorer • Folderภายใต้ Projectประกอบด้วย • ReferenceFolder:ทำหน้าที่เก็บ Libraryต่างๆที่จะใช้ร่วมกับ Projectซึ่งจะเห็นได้ว่าชื่อของทุกไฟล์จะขึ้นต้นด้วย System • แฟ้ม AssemplyInfo.vb:ได้แก่ ไฟล์ Metadataที่เก็บข้อมูลต่างๆ ของโปรเจ็คไว้ ซึ่งจะถูก Compileพร้อมๆ กับโปรเจ็คที่เราสร้างขึ้นมา • แฟ้ม Form1.vb: ได้แก่ไฟล์ของ Formที่จะนำมาพัฒนาโปรแกรมขึ้นใช้งาน สำหรับชื่อ Form1นั้นเป็นชื่อ Defaultที่ VB.NETกำหนดให้ เราสามารถเปลี่ยนแปลงได้ในภายหลัง
Class View • ใช้สำหรับแสดง Namespaceต่างๆ ภายใน Solutionที่เราเปิดขึ้น • ถ้าลองขยาย Folderแต่ละระดับดูจะพบสมาชิกภายใต้ Namespace
Properties • ใช้แสดงและกำหนดคุณสมบัติให้กับ Controlที่เรานำมาวางบนFormรวมถึงตัว Formเองด้วย
Dynamic Help • ใช้แสดงส่วนช่วยเหลือของหัวข้อที่เรากำลังดำเนินการอยู่บนจอภาพ เช่น คลิกที่ ProjectFileในส่วนของ DynamicHelpจะแสดงส่วนช่วยเหลือสำหรับหัวข้อ ProjectFile
Toolbox • เป็นส่วนที่ใช้แสดง Controlต่างๆที่จะนำมาวางบน Formเพื่อสร้างเป็นจอภาพ
Editor • เป็นส่วนที่ใช้พิมพ์คำสั่งเพื่อเขียนเป็นโปรแกรม
สรุป VB.NETย่อมาจาก VisualBasic.NETเป็นภาษาที่พัฒนามาจาก VisualBasic6.0โดยเพิ่มเติมความสามารถในการรองรับเทคโนโลยี .NETFrameworkเพื่อลดช่องว่างของการพัฒนาโปรแกรมในด้านต่างๆ เช่น • การพัฒนาโปรแกรมบนหลายๆ Platform • การพัฒนาApplicationโดยมีการโปรแกรมได้หลายๆภาษา ในApplicationเดียว • สนับสนุนแนวคิด ReusableCode