logo

Đang load dữ liệu

logo devmaster

VIỆN CÔNG NGHỆ VÀ ĐÀO TẠO DEVMASTER

Đào tạo - Phần mềm - Cho thuê nhân sự

  • 0969.609.003
  • 0978.611.889
  • Trang chủ
  • Các khoá đào tạo
    • Chuyên đề WEB - PHP

      • Lập trình web với HTML5 - CSS3- JQuery - Bootstrap - Ajax - [36 giờ]
      • Lập trình web frontend - reactjs - [75 giờ]
      • Lập trình web với mã nguồn mở PHP&MYSQL - PHP FRAMEWORK [126 giờ]

      Chuyên đề Mobile

      • Lập trình Games/Apps trên nền tảng Android - [120 giờ]
      • Lập trình Games/Apps trên nền tảng IOS - [120 giờ]

      Chuyên đề JAVA

      • Ngôn ngữ lập trình hướng đối tượng với java - [40 giờ]
      • Lập trình ứng dụng với java - [100 giờ]
      • Lập trình web site với java framework (JPA, HIBERNATE, SPRING MVC, SPRINGBOOT) - [276 giờ]

      Chuyên đề NETWORK/SECURITY

      • Khoá học Quản trị hạ tầng mạng CCNA v6 - [72 giờ]
      • Khoá học quản trị hệ thống với Windows SERVER 2012- [72 giờ]
      • Chuyên gia bảo mật hệ thống CompTIA + - [110 giờ]

      Chuyên đề .NET

      • Nền tảng lập trình hướng đối tượng với C# - [40 giờ]
      • Lập trình ứng dụng WINDOWS FORM - [100 giờ]
      • Lập trình Web với ASP.NET MVC 5, WebAPI - [145 giờ]

      Chuyên đề khác

      • Ngôn ngũ lập trình C/C++ - [80 giờ]
  • Lập trình cho trẻ em
  • Dịch vụ
    • Đào tạo theo như cầu
    • Cung cấp thiết bị - Phần mềm
    • Tư vấn - Thiết kế mạng hạ tầng
    • Tư vấn - Triển khai dịch vụ mạng
    • Tư vấn - Tư vấn, triển khai giám sát hệ thống
    • Thực tập dự án
  • Lịch khai giảng
  • Tin tức
    • Tin tức và sự kiện
    • Tin hoạt động
    • Tin công nghệ
    • Hội thảo, workshop, Codecam
    • Thông tin việc làm
    • Cẩm nang chia sẻ kiến thức
  • Tiện ích
  • Liên hệ

Cẩm nang chia sẻ kiến thức

Aug - 2018

25

Dev Java đã biết đến 20 thư viện này chưa? (P1)

Cẩm nang chia sẻ kiến thức

Dev Java đã biết đến 20 thư viện này chưa? (P1)

 

Một trong những đặc điểm của một dev Java giỏi và có kinh nghiệm là kiến thức sâu rộng về API, bao gồm JDK và các thư viện của bên thứ ba (thư viện ngoài).

Đây là bộ sưu tập của tôi về một số thư viện ngoài hữu ích mà các nhà phát triển Java có thể sử dụng trong ứng dụng của họ để thực hiện nhiều nhiệm vụ hữu ích. Để sử dụng các thư viện này, các nhà phát triển Java nên quen với điều đó, và đây là toàn bộ vấn đề tôi sẽ chia sẻ

1. Logging Libraries

Việc đăng nhập các thư viện là điều cần thiết trong mọi dự án. Chúng là thứ quan trọng nhất đối với các ứng dụng phía máy chủ, vì các logs chỉ được đặt ở nơi bạn có thể thấy những gì đang diễn ra trên ứng dụng của bạn. Mặc dù JDK gửi cùng với thư viện ghi nhật ký riêng của mình, nhưng có các lựa chọn thay thế tốt hơn, ví dụ: Log4j, SLF4j và LogBack.

Thư viện ghi nhật ký Java hàng đầu

Top Java logging libraries

Một nhà phát triển Java nên làm quen với những ưu điểm và nhược điểm của thư viện Logging và biết tại sao sử dụng SLF4j thì tốt hơn Log4j đơn giản. Nếu bạn không biết tại sao, tôi khuyên bạn nên đọc bài viết trước của tôi về cùng một chủ đề.

2. JSON Parsing libraries

Trong thế giới dịch vụ web và IoT ngày nay, JSON đã trở thành giao thức truy cập để mang thông tin từ máy khách đến máy chủ. Họ đã thay thế XML và đây là cách được ưu tiên nhất để chuyển thông tin theo cách độc lập với nền tảng.

Thật không may, JDK không có một thư viện JSON. Tuy nhiên, có rất nhiều thư viện ngoài tốt cho phép bạn phân tích cú pháp và tạo các thông điệp JSON, như Jackson và Gson.

3. Unit Testing Libraries

Thử nghiệm đơn vị là điều quan trọng nhất để phân biệt một nhà  phát triển trung bình với một nhà phát triển giỏi. Nhưng lý do phổ biến nhất để tránh kiểm thử đơn vị là thiếu kinh nghiệm và kiến thức về các thư viện phổ biến như JUnit, Mockito và PowerMock.

Các thư viện kiểm tra đơn vị tốt nhất cho các nhà phát triển Java

Tôi có một mục tiêu vào năm 2018 để cải thiện kiến thức của mình về các bài kiểm tra đơn vị và các thư viện kiểm thử tích hợp, như JUnit 5, Cucumber, Robot framework và một số khác. 

4. General Purpose Libraries

Có một số thư viện tốt, có mục đích chung, bên thứ ba có sẵn cho các nhà phát triển Java, như Apache Commons và Google Guava.  Những thư viện này thường xuất hiện trong dự án của mình, bởi vì chúng đơn giản hóa rất nhiều nhiệm vụ.

Như Joshua Bloch đã nói đúng trong Java hiệu quả, không có điểm nào trong việc tái phát minh ra bánh xe. Chúng ta nên sử dụng các thư viện đã thử và thử nghiệm thay vì viết các thói quen riêng của chúng ta mọi lúc và sau đó.

Các thư viện phổ biến nhất cho các nhà phát triển Java

5. HTTP Libraries

Một điều tôi không thích về JDK là chúng thiếu tính hỗ trợ cho HTTP. Mặc dù bạn có thể tạo kết nối HTTP bằng cách sử dụng các lớp trong java.netpackage, nó không dễ dàng hoặc liền mạch để sử dụng các thư viện nguồn mở, bên thứ ba như Apache HttpClient và HttpCore.

Mặc dù JDK 9 đang hỗ trợ HTTP 2.0 và hỗ trợ tốt hơn cho HTTP, tôi đề nghị tất cả các nhà phát triển Java làm quen với các thư viện máy khách HTTP phổ biến, bao gồm HttpClient và HttpCore.

HTTP libraries tốt nhất cho Java Dev

6. XML Parsing Libraries

Có nhiều thư viện Parsing XML bao gồm Xerces, JAXB, JAXP, Dom4j và Xstream. Xerces2 là thế hệ tiếp theo của các trình phân tích cú pháp XML tuân thủ đầy đủ, hiệu năng cao trong “gia đình” Apache Xerces. Phiên bản mới này của Xerces được giới thiệu là Xerces Native Interface (XNI), một framework hoàn chỉnh để xây dựng các thành phần và cấu hình phân tích cú pháp cực kỳ mô-đun và dễ lập trình.

Các thư viện phân tích cú pháp XML tốt nhất cho các nhà phát triển Java

Trình phân tích cú pháp Xerces2 của Apache là việc triển khai tham chiếu của XNI, nhưng các thành phần, cấu hình và trình phân tích cú pháp khác có thể được viết bằng giao diện Native Xerces. Dom4j là một khung công tác XML linh hoạt cho các ứng dụng Java.

7. Excel Reading Libraries

Tin hay không – tất cả các ứng dụng trong thế giới thực phải tương tác với Microsoft Office dưới dạng này hay dạng khác. Nhiều ứng dụng cần cung cấp chức năng để xuất dữ liệu trong Excel và nếu bạn phải làm như vậy từ ứng dụng Java của mình, bạn cần API Apache POI.

Thư viện Microsoft tốt nhất cho các nhà phát triển Java

Đây là một thư viện rất phong phú cho phép bạn đọc và viết các tệp XLS từ một chương trình Java. Bạn có thể thấy nó liên kết đến một ví dụ làm việc về việc đọc một tệp Excel trong một ứng dụng core Java.

8. Thư viện Bytecode

Nếu bạn đang viết một framework hoặc thư viện tạo mã hoặc tương tác với bytecode, thì bạn phải cần một thư viện bytecode.

Chúng cho phép bạn đọc và sửa đổi bytecode được tạo ra bởi một ứng dụng. Một số thư viện bytecode phổ biến trong thế giới Java là javassist và Cglib Nodep.

Các thư viện thao tác Bytecode tốt nhất cho các nhà phát triển Java

Javassist (JAVA programming ASSISTant) làm cho thao tác Java bytecode  trở nên đơn giản hơn. Nó là lass library để chỉnh sửa bytecode trong Java. ASM là một thư viện chỉnh sửa bytecode hữu ích khác.

9. Database Connection Pool Libraries

Nếu bạn đang tương tác với database từ một ứng dụng Java nhưng không sử dụng pool libraries để kết nối cơ sở dữ liệu thì bạn đã bỏ lỡ điều gì đó.

Vì việc tạo các kết nối cơ sở dữ liệu trong thời gian thực hiện mất thời gian và yêu cầu xử lý chậm hơn, nên luôn sử dụng các thư viện kết nối DB. Một số loại phổ biến là Commons Pool và DBCP.

Trong một ứng dụng web, máy chủ web thường cung cấp các chức năng này, nhưng trong các ứng dụng core Java, bạn cần phải bao gồm các thư viện kết nối này vào đường dẫn lớp của bạn để sử dụng pool kết nối cơ sở dữ liệu.

Nếu bạn muốn tìm hiểu thêm về JDBC và nhóm kết nối trong một ứng dụng web, tôi khuyên bạn hãy xem qua khóa học JSP, Servlet và JDBC cho người mới bắt đầu ở Udemy.

10. Messaging Libraries

Tương tự như đăng nhập và kết nối CSDL, nhắn tin cũng là một tính năng phổ biến của nhiều ứng dụng Java trong thế giới thực.

Java cung cấp JMS (Java Messaging Service) đó không phải là một phần của JDK. Đối với thành phần này, bạn cần phải có một jms.jar riêng biệt.

Tương tự, nếu bạn đang sử dụng các giao thức nhắn tin của bên thứ ba, như Tibco RV, thì bạn cần sử dụng một JAR của bên thứ ba – tibrv.jar – trong ứng dụng classpath của bạn.

Trên đây là một nửa số thư viện mình dự định sẽ chia sẻ với các bạn, số thư viện còn lại mình xin phép sẽ chia sẻ trong bài tiếp theo. Tuy nhiên, trong thời gian chờ đợi phần tiếp theo, các Java Dev hãy dành thời gian tham gia một sự kiện hoàn toàn miễn phí của LINE Vietnam để được update những cập nhật mới nhất về Java cũng như các vấn đề xoay quanh Java 9 nhé.

Nguồn: Devmaster via Internet

 

Các bài viết cùng chủ đề

BÍ QUYẾT HỌC LẬP TRÌNH CHO CÁC BẠN ĐẦU NĂM HỌC MỚI ❤
BÍ QUYẾT HỌC LẬP TRÌNH CHO CÁC BẠN ĐẦU NĂM HỌC MỚI...
5 Phương pháp hay để mở rộng các dự án React của bạn một cách dễ dàng
5 Phương pháp hay để mở rộng các dự án React của b...
Lab06.1 - Data Access In ASPNET MVC 5
Lab06.1 - Data Access In ASPNET MVC 5
Lab05 - Data Validation and Annotation In ASPNET MVC 5
Lab05 - Data Validation and Annotation In ASPNET M...
Lab 04 - Model in ASP.NET MVC 5 - Phần tự thực hành
Lab 04 - Model in ASP.NET MVC 5 - Phần tự thực hàn...
Lab 04 - Model in ASP.NET MVC 5 - Bài 4.2
Lab 04 - Model in ASP.NET MVC 5 - Bài 4.2

Các khóa đào tạo chuyên đề

Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
Lập trình ứng dụng trên nền tảng android Lập trình ứng dụng trên nền tảng android
Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack

Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack
Lập trình ứng dụng với WINDOWS FORM Lập trình ứng dụng với WINDOWS FORM
Lập trình ứng dụng với JAVA (FORM) Lập trình ứng dụng với JAVA (FORM)
Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery
Lập trình frontend với reacjs (Full) Lập trình frontend với reacjs (Full)
DEVMASTER DEVMASTER DEVMASTER DEVMASTER
Viện Công Nghệ Và Đào Tạo Devmaster

DEVMASTER ACADEMY

Địa chỉ: Tầng 6 - Tòa nhà VIỆN CÔNG NGHỆ
Số 25, Vũ Ngọc Phan - Láng Hạ - Đống Đa - Hà Nội

Hotline: 0969 609 003 | 0978 611 889

devmaster.contact@gmail.com

hna.tvchung@gmail.com

CÁC KHÓA HỌC CHUYÊN ĐỀ

  • Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
  • Lập trình ứng dụng trên nền tảng android
  • Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack
  • Lập trình ứng dụng với WINDOWS FORM
  • Lập trình ứng dụng với JAVA (FORM)
  • Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
  • Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery
  • Lập trình frontend với reacjs (Full)
Viện Công Nghệ Và Đào Tạo Devmaster

VIỆN CÔNG NGHỆ VÀ ĐÀO TẠO DEVMASTER - Học thực tế * Làm thực tế * Cam kết việc làm
Copyright by Ⓒ DEVMASTER 2015