2011/7/13 Jesse Phillips <jessekphillip...@gmail.com>: > After reading Kagamin's response, I'm not sure I understand you still. You > want to have code reuse, you want to have run-time and compile-time > configuration, but you don't want to make use of the > technologies/techniques/patterns which facilitate these.
I'm not sure are you referring 'technologies/techniques/patterns' to code reusability or configuration. If the first one, read one. If second, i don't know which techniques/patterns you are talking about. version() doesn't match for me here i think. > You say no to libraries That's not true! I'm not sure how did you came up to this conclusions, but i love libraries for applications same as command-line programs (like ffmpeg) for GUI apps. >, you say no to frameworks, That's true i don't really like frameworks, but only because i felt like they're trying to be irreplaceable. If you're using one part, it's hard to make other parts they implemented in your own way (so they're too tightly integrated). Maybe i just tried wrong ones, i don't know. Libraries on the other hand, let you compose your program from solutions i like most, and that's why i'm trying to do this clear division between interface and implementation. So i can use different specialized libraries, and later make my own, so if someone likes my entity system he doesn't have to use my poor renderer. So hopefully i won't end-up with some big chunk of code as ogre3d. > you say no to versioning and desire the benefits of these without what they > entail. If you come up with an alternative, then please do bring it forward. > I don't see how anyone will be able to get you what you want. I like version control, and that's why i'm using one (git), even if i don't really need to operate with someone because of current project phase. Versions we're talking about are rather like compilation profiles, so you can use different sets of libraries to try different implementations without code modification. So, in one moment there would be code for many alternative implementations, and versions would affect only resulting binary which isn't commited at all.