วันเสาร์ที่ 25 กรกฎาคม พ.ศ. 2558

คำถามท้ายบท
      รายวิชาการจัดการสารสนเทศยุคใหม่ในชีวิตประจำวัน    รหัสวิชา 0026 008    กลุ่มเรียนที่  1
               ชื่อ  นายครินทร์  ยืนคง  รหัสนิสิต 56011215023
               สาขาวิทยาการคอมพิวเตอร์  คณะวิทยาการสารสนเทศ ระบบปกติ

วันพุธที่ 1 กรกฎาคม พ.ศ. 2558

สรุปหลักการสำคัญของโปรแกรมเชิงวัตถุ (OOP)

สรุปหลักการสำคัญของโปรแกรมเชิงวัตถุ (OOP)

- Abstraction   การนิยาม variables และ methods ที่จำเป็น มาสร้าง class แม่
- Polymorphism   การใช้ object เรียกใช้ method ชื่อเดียวกัน เช่น d.speak();    s.speak(); แต่สามารถทำงานได้หลายอย่างซึ่งคล้ายกัน แต่ก็แตกต่างกันในรายละเอียด   (d.speak(); “ฮ่ง-ฮ่ง-ฮ่ง”    s.speak(); “ขอมอบเพลงนี้เพื่อคุณ”)
- Inheritance   การสร้าง class ลูก โดยวิธีสืบทอด variables และ methods ของ class แม่ ส่งผลให้เขียนโปรแกรมง่ายขึ้น เร็วขึ้น ผิดพลาดน้อยลง
- Encapsulation   การซ่อนบาง variables และ methods (เช่น ประกาศเป็น private ภายใน class) ไม่ให้คนอื่นเข้าถึง หรือแก้ไขได้ (ไม่จำเป็นต้องรู้/เข้าถึง ก็ใช้โปรแกรมได้ง่าย สะดวก ถ้ารู้จะงง เกะกะ สับสน ใช้โปรแกรมยาก เปรียบเสมือนรถยนต์ เขาซ่อนเครื่องยนต์ แบตเตอรี่ สายไฟ หม้อน้ำ และอื่นๆ ที่เกะกะไว้ใต้ฝากระโปรงรถ โผล่แต่พวงมาลัย เกียร์ ให้คนขับใช้ก็พอ)

หลักการเขียน Program เชิงวัตถุ (OOP)

หลักการเขียน Program เชิงวัตถุ (OOP).

วามคิดหลักที่สำคัญของการเขียนโปรแกรมเชิงวัตถุคือ คลาส (Class) และ ออบเจ็กต์ (Object)
Class คือตัวที่กำหนดโครงสร้างและพฤติกรรมของวัตถุ เมื่อต้องการนำไปใช้จริง เราต้องสร้าง instance ของ Class นั้นขึ้นมา instance ที่สร้างขึ้นมานั้นก็คือ Object นั่นเอง
ถ้าเปรียบ Class คือ โครงสร้างและ พฤติกรรมของวัตถุประเภทหนึ่ง instance หรือ Object ในภาษาเชิงวัตถุก็เปรียบเสมือนตัวแปร ในภาษาทั่วๆ ไป และ Class ก็คือชนิดข้อมูลนั่นเอง
Class เปรียบเสมือน พิมพ์เขียว ที่ กำหนดโครงสร้าง และแบบแปลน ต่าง ๆ ว่า Object ที่สร้างจาก Class ควรจะมีอะไรบ้าง
Object คือ instance ที่สร้างขึ้นมาจาก Class ใด Class หนึ่ง
** Class ไม่สามารถนำไปใช้ต่อได้ จะใช้ได้ก็ต่อเมื่อถูกสร้างเป็น Object แล้วเท่านั้น **

OOP คืออะไร



OOP คืออะไร 

              ทุกวันนี้เราอยู่ในยุคของการเขียนโปรแกรมแบบ Object-Oriented  ภาษาไหนๆก็เป็นภาษาแบบออบเจกต์แทบทั้งนั้น ไม่ว่าจะเป็น Java, Ruby, Python, PHP, JavaScript หรืออื่นๆล้วนแล้วแต่เขียนเป็นออบเจกต์ได้ทั้งนั้น (บางภาษาอาจเป็นได้มากกว่า Object-Oriented) แต่แล้วการเขียนโปรแกรมแบบ Object-Oriented มันคืออะไรกันแน่หลายคนยังคงหาคำตอบไม่ได้ อ่านหนังสือก็แล้ว เรียนในห้องมาก็แล้ว หรือแม้แต่ทำงานเขียนโปรแกรมอยู่แล้ว ก็ยังไม่รู้ว่าจริงๆแล้วมันคืออะไร เราได้อะไรจากมัน แล้วที่เราเขียนอยู่นี้หล่ะ ใช่เขียนเป็นออบเจกต์รึเปล่า!!! ในบทความนี้ผมจะอธิบายให้คุณเห็นว่าแท้จริงแล้วมันคืออะไร มันอาจไม่ใช่ที่เราเคยเข้าใจกันมาหรือมันอาจง่ายกว่าที่เราคิดไว้ก็ได้               แล้วตกลง OOP คืออะไรกันแน่ ? บางคนก็ว่ามันคือการเขียนโปรแกรมเชิงวัตถุ ก็แน่หล่ะก็นี่คือคำแปลตรงตามตัวเลยนิครับ บ้างก็ว่ามันคือ Encapsulation, Inheritance, Polymorphism อันนี้ยิ่งไปกันใหญ่ ถามว่าถูกมั๊ย มันก็ไม่ผิดอะไร เพราะเรียน OOP ทีไรก็มีชื่อเท่ๆเหล่านี้เสมอ แต่แล้วเจ้าชื่อเรียกเท่ๆยาวๆเหล่านั้นมันคืออะไร? เราได้อะไรจากมัน? ตอบได้ไหมครับลืมมันไปก่อนเถอะครับ มันเป็นแค่ฟีเจอร์ทางภาษาเท่านั้น เพราะถึงแม้คุณจะเขียนโค้ด Abstract, Polymorphism หรืออื่นๆ คุณก็ไม่ได้ประโยชน์อะไรจากมันถ้าคุณยังไม่เข้าใจหัวใจหลัก (BASIC PRINCIPLE) ของ OOP ยกตัวอย่างเช่น คุณใส่ฟีเจอร์ทางภาษาเข้าไป แต่โค้ดมันยังเป็นสปาเก็ตตี้อยู่ก็เท่านั้น ถูกไหมครับ เจ้าฟีเจอร์ทางภาษามันแค่ช่วยเสริมหัวใจหลักให้ดียิ่งขึ้นเท่านั้นเอง


มารู้จักกับคำว่า OOP ( Object Oriented Programming ) คืออะไรกันแน่ !


เรื่อง มารู้จักกับคำว่า OOP ( Object Oriented Programming ) คืออะไรกันแน่ !

รายละเอียดเนื้อหา
1. OOP คืออะไร
2. หลักการเขียน Program เชิงวัตถุ (OOP)
     2.1 สมาชิกของ Class (Class Member)
    2.2 ขอบเขตการเข้าถึง (Access Modifier )
3. สรุปหลักการสำคัญของโปรแกรมเชิงวัตถุ (OOP)
URL : http://oop-learning.blogspot.com

แหล่งที่มา
nongpla “ภาษา JAVA เบื้องต้น4 ก.ย. 56. https://nongtha57.wordpress.com/power-oint-java. 
วันที่ค้นหา 26 มิ.ย. 58.
Somboon Patntirapong “OBJECT-ORIENTED PROGRAMMING (OOP) คืออะไรกันแน่?”
26 ธ.ค. 56. http://www.kontentblue.com/site/article/article?id=oop-what-is.
วันที่ค้นหา 26 มิ.ย. 58.
Eknarong Nukaew มาทำความรู้จักกับคำว่า OOP หรือ Object Oriented Programming กันดีกว่า” 20 พ.ย. 50. http://www.oknation.net/blog/bonaachsolution/2007/11/20/entry-1.
วันที่ค้นหา 26 มิ.ย. 58.