Fantastic job again on the release of Joomla 1.6.0 stable. Amazing
amount of hard work done by so many people has really paid off!
Now that we have a stable version released I would like to bring an
important point forward. We have a beautiful new framework, with
inadequate and inaccurate documentation/api. The problem is that there
is no defined standard in Joomla for php docblocks (sections of
comments that document how functions work). In addition lots and lots
of docblocks are missing, incomplete, incorrect or wrongly formatted.
To see the scale of the issue for yourself here is a sample error
output from phpdocumenter (this link only lists missing or obviously
wrong docblocks and not any with incorrect/missing information,
therefore the scale of the problem is much much bigger)
http://doc.joomladev.eu/api6/errors.html
Now I am not the sort of person that just complains and complains
without offering to get his hands dirty to fix the issue. This issue
was raised 6 months ago and I created a test patch to fix the issue
(was accepted into svn) and offered to implement it for the whole of
the Joomla framework. There is no point in having a perfectly
documented framework if it does not work, therefore understandably
these issues were deemed not urgent and were not addressed. Now that
we have a stable release, expecting developers to upgrade extension
and are planning to release Joomla as a framework (not only for
CMS's), my opinion is that having framework documentation is very
urgent.
Here is what I am proposing:
1) Define and document the docblock standard that applies to the whole
core (consensus was already reached on most of this in previous
discussion on this list)
2) Create a new branch on the SVN where the documentation blocks can be fixed.
3) Fix one subdirectory of the library as a testcase and if successful
do the whole joomla code
4) merge the branch back into the joomla development trunk
6) Switch from wiki entry system (gets outdated very fast and is hard
to keep updated) and switch to doxygen for generating API's.
7) have a code sniffer profile for doc-blocks errors only to ensure
the joomla API is accurate and complete (this can be run from within
eclipse)
Just to give you a sneak peak at how nice doxygen is, here is a
comparison between our current api/wiki and doxygen generated api:
http://www.jfusion.org/api16/class_j_form_field_combo.html
vs
http://docs.joomla.org/API16:JFormFieldCombo
http://docs.joomla.org/API16:JPagination
vs
http://www.jfusion.org/api16/class_j_pagination.html
Any feedback on this? Thanks for your input, Marius
--
You received this message because you are subscribed to the Google Groups "Joomla! General Development" group.
To post to this group, send an email to joomla-de...@googlegroups.com.
To unsubscribe from this group, send email to joomla-dev-gene...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/joomla-dev-general?hl=en-GB.