java Archive

สรุปเรื่อง Modernizing Java Apps with Docker จากงาน DockerCon EU 2017

จาก VDO เรื่อง Modernizing Java Apps with Docker จากงาน DockerCon EU 2017 ซึ่งเป็นอีก session หนึ่งที่ตรงกับแนวคิดหลักของงานคือ Modernizing Traditional Application (MTA) โดยที่ Traditional Application คือระบบงานที่พัฒนามาหลายปีแล้ว แต่ยังเป็นหัวใจหลักหรือตัวขับเคลื่อนหลักขององค์กร แน่นอนว่า ทั้ง developer และ operation ต้องทำงานอย่างหนักเพื่อพัฒนาและดูแลรักษาระบบเหล่านี้

Read More…

มาลองใช้งาน JShell ใน Java 9 กันดู

ในภาษาโปรแกรมต่าง ๆ ไม่ว่าจะเป็น Python, Swift, Scala, Clojure ล้วนมีสิ่งที่เรียกว่า REPL (Read Eval Print Loop) สำหรับการ run statement ต่าง ๆ ของ code โดยไม่ต้องทำการสร้างไฟล์ใด ๆ ขึ้นมาเลย เพื่อทดสอบ เพื่อทดลอง เพื่อตรวจสอบ ชุดของ code ที่สำคัญใน Java 9 ก็มีความสามารถนี้เช่นกัน นั่นคือสิ่งเล็ก ๆ ที่เรีกยว่า JShell ดังนั้นมาลองใช้งานกันนิดหน่อย

Read More…

มีอะไรที่น่าสนใจจากงาน JavaOne 2017 บ้าง

ช่วงวันที่ 1 ถึง 5 ตุลาคมที่ผ่านมามีงานใหญ่ของโลก Java คือ JavaOne 2017 อาจจะเงียบ ๆ หน่อย แต่ก็มีสิ่งที่น่าสนใจมากพอควร จึงทำการสรุปจาก VDO Keynote มานิดหน่อย น่าจะพอทำให้เห็นทิศทางของโลก Java ได้บ้าง รวมทั้ง vendor เจ้าใหญ่ ๆ ของโลก และ แนวทางของ Oracle มาเริ่มกันเลย

Read More…

มาดูผลการสำรวจจาก RebelLabs Developer Productivity Report 2017

เช้านี้อ่านผลสรุปเกี่ยวกับการสำรวจเรื่อง เครื่องมือและเทคโนโลยีสำหรับ Java Developer ว่ามีอะไรบ้างที่ช่วยเพิ่ม productivity ของการพัฒนา สามารถดูผลแบบเต็ม ๆ ได้ที่ RebelLabs Developer Productivity Report 2017: Why do you use the Java tools you use? หรือทำการ Download PDF มาอ่าน แถมมีข้อมูลดิบ ๆ มาให้ด้วยนะ เผื่อใครจะนำไปวิเคราะห์เพิ่มเติม มาดูสิ่งที่น่าสนใจจากผลการสำรวจครั้งนี้ดูหน่อยสิ

Read More…

คำสั่ง Docker เบื้องต้นสำหรับ Java Developer

การนำ Docker มาใช้ในการพัฒนา software นั้นถือว่าเป็นสิ่งที่น่าสนใจมาก ๆ บางคนอาจจะบอกว่า น่าจะเป็นความรู้พื้นฐานของนักพัฒนาเลยนะ แต่ว่าการศึกษาสิ่งใหม่ ๆ ก็ไม่ใช่เรื่องที่ง่ายเลย ดังนั้นจึงสรุปขั้นตอนการใช้งาน Docker เป็น comand line นะ พร้อมยกตัวอย่างการใช้งานสำหรับการพัฒนาระบบด้วยภาษา Java

Read More…

Java 9 :: สิ้นสุดการรอคอยอันยาวนาน

เป็นการรอคอยที่ยาวนานมาก ๆ สำหรับ Java 9 หลังจากที่ Java 8 ปล่อยออกมาเมื่อ 3 ปีที่แล้ว !! ดังนั้นมาดูกันหน่อยว่า มี feature หลัก ๆ อะไรกันบ้าง ? มีอะไรที่เปลี่ยนแปลงกันบ้าง ? มาดูกันเลย

Read More…

เริ่มต้นการเปลี่ยนจาก Java ไปยัง Kotlin

ช่วงนี้มีโอกาสเข้าไปเปลี่ยนภาษาโปรแกรมสำหรับพัฒนาระบบงาน จากภาษา Java ไปยังภาษา Kotlin ซึ่งกำลังเนื้อหอมกันเลยทีเดียว ก็มีทั้งข้อดีและข้อเสียกันทั้งนั้น ซึ่งหลาย ๆ คนคงจะเห็นบทความเกี่ยวกับภาษา Kotlin ออกมาเพียบ ตั้งแต่ที่ภาษา Kotlin ได้เข้าไปเป็นหนึ่งในภาษาหลักสำหรับการพัฒนา Android app แต่สิ่งที่น่าสนใจคือ ขั้นตอนการปรับเปลี่ยนมากกว่า ว่าต้องเป็นอย่างไรบ้าง ? ดังนั้นจึงสรุปวิ่งที่ได้ลงมือทำไปไว้นิดหน่อย ซึ่งทำการเปลี่ยนแปลงจากระบบที่มีอยู่แล้ว !!! มาเริ่มกันเลย

Read More…

การทดสอบเกี่ยวกับ Exception ใน JUnit 5

วันนี้ลองใช้งาน Junit 5 ในงานนิดหน่อย พบว่าหลาย ๆ อย่างจาก JUnit 4 มันหายไป หลายอย่างเพิ่มมา ทั้งทำให้ยากและง่ายขึ้น มีสิ่งหนึ่งที่น่าสนใจคือ การทดสอบกับ Exception เนื่องจากของเดิมจาก JUnit 4 นั้นมีทางเลือกให้เยอะ ทั้ง try-catch (ไม่ควรทำนะ) ทั้ง @Rule ทั้ง expected ใน @Test ใน JUnit 5 นั้นไม่มี แต่ได้เพิ่ม assertion มาให้เลย ดังนั้นลองมาใช้งานกันดูหน่อย

Read More…

[Docker] แก้ไขปัญหาเรื่อง JVM กิน memory เยอะเกินเหตุ !!

ปัญหาที่มักพบเจอเกี่ยวกับการสร้าง Container สำหรับ JVM คือ การกำหนดขนาดของ memory ให้นั่นเอง ซึ่งพบว่า ถึงแม้จะกำหนดขนาดของ memory ตอนสร้าง container ไปแล้ว แต่ตัว JVM มันก็ยังมีค่าของ Max Heap Size (Estimated) เป็นค่าที่สูงกว่า

Read More…

สวัสดี Java Modular ใน JDK 9 กันหน่อย

วันว่าง ๆ ติดฝนมาลองทำความรู้จักกับ Java Modular ใน JDK 9 กันนิดหน่อย หรือบางคนอาจจะรู้จักในชื่อว่า Project Jigsaw ซึ่งเป็น feature ที่ถูกเลื่อมาอย่างยาวนานตั้งแต่ JDK 7, 8 หรือ 9 ดังนั้นลองมาทำความรู้จักกันหน่อยด้วยการเขียน code

Read More…