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

Reply via email to