ประเภทของโปรแกรมย่อย
ประเภทของโปรแกรมย่อย (Procedure) เป็นส่วนหนึ่งของโปรแกรม มีหน้าที่เฉพาะตัวโดยแยกการทำงานออกจาก โปรแกรมอย่างอิสระ
การเขียนโปรแกรมที่มีการทำงานแบบโปรแกรมย่อยจะช่วยลดความซับซ้อนของโปรแกรม ซึ่งจะทำให้สามารถแก้ไขและเพิ่มเติม การทำงานของโปรแกรมได้ง่ายขึ้น ในบางครั้งโปรแกรมหลักจะมีการส่งข้อมูลไปทำงานในโปรแกรมย่อยด้วย โดยข้อมูลนั้นจะเก็บอยู่ในรูป ตัวแปรพิเศษเรียกว่า พารามิเตอร์ (Parameter)
สามารแบ่งโปรแกรมย่อยได้ 2 ประเภท คือ
- Sub มาจากคำเต็มว่า ซับรูทีน (Subroutine) เป็นโปรแกรมย่อยเมื่อทำงานแล้ว จะไม่มีการส่งผลการทำงานกลับไปยังโปรแกรม ที่เรียกซับรูทีนนี้ใช้งาน
- Function เป็นโปรแกรมย่อยเมื่อทำงานเสร็จแล้ว จะต้องมีการส่งผลการทำงานกลับไปยังโปรแกรมที่เรียกฟังก์ชันนี้ใช้งาน
โปรแกรมย่อยชนิดฟังก์ชัน
Function เป็นโปรแกรมย่อยที่เขียนขึ้นมาเพื่อการทำงานอย่างใดอย่างหนึ่ง โดยที่ไม่มีการรับพารามิเตอร์หรืออาจจะมีการรับพารามิเตอร์มาทำงานก็ได้ เมื่อทำงานเสร็จแล้วจะมีการส่งผลการทำงานกลับมายังโปรแกรมที่เรียกฟังก์ชันนั้นใช้งาน มีรูปในการเขียนฟังก์ชัน ดังนี้
ตัวอย่างการใช้งาน Function : ตัวอย่างนี้จะสร้างแอพพลิเคชันที่คำนวณผลตอบแทนจากการฝากเงินซึ่งผู้ใช้จะต้องกรอก เงินต้น อัตราดอกเบี้ย และจำนวนปีที่ฝาก
- 1. ออกแบบหน้าตาแอพพลิเคชัน และตั้งชื่อคอนโทรลต่างๆ ดังนี้
- 2. ดับเบิลคลิกที่ปุ่ม คำนวณ เพื่อคำนวณผลตอบแทนซึ่งจะมีการเรียกฟังก์ชัน CheckInput เพื่อตรวจสอบว่าข้อมูลที่กรอกเข้ามาเหมาะสมหรือไม่ ถ้าเหมาะสมนำมาคำนวณโดยเรียกใช้ ClacSaving
- 3. สำหรับฟังก์ชัน CheckInput ทำหน้าที่ตรวจสอบว่า ข้อมูลที่ผู้ใช้งานกรอกมาเหมาะสมหรือไม่โดยต้องเป็นตัวเลขที่มากกว่า 0 ทุกตัว และถ้าเป็น ดอกเบี้ยให้มีค่าระหว่าง 0 ถึง 100 โดยฟังก์ชันนี้จะรีเทิร์นค่าเป็น True หรือ False
- 4. สำหรับฟังก์ชัน CalaSaving จะทำหน้าที่คำนวณผลตอบแทนเงินฝาก โดยจะคำนวณให้เห็นในระยะเวลาตั้งแต่ปีที่ 1 ถึงปีที่กำหนดไว้ นั้นยอดเงินฝากเป็นเท่าใด
- 5. ดับเบิลคลิกปุ่ม เคลียร์ แล้วเขียนโค้ดเพื่อเคลียร์ค่าข้อมูลใน TexBox ต่างๆ ดังนี้
- 6. ทดสอบการทำงานของแอพพลิเคชัน ได้ผลดังนี้
โปรแกรมย่อยชนิด sub
Sub เป็นโปรแกรมที่เขียนขึ้นมาเพื่อการทำงานอย่างใดอย่างหนึ่ง โดยที่ไม่มีการรับพารามิเตอร์หรืออาจจะมีการรับพารามิเตอร์มาทำงานก็ได้ แต่ไม่มีการส่งผลการทำงานกลับไปยังโปรแกรมที่เรียกซับรูทีนนี้ใช้งาน มีรูปแบบการเขียน Sub ดังนี้
ตัวอย่างการใช้งาน Subroutine : ตัวอย่างนี้จะสร้างแอพพลิเคชันแบบระบบลงทะเบียนซึ่งจะมีการใช้งาน Subroutine ที่เราเขียนขึ้นมา
- 1. ออกแบบหน้าตาแอพพลิเคชัน และตั้งชื่อคอนโทรลต่างๆ ดังนี้
- 2. ดับเบิลคลิกที่ฟอร์มเพื่อเขียนโค้ดใน Even Load โดยจะเริ่มแนะนำให้ผู้ใช้งานทราบวิธีการทำงานโดยจะเรียก Sub ที่ชื่อว่า InformUser
- 3. ให้หน้าต่างโค้ดของ Sub InformUser โดยเขียนต่อท้ายไปได้เลย
- 4. ดับเบิลคลิกที่ปุ่ม ลงทะเบียน แล้วเขียนโค้ดเพื่อตรวจสอบความครบถ้วนถูกต้องของข้อมูลที่ป้อนเข้าไป ถ้าเรียบร้อยถือว่าลงทะเบียนได้ แต่ถ้าไม่เรียนร้อยแจ้งให้ผู้ใช้ทราบ
- 5 . สำหรับ Sub CheckPassword นั้นมีหลักการตรวจสอบความถูกต้องอยู่ 3 ข้อ ดังรายละเอียดที่แสดดงในโค้ดต่อไปนี้
- 6 . ดับเบิลคลิกปุ่ม เคลียร์ แล้วเขียนโค้ดเพื่อเคลียร์ค่าข้อมูลใน TexBox ต่างๆ ดังนี้
- 7 . กดปุ่ม F5 เพื่อทดสอบการทำงานของแอพพลิเคชัน ได้ผลดังนี้