TLDR;
Nên bạn thêm nguồn? CÓ X
nên thêm nguồn? TIỀN GỬI
Đây là lý do tại sao ...
Trước đây, thời gian biên dịch là một vấn đề thậm chí các dự án nhỏ hơn đã có. Tổng hợp các nguồn của bạn và không bao giờ lo lắng về kết quả của trình biên dịch bộ nhớ đệm chắc chắn đã hấp dẫn một số người. Đó là một điểm cho các thư viện không liên quan đến bạn.
Một điều quan trọng khác là phiên bản. Bạn có thực sự cần phiên bản riêng từng thư viện? Chạy thử nghiệm với từng người? Phân phối nó giữa nhiều thành viên trong nhóm? Thư viện là tuyệt vời nếu bạn làm, và thuận tiện để di chuyển, nhưng một lần nữa, dường như bạn cũng không quan tâm đến điều này.
Điểm cuối cùng ở đây là, đó là một chi phí bổ sung và việc thả các tệp nguồn dễ dàng hơn trong trường hợp của bạn, điều này mang lại một điểm rất mạnh để giảm các nguồn thay vì sử dụng các thư viện. Như bạn đã nhận thấy, một khi bạn thực hiện một thay đổi cài đặt trình biên dịch, bạn phải theo đuổi tất cả các phụ thuộc khác.
Tôi biết tất cả điều này từ kinh nghiệm:
Đối với các dự án Swift, tôi chắc chắn sử dụng các khung (thư viện) và liên kết với chúng, vì nó dễ dàng cấu hình bằng Xcode. Tôi cũng thực sự cần phiên bản, kiểm tra và tách rời ở đó, vì vậy đó là lý do.
Đối với các dự án Mono (C #), đối với Unity, tôi bắt đầu với cách tiếp cận mạnh mẽ là chia nhỏ dự án thành các thư viện, biên soạn và thử nghiệm từng dự án, điều này thật tuyệt ... nhưng một khi tôi bỏ thư viện vào Unity, mọi vấn đề đã xảy ra , từ phiên bản hack của Mono Unity sử dụng, chỉ đơn giản là hành vi đôi khi khác nhau mà mã thể hiện khi thay đổi nền tảng. Không có một IDE duy nhất ở đây để quản lý tất cả các thư viện là một nỗi đau thực sự, vì vậy việc đưa tất cả nguồn vào Unity là một chiến thắng lớn cho năng suất.
Cuối cùng, phù hợp nhất với bạn, một dự án trò chơi C ++ mà tôi đã làm việc. Một công cụ trò chơi, máy khách thời gian thực mạng, máy khách HTTP mạng, AI và một cửa hàng kiên trì đã được viết cho trò chơi này, chỉ ở phía máy khách. Tôi đã chọn gì? CLion + Thư viện. Mặc dù tôi đang sử dụng các thư viện, tôi không cảm thấy như vậy. Tất cả các nguồn đều nằm trong dự án CLion IDE và bằng cách soạn CMakeLists, tôi có thể kích hoạt tất cả các bản dựng và liên kết chúng trong một nét.
Để kết luận , tôi sẽ nói sử dụng các thư viện là một giải pháp chứng minh trong tương lai, nhưng cũng là một tối ưu hóa sớm nếu không cần thiết. Theo như tôi có thể xác định được từ tình huống của bạn, việc chuyển từ MSVC sang Xcode sẽ là một nỗi đau nếu bạn sẽ có nhiều mục tiêu xây dựng. Vì vậy, chỉ cần thả nó vào và duy trì càng nhiều cách ly càng tốt cho khi thời gian khi bạn có thể cần phải sử dụng thư viện.
PS: Tôi đang có một tình huống khó xử tương tự những ngày này với docker. Có nên sáng tác? Tôi có nên chạy địa phương? .. vv Ngoài ra Elixir, vì nó cho phép bạn xây dựng Ứng dụng trong cùng một ứng dụng .. Tôi có nên làm điều đó không? Hoặc tách ứng dụng thành cái gọi là dịch vụ vi mô? ... vv Không có viên đạn bạc, luôn tự đo mình, như YMMV.