10 Best Libraries for Java Programmers

24-Nov-17

คัมภีร์เทพ IT

See the original english version Click here!

 

สำหรับในประเทศไทย เชื่อว่าภาษา Java น่าจะเป็นภาษาที่ได้รับความนิยมมากและJava ecosystem ก็มีขนาดใหญ่ทำให้มีLibrary จำนวนมากมายให้เหล่า Programmer นำไปใช้งานเช่นกันไม่ว่าจะเป็นCore Library และLibrary ที่เป็นของ 3rd party ก็ตาม สำหรับบทความนี้ได้รวบรวมเอา 10 อันดับ Java Library ที่มีการนำไปใช้งานในเรื่อง Programming มากที่สุด เชื่อว่าน่าจะเป็นประโยชน์กับเหล่า Java Programmer/Developer อย่างมากครับ

 

1.JUnit

JUnit เกิดมาจากตระกูลxUnitของ Unit Testing Framework และถือเป็นอันดับหนึ่งในด้านของการใช้งาน สำหรับ Feature หลักของ Junit มี GUIที่ไม่ซับซ้อนทำให้ Programmer เขียน Code และทำการ Testing ได้ง่ายขึ้น นอกจากนี้ยังช่วยให้การ Test สามารถทำได้อย่างต่อเนื่องและSupport การTest พร้อมๆ กัน แสดงผลการTest อย่างรวดเร็ว และมี Progress Bar ที่แสดงให้เห็นว่าการ Test นั้น ผ่านหรือติดปัญหา นอกจากนี้ยังมี Option ให้สร้าง Test suitesเพื่อเพิ่มความสามารถในการตรวจสอบความถูกต้องและตรวจเช็คผลกระทบอื่นๆ ที่เกิดจากการ Test นั้นได้

ดูรายละเอียดเพิ่มเติมได้ที่ - JUnit Java Library

 

2. SLF4J

SLF4J หรือ Simple Logging Facade for Java มี Framework ที่ให้ Developer สามารถ plug inกับ Framework อื่นๆ ตอน Deployment ได้ สำหรับประสิทธิภาพของ SLF4Jฝังอยู่ใน Logging API ซึ่งขึ้นอยู่กับ Façade Pattern และแยก Client API ออกจากLogging Backendสำหรับการสร้างLibrary ที่อำนวยความสะดวกนี้ คงจะต้องขอบคุณCekiGülcüและคุณสามารถดาวน์โหลด SLF4J ได้ที่นี่

ดูรายละเอียดเพิ่มเติมได้ที่ Best Java Frameworks

 

3. Google Guava

Google Guava ถือเป็นLibrary หลักๆ ที่ได้รับความนิยมมากอีกชุดหนึ่งที่ถูกพัฒนาขึ้นโดย Google และเปิดให้ใช้งานเป็นOpen Source ด้วย ซึ่ง Library นี้รวมอยู่ใน Google Guava Project ใช้ในการพัฒนา/อัพเกรดProduct ของ Google ที่ใช้ Javaโดย Libraryใน Google Guava Packageจะช่วยทำให้การเขียนโปรแกรมมีประสิทธิภาพดียิ่งขึ้น นอกจากนี้ Guava ยังมี in-memory cache, Immutable collections,  Functional types, Graph libraryและ API utilities ซึ่งมีประโยชน์ต่อ I/O, Hashing, Concurrency, Primitives, String processing, Reflection และอื่นๆ

ดูรายละเอียดเพิ่มเติมได้ที่- Core Java Libraries - Google Guava

 

4. XStream

เมื่อพูดถึงเรื่อง Object Serializationที่มักใช้ในXML แล้ว XStreamLibrary ถือเป็นตัวเลือกที่ดีของเหล่า Developer เพราะ ช่วยให้Developer สามารถทำให้การ Serialize Objectsใน XML ทำได้สะดวกขึ้น และ Reflection ก็เป็นกุญแจของเรื่องนี้ และใช้ในการระบุโครงสร้างของObject graph เพื่อSerialize ในขณะRun time รวมทั้งไม่จำเป็นต้องปรับเปลี่ยนใดๆ ใน Object และ Internal Field ก็สามารถถูก Serialize โดยใช้ XStream ได้ ซึ่งด้วยการใช้งานที่หลากหลายทั้งเรื่อง Transport, Configuration, Persistence และ Unit Tests จึงทำให้มันกลายเป็น Library ที่ได้รับความนิยมขึ้นมาในกลุ่มJava Developer

คุณสามารถ Download ได้ที่-Xstream – Objects to XML

 

5. Log4j

Log4j เป็นLibrary จาก Apache และมีประโยชน์ในเกี่ยวกับเรื่องLogging โดยเครื่องมือนี้ได้รับการพัฒนาขึ้นโดย CekiGülcüแต่ปัจจุบัน Apache Software Foundation ได้เข้ามาบริหารแทนแล้วLog4j ถือเป็นLibrary ที่น่าเชื่อถือได้มากที่สุดตัวหนึ่งในเรื่องที่เกี่ยวกับ Application และสามารถขยายเพื่อSupport การConfigure พวก Components ได้ สำหรับ Syntaxของการ Configuration ก็ทำได้ง่ายมากเพราะSupport ทั้งXML, YAML และ JSON นอกจากนั้น Log4J ให้การSupport APIs ที่หลากหลายและสามารถใช้กับ Applicationที่ใช้ในเวอร์ชันต่างๆของ Log4j หรือ SLF4J ได้ด้วย

คุณสามารถ Download ได้ที่-Download Log4J

 

6. iText

iTextเป็น Open Source Libraryของ Java ที่ใช้สำหรับการสร้างและจัดการไฟล์ PDF ใน Java ซึ่ง Libraryนี้ถูกริเริ่มด้วยทีมของงานBruno Lowagieและ Paulo Soares สำหรับ iTextเวอร์ชั่นก่อนหน้านี้มีข้อจำกัดหลายอย่าง แต่ในเวรอร์ชั่นล่าสุดได้เพิ่ม Featureใหม่ๆ มากมายเช่นOption ในการ Create PDF, Convert Documents จาก XMLHTMLCSS หรือ Databases เป็น PDF และการทำ PDF ก็ยึดตามมาตรฐานสากล โดยสามารถ Copy, Merge Documents, Import, เปลี่ยน  Structure และเพิ่ม Watermark หรือ Barcode ใน PDF ได้อีกด้วย

ศึกษาข้อมูลเพิ่มเติมเกี่ยวกับ iText ได้ที่- iText PDF library for Java

 

7. jsoup

jsoupเป็นLibraryที่มีประโยชน์มากโดยที่ทำงานร่วมกันและใช้สำหรับการParseHTMLได้ Jsoupมี API ที่มีประโยชน์ซึ่งช่วยในExtract ข้อมูลข้อกำหนดที่ใช้ในการ Implement ในjsoupคือ WHATWG HTML5นอกจากนี้jsoupยังสามารถ ParseHTML ลงใน DOM ได้อีกด้วย jsoupยังอนุญาตหรือ ParseHTML จาก URL หรือไฟล์ใดๆ ก็ได้ อย่างเช่นคุณสามารถ Fetch หน้าแรกของ http://noeticforce.com , Parse และ FetchH2Title ทั้งหมดลงในList ของ Element

คุณสามารถ Download ได้ที่-download Jsoup

 

8. Gson

Gsonเป็นอีกหนึ่ง Library จากGoogleและทำให้การแปลง Java Objects ไปเป็นสิ่งที่เทียบกับJSON นั้นเป็นเรื่องที่ง่ายขึ้น แม้จะมี Project Open Source ที่อนุญาตให้แปลง Java Object ไปเป็น JSON ได้ แต่แต่คุณต้องวาง Java Annotation ไว้ในClass ที่คุณใช้ด้วย ซึ่งเห็นได้ชัดว่าคุณไม่สามารถทำเช่นนี้ได้หากคุณไม่สามารถเข้าถึงSource Code ยิ่งกว่านั้น Option ของ Open Source ส่วนใหญ่ยังไม่สนับสนุน Java Generics แต่ Gsonก็ออกมาเพื่อแก้ปัญหาเหล่านี้

คุณสามารถ Download ได้ที่-Download Gson

 

9. Apache PDF box

Apache PDFBoxเป็นอีกหนึ่งOpen Source Library ที่มีประโยชน์สำหรับการจัดการไฟล์ PDF ซึ่ง Project นี้เริ่มต้นขึ้นโดย Ben Litchfield แต่หลังจากนั้น Apache ก็นำไปบริหารต่อ ซึ่ง Feature ที่เด่นๆ ของ PDFBoxก็เช่น การสร้าง PDF, การแบ่ง PDF เป็นไฟล์ PDF หลายไฟล์, การ Merge, Extract Unicode text สำหรับ PDF,PDFFill form, การ Saveไฟล์ PDF เป็นรูปภาพรวมทั้ง Digitally Sign PDFs

ดูรายละเอียดเพิ่มเติมได้ที่ -Apache PDFBox

 

10. Joda Time

ถือเป็น Library ที่เรียบง่ายแต่ทรงประสิทธิภาพและช่วยประหยัดเวลาในการ Develop เป็นอย่างมาก Joda-Time เป็นLibrary ที่ทดแทนการเรียนDate & Time Classes ใน Java ได้ดีเป็น Library ที่ใช้งานง่าย มี Field Accessorอย่างgetYear() หรือgetDayOfWeek()ซึ่งเพื่อรับDateซึ่งมันทำให้เป็นเรื่องง่ายเพื่อดูรายละเอียดDate & Timeนอกจากนี้ Joda Time ยังมีฟังก์ชันการคำนวณDate & Time รวมทั้ง Support เกือบจะทุก Date Format ที่คุรต้องการ

คุณสามารถ Download ได้ที่-Joda Time – Data Time Libray for Java

นอกจากนี้ยังมี Library อื่นๆ ที่น่าสนใจ ซึ่งคุณสามารถดูรายละเอียดได้ที่ Ok HTTP และ Quartz

 

ที่มาnoeticforce.com

 

อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ

 

เพิ่มเพื่อน

 

 

 

บทความที่เกี่ยวข้อง