Functional Programming คืออะไร ?

Поделиться
HTML-код
  • Опубликовано: 25 июл 2024
  • ☕️ สนับสนุนช่องเราด้วยการสมัครสมาชิกช่องทางนี้ได้เลย
    / @mikelopster
    ฟังไมค์สัปดาห์นี้ เราจะมาทำความรู้จักกับ Functional Programming กันครับว่ามันคืออะไร การมอง Program แบบ Functional Programming นั้นควรเป็นแบบไหน และมีมุมมองอะไรที่แตกต่างกับการเขียนโปรแกรมทั่วๆไป หรือ การเขียนโปรแกรมเชิงวัตถุอย่าง OOP บ้าง มาเรียนรู้กันในฟังไมค์วันนี้กันครับ 😁
    โดยในหัวข้อนี้ เราจะพูดถึง 3 เรื่องใหญ่ๆคือ
    1. Functional programming คืออะไร มีที่มาจากอะไร
    2. มุมมองที่แตกต่างกันระหว่าง Functional Programming และ OOP
    3. ดูตัวอย่างการเขียนโปรแกรมแบบ Functional Programming ผ่านภาษา Javascript กัน
    สำหรับใครที่กำลังศึกษาหรือมีความเชี่ยวชาญด้าน Functional Programming สามารถเสริมเพิ่มเติมกันได้เลยนะครับ ตัวผมเองก็กำลังศึกษาอย่างเจ้มจ้นอยู่เหมือนกันครับ 😆
    ใครสนใจดู code ตัวอย่างเพิ่มเติม สามารถอ่านเป็นฉบับบทความได้เช่นกันนะครับ
    mikelopster.dev/posts/functio...
    หัวข้อ
    00:00 แนะนำหัวข้อ
    01:07 Functional Programming (FP) คืออะไร ?
    07:22 FP แตกต่างกับ OOP อย่างไร ?
    14:35 รู้จัก concept พื้นฐานของ FP ผ่าน Javascript
    15:32 1. Pure function
    19:31 2. Declarative style
    22:15 3. High Order Functions (HOCs)
    27:58 เทคนิคเพิ่มเติมของ FP (Composition, Curry, Partial)
    28:17 4. Composition
    30:32 5. Currying
    32:44 6. Partial
    35:15 โจทย์เปรียบเทียบระหว่าง OOP และ FP
    40:23 สรุปทั้งหมด
    ใครมีข้อสงสัยเพิ่มเติม มาพูดคุยแลกเปลี่ยนความรู้กันได้ที่
    Facebook page: / mikelopster.dev
    Website: mikelopster.dev
    แปะพิกัดของที่ผมใช้
    shope.ee/8A54c8cfkf ของที่ตั้งอยู่ด้านหลัง
    shope.ee/6fI75UuLEM osmo pocket 3
    shope.ee/4VDcVixCW9 ไมค์ shure
    shope.ee/6pbXI6d5xG กล้องวงจรปิด
    Enjoy ครับ 😘
  • НаукаНаука

Комментарии • 34

  • @mourikogoro9709
    @mourikogoro9709 6 месяцев назад +10

    (ขอเสริมนิด) จุดชี้ขาดอันนึงก็คือ "การเขียนข้อมูล" ระหว่างประมวลผลครับ
    ถ้าเป็น Imperative Programming หรือ OOP จะอาศัยการ Mutate (state) โดยจะเป็นการคำนวน แล้วเขียนข้อมูลทับตัวแปรเดิมไปเรื่อยๆ จนกระทั่งได้ผลลัพท์สุดท้าย
    ส่วน Functional Programming (FP) จะอาศัยการ Express โดยจะเป็นการคำนวณ แล้วส่งต่อผลลัพท์ไปยังฟังก์ชี่นอื่นไปเรื่อยๆ แล้วจัดเก็บผลลัพท์สุดท้ายไว้ที่ตัวแปรใหม่
    FP เปรียบเสมือนการทดเลขบนกระดาษทด คือเราจะไม่มาไล่ลบอันเดิมแล้วเขียนทับ แต่เราเขียนทดต่อลงมาเรื่อยๆจนกระทั่งได้คำตอบสุดท้าย

    • @mikelopster
      @mikelopster  6 месяцев назад +3

      ขอบคุณมากครับ ขยี้จุดเด็ดเลย 🙏

  • @jdoublek
    @jdoublek 6 месяцев назад

    ขอบคุณค่ะ อธิบายได้ดีเลย รอคลิปต่อไปนะคะ 😊

  • @wiseskeshom4673
    @wiseskeshom4673 6 месяцев назад

    👍👍👏👏 ขอบคุณ​มากคร้าบบ​สำหรับอาหารสมองตอนเช้าที่ดีมากๆ

  • @Silvel2box
    @Silvel2box 6 месяцев назад

    กำลังคิดถึงคุณไมค์ มาแรปให้ฟังครับ😊

  • @edventuretech
    @edventuretech 6 месяцев назад

    Very informative video...
    I would share this video to my students.

  • @Makeitheawen
    @Makeitheawen 6 месяцев назад +1

    รออยุ่พอดี ขอบคุณค่า❤

  • @CodeSook
    @CodeSook 6 месяцев назад +5

    สุดยอดเลยครับ
    เผื่ออนาคต เพิ่มเนื้อหาเกี่ยวกับ Tools ใน FP เช่น Monad, Pipe, etc etc
    เพื่อนๆจะได้เห็นภาพแบบ practical มากขึ้นครับ

    • @mikelopster
      @mikelopster  6 месяцев назад +1

      อันนี้เดี๋ยวกลับมาแน่นอนครับ หัวข้อเหล่านั้น นวดทั้งทีต้องเน้นๆหน่อย 😂

    • @CodeSook
      @CodeSook 6 месяцев назад

      จัดไปครับผม รอๆๆๆๆ@@mikelopster

  • @kitti.crafts
    @kitti.crafts 6 месяцев назад

    กรี๊ดอีกแย้ววว🎉🎉🎉

  • @Chaimantar
    @Chaimantar 6 месяцев назад

    ขอบคุณครับ❤

  • @pooh4294
    @pooh4294 6 месяцев назад

    ขอ category theory ใน functional programming หน่อยครับ

  • @thejohn90
    @thejohn90 6 месяцев назад

    ขอบคุณครับ

  • @panupongsanprasit330
    @panupongsanprasit330 6 месяцев назад

    ขอบคุณมากครับ

  • @ek9216
    @ek9216 6 месяцев назад

    ชอบเเนวนี้ครับเจอคำศัพท์ยากไป ชอบงงชอบเเนวอธิบาย😂มือใหม่🙏🙏

    • @mikelopster
      @mikelopster  6 месяцев назад +1

      เจอศัพท์ยาก = ถือโอกาสได้ฝึกเพิ่มครับ 😂

  • @ampo287
    @ampo287 6 месяцев назад +2

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

    • @mikelopster
      @mikelopster  6 месяцев назад

      ขอบคุณมากๆนะครับ ทำการบ้านพอสมควรครับในแต่ละคลิป อยากให้ข้อมูลออกมาครบถ้วนเท่าที่จะทำได้เหมือนกันครับ (และเท่าที่ความรู้ตัวเองมีด้วยครับ 😅)

  • @phongsavunhkeonavong8474
    @phongsavunhkeonavong8474 6 месяцев назад +1

    Reactive programming ต่อครับ😅😅😅

  • @tanongpiya-romrus7909
    @tanongpiya-romrus7909 6 месяцев назад +1

    รอฟังคลิป dynamic programming เลยครับ

    • @mikelopster
      @mikelopster  6 месяцев назад

      ถ้า dynamic programming ของช่องผม แนะนำดูคลิปนี้ก่อนได้น้า
      ruclips.net/video/A-kR-gIJxuw/видео.html
      เรื่อง algorithm and data structure เดี๋ยวมาแบบจัดเต็มแน่นอนครับ 😆

  • @suwatthamsena6313
    @suwatthamsena6313 5 месяцев назад

    ขอบคุณครับพี่ไมค์ ไม่ได้จบสายตรงมาฟังแล้วเคลีย์เลยครับ

    • @mikelopster
      @mikelopster  5 месяцев назад

      ดีใจ มาเป็น dev กันครับ 😆

  • @NuiGates2456
    @NuiGates2456 6 месяцев назад

    กำลังเรียนอยู่เลยครับ😁❤❤❤

    • @mikelopster
      @mikelopster  5 месяцев назад +1

      ขอบคุณสำหรับการสนับสนุนมากๆนะครับ 🙏😆

  • @thewaratkhonhan9012
    @thewaratkhonhan9012 6 месяцев назад

    อันเก่ายังดูไม่จบเลยครับบบบบบบบบบ55555

  • @koomsupcreator585
    @koomsupcreator585 6 месяцев назад

    ไหนๆแล้ว Generic ต่อเลย

  • @Erdnalf
    @Erdnalf 6 месяцев назад +1

    ผมว่า....รู้เรื่องกว่าสมัยเรียนตอนมหาลัยขึ้นเยอะเลย 🤣

  • @playgroundstation3570
    @playgroundstation3570 6 месяцев назад +1

    ใครพอมีหนังสือ functional ภาษาไทยแนะนำไหมครับหรืออังกฤษก็แนะนำได้นะครับพอดีผมอยากศึกษาเเบบจริงจังนะครับ

    • @cctv45678
      @cctv45678 6 месяцев назад +1

      เพิ่มความจริงจังอีกครับ

    • @playgroundstation3570
      @playgroundstation3570 6 месяцев назад

      @@cctv45678 ขอบคุณครับจริงๆตอนนี้ก็เรียนเรื่องนี้พอสมควรครับแต่รู้สึกอยากมีหนังสือดีๆสักเล่มไว้เรียนหลังเลิกงานครับเพราะรู้สึกโค้ดตัวเองที่ใช้ตอนนี้ยังไม่สุดครับเลยอยากรู้ลึก

    • @mikelopster
      @mikelopster  6 месяцев назад +1

      ผมก็ไม่รู้จักหนังสือ functional ของ TH เหมือนกัน แต่ถ้า EN แบบอ่านไม่ยาก แนะนำของเจ้านี้นะครับ
      www.amazon.com/Learning-Functional-Programming-Complexity-Functionally/dp/1098111753

  • @SesmoiCaicedo
    @SesmoiCaicedo 6 месяцев назад

    ยอดเยี่ยมเช่นเคย