‫ยินดีต้อนรับกลับ.
‫ในการบรรยายนี้ คุณจะได้เรียนรู้เกี่ยวกับวิธีการที่ไม่ระบุชื่อ
‫วิธีที่ไม่ระบุชื่อเป็นวิธีที่ไม่มีชื่อ
‫เอาล่ะใครได้มัน?
‫และสามารถกำหนดเมธอดนิรนามใน C sharp ได้โดยใช้คีย์เวิร์ดของผู้รับมอบสิทธิ์ และสามารถกำหนดให้กับตัวแปรของประเภทผู้รับมอบสิทธิ์ได้
‫ซึ่งหมายความว่าเราไม่ต้องกำหนดวิธีการของเราเองทุกครั้งที่ต้องการเรียกวิธีการที่ต้องการผู้รับมอบสิทธิ์
‫เนื่องจากบางทีเราต้องการเรียกมันเพียงครั้งเดียว
‫ดังนั้นการกำหนดผู้รับมอบสิทธิ์เฉพาะทุกครั้งที่เราต้องการสามารถทำลายโครงสร้างโค้ดได้อย่างรวดเร็ว
‫จากตัวอย่างก่อนหน้านี้ที่เราสร้างตัวกรองจำนวนมาก คุณอาจจำได้ว่านี่คือสำหรับผู้ใหญ่
‫เป็นรุ่นอาวุโส และสิ่งดีๆ ทั้งหมด
‫และตอนนี้ ไปข้างหน้าและสร้างตัวกรองเพิ่มเติมสองตัวที่เราสร้างนิพจน์บูลีนแบบกำหนดเองเป็นตัวกรองของเรา
‫และตัวกรองที่สองที่เราเพียงแค่แสดงรายการทั้งหมดในรายการของเรา
‫ไปที่วิธีการหลักของเราที่เราแสดงคนทั้งหมดใช่ไหม
‫เราเรียกวิธีนี้ที่นี่ และตอนนี้ เรามาสร้างผู้รับมอบสิทธิ์ตัวกรองใหม่
‫ฉันจะใช้ตัวกรองที่ได้รับมอบหมายจากตัวกรอง ซึ่งเป็นคำที่เราตั้งค่าไว้ด้านบนสุด
‫และคุณจะเห็นว่าจำเป็นต้องคืนค่าบูลีนและต้องมีบุคคลเป็นพารามิเตอร์
‫เรียกมันว่าตัวกรอง
‫และที่นี่ เราจำเป็นต้องใช้คีย์เวิร์ดของผู้รับมอบสิทธิ์อีกครั้ง จากนั้นเราจะใช้พารามิเตอร์ที่เราต้องส่งผ่าน
‫และคุณจะเห็นว่ามันยังคงบ่นอยู่ เพราะก่อนอื่น เราต้องเพิ่มเครื่องหมายอัฒภาคที่ด้านล่างสุด
‫แล้วเราต้องแน่ใจว่าเราคืนค่ากลับมา
‫ประเภทบูลีน
‫ดังนั้นไม่ใช่ทุกเส้นทางของรหัสที่คืนค่าในวิธีที่ไม่ระบุชื่อ
‫ดังนั้นมันจึงบอกวิธีนิรนามที่นี่แล้ว
‫สิ่งที่เรากำลังจะพูดก็แค่คืนค่า H โดยที่มันมากกว่าหรือเท่ากับ 20 และโดยที่
‫H น้อยกว่า 30
‫และเท่ากับ 30
‫ไม่เป็นไร.
‫ประมาณนั้นครับ
‫ดังนั้น เราจึงสร้างตัวแปรใหม่ที่เรียกว่า filter of type filter delegate
‫นี่ก็แค่ตัวแปร จริงไหม?
‫จากนั้นเราจะกำหนดวิธีการที่ไม่ระบุชื่อให้กับมันแทนวิธีการที่กำหนดไว้แล้ว
‫จากนั้นเราแค่ต้องแน่ใจว่าเราทำตามคำแนะนำของผู้รับมอบสิทธิ์ตัวกรองนั้น และนั่นคือการคืนค่าบูลีน
‫นั่นคือสิ่งที่เรากำลังทำอยู่
‫เรากำลังคืนค่า true ถ้าสองประโยคนี้เป็นจริง
‫ดังนั้นถ้าอายุมากกว่าหรือเท่ากับ 20 หรือน้อยกว่าและเท่ากับ 30
‫อย่าลืมเครื่องหมายอัฒภาคที่ส่วนท้าย
‫นั่นสำคัญมากที่นี่
‫มิฉะนั้นจะไม่ทำงานเพราะโดยพื้นฐานแล้วมันเหมือนกับการสร้างตัวแปร
‫มันก็เหมือนกับ int x เท่ากับสาม
‫เกือบจะเหมือนกับที่เราทำกับผู้รับมอบสิทธิ์ตัวกรองนี้ แต่ก็ซับซ้อนกว่าเล็กน้อย
‫ดังนั้นในปีนี้ สิ่งที่คุณเห็นที่นี่เป็นวิธีนิรนาม เพราะมันไม่มีชื่อ แต่โดยพื้นฐานแล้วมันมีลักษณะเหมือนวิธีการ
‫ตอนนี้ สิ่งที่เราทำได้คือเรียกคนแสดงของเราได้
‫และเราสามารถใช้ตัวกรองตัวแปรเพื่อส่งผ่านตัวกรองได้
‫คุณอาจจำละครเรื่องนี้ ผู้คนมักมีโครงสร้างนี้ โดยที่คุณมีชื่อเรื่องตรงนี้
‫คุณมีชื่อเรื่อง จากนั้นคุณต้องผ่านเข้าไปในรายชื่อบุคคลที่เป็นวัตถุ ใช่ไหม?
‫จากนั้นคุณต้องเพิ่มตัวกรองที่นี่
‫และฉันจะใช้ตัวกรองที่ฉันเพิ่งตั้งค่า ซึ่งเป็นตัวแปรตัวกรองนี้
‫ดังนั้นตอนนี้ตัวแปรตัวกรองนี้เป็นผู้รับมอบสิทธิ์ตัวกรองประเภทปิด ซึ่งเป็นสิ่งที่ผู้ใช้ต้องการในการแสดงผล
‫เพราะที่นี่คุณจะเห็นว่าต้องใช้ประเภทผู้รับมอบสิทธิ์ตัวกรอง
‫ดังนั้นมันจึงเป็นสิ่งที่น่าสนใจจริงๆ เพราะคุณสามารถไปข้างหน้าและสร้างวิธีการที่เป็นไปตามคำอธิบายของผู้รับมอบสิทธิ์และใช้มันตามที่เราเห็นที่นี่
‫แต่คุณยังสามารถสร้างตัวแปรที่ใช้วิธีการที่ไม่ระบุชื่อโดยใช้คีย์เวิร์ดของผู้รับมอบสิทธิ์ ดังที่เราทำที่นี่
‫และติดตั้งภายในตัวกรองนี้ แล้วใช้ตัวกรองนั้นที่นี่
‫แน่นอนว่าตอนนี้จะไม่ใช่เด็ก แต่จะอยู่ระหว่าง 20 ถึง 30 และจะแสดงให้ทุกคนเห็นว่าเรามี
‫ลองรันโค้ดนี้และดูว่าใช้งานได้หรือไม่
‫และเราเห็นที่นี่ระหว่าง 20 ถึง 30 ปี เรามีอนาโตลี ซึ่งอายุ 25 ปี แต่ไม่มีใครอื่น
‫ดังนั้น อีกวิธีหนึ่งของวิธีการที่ไม่ระบุชื่อ และนั่นคือ เราสามารถส่งต่อวิธีการที่ไม่ระบุชื่อโดยตรงเป็นพารามิเตอร์ได้
‫เรามาทำกันอย่างรวดเร็วกันเถอะ
‫เราจึงเรียกวิธีนี้ว่า display people method และคราวนี้ผมจะแสดงให้ทุกคนเห็น จริงไหม?
‫ดังนั้นที่นี่ทุกคน
‫แต่ตอนนี้เราต้องผ่านเข้าไป คุณจะเห็นตัวแทนตัวกรองที่นี่
‫ไปข้างหน้าและสร้างวิธีการที่ไม่ระบุชื่อ
‫และเพื่อที่จะทำอย่างนั้น เราต้องใช้คีย์เวิร์ดของผู้รับมอบสิทธิ์ใช่ไหม
‫พวกเขาจะเป็นเช่นนั้นและแน่นอนว่าเรายังต้องปฏิบัติตามคำแนะนำเดียวกัน
‫เรายังคงต้องตรวจสอบให้แน่ใจว่าผู้รับมอบสิทธิ์ของเราที่เรากำลังส่งจะเป็นผู้รับมอบสิทธิ์ประเภทตัวกรองหากเราดูที่ด้านบนนี้
‫ดังนั้นในที่นี้ ผู้รับมอบสิทธิ์ตัวกรองรายนี้จำเป็นต้องส่งคืนพูลและต้องการบุคคล
‫ลองเข้าไปอยู่ในตัวบุคคลเป็นพารามิเตอร์ P แต่แน่นอนว่า อย่างที่ฉันบอก เราจำเป็นต้องคืนค่าบางอย่างเช่นบูลีนด้วย
‫โดยพื้นฐานแล้วเราสามารถเรียกมันว่าอย่างนั้นได้
‫ดังนั้นนี่คือบรรทัดโค้ดที่ย่อมาก
‫มีอะไรเกิดขึ้นมากมายที่นี่
‫เรากำลังแสดงผู้คน แต่เราก็มีตัวกรองที่นี่ และตัวกรองนี้ มันใช้คนทั้งหมดและมันกลับกลายเป็นจริง
‫เพราะมันไม่สำคัญว่าเราจะใส่คนในที่นี้มากแค่ไหน
‫นั่นเป็นพื้นฐานเลย
‫มิฉะนั้น แน่นอน คุณสามารถเขียนแบบนี้ได้เช่นกัน เพื่อให้อ่านง่ายขึ้นเล็กน้อย
‫ดังนั้นนี่คือวิธีการที่ไม่ระบุชื่อของเราที่เรากำลังส่งผ่านเป็นพารามิเตอร์ที่สาม เนื่องจากเราเพิ่งติดตามผู้รับมอบสิทธิ์ตัวกรอง
‫ติดตั้ง.
‫คุณจะเห็นว่าที่นี่เรากำลังส่งวัวกลับตัวหนึ่ง และเรากำลังเอาตัวบุคคลมาเป็นตัวกำหนด
‫ตอนนี้คุณเห็นพลังของผู้ได้รับมอบหมายแล้ว เพราะพวกเขามีความยืดหยุ่นสูง
‫พวกเขาต้องการให้คุณทำตามโครงสร้างบางอย่างจริงๆ
‫ส่วนที่เหลือขึ้นอยู่กับคุณ
‫และสิ่งนี้ช่วยให้คุณในฐานะนักพัฒนามีความยืดหยุ่นมากเมื่อทำงานกับผู้รับมอบสิทธิ์
‫ไม่เป็นไร.
‫นั่นเป็นการแนะนำเล็กน้อยเกี่ยวกับวิธีการที่ไม่ระบุชื่อ
‫ต่อไปมาดู Lambda Expressions