Hey, Some suggestions regarding code quality and design:
* The MediaWiki SpecialPage system has serious design issues and is best treated as legacy API. I recommend not binding domain or application logic to it where this can be avoided. This means not having most code in a subclass of SpecialPage. * Creating inheritance hierarchies to share code is very likely a bad idea. This is done often in MediaWiki, and in all cases I'm aware of has very negative consequences. Try separating concerns and using composition. * Use hooks with caution. They can easily lead to lots of tight coupling and harmful procedural control flows. I suggest only introducing hooks that are clearly needed, and keeping argument lists of these to a minimum. This means both argument count and argument size (passing in a whole context object is likely bad for instance). That being said, great you are working on improving this code! Also note how these are general suggestions/concerns that came to my mind after reading your email, not feedback on specific code or changes. Cheers -- Jeroen De Dauw http://www.bn2vs.com Don't panic. Don't be evil. ~=[,,_,,]:3 -- _______________________________________________ Wikitech-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikitech-l
