2009-09-02 43 views

Trả lời

14

Nó không phải là một cái gì đó quan trọng như trong "bắt buộc". Đó là một khả năng khác, với sức mạnh và điểm yếu.

Ưu điểm:

  • Compile thời gian kiểm tra: viết bằng Java (thay vì Xml) là rất dễ sử dụng trong IDE hiện nay. Không có nhiều lỗi chính tả được phát hiện khi bắt đầu ứng dụng của bạn (incremental biên soạn), không phải là nhiều để nhớ (hoàn) ...
  • Localized với mã (cấp lớp): thay vì phải mở hai tập tin (java và xml) để có được toàn bộ câu chuyện, với một tệp java được chú thích, bạn chỉ mở một tệp. Điều này ít lặp đi lặp lại, nhanh hơn về lâu dài.
  • Được bản địa hóa với mã (phương thức hoặc cấp trường): vì chú thích đi trên phương thức (hoặc trường), có không cần chỉ định phương thức thuộc về. Thông tin redtuary đó không được cung cấp, ngắn hơn và luôn mạch lạc (ngay cả sau khi tái cấu trúc mã chẳng hạn). Bảo trì nhanh hơn rất nhiều.
  • Công cụ (javadoc, các công cụ khác sử dụng phản chiếu) có thể sử dụng chú thích cho một số yêu cầu khác.
  • Chú thích mới hơn xml, nhóm đã sử dụng thông tin họ đã nhận được vào thời điểm đó để cung cấp giá trị mặc định tốt hơn. Xml có một số nhưng không thể thay đổi nhiều vì lý do tương thích. Thông thường, với công nghệ chú thích, bạn hoàn toàn không viết chú thích và nó hoạt động. Hãy tưởng tượng tiết kiệm thời gian, đặc biệt là trong quá trình phát triển.
+6

"không tipos" ... oh, trớ trêu ... – skaffman

+0

@skaffman: đã sửa nó. Hy vọng bình luận sửa đổi của tôi làm cho bạn thậm chí còn hạnh phúc hơn :-) –

+0

@Robert cảm ơn vì đã sửa đổi, tôi sẽ tự làm điều đó. – KLE

2

Tôi không hiểu tất cả các hype xung quanh chú thích và tôi thích HBM vì những lý do sau đây (Những lý do bác bỏ những nhược điểm như lỗi chính tả, biên dịch kiểm tra thời gian cho tôi):

  1. tách od mối quan tâm/Trách nhiệm duy nhất: Với HBM, bạn có tất cả các công cụ liên quan đến ORM trong HBM. Thực thể và logic miền (độc lập với cấu trúc bảng) trong lớp java. Lớp DB và java của bạn có thể được thay đổi độc lập (Chỉ cần cập nhật HBM).
  2. Mã của bạn không bị lộn xộn với chú thích. Tôi thích nhìn vào logic miền. Chú thích thêm nhiều tiếng ồn.

Nếu HBM được tổ chức tốt (một HBM cho mỗi lớp java, đặt tên nhất quán) sẽ dễ dàng điều hướng giữa hai. Junit kiểm tra và một số kỷ luật sẽ loại bỏ sự cần thiết phải kiểm tra thời gian biên dịch. Đối với mặc định, tôi nghĩ rằng nếu hibernate có thể làm việc không có chú thích ở tất cả nó sẽ có thể làm việc không có XML ở tất cả (khái niệm - không biết nếu điều này là thực tế)

Các vấn đề liên quan