เขียนโปรแกรมด้วย Type กับ Parindome (Type-Level Programming)

Поділитися
Вставка
  • Опубліковано 12 вер 2024
  • "[Video] Type-level Parindome"
    (#TypeScript: 🟣 #Archmage )
    .
    จากที่คุณ Aom Khunpanitchote (🔎 Link #1 / zijlkrpykum5up4u ) ได้โพสเรื่องของ
    การตรวจสอบ Parindome โดยเป็น Type-Level Programming
    .
    เลยขอคุณออมมา อธิบายการเขียนโปรแกรมด้วย Type ให้ทุกคนดูครับ
    .
    ลิงค์หนังสือในวิดิโอ
    type-safe.thad...
    type-safe.thad...
    #ThaiType #TypeLevel #TypeSafe #TypeSafeDesignPattern

КОМЕНТАРІ • 5

  • @kawin.s
    @kawin.s 2 місяці тому

    เนื้อหาคุณภาพเลยครับ 👍
    วนดูสองรอบเลย

    • @thaitype
      @thaitype  2 місяці тому

      ขอบคุณค๊าบบบ ยินดีครับ

  • @paykungzori5783
    @paykungzori5783 29 днів тому +1

    ทำไมตรง IsPalindrome ต้อง infer Arr extends string[] หรอครับ อันนี่ทำให้งง syntax ด้วยในเมื่อมันก็ได้เป็น string[] อยู่แล้ว, เป็น true ตลอด สมมติรับเป็น string ว่างมาก็ return กลับมาเป็น []
    และในเมื่อ T มันก็ extend string อยู่แล้ว (อันนี้คือ T ของ IsPalindrome) ทำไมไม่เขียนเป็น PalindromeChecker อย่างงี้หรอครับ

    • @thaitype
      @thaitype  28 днів тому +1

      Good Question ครับ
      หมายถถึงแบบนี้ใช่มั้ยครับ (ยังไม่ค่อยเข้าใจคำถามทั้งหมดเท่าไหร่ จะลองตอบดูนะครับ)
      type IsPalindrome = ToArray extends string[] ? PalindromeChecker : false
      แบบนี้ T จะ Error เพราะไม่ใช่ string[] ครับ
      ลองเล่นดูครับ tsplay.dev/NaA72N

    • @paykungzori5783
      @paykungzori5783 28 днів тому

      @@thaitype ขอบคุณครับ
      หลัก ๆ ที่ผมจะสื่อคือ ไม่จำเป็นจะต้องเขียน infer Arr ก็ได้ เพราะว่าเรารู้อยู่ละว่า ToArray มันได้เป็น string[] แน่นอน (ถึงเป็น [] ก็ยังเป็นซับเซตของ string[]) ดังนั้นเราสามารถเขียนเป็นแบบนี้ได้เลย
      type IsPalindrome = PalindromeChecker
      โดยไม่ต้องงง syntax ด้วย อันนี้ผมเข้าใจว่าที่เขียนก็น่าจะให้อ่านได้ง่ายขึ้น แต่กลับว่าถ้าไม่ชินจริงก็อ่านยากกว่าเดิม extends infer extends 555