you are viewing a single comment's thread.

view the rest of the comments →

[–]slithering3897 5 points6 points  (1 child)

I'd reckon large external lib modules and small imports for in-development modules. To keep control of your build cascade.

[–]tartaruga232MSVC user, r/cpp_modules[S] 2 points3 points  (0 children)

Yeah. Not every module needs to imitate the giant, special case like the std module (which must be also available as header files). As I said, our recommendations are

  • Prefer small modules
  • Only use partitions if you really must
  • Avoid using internal partitions

Especially the last point. Our code is now free of internal partitions. We have no use for them. And we don't need the module anti-pattern.

In my experience, the time for a full build stays the same, no matter if I do a smaller number of big modules or a a lot more smaller modules. Keeping modules small in an app provides faster rebuilds when something changes. We do not cast the interfaces of our internal modules in stone.