วันจันทร์ที่ 20 มีนาคม พ.ศ. 2560

Go Language Example 7

Go by Example: Methods

Go สนับสนุนวิธีการที่กำหนดไว้ใน struct types

• Method นี้มีวิธีรับประเภทของสัญญาณ * rect
 func (r *rect) area() int {
    return r.width * r.height
}
• สามารถกำหนดวิธีการสำหรับตัวบ่งชี้หรือตัวรับชนิดค่าได้
• ที่นี่เราเรียก 2 วิธีที่กำหนดไว้สำหรับ struct ของเรา
fmt.Println("area: ", r.area())
fmt.Println("perim:", r.perim()
• Go จัดการการแปลงระหว่างค่าและคำแนะนำสำหรับการเรียกเมธอดโดยอัตโนมัติ คุณอาจต้องการใช้ตัวรับประเภทตัวรับเพื่อหลีกเลี่ยงการคัดลอกการเรียกเมธหรืออนุญาตให้เมธอด mutate โครงสร้างที่รับ
• ต่อไปเราจะดูกลไกของ Go สำหรับการจัดกลุ่มและตั้งชื่อชุดของวิธีการที่เกี่ยวข้อง: interfaces

Go by Example: Interfaces
Interfaces เป็นคอลเลกชันชื่อลายเซ็นของโหมด



• ต่อไปนี้คือส่วนติดต่อพื้นฐานสำหรับรูปทรงเรขาคณิต

• สำหรับตัวอย่างของเราเราจะใช้อินเทอร์เฟซนี้ในรูปแบบ rect และ circle
• ในการใช้อินเทอร์เฟซใน Go เราจำเป็นต้องใช้วิธีการทั้งหมดในอินเทอร์เฟซ ที่นี่เราใช้เรขาคณิตใน rects
• การดำเนินการสำหรับวงกลม  func (c circle) area() float64 {
                                                   return math.Pi * c.radius * c.radius
}

• ถ้าตัวแปรมีประเภทอินเทอร์เฟซเราสามารถเรียกใช้เมธอดที่อยู่ในอินเทอร์เฟซที่มีชื่อได้ นี่คือฟังก์ชันการวัดทั่วไปที่ใช้ประโยชน์จากข้อมูลนี้เพื่อใช้กับรูปทรงเรขาคณิตใด ๆ
• วงกลมและประเภทโครงสร้างแบบทวิปใช้อินเตอร์เฟซเรขาคณิตเพื่อให้เราสามารถใช้อินสแตนซ์ของโครงสร้างเหล่านี้เป็นอาร์กิวเมนต์เพื่อวัดได้


Go by Example: Errors
• ใน Go เป็นสำนวนในการสื่อสารข้อผิดพลาดผ่านทางค่าที่ส่งคืนที่แยกต่างหากต่างหาก นี้ขัดแย้งกับข้อยกเว้นที่ใช้ในภาษาเช่น Java และ Ruby และค่าผลมากเกินไป / ค่าผิดพลาดบางครั้งใช้ในวิธีการของ C. Go ทำให้ง่ายต่อการดูที่หน้าที่ส่งกลับข้อผิดพลาดและจัดการกับพวกเขาโดยใช้โครงสร้างภาษาเดียวกันใช้สำหรับอื่น ๆ , งานที่ไม่ใช่ข้อผิดพลาด


• ตามข้อตกลงข้อผิดพลาดคือมูลค่าที่ส่งคืนล่าสุดและมีข้อผิดพลาดประเภทอินเทอร์เฟซในตัว
• ข้อผิดพลาดใหม่สร้างค่าข้อผิดพลาดพื้นฐานพร้อมกับข้อความแสดงข้อผิดพลาดที่ระบุ
• ค่าเป็นศูนย์ในตำแหน่งข้อผิดพลาดระบุว่าไม่มีข้อผิดพลาด
• เป็นไปได้ที่จะใช้ประเภทที่กำหนดเองเป็นข้อผิดพลาดโดยการใช้วิธีการ Error () ในไฟล์เหล่านั้น ต่อไปนี้คือตัวแปรในตัวอย่างข้างต้นที่ใช้ประเภทที่กำหนดเองเพื่อแสดงข้อผิดพลาดของอาร์กิวเมนต์อย่างชัดเจน
• ลูปสองแถวด้านล่างทดสอบแต่ละฟังก์ชันที่ส่งคืนข้อผิดพลาด โปรดทราบว่าการใช้การตรวจสอบข้อผิดพลาดแบบอินไลน์ในบรรทัด if เป็นสำนวนที่พบบ่อยในรหัส Go
• ถ้าคุณต้องการใช้ข้อมูลในข้อผิดพลาดที่กำหนดเองโดยทางโปรแกรมคุณจะต้องได้รับข้อผิดพลาดเป็นตัวอย่างของประเภทข้อผิดพลาดที่กำหนดเองผ่านการยืนยัน


Credit By :https://gobyexample.com/


ขอบคุณที่เข้ามาดูกันนะคับ


##########ฝากติดตามเพจของพวกเราด้วยนะคับ############




ไม่มีความคิดเห็น:

แสดงความคิดเห็น