Nói chung, đó là một quá trình hữu cơ đối với tôi.
Không gian tên của tôi có xu hướng phản chiếu tên thư mục của tôi, chủ yếu vì tôi nghĩ việc tìm kiếm mọi thứ theo cách đó dễ dàng hơn.
Các dự án công ty thường có tiền tố công ty ở phía trước không gian tên và đối với các dự án cá nhân, tôi chuyển đổi giữa dự án-prefix.folder và chỉ thư mục cho các tên.
Các thư mục "chính" có xu hướng rõ ràng cho tên của chúng và thường liên quan đến chức năng của chúng - "Foo". Đối với các dự án lớn hơn, tôi sẽ chia ra thư mục chính để phản ánh mô hình lập trình chính mà tôi có thể theo dõi. Vì vậy, đối với MVVM, tôi sẽ có "Foo.View", "Foo.ViewModel" và "Foo.Model" làm tên ví dụ.
Lúc nào cũng vậy, các hàm trợ giúp không phù hợp với bất kỳ nơi nào khác bắt đầu len lỏi vào dự án. Tôi sẽ bắt đầu với một thư mục loại "chung" hoặc "tiện ích" để lần đầu tiên hạ cánh chúng. "Người trợ giúp", "Cơ sở" và "Lõi" sẽ hoạt động tốt như một nơi hạ cánh ban đầu.
Tôi cố gắng đặt tên cho các chức năng của mình dựa trên Chủ đề và / hoặc Hành động mà chúng thực hiện. Vì vậy, tôi có thể có PathManager, PathChecker, v.v ... Thông thường, tôi biết tôi sẽ có một số Hành động liên quan đến một chủ đề, vì vậy tôi sẽ đặt tên lớp theo Chủ đề và thêm các phương thức khi cần. Một từ điển có thể có ích ở đây.
Tôi đã tìm thấy một mối tương quan cao giữa việc dễ dàng đặt tên một đối tượng và mức độ tôi có thể mô tả chức năng này phải làm như thế nào. Một trong những điểm kiểm tra cá nhân của tôi là nếu tôi đang vật lộn để đặt tên cho một cái gì đó thì điều đó có nghĩa là tôi cần phải suy nghĩ về những gì chức năng thực sự phải làm. Một khi tôi sửa các vấn đề chức năng, tên đến dễ dàng.
Khi tôi thu thập thêm các hàm trợ giúp, tôi sẽ di chuyển chúng vào thư mục và / hoặc không gian tên của riêng chúng. Việc họ có nhận được một thư mục của dự án gốc hay họ có nhận được một thư mục con vào thư mục tiện ích hay không tùy thuộc vào tính chất và số lượng của các chức năng.
MFC
cho nó là "Mehrdad Foundation Classes", nhưng thật không may, chữ viết tắt này đã được sử dụng trong gần hai thập kỷ :(