JavaRush /Blog Java /Random-VI /10 thư viện Java hàng đầu để tiết kiệm thời gian

10 thư viện Java hàng đầu để tiết kiệm thời gian

Xuất bản trong nhóm
Bài viết này dành cho ai: một số điều sẽ được những người mới bắt đầu nghiên cứu về Cú pháp Java quan tâm, nhưng về cơ bản, tài liệu được trình bày sẽ phù hợp hơn với những người đã vượt qua đường xích đạo của khóa học (hiểu Bộ sưu tập Java và Đa luồng Java nhiệm vụ) và bắt đầu quan tâm đến các công nghệ vượt xa khung công tác Java Core. Trong suốt quá trình tồn tại của mình, Java đã có được một lượng thư viện khá lớn. Nhưng làm thế nào để bạn biết cái nào đáng sử dụng và cái nào không? Việc tách lúa mì ra khỏi vỏ trấu là điều vô cùng khó khăn đối với một nhà phát triển luôn bận rộn. Trong bài viết này , Martin Patsov, Nhà phát triển Full Stack tại Dreamix, nói về tình yêu của anh ấy đối với các thư viện nguồn mở và gợi ý những thư viện mà anh ấy thấy đặc biệt hữu ích. 10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 1Tồn tại hay không tồn tại, đó là câu hỏi: Liệu nó sẽ là sự cứu rỗi hay thất bại Cũng chính thư viện Java đó... Hãy dũng cảm lên! “SigniOrs” đã ở đó và tôi sẽ truyền lại kinh nghiệm của họ cho bạn. Đừng để bị lạc lối bởi sự lạc đề thơ ca của tôi. Thực sự có rất nhiều thư viện trong Java và rất khó để hiểu chúng. Tuy nhiên, tôi yêu họ rất nhiều. Tôi thậm chí có thể được gọi là “nhà truyền giáo thư viện” ( bởi “nhà truyền giáo” trong lĩnh vực CNTT, chúng tôi muốn nói không phải là người biên soạn phúc âm kinh điển, mà là người quảng bá công nghệ này hay công nghệ kia một cách chuyên nghiệp. Đừng nhầm lẫn nó với những người PR bình thường: thường xuyên nhất , một nhà truyền giáo CNTT có hiểu biết sâu sắc về công nghệ mà anh ấy đang quảng bá công nghệ - ghi chú của biên tập viên ). Thư viện là một phần rất quan trọng của hệ sinh thái nguồn mở. Các cộng đồng lớn phát triển xung quanh họ, phát triển và hỗ trợ họ. Và điều đó thật tuyệt. Ưu điểm chính của thư viện là chúng cho phép chúng ta tránh phải phát minh lại cái bánh xe mỗi khi viết mã. Sử dụng thư viện—mã đã được viết cho các tác vụ cụ thể—thường xuyên nhất có thể! Bạn sẽ tiết kiệm thời gian. Nghiêm túc mà nói, tốt hơn hết là bạn nên dành thời gian đi chơi cùng gia đình và bạn bè.

Tôp 10

Trong ghi chú này, tôi đã đề cập đến những thư viện Java mà tôi thích sử dụng trong công việc của mình. Tất cả đều là phần mềm nguồn mở. Tôi đã chọn nó trên cơ sở tính hữu ích, tài liệu và hỗ trợ tốt cũng như cập nhật thường xuyên. Tôi muốn nhấn mạnh một lần nữa rằng đây là lựa chọn cá nhân của tôi và nó có thể khác biệt đáng kể so với lựa chọn của bạn.

1. Thư viện chuẩn Java

Vâng, vâng, bạn đã không nghĩ như vậy! Hơn nữa, nhiều người đánh giá thấp, họ không biết vô số khả năng của Thư viện chuẩn Java và không biết cách khai thác tiềm năng lập trình của chúng... hoặc thậm chí không sử dụng chúng. Dưới đây là một mô tả ngắn gọn về một số trong số họ:
  • java.lang . Thư viện này luôn được nhập vào bất kỳ ứng dụng Java nào, vì nó chứa mọi thứ mà về cơ bản bạn không thể lập trình nếu không có nó ( String , Double , Enum , Math , v.v.).

  • Trong java.util bạn có thể tìm thấy tất cả các bộ sưu tập và cấu trúc dữ liệu có sẵn trong Java.

  • Tiếp theo, chúng ta có java.io để đọc tệp, chạy luồng, đối tượng lớp Pipe, v.v.

  • Rất có thể bạn đã nghe nói về ba điều đầu tiên. Nhưng không phải ai cũng biết về java.nio , một giải pháp thay thế cho java.io. Thư viện này chịu trách nhiệm về việc không chặn I/O, cho phép, như bạn có thể đoán, sử dụng nhiều I/O.

  • java.net được sử dụng để làm việc với các socket, tạo kết nối hoặc các ứng dụng mạng ngắn.

  • Trong Java, chúng tôi cũng có các thư viện để làm việc với GUI: javax.swing (một phần mở rộng khá lỗi thời của java.awt thậm chí còn cũ hơn ).

  • Chúng ta thậm chí có thể phát nhạc và tạo các tệp MIDI bằng cách sử dụng java.sound .

2. JHipster

JHipster là một nền tảng để triển khai, phát triển và tạo nhanh chóng các máy chủ web có khả năng mở rộng với tải trọng cao và sử dụng các công nghệ hiện đại và thời trang nhất như Spring, Spring-MicroServices, Netflix, Docker, Kubernetes, AngularJs, Liquibase, MongoDB, Cassandra, ElasticSearch.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 2
Thành thật mà nói, "người hipster Java" này chắc chắn đã cứu mạng tôi nhiều tháng. Tôi chắc chắn có thể nói rằng JHipster là tác phẩm yêu thích của cá nhân tôi trong danh sách và giữ một vị trí đặc biệt trong trái tim tôi. Công cụ này gần như không thể thiếu để tạo bản phác thảo của dự án máy chủ web phân tán. Nó có thể tạo tệp pom với các phần phụ thuộc, định cấu hình Tìm kiếm và kết nối đàn hồi, tất cả những gì bạn phải làm là thêm logic nghiệp vụ của kiến ​​trúc. Các thư viện chính và quan trọng nhất có trong dự án được tạo là:
  • Spring Boot giúp tăng tốc và đơn giản hóa việc phát triển ứng dụng
  • Angular /AngularJS - Khung JavaScript
Bạn có thể tìm thêm thông tin về JHipster tại đây .

3. Maven

Maven là một trong ba công cụ phổ biến nhất để xây dựng các dự án Java. Anh ta chịu trách nhiệm biên dịch, tạo các tệp jar (kho lưu trữ Java), tạo bản phân phối chương trình và tạo tài liệu.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 3
Mỗi dự án hiện đại bao gồm các tệp, mô-đun, công nghệ khác nhau. Nói một cách rất đơn giản, việc xây dựng một dự án là chuẩn bị phiên bản “đang hoạt động” của nó, tức là một chương trình có thể được khởi chạy để thực thi. Việc này có thể được thực hiện thủ công, trên dòng lệnh hoặc bạn có thể viết các tập lệnh đặc biệt. Tuy nhiên, việc này sẽ dễ thực hiện hơn nhiều bằng cách sử dụng các ứng dụng đặc biệt. Chúng được gọi là “hệ thống lắp ráp tự động”. Maven là một trong ba chương trình như vậy, hai chương trình còn lại là Gradle và Ant. Những hệ thống như vậy nhận mã nguồn của dự án làm đầu vào và đầu ra là một chương trình có thể chạy được.
Cấu trúc dự án (phụ thuộc, cấu hình, tài liệu) được mô tả trong tệp pom.xml (POM - Project Object Model), tệp này phải nằm trong thư mục gốc của dự án. Thành thật mà nói, Maven là một thứ tuyệt vời, ngay cả khi ban đầu nó không rõ ràng lắm. Nếu bạn chưa từng sử dụng Maven trước đây thì bạn đang bỏ lỡ cơ hội. Thành thật mà nói, tôi thậm chí còn không hiểu các ứng dụng Enterprise được tạo ra như thế nào trước Maven. Bạn có thể đọc về Maven bằng tiếng Nga tại đây .

4. Cộng đồng Apache

Apache Commons thực chất là toàn bộ dự án tập trung vào việc tạo các thư viện Java. Hoặc “một bộ lớn các tiện ích Java nhỏ” cho nhiều mục đích khác nhau. Nhân tiện, các tiện ích Apache Commons là nền tảng của một số dự án rất nổi tiếng, chẳng hạn như Tomcat, Hibernate và các dự án khác. Dưới đây là danh sách ngắn một số thư viện Apache Commons được sử dụng phổ biến nhất:
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 4
  • Toán học chung . Thư viện toán học Apache Commons, cái tên đã nói lên tất cả: nó chứa các thành phần cho các hoạt động và phép tính toán học và thống kê phức tạp.

  • CLI chung . Cung cấp API để phân tích các đối số dòng lệnh. Thật khó để nghĩ đến việc tạo một ứng dụng mà không có khả năng truyền tham số và kiểm soát hành vi của nó!

  • CSV chung . Bất kể bạn phát triển gì, đến một lúc nào đó bạn sẽ phải đối mặt với nhu cầu sử dụng tệp csv. Nghĩa là, chúng sẽ phải được mở, đọc, chỉnh sửa, lưu và tạo. Tôi khuyên bạn nên sử dụng định dạng RFC 4180 từ lớp CSVFormat và mã hóa UTF-8 khi lưu/tạo tệp.

  • Commons I.O. Được sử dụng để đơn giản hóa các hoạt động I/O. Ít nhất hãy xem ReversedLinesFileReader, nó đáng giá!
Bạn có thể đọc về Apache Commons (bằng tiếng Anh) tại đây .

5. Ổi

Guava là một tập hợp các thư viện cốt lõi của Google dành cho Java. Chúng có chứa các loại bộ sưu tập mới (ví dụ: multimap và multiset), bộ sưu tập bất biến, thư viện đồ thị, loại chức năng không? các tiện ích dành cho đồng thời, I/O, băm, xử lý chuỗi và nhiều tiện ích khác. Tất cả những công cụ này đều được các chuyên gia của Google sử dụng trong công việc của họ và đây đã là một đề xuất tốt.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 5
Ở một mức độ nào đó, Guava là một giải pháp thay thế cho Apache Commons. Trên thực tế, chúng ta có thể nói về ổi rất lâu (hãy chú ý đến nó!), nhưng ở đây tôi sẽ chỉ đề cập đến một điều hữu ích từ thư viện này. Có lẽ bạn đã gặp phải thách thức trong việc sắp xếp các bộ sưu tập của mình hoặc so sánh nội dung trong đó? Còn việc sắp xếp và so sánh nâng cao trên nhiều cột với nhiều điều kiện thì sao? Thành phần CompareChain được sử dụng để triển khai tính năng sắp xếp nâng cao và phức tạp cho các bộ sưu tập. Bạn có thể đọc về ổi (bằng tiếng Anh) tại đây .

6. google-gson

Thư viện google-gson rất hữu ích cho việc chuyển đổi các đối tượng Java thành JSON và ngược lại. Nó đặc biệt hữu ích khi phát triển các ứng dụng di động và tạo/sử dụng API REST hoặc bất kỳ lúc nào bạn cần chuyển đổi một đối tượng Java sang biểu diễn JSON của nó và ngược lại.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 6
Bạn sẽ tìm hiểu về JSON (Ký hiệu đối tượng JavaScript), Guava, Apache Commons và những điều thú vị khác từ nhiệm vụ Bộ sưu tập Java .
Bạn có thể đọc về google-gson (bằng tiếng Anh) tại đây .

7. Ngủ đông-ORM

Hibernate là một thư viện được thiết kế để giải quyết các vấn đề về ánh xạ quan hệ đối tượng (ORM). ORM ngủ đông được sử dụng để lưu trữ dữ liệu trong cơ sở dữ liệu quan hệ. Nó cung cấp một cách đơn giản và trừu tượng hơn để các nhà phát triển thực hiện việc này. Nó sử dụng JDBC trong quá trình triển khai. Hibernate cũng là một triển khai đặc tả JPA.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 7
Bạn có thể đọc về Hibernate ORM (bằng tiếng Anh) tại đây .

8. Mockito

Đừng để cái tên Mockito đánh lừa bạn. Đây không phải là về một ly cocktail mà là về một thư viện dành cho các đồ vật giả. Đối tượng giả là đối tượng bắt chước hành vi của đối tượng thật theo một sơ đồ nhất định. Ví dụ: đối với thử nghiệm đơn vị, các đối tượng "giả" như vậy có thể mô phỏng hành vi của các đối tượng kinh doanh. Chà, thư viện mô phỏng Mockito làm tăng sự tiện lợi trong việc tạo và sử dụng các đối tượng mô phỏng.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 8
Bạn có thể tìm thấy thông tin về Mockito tại đây .

9. Đơn vị J

JUnit là một khung Java miễn phí để tạo các bài kiểm tra đơn vị (còn gọi là bài kiểm tra đơn vị). Thư viện này là một trong những thư viện phổ biến nhất, hầu hết mọi người đều sử dụng nó. Chúng tôi khuyên bạn nên nắm bắt nó càng nhanh càng tốt, vì các nhà phát triển Java mới và Học viên Java thường bị buộc phải “che mã bằng các bài kiểm tra”. Và tôi phải nói rằng đây không phải là khởi đầu tồi tệ nhất trong sự nghiệp.
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 9
Thông tin thêm về Junit tại đây .

10.Log4j và Slf4j

Hai khung này được thiết kế để ẩn việc triển khai các hoạt động thường lệ để ghi lại các sự kiện nhất định xảy ra trong khi các ứng dụng Java đang chạy. Slf4j là một bản tóm tắt cho các khung ghi nhật ký khác (cùng Log4j).
10 thư viện Java hàng đầu giúp tiết kiệm thời gian - 10
Thông tin thêm về Log4jSlf4j .
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION