การเปลี่ยนพฤติกรรมของ Class ขณะ Runtime

ก่อนอื่นในคราวนี้ ผู้เขียนจะขอลองเปลี่ยนไปเขียนเป็น C# แทน เนื่องจากตัว IDE ของ Visual Studio นั้น สามารถออกแบบ GUI(Graphics User Interface) ได้ง่ายกว่า IDE หลายๆตัวของ java มาก โดยผู้เขียน จะพยายามไม่ใช้ความสามารถบางชนิด ที่ภาษาอื่นๆบางภาษาไม่มี เพื่อความสะดวกในการทำความเข้าใจร่วมกัน (คนอ่าน: ไอคนเขียน จะสลับไปๆมาๆทำไมว๊ะ!!! คนเขียน: สลับไปเถอะ โค้ดเหมือนกันจะตาย = =)

เมื่อพูดถึงการเขียน Class ซึ่งเป็นหัวใจหลักของการเขียนโปรแกรมแบบ OOP แล้ว ก็คงมีหลายๆคนรู้สึกว่า การจะสร้าง Class ใดๆขึ้นมานั้น ถึงแม้ว่าเราจะสามารถออกแบบให้ Class ของเราทำงานได้อย่างดีแค่ไหนแล้ว แต่สุดท้ายก็ยังไม่สามารถทำให้ยืดหยุ่นได้

Continue Reading…

Abstract, Interface Programming

ก่อนหน้านี้ เราก็ได้มีการพูดถึงเรื่องของ OOP กันมาบ้างเล็กน้อย ซึ่งก็ทำให้เราได้รู้ว่า คุณลักษณะสำคัญต่างๆของ OOP ที่จำเป็นต้องมีนั้น ก็ประกอบด้วย Encapsulation, Inheritance และ Polymorphism ซึ่งแต่ละองค์ประกอบนั้น ก็ถูกแบ่งออกเป็นคุณลักษณะของแต่ละภาษาออกไปตามแต่ละไวยากรณ์ของภาษานั้นๆ แต่ก็ยังมีวิธีการทำงานที่คล้ายๆกันอยู่

บทความนี้ ซึ่งจะกล่าวถึง Abstract Class และ Interface Programming นั้น จะถือว่าถูกจัดอยู่ใน Polymorphism หรือก็คือความหลากหลายนั่นเอง ซึ่งจะอธิบายออกมาด้วยไวยากรณ์ของภาษา Java เพราะเป็นภาษาที่ทำความเข้าใจได้ง่ายกว่า C++ ในหลายๆลักษณะ และเป็นภาษาที่มีผู้เริ่มต้นในการศึกษาการโปรแกรมมิ่ง ศึกษาอยู่มากพอสมควร Continue Reading…