I think about openbiz,
how about the future
how to make more powerful openbiz
how to make openbiz power can be used in various types of web applications
All Library
-----------------
- use power of namespace
- use Universal AutoLoad and use ClassMap increase performance
- if possible, library of Openbiz is group of components, that each component is independent, can use on other framework
MetaObject
-----------------
- meta-namespace can use dot (.) and back-slash (\)
- can use various storage media (XML, php array, YAML, database, etc)
- location of metaobject can set from out of library, like Universal ClassLoader
REF :
https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md)
https://gist.github.com/221634
for example:
ObjectFactory::register('MyLib', '/path/to/mylib', {'xml', 'php', 'yml'} )
MyLib ==> is prefix of MetaObject (Vendor Name)
/path/to/mylib ==> is loacation of MetaObject
{'xml', 'php', 'yml'} ==> is type of MetaObject that supported
- MetaObject is independent component that can use on other framework.
DataObject
--------------------
- DataObject can save data on various storage media, not only database, but can save on text, xml, session, etc
- use base interface and can extend for any use.
Form :
-------------------
Form can handle not only AJAX app, but also clasic web. This good for CMS or other front-end application
For business framework, can handle master detail transaction, exaample POS application
MVC
-------------------
Front Controller cal stillcall View directly
but also can call Controller (on original MVC term)
action on Controller can call View
example :
class MyController {
public function actionMemberList() {
$view = new Openbiz\View\StandarView();
$view->setTemplate('.......')
$view->addForm(...);
$view->addForm(...);
$view->render();
}
public function actionMemberList2() {
$view = new \Openbiz\System\ObjectFactory('Collab\MemberListView');
$view->render();
}
public function actionMemberList3() {
$data = new \Openbiz\System\ObjectFactory('\MyPrefix\namespase\Member');
echo '<pre>';
print_r( $data->loadAll() );
}
public function actionOtherAction()
echo 'Openbiz, the next generation';
)
}
Best Regards
Agus Suhartono