2 คะแนน โดย GN⁺ 2024-09-24 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • หนังสือเล่มนี้สรุปทุกอย่างเกี่ยวกับการพัฒนาที่มีประสิทธิภาพใน Java
  • กล่าวถึงวิธีจัดระเบียบข้อมูลให้เป็น "ข้อมูลล้วนๆ" และประโยชน์ที่น่าทึ่งซึ่งเกิดขึ้นจากแนวทางนั้น
  • โปรแกรมที่สร้างขึ้นโดยมีข้อมูลเป็นศูนย์กลางจะเรียบง่ายกว่า เล็กกว่า และเข้าใจได้ง่ายกว่า

การเปลี่ยนแปลงของ Java

  • Java เปลี่ยนแปลงอย่างรวดเร็วในช่วงไม่กี่ปีที่ผ่านมา
  • ได้เพิ่มฟีเจอร์ภาษาใหม่ที่รองรับการเขียนโปรแกรมเชิงข้อมูล (records, pattern matching, with expressions, sum and product types)
  • แต่หนังสือเล่มนี้ไม่ได้ว่าด้วยเครื่องมือ
  • การศึกษาแค่เครื่องมืออย่างเดียวไม่ได้ทำให้เรียนรู้วิธีสร้างบ้านได้
  • หนังสือเล่มนี้มุ่งเน้นไปที่การสร้างบ้าน
  • อธิบายวิธีเลือกที่ดิน วางรากฐาน และสร้างบ้านที่ทนต่อพายุได้ทุกรูปแบบ

แนวคิดพื้นฐานของ DoP

  • DoP ตั้งอยู่บนแนวคิดที่เรียบง่ายมาก

  • แนวคิดที่ว่า "การแสดงออกคือแก่นแท้ของการเขียนโปรแกรม" เป็นสิ่งที่ผู้คนค้นพบซ้ำมาเรื่อยนับตั้งแต่ยุคเริ่มต้นของคอมพิวติ้ง

  • เมื่อจับข้อมูลของโดเมนได้ดี ส่วนที่เหลือของระบบก็มักจะเข้าที่เข้าทางได้เองตามธรรมชาติ

  • ขณะนี้หนังสือเล่มนี้ยังอยู่ในช่วง early access

  • อยากได้รับฟีดแบ็ก

  • ใช้โค้ด mlkiehl ภายในวันที่ 9 ตุลาคมเพื่อรับส่วนลด 50%

สรุปโดย GN⁺

  • หนังสือเล่มนี้เน้นย้ำถึงความสำคัญและข้อดีของการเขียนโปรแกรมเชิงข้อมูลใน Java
  • แนวทางที่ยึดข้อมูลเป็นศูนย์กลางทำให้โปรแกรมเรียบง่ายและเข้าใจได้ง่ายขึ้น
  • อธิบายวิธีใช้ฟีเจอร์ใหม่ล่าสุดของ Java เพื่อเขียนโปรแกรมที่ดียิ่งขึ้น
  • น่าจะเป็นประโยชน์สำหรับนักพัฒนาที่สนใจการเขียนโปรแกรมเชิงข้อมูล
  • หนังสืออื่นที่มีลักษณะคล้ายกัน ได้แก่ "Clean Code" และ "Effective Java"

1 ความคิดเห็น

 
GN⁺ 2024-09-24
ความคิดเห็นจาก Hacker News
  • ขอแสดงความยินดีในฐานะคนที่เคยเขียนหนังสือสายเทคนิคมาก่อน

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

    • สงสัยว่ารับมืออย่างไรกับสถานการณ์ที่ฟีเจอร์ภาษาใหม่ของ Java ยังอยู่ในสถานะ "preview"
    • ตัวอย่างเช่น String Templates ถูกถอดออกใน JDK 23
  • ซื้อหนังสือแล้วและอ่านบทแรก

    • บทแรกดีมาก
    • ฟีเจอร์ใหม่อย่าง Record types, switch statements เป็นต้น จะทำให้โปรแกรมเมอร์ Java คิดเรื่อง type บ่อยขึ้น
  • กล่าวถึงว่าบรรณาธิการด้านเทคนิคคือ Brian Goetz และแสดงความสนใจ

  • แสดงความยินดีและแนะนำให้นำไปโพสต์ในคอมมูนิตี้ Java บน Reddit

  • ขอแสดงความยินดีที่เขียนหนังสือเสร็จ และชี้ประโยคที่ทำให้งงในบทแรก

    • เสนอให้แก้เป็น "only cost was some time"
    • คิดว่าถ้าปรับใช้แนวทางแบบ functional ก็จะหาแพตเทิร์นที่ดีที่สุดได้
    • คุณสมบัติของข้อมูลมักถูกใช้งานในฐานะ "leaf node" เป็นหลัก และ type ไม่ได้สำคัญมากนัก
    • หากยอมรับสถาปัตยกรรมแบบ evolutionary ก็ไม่จำเป็นต้องกำหนดนิยามข้อมูลให้ถูกต้องครบถ้วนตั้งแต่แรก
    • หวังว่าจะได้เรียนรู้ว่าหนังสือนำสิ่งนี้ไปใช้อย่างไร
  • ขอแสดงความยินดีที่เริ่มต้นเข้าถึงแนวทางนี้ และรู้จักการเขียนโปรแกรมเชิงข้อมูลจาก Clojure และ F#

    • สงสัยว่าคุณเข้าหามันอย่างไรใน Java จึงซื้ออีบุ๊กมา
    • ขอให้หนังสือเสร็จสมบูรณ์อย่างราบรื่น
  • ขอแสดงความยินดีที่เขียนหนังสือเสร็จ และเล่าประสบการณ์ว่าเคยเขียนหนังสือเทคนิคมาก่อน

    • นึกถึงยุคที่หนังสือ Java ในอดีตหนามาก
    • กล่าวถึงหนังสือเล่มบางชื่อ "Java -- the Good Parts"
  • แสดงความยินดี และแนะนำหนังสือที่ตนกำลังทำอยู่สำหรับคนที่มองหาหนังสือ Java สมัยใหม่

    • อธิบายวิธีสร้าง single-page app ด้วย Java โดยใช้เฟรมเวิร์ก Flavour
    • เขียนด้วย Java บริสุทธิ์ 99.9% โดยไม่ใช้ปลั๊กอินหรือส่วนขยาย
    • ให้ลิงก์ไปยังโค้ดตัวอย่าง ตอนพอดแคสต์ที่เกี่ยวข้อง และเดโม