วิธีการติดตั้ง WordPress 2.3.1 (/20/2007)

ขั้นตอนในการติดตั้ง Wordpress 2.3.1
           ในการติดตั้งไฟล์ WordPress 2.3.1 ให้ทำการ download file wordpress 2.3.1 มาไว้ที่เครื่องให้เรียบร้อยก่อนน่ะครับ สามารถ download ได้จาก link ด้านล่างได้เลยครับ

WordPress 2.3.1 : Download File

           หลังจากที่ทำการ download และติดตั้งไฟล์ wordpress 2.3.1 ไว้ที่ root / web path เรียบร้อยแล้ว ทำการรันไฟล์ได้เลย เช่น http://localhost/open-source/wordpress_231/ เป็นต้นครับ [ ตามภาพหมายเลข 1 ]

 

 [ภาพที่ 1]

           หลังจาก ที่เราได้ภาพดังรูปที่ 1 แล้ว ก็พร้อมที่จะเข้าสู่ขั้นตอนการติดตั้ง WordPress 2.3.1 แล้วครับ ให้ทำการกดที่ "create a wp-config.php file through a web interface" จะได้ดัง [ภาพที่ 2]

[ภาพที่ 2]

           ในส่วนข้อมูลของรูปที่ 2 นั้นจะเป็นการอธิบาย ขึ้นตอนเบื้องต้น ของการ connect database MySQL ครับ ถ้าพร้อมแล้วก็เลือกที่ "let's go!"

[ภาพที่ 3]

           ในภาพที่ 3 นั้นเป็นข้อมูลสำคัญที่เราจะต้องกรอกให้ถูกต้อง กับ MySQL Server ที่เราได้ทำการ สร้าง database ไว้เรียบร้อยแล้วน่ะครับ ดังนั้น ในขั้นตอนนี้ ทุกท่านจำเป็นที่จะต้องแน่ใจใน username and password / database name / host name ที่จะใช้ในการติดตั้ง database ของ WordPress 2.3.1 น่ะครับ ถ้าพร้อมแล้วก็ทำการกรอกได้เลยครับ ดังรูปที่ 3 ผมได้ทำการกรอกข้อมูลเบื้องต้นเอาไว้คือ

           Database Name : wordpress_db
           Username : root
           Password : Windwalker
           Database Host Name : localhost
           Table Prefix : wp_

           ในส่วนของ username / password คือ รหัสผ่านที่เราได้ สร้างเอาไว้สำหรับ ติดต่อกับ MySQL นะครับ ควรตรวจสอบ สิทธิที่ใช้ในการ ล็อกอิน เข้าไปใช้งาน MySQL ให้ดีคับ ส่วนใหญ่จะติดกันตรงนี้เป็นเสียส่วนใหญ่ครับ

           Host Name นั้นโดยปกติแล้ว ถ้าเราทำการติดตั้งที่เครื่องของเราเอง จะ default เป็น localhost ครับ แต่ถ้าท่านใดใช้ Host ของ ISP เจ้าอื่น ๆ ก็ลองทำการสอบถามไปที่ เจ้าหน้าที่ ที่ให้บริการดูน่ะครับ ว่า Host Name ที่ใช้ในการติดตั้ง MySQL นั้นคืออะไรน่ะครับ

           Table Prefix นั้น จะทำการ default wp_ มาให้เราเรียบร้อยแล้วน่ะครับ แต่ถ้าท่านใดอยากให้เป็นชื่อนำหน้า database table ก็ทำการแก้ไขได้ เลยครับ

 

[ภาพที่ 4]

           ในภาพที่ 4 นั้น แสดงว่าทุกท่านได้ทำการ ติดตั้ง WordPress 2.3.1 เรียบร้อยแล้ว แต่ถ้า ท่านใดยังไม่ได้ดังภาพ ก็แสดงว่า ยังติดที่ไม่สามารถ connect ไปที่ MySQL ได้นั่นเองน่ะครับ ทดลองดูก่อนว่า เรากรอกข้อมูลส่วนใดผิดหรือไม่ตรงกับ MySQL หรือเปล่าน่ะครับ

[ภาพที่ 5]

           เกือบจะเสร็จสมบูรณ์แล้วน่ะครับ ในภาพที่ 5 นั้น เป็นการกรอกรายละเอียด ชื่อ เว็ปไซต์ของเรานั่นเอง พร้อมกับ email ที่ใช้สำหรับเป็น admin นั่นเองครับ แต่ไม่ต้องตกใจไปครับ ในส่วนนี้ เราสามารถมาแก้ไข ได้ในภายหลังครับ สามารถใส่อะไรไปก่อนก็ได้ครับ

[ภาพที่ 6]

           ขึ้นตอนสุดท้าย ก่อนที่เราจะเข้าไปใช้งาน WordPress 2.3.1 กัน ขอให้ทุกท่าน จด username and password ที่ทาง WordPress 2.3.1 นั้นได้ random มาให้ก่อนน่ะครับ เดี๋ยวจะไม่สามารถเข้า BackEnd ได้ และที่สำคัญเราไม่สามารถเข้าไปดูใน database เผื่อแก้ไข รหัสผ่านได้น่ะครับ เนื่องจาก WordPress นั้นได้ทำการเข้ารหัส password ของเราไว้นั้นเอง ดังนั้นควรจดจำรหัสเข้าระบบให้ดีก่อนครับ แล้วเราก็จะเข้าไปแก้ไข เปลี่ยนอีกที ก็ไม่เป็นไรครับ

 

[ภาพที่ 7]

           ในภาพที่ 7 ก็แสดงว่าทุกท่าน สามารถเข้าสู่ BackEnd ของ WordPress 2.3.1 ได้เรียบร้อยกันทุกคนน่ะครับ ส่วนวิธีการใช้ หรือ เมนูต่าง ๆ นั้น ผมจะเอามาอธิบายให้อีกครั้งในบทความต่อไปละกันน่ะครับ ^^"

[ภาพที่ 8]

           ภาพที่ 8 นั้นเป็น Plugins หรือเรียกได้ว่า เป็นเครื่องมือสำคัญ ในการเปิด ระบบต่าง ๆ ของ WordPress ให้ทำงาน หรือสามารถหาโหลดเพิ่มเติมได้ครับ เนื่องจากเป็น Opensource มีหลายตัวที่น่าสนใจ และให้ใช้ได้ฟรี ๆ เลยละครับ แต่ในบางอันก็ฟรี แต่ต้องไปสมัคร ผ่านหน้าเว็ป WordPress Office Site กันก่อนน่ะครับ เผื่อขอรับ Activate ID เพื่อมาเปิดการทำงานของ Plugins บางตัวครับ ในตอนต่อไป ผมจะมาแนะนำ Plugins ที่น่าสนใจ ให้ได้ลองเล่นกันครับ จะได้ทำให้เว็ป ของทุกท่าน มีอะไรที่ไม่แพ้ Mambo เลยครับ ผมรับลองได้เลย ^^

[ภาพที่ 9]

           ส่วนภาพที่ 9 นั้นเป็นการอธิบาย WordPress 2.3.1 Feature รวม ๆ ให้ได้รู้กันครับ ว่ามีข้อดี อะไรบ้าง หรือสามารถทำอะไรได้บ้าง ยกตัวอย่างเช่น
           1. Free : อ่า...ฟรีนั่นเองครับ ^^
           2. Themes : ธีม ที่หลากหลายและมีให้เปลี่ยนกันแทบไม่เว้นแต่ละวันเลยครับ
           3. Tag : อันนี้เป็น web 2.0 หรือที่เรียกกันสั้น ๆ ว่า "TagCloud" น่ะครับ
           4. Stats System / Spam / Blog Members etc อีกมากมายครับ

 

 [ภาพที่ 10]

           ก็มาถึง รูปสุดท้ายกันแล้วน่ะครับ นั่นคือ WordPress Office Site นั่นเอง มีอธิบายวิธีการใช้งานของ WordPress และไว้สำหรับ download WordPress new version และอื่น ๆ อีกมากมายเลยครับ ถ้าสนใจหาข้อมูลเพิ่มเติม ก็ที่นี่เลยครับ มีเครื่องมือ และ plugins / themes ไว้ให้ได้โหลดกันมากเลยทีเดียวครับ

           หวังว่า คงจะช่วยให้บางคนที่สนใจจะทำเว็ปไซต์ขึ้นมาเป็นของตนเอง ได้มีทางเลือกที่เพิ่มขึ้นอีกน่ะครับ แล้วก็หวังว่าจะช่วยอะไรได้ไม่มากก็น้อย สำหรับคนที่เคยเล่น กับ WordPress 2.3.1 ตัวนี้กันมาแล้วน่ะครับ ขอบคุณครับ

 

Name : Eknarong Nukaew
Position : Blogger Editor
URL : www.bonaach.com |www.traveltriptalk.com|
         www.triphunting.com | www.travelselected.com
Email : hi@bonaach.com 

 

It Solution/Business Solution/Business Consulting

posted on 09 Nov 2007 01:03 by bonaachsolution

Consulting on programming and IT solutions to amplify business competitive advantage 
    ให้คำปรึกษา แนะนำระบบสารสนเทศ คอมพิวเตอร์และโปรแกรมต่าง ๆ เพื่อเพิ่ม ประสิทธิภาพในทางธุรกิจ วิเคราะห์และนำเสนอระบบสารสนเทศที่ช่วยเพิ่มประสิทธิภาพในการทำงานขององค์กรตั้งแต่ระดับปฏิบัติการ ที่ช่วยลดระยะเวลาการทำงานและลดต้นทุน ไปจนถึงระดับผู้บริหารที่ช่วยนำเสนอข้อมูลในการตัดสินใจ การทำการตลาดออนไลน์หรือ E-Marketing และการจัดทำเว็บไซต์รวมไปถึงอินทราเน็ตเพื่อขยายช่องทางในการเข้าถึงลูกค้าและเพิ่มศักยภาพในการบริหารงานและข้อมูลขององค์กร

Website Design and Development 
    บริการออกแบบและพัฒนาระบบโปรแกรมและเว็บไซต์ 

Web based Application Development 
    บริการออกแบบและพัฒนาระบบโปรแกรมที่ใช้บน เว็บไซต์และเครือข่าย อินเตอร์เน็ท บริการออกแบบและพัฒนาระบบโปรแกรมที่ใช้บนเว็บไซต์และเครือข่ายอินเตอร์เน็ท เพื่อสนับสนุนการทำการตลาดออนไลน์ (E- Marketing) และการทำเว็บไซต์พร้อม โปรแกรมต่าง ๆ ให้ตรงตามความต้องการของคุณ 

Room Reservation & Allotment Program 
    ระบบบริหารการจองห้องพัก

Web Package and e-commerce solution 
    บริการโปรแกรมสร้างเว็บไซต์สำเร็จรูปและเครื่องมือธุรกิจออนไลน์ บริการโปรแกรมทำเว็บไซต์สำเร็จรูปสำหรับผู้สนใจ พร้อมทั้งระบบที่ช่วยในการทำ ธุรกิจออนไลน์และการตลาดออนไลน์ (E-Marketing) เพื่อเตรียมความพร้อมให้คุณก้าว สู่โลกอินเตอร์เน็ตอย่างมั่นใจ
 
Document Management 
    ระบบบริหารจัดการเอกสารอิเล็กทรอนิกส์ เพิ่มขีดความสามารถของการดำเนินงานทางธุรกิจด้วยระบบบริหารจัดการเอกสาร อิเล็กทรอนิกส์ที่จะช่วยให้งานเอกสารทั่วไปเป็นเรื่องที่ง่ายขึ้น สะดวกและรวดเร็วยิ่งขึ้น ให้คุณสร้างข้อได้เปรียบทางธุรกิจด้วยการลดค่าใช้จ่ายในระยะยาวของการจัดการ เอกสารและการใช้เอกสาร และเพิ่มขีดความสามารถในการแข่งขันด้วยการตอบสนอง ต่อลูกค้าหรือผู้มา ติดต่อได้รวดเร็วและเป็นระบบยิ่งขึ้น ช่วยลดปัญหาภาวะโลกร้อนด้วย การลดปริมาณการใช้กระดาษ 

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

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

Web analytics program 
    ให้คำปรึกษาและวิเคราะห์เว็บไซต์ บริการให้คำปรึกษาและติดตั้งโปรแกรมวิเคราะห์สถิติของเว็บไซต์ เพื่อนำข้อมูลไปใช้ ในการวางแผนการตลาดสำหรับเว็บไซต์ของคุณหลังจากทำเว็บไซต์สำเร็จและนำขึ้นสู่ อินเตอร์เน็ตแล้ว การวิเคราะห์ข้อมูลเพื่อนำไปใช้ทำการตลาดออนไลน์ (E-Marketing) ก็ถือเป็นส่วนสำคัญในการทำเว็บไซต์ของคุณให้เป็นที่รู้จักและมีผู้เข้าชมมากขึ้นเพื่อให้ บรรลุวัตถุประสงค์ที่ต้องการจัดทำเว็บไซต์ 

Website Promotion, Online Advertising and Search Engine Marketing 
ให้บริการแนะนำและโปรโมทเว็บไซต์ ให้คำปรึกษาและคำแนะนำในการจัดทำเว็บไซต์และโปรโมทเว็บไซต์ของคุณ ด้วยกล ยุทธ์ต่าง ๆ ในการทำการตลาดออนไลน์ (E-Marketing) เช่น SEO, Adwords เป็นต้น เพื่อให้การจัดทำเว็บไซต์ของคุณไม่สูญเปล่า และบรรลุวัตถุประสงค์ของการทำ เว็บไซต์ตามที่คุณต้องการ 

Corporate Blog Service and Outsource Bloggers 
สร้างบล็อกองค์กรและพร้อมทีมสนับสนุนดูแลระบบ สร้างแหล่งติดต่อแลกเปลี่ยนข้อมูลของบริษัทคุณกับบุคคลภายนอก เพิ่มช่องทางการ สื่อสารกับลูกค้าของคุณด้วยเครื่องมือต้นทุนต่ำแต่ได้ผล ด้วยการให้บริการสร้างบล็อก องค์กรและทีมสนับสนุนดูแลระบบที่จะช่วยให้การทำบล็อกเป็นเรื่องง่ายขึ้น หนึ่งใน เครื่องมือที่มีประสิทธิภาพนอกเหนือจากการทำเว็บไซต์และการทำการตลาดออนไลน์ (E-Marketing) วิธีอื่น 

Domain Name Registration & Web Hosting 
รับจดทะเบียนโดเมนเนม เช่าโฮสเพื่อจัดทำเว็บไซต์ ให้บริการจดทะเบียนโดเมนเนม และเช่าโฮสติ้ง เพื่อจัดทำเว็บไซต์เพื่อการให้บริการออนไลน์แบบครบวงจร

Consulting on any business aspects 
ให้คำปรึกษาทางธุรกิจทุกประเภท สร้างความมั่นใจในทุกย่างก้าวของการตัดสินใจ จากทีมงานผู้เชี่ยวชาญพร้อมทั้งคำแนะนำที่สามารถปฏิบัติได้จริงและเห็นผล รวมทั้งขยายผลเพื่อให้ครอบคลุมและทันกับโลกปัจจุบันด้วยการผสานเทคโนโลยีทางด้าน IT เช่นการจัดทำเว็บไซต์/อินทราเน็ตหรือเว็บ Application และการจัดทำการตลาดออนไลน์ (E-Marketing) 

Online business one-stop service consulting
ให้คำปรึกษาการทำธุรกิจออนไลน์ครบวงจร เพิ่มขีดความสามารถในการสร้างผลกำไรจากการทำการตลาดออนไลน์ด้วยคำแนะนำ จากผู้เชี่ยวชาญที่มีประสบการณ์ ที่จะทำให้องค์กรของคุณเข้าสู่ตลาดระดับสากลด้วย กลยุทธ์ที่เหมาะกับองค์กร ด้วยผู้เชี่ยวชาญในด้านการจัดทำเว็บไซต์และการตลาด ออนไลน์ (E-Marketing)

Business Plan, Marketing Plan focus on IT related business
วางแผนการตลาดและบริการทางการตลาดมุ่งเน้นตลาดไอที วิเคราะห์ และวางแผนการตลาด แผนธุรกิจ ด้วยกลยุทธ์ที่โดดเด่นเพื่อการกระตุ้น ยอดขายและสร้างรากฐานอันมั่นคงในการบริหารงาน เช่นการประยุกต์ใช้การจัดทำ เว็บไซต์กับการทำ E-Marketing เพื่อให้ทันกับกระแสการเปลี่ยนแปลงในวงการ IT ยุค ใหม่ 

about bonaach mission and vision
บริษัทโบนาช โซลูชั่น จำกัดผู้ให้บริการที่ปรึกษาทางด้านธุรกิจ เราเชี่ยวชาญในธุรกิจ IT และการผสมศาสตร์และศิลป์ของแนวคิดทางการตลาดกับเทคโนโนยีสมัยใหม่ ด้วยกลยุทธ์ที่ออกแบบให้เหมาะกับธุรกิจของคุณโดยเฉพาะ มุ่งเน้นการพัฒนาความสามารถในการแข่งขันขององค์กรแบบครบวงจร และการวางแผนการตลาดที่รองรับการเปลี่ยนแปลงในโลกธุรกิจปัจจุบัน คุณสามารถมั่นใจได้ว่าธุรกิจของคุณจะก้าวไปสู่แนวหน้าของการแข่งขันอย่างมั่นคง

Name : Eknarong Nukaew
Position : Web Editor and Programmer
URL : www.traveltriptalk.com| www.triphunting.com
          www.bonaach.com | www.travelselected.com
Email : hi@bonaach.com

 มาทำความรู้จักกับคำว่า OOP หรือ Object Oriented Programming กันดีกว่า

Object oriented programming
(โดยใช้ syntax แบบ C++)

OOP คือการมองทุกอย่างให้เป็น object ซึ่งแบ่งได้เป็น
   1. Object ที่เป็น รูปธรรม เช่น คน,ใบรายการสินค้า
   2. Object ที่เป็น นามธรรม เช่น ความเป็นเจ้าของ,เที่ยวบิน เป็นต้น

ทุก object จะประกอบด้วย 2 ส่วนคือ
1. Attribute (object data) – เป็นส่วนที่ใช้ในการเก็บข้อมูลต่างๆของ object เช่น รถ มี attribute คือ ยี่ห้อรถ,ชื่อรุ่น,สี เป็นต้น
2. Method (object behavior) – เป็นสิ่งที่ object นั้นสามารถทำได้ เช่น รถ สามารถ เพิ่มความเร็ว,ชะลอความเร็ว,หยุด,เปลี่ยนเกียร์ เป็นต้น

หลักการสำคัญของ OOP
1. Data hiding คือ ปกปิด source code ส่วนหนึ่งไว้ไม่ให้ผู้ที่ไม่เกี่ยวข้องสามารถเข้าถึง หรือแก้ไขข้อมูลได้โดยตรง ซึ่งจะต้องบอกคำสงวนในการควมคุมการเข้าถึงข้อมูล
   - Public สามารถเข้าถึงได้จากทุกๆที่ของโปรแกรม
   - Private ไม่สามารถเข้าถึงได้จากภายนอก class ส่วนมากจะใช้กับ attribute ของ class
2. encapsulation นั่นคือ attribute ต่างๆภายใน class นั้นจะไม่สามารถถูกเปลี่ยนแปลงค่าได้จากภายนอก class การเปลี่ยนแปลงค่าของ attribute จะสามารถทำได้จากการเรียก method ภายใน class เท่านั้น ซึงคือการกำหนดด้วยคำสงวน private นั่นเอง
3. inheritance & reusable คือการ นำ source code ส่วนที่มีการใช้ซ้ำๆนำกลับมาใช้ใหม่
การนำกลับมาใช้ใหม่ แบ่งได้เป็น 2 กรณี
3.1 inheritance (การสืบทอดจากคลาสหลัก/ is-a relationship)
   - superclass (base class/classหลัก)/subclass (derived class/classสืบทอด)
   - superclass อาจเรียกได้ว่าเป็น classพ่อ
   - subclass อาจเรียกได้ว่าเป็น class ลูก class ลูกจะมี attribute/method เพิ่มเติมจากclass พ่อ

    สามารถเป็นได้ทั้ง single inheritance คลาสลูกมีคลาสพ่อเพียงคลาสเดียว และ multiple inheritance คลาสลูกมีคลาสพ่อหลายคลาส เช่น ในระบบของโรงพยาบาล
   - คลาสพนักงาน จะประกอบด้วย attribute ชื่อ/รหัสประจำตัวพนักงาน
   - คลาสหมอ จะประกอบด้วย ชื่อ/รหัสประจำตัวพนักงาน/สาขาที่เชียวชาญ

     จะเห็นได้ว่ามีกานซ้ำซ้อนของการใช้ attribute ของ class ทั้ง 2 เนื่องจากคลาสพนักงานมีแต่ attribute ที่เหมือนกันกับ attribute ของ คลาสหมอ ดังนั้นเราสามารถทำให้ คลาสพนักงาน เป้น superclass ของ คลาสหมอได้

3.2 composition (has-a relationship) เป็นการนำ class ที่มีอยู่เดิมมาเป็น attribute ของ class ใหม่ เช่น คลาสรถยนต์ ประกอบด้วย คลาสเครื่องยนต์ คลาสตัวถัง คลาสล้อรถ

4. polymorphism ใช้ได้กับการสืบทอดแบบ is-a เท่านั้น คือการที่คลาสพ่อมี method ที่ภายในไม่มีการ implement ใดๆ เมื่อคลาสลูกสืบทอดคุณสมบัติไป คลาสลูกได้มีการเพิ่มส่วนของการ implement ใน method นั้น

*object ของคลาสที่มีคลาสพ่อคลาสเดียวกันทั้งๆที่เรียก method ชื่อเดียวกันกลับได้ผลลัพ์ที่แตกต่างกัน โดย obj ของคลาสก็จะดู method นี้ภายในคลาสของตนเท่านั้น

     เช่น คลาสรูปภาพ มี method drawPicture ซึ่งเป็น functionที่ว่างเปล่าไว้ (เรียกว่าเป็น abstract function) เมื่อคลาสวงกลมมาสืบทอดต่อจากคลาสรูปภาพ method ที่ชื่อ drawPicture ได้เพิ่มส่วนของการ implement เป็นการวาดวงกลม และมีคลาสสี่เหลี่ยม สืบทอดต่อจากคลาสรูปภาพ แต่ method drawPicture ของคลาสสี่เหลี่ยม ได้เพิ่มส่วนของการ implement เป็นการวาดรูปสี่เหลี่ยมให้ เมื่อobj ของคลาสวงกลมมาเรียกใช้ method drawPicture จะได้รูปวงกลม ถ้าobj คลาสสี่เหลี่ยมมาเรียกใช้ method drawPicture จะได้รูปสี่เหลี่ยม

ความสัมพันธ์ระหว่างคลาส
1. association
เป็นความสัมพันธ์แบบรู้จักกันเฉยๆ สามารถทำงานแยกกันได้อย่างอิสระ แต่ประกอบกันเพื่อให้ได้การทำงานที่สมบูรณ์ อาจรู้จักเพื่อให้เรียกใช้งาน method ที่มีในอีกคลาสได้ เช่น คลาสของพนักงานต้องรู้จักคลาสคำนวณยอดเงิน เพื่อที่จะสามารถใช้ method ที่เป็นการคำนวณเงินเดือนในคลาสคำนวณยอดเงินได้ เนื่องจากภายในคลาสพนักงานไม่มีส่วนของการคำนวณเงินเดือน และ คลาสคำนวณยอดเงินเป็นคลาสที่จะเก็บ method ที่ใช้ในการคำนวณเกี่ยวกับยอดเงินต่างๆภายในบริษัท

2. aggregation  สัมพันธ์กันเชิงเป็นส่วนประกอบ
    2.1 composition เป็นความสัมพันธ์ที่คลาส 1 หรือมากกว่า 1 เป็นส่วนประกอบย่อยของคลาสที่มีขนาดใหญ่กว่า และส่วนประกอบนี้ คลาสใหญ่ไม่สามารถขาดได้ เช่น คลาสรถ ต้องมี คลาสล้อ/คลาสเครื่องยนต์ เป็นต้นถ้าขาดสิ่งพวกนี้รถก็จะไม่สามารถเรียกได้ว่าเป็นรถ
   2.2 contain เป็นความสัมพันธ์ที่คลาส 1 หรือมากกว่า 1 เป็นส่วนประกอบย่อยของคลาสที่มีขนาดใหญ่กว่า และส่วนประกอบนี้ คลาสใหญ่สามารถขาดได้ ขาดไปก็ไม่ส่งผลต่อคลาสนั้น เช่น คลาสรถ มีคลาสคนขับรถ อยู่เป็นส่วนประกอบด้วยแต่ถ้ารถขาดคนขับไป รถก็ยังสามารถเรียกได้ว่าเป็นรถอยู่

Interface และ implement

Interface คือส่วนที่ประกาศเป็น public สามารถเข้าถึงได้จากภายนอกคลาส เป็นส่วนที่เปิดให้รับรู้ว่าคลาสนี้ทำอะไรได้บ้าง ซึ่งไม่จำเป็นต้องรับรู้ว่าคลาสนี้ทำงานอย่าง 1 โดยใช้กระบวนการอะไร


Implement คือส่วนที่ประกาศเป็น private หรือ โค้ดต่างๆภายใน method ของคลาส เป็นส่วนที่ถูกซ่อนไว้ไม่สามารถเห็นได้จากภายนอกคลาส ถ้าเกิดมีการเปลี่ยนแปลง implement จะไม่มีผลกระทบต่อ user เพราะ user ติดต่อคลาสผ่าน interface เท่านั้น

เช่น เตาปิ้งขนมปัง เปิดให้ผู้คนรับรูว่าถ้าใส่ขนมปังลงในเตาปิ้งแล้วขนมปังจะถูกทำให้กรอบ ถือว่านี่เป็นส่วนของ interface คือทุกคนรับรู้ว่ามันทำอะไรได้ แต่การที่เตาปิ้งใช้วิธีการให้ความร้อนผ่านขดลวดแล้วส่งความร้อนไปยังขนามปังจนทำให้ขนมปังกรอบนั่นผู้ใช้เตาปิ้งขนมปังไม่จำเป็นต้องรับรู้ในส่วนนี้ ถือว่าวิธีกานที่ทำให้ขนมปังกรอบนี้เป็นส่วนของ implement

Class
     เป็นแม่แบบของ object ก่อนที่จะสร้าง object ได้ก็ต้องมี class เสียก่อน object เป็น object ของ classใดก็จะมีคุณสมบัติ(attribute) และสามารถทำพฤติกรรม (method) ได้เหมือนที่ class มี
เช่น

Class number
{
Private value; Public number(){ };
Public void setValue(int v) { value = v};
Public void getValue() {return value};
}

Main program
{
number a;
ประกาศ object ชื่อ a เป็น type number a.setValue(10);
obj ‘a’ สามารถเรียกใช้ method ต่างๆที่มีใน class number ได้ a.getValue();
}

Constructor
เป็น method พิเศษในคลาสทีจะกำหนดค่าเริ่มต้นให้แก่ attribute ต่างๆภายในคลาส ข้อกำหนดของ constructor
1. เป็น method ที่ชื่อเดียวกับชื่อคลาส
2. ไม่มีการ return ค่าใดๆ
3. ประกาศการเข้าถึงเป็นแบบ public

แบ่งประเภทของ constructor เป็น
1. default constructor เป็น constructor ที่ไม่มีส่วนของ implement ภายใน เช่น

Class number
{
   Private value;
   Public number(){ };
   Public void setValue(int v) { value = v}; 
   Public void getValue() {return value};
}

Main program
{
    number a = new number(); สร้าง object แบบ dynamic โดยเรียกใช้ default constructor
}

*object แบบ dynamic เป็นการจองพื้นที่ในหน่วยความจำตอน runtime

2. multiple constructor เป็น constructor ที่มีส่วน implement ภายในซึ่งอาจมีการรับค่า parameter หรือไม่มีก็ได้ เช่น


Class number
{
Private value; Public number(){ value = 0};
Public number(int v){value = v;};
Public void setValue(int v) { value = v;};
Public void getValue() {return value};
}

Main program
{
   number a = new number(); 
  สร้าง object แบบ dynamic โดยเรียกใช้ constructor ที่ไม่มีการรับ parameter attribute ชื่อvalueมีค่าเป็น 0

   number a = new number(9);
   สร้าง object แบบ dynamic โดยเรียกใช้ constructor ที่มีการรับ parameter attribute ชื่อvalueมีค่าเป็น 9
}

Overloading method
คือ method ที่ใช้ชื่อซ้ำกันแต่ค่า parameter ที่รับมีความแตกต่างกัน ซึ่งโปรแกรมจะเลือกว่าเป็นการเรียก method ใดโดยดูจาก parameter ที่รับเข้ามา เช่น
Public getStudentName(string StudentLastName);
Public getStudentName(int StudentNO);

ดังนั้นเพื่อที่จะให้ผู้ใช้สามารถเข้าถึง method ได้ผู้ใช้จะต้องรู้
1. ชื่อของ method
2. Parameter ของ method

การเรียก method ของ object นั้นคล้ายกับการ call function แต่ oop จะเป็นการให้ object นั้นทำ method ของตนเอง เช่น

   Line 1 :Employee em01;
   Line 2 :em01.setName(“David”); 
   Line 2 เป็นการส่ง message ให้ object ของ Employee ที่ชื่อว่า em01 เรียกใช้ method setName ของตัวมันเองซึ่งมี argument เป็น “David”

รูปแบบการเรียกใช้ method : ชื่อobject . ชื่อmethod

Accessor
คือ method ที่ให้ read หรือ write attribute ใน คลาสนั้นๆ ซึ่งมักจะตั้งชื่อเป็น

   Set….() เป็นการ write ค่าให้ attribute
   Get….(return….;) เป็นการ read ค่าใน attribute

การสื่อสารระหว่าง object
   
การที่ object 2 ประเภทจะติดต่อสื่อสารกันได้ จะต้องมี object ตัวหนึ่งเป็น sender ซึ่งเป็นผู้ส่ง message ไปยัง object อีกตัวหนึ่งซึ่งเป็น receiver โดยที่ sender จะต้องรู้จักกับ object ที่เป็น receiver เสียก่อน แล้ว object ที่เป็น receiver เมื่อได้รับ message จะ return value กลับมาให้ sender หรือไม่ก็ได้
เช่น
    กรณีที่มีการ return value : object School ส่ง messageสอบถามรายชื่อนักเรียน ไปยัง object Student object Student ก็จะส่งข้อมูลรายชื่อนักเรียนทั้งหมดกลับไป

    กรณีที่ไม่มีการ return value : object School ส่ง messageต้องการเปลี่ยนชื่อนักเรียน ที่มีรหัสประจำตัว คือ XX เป็นชื่อ YYY ไปยัง object Student object Student จะทำการเปลี่ยน attribute ชื่อของนักเรียนที่มีรหัส 1 เป็นชื่อที่กำหนด โดยที่ object School ไม่สนใจว่า object Student จะ return ค่าใดๆกลับมา

Name : Eknarong Nukaew
Position : Web Editor and Programmer
URL : www.traveltriptalk.com| www.triphunting.com          
         www.bonaach.com | www.travelselected.com

Email : hi@bonaach.com  
 

edit @ 5 Nov 2007 18:02:25 by bonaachsolution