Oh, and lastly, it makes tooling that depends on the build system, such as IDEs, much harder to build or dedicated to a narrower segment of developers (e.g. Since people may waste time fighting about what build system to use and teams may waste time explaining their build systems to new members which are used to other build systems.įurther more, there mere act of moving source code from a machine to another one, running the exact same OS, can be a pain in the neck, since we are stupidly relaying on the package manager to handle dependencies for us. This results in a lot of monolithic libraries which are hard to maintain, improve, document and most importantly hard to replace. People are reluctant to include less in a library they are designing or to relay on a lot of 3rd part libraries because they know how inconvenient building a project with a lot of interacting libraries can be. Large open source codebases are designed with this idea in mind. I think this problem is far from being concealed to the "beginners" side of things. However I feel like one of the main impediments for programmers picking up C++, especially ones young enough to look upon the idea of having separate headers and implementations or the idea of having one build system compile to another as being weird rather than the norm, is that C++ doesn't have a standardized way to build a project or download and use a library. ![]() ![]() I understand that, in a very abstract sense, a package manager and build systems were never intended to be part of C or C++ and still aren't.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |