2009-08-13 42 views
5

Câu hỏi này xuất hiện từ một ứng dụng web, mặc dù nó cũng hợp lệ đối với các loại ứng dụng khác. Tôi đang sử dụng MVC.Sự khác biệt giữa thư viện và mã ứng dụng?

Tôi có cả mã ứng dụng (mô hình, chế độ xem, bộ điều khiển, biểu mẫu, người trợ giúp, v.v.) và mã thư viện (thư viện bên ngoài và thư viện nội bộ với người lập bản đồ cơ sở dữ liệu tự viết, bộ chuyển đổi json, v.v.).

Tôi tự hỏi bạn thường vẽ đường nào giữa mã ứng dụng và mã thư viện (khi cả hai được viết nội bộ)?

Một số mã thư viện được sử dụng khá cụ thể, nhưng vẫn có chút trừu tượng.

Trả lời

5

Mã của thư viện có thể sử dụng lại được, mã của ứng dụng thường không. Giữ mã trong một thư viện khi nó không được gắn riêng cho ứng dụng.

Khi nghi ngờ cố gắng trả lời câu hỏi này:

Nếu tôi viết một ứng dụng khác, mã này sẽ vẫn?

4

Quy tắc chung của tôi là: Mọi thứ có thể được sử dụng trong một dự án khác, và có thể được thực hiện dễ dàng không phụ thuộc vào bất kỳ mã nào của ứng dụng (và có tất cả các loại kỹ thuật để làm điều đó) Thư viện. Vì vậy, nếu nó có khả năng tái sử dụng nó đi vào một thư viện.

1

Khi phải đối mặt với các loại câu hỏi phân loại này tôi muốn biết một điều: hậu quả của việc phân loại.

Mã này là "thư viện", mã đó là "ứng dụng" ... vì lợi ích nào của sự phân biệt này được tạo ra? Điều gì sẽ xảy ra nếu chúng tôi đặt một số mã trong danh mục sai?

Một câu trả lời có thể có:

Nó ảnh hưởng đến việc sử dụng lại mã. Giả sử chúng ta có một chính sách: mã thư viện có sẵn trong một DLL với các tiêu đề bắt buộc, vv Mã ứng dụng chỉ được triển khai trong một .EXE.

Đặt thói quen tốt để thực hiện tính toán khó trong ứng dụng, không phải thư viện, sau đó không thể dễ dàng được sử dụng lại.

Có lẽ những điều xa hơn tiếp theo từ dòng suy nghĩ đó ... các câu hỏi về phiên bản được áp dụng. Chúng ta có cần tạo ra tài liệu tốt hơn không? [Ngay cả với một nhà phát triển duy nhất chúng tôi có thể chăm sóc nhiều hơn?] Chúng ta cần phải externalise thông tin cấu hình, mak doubly chắc chắn không phải mã cứng bất cứ điều gì?

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