เทคนิคเขียน Python OOP #3 - SOLID, Hexagonal Architecture + Python FastAPI Microservices

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 ต.ค. 2024

ความคิดเห็น • 14

  • @neramitmatarat753
    @neramitmatarat753 5 หลายเดือนก่อน

    มีรูปภาพประกอบทำให้เข้าใจง่ายมากครับ ขอบคุณมากครับ

  • @sarawutsuchatlampong429
    @sarawutsuchatlampong429 2 ปีที่แล้ว

    รอเรียนMicroserviceเลยครับ
    อธิบายได้เข้าใจง่ายมองเห็นภาพ
    ขอบคุณมากๆเลยครับเป็นประโยชน์มากๆ

  • @kowdhon1562
    @kowdhon1562 3 ปีที่แล้ว +1

    สุดยอดมากๆครับพี่รอติดตามครับ

  • @ธีรพงศ์อินทร์ตุ้ม-ห7ข

    ขอบคุณครับ รอติดตามนะครับ

  • @raksuwannarak8748
    @raksuwannarak8748 3 ปีที่แล้ว +1

    Microservice มาช่วงไหนครับ รอเรียนเลย
    อธิบายเข้าใจง่ายดีครับ สนับสนุน ทำต่อไปเรื่อยๆนะครับ

  • @big6226
    @big6226 9 หลายเดือนก่อน

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

  • @palette1916
    @palette1916 3 ปีที่แล้ว

    อธิบายดีมาก ๆ เลยครับ

  • @khanomkrok
    @khanomkrok 2 ปีที่แล้ว +1

    ดูเพลินมากครับ อธิบายเรื่อง software project development ที่ยากให้เข้าใจได้ง่ายๆ เวลาทำ product development ก็มักจะเจอระบบที่ซับซ้อนแบบนี้
    แต่สงสัยครับ การเปลี่ยนจาก CRUD มาเป็น Repository ส่งผลต่อ performance โดยรวมของ service แค่ไหนครับ?

    • @CopyPasteEngineer
      @CopyPasteEngineer  2 ปีที่แล้ว +3

      แน่นอนว่ามีผลครับ 1 คือ Python มันทำการคำนวณช้ากว่าทำใน database เล็กน้อยอยู่แล้ว และ 2 คือมีเพิ่ม network traffic ไปกลับระหว่าง app กับ database แน่นอนว่าจะทำงานได้ช้าลงครับ
      แต่สิ่งที่ได้กลับมาคือโค้ดเราจะ maintain ได้ง่าย และแบ่งงานกับทีมได้ดียิ่งขึ้นครับ เพราะจากประสบการณ์คือในงานส่วนใหญ่ เราไม่ได้ต้องการ performance ที่สูงที่สุดเสมอไปครับ
      ถ้าเราอยู่ใน industry ด้าน financial ที่ถ้าทำงานช้าไปสักเสี้ยววินาทีก็ขาดทุนได้เป็นล้าน อันนี้ performance ก็อาจจะสำคัญ
      แต่งานส่วนใหญ่ ผมเลือก maintainability over performance ครับ คือทำโค้ดให้มัน maintain ง่าย ทำงานร่วมกับคนอื่นง่ายเอาไว้ก่อน แล้วถ้าเราอยากจะ optimize ทำให้มันเร็วขึ้นทีหลัง เราค่อยหาวิธีต่อ ก็จะทำได้ง่ายแล้ว เช่นเพิ่ม memcache, ทำ CDN, ใช้ sharding NoSQL หรือเปลี่ยนบางส่วนกลับไปรันใน db เป็นต้น ก็ทำได้ครับ เพราะเราทำโค้ดให้แก้ไขง่ายอยู่ก่อนแล้ว

    • @khanomkrok
      @khanomkrok 2 ปีที่แล้ว

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

  • @YTvongoladecimo
    @YTvongoladecimo 2 ปีที่แล้ว +1

    พี่ครับเวลาจะเรื่มเขียน hexagonal ควรเริ่มเขียนอันไหนก่อนหลังครับ เช่น modal ไป adapter ไป rest ยกตัวอย่างให้หน่อยครับ แล้วต้องวางแผนการเขียนยังไงบ้างครับ

    • @CopyPasteEngineer
      @CopyPasteEngineer  2 ปีที่แล้ว +3

      ควรเริ่มจาก model/domain ตรงกลางครับ เพื่อให้เรารู้ว่าเราต้องการใช้งาน technology ยังไงบ้าง (domain-driven) แล้วเราค่อยเลือก technology ที่จะนำมาใช้ ที่เราคิดว่าตอบโจทย์การใช้งานของเราทีหลัง เช่น database, REST Framework, ... มาเขียนเป็น adapter ครับ adapter แต่ละตัวสามารถทำพร้อม ๆ กันได้ครับ

    • @YTvongoladecimo
      @YTvongoladecimo 2 ปีที่แล้ว +1

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

  • @jedionmelbin
    @jedionmelbin ปีที่แล้ว

    Que idioma es esto ?