Hi friends, please evaluate the proposal below. PROPOSAL: Use namespaces effectively and organize drizzled/ directory by functional unit
I'd like to be able to use C++ namespaces in order to better organize the code in the main drizzled/ server source code directory. Here is a proposed naming convention for the namespaces. namespace Drizzled Anything in the /drizzled directory namespace Drizzled::Serialize Anything in the drizzled/serialize/ directory (the Google Proto Buffer code and classes) namespace Drizzled::Replication All replication stuff, to be moved out of the main drizzled/ directory and into a subdirectory named drizzled/replication/ namespace Drizzled::SQL Classes and code corresponding to the execution of specific SQL commands -- files such as sql_table.cc, sql_select.cc, etc... namespace Drizzled::Optimizer Classes and code for the optimizer -- files such as opt_range.cc, opt_sum.cc, and eventually a whole lot more after it gets refactored into non-spaghetti namespace Drizzled::Item The Item_XX classes. Move item_ classes into /drizzled/item namespace Drizzled::Item::Field The Item_field classes. Move the directory drizzled/field/ under drizzled/item/field/ namespace Drizzled::Plugin All code for the server's plugin API, to be put in /drizzled/plugin/ namespace Drizzled::Parser All parser/lexer code, to be moved into drizzled/parser/ I think that moving to such a directory structure and namespace organization will be helpful for developers to better organize code (in their heads) and also may help if certain functionality will eventually be made into a stand-alone library (for instance /drizzled/parser/ ->libdrizzleparse) Just some thoughts. Bad idea? Advice/suggestions welcome. Cheers, Jay _______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : [email protected] Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp

