Nexts Generation Of Applications

2 views
Skip to first unread message

Julio Farias

unread,
Aug 5, 2009, 4:12:25 PM8/5/09
to joomla-...@groups.google.com
Hello everyone, I'm Julio Farias, developer of a current ACL in joomla 1.5 (Noix ACL), and after a few years following the current development of mambo and Joomla, I have a proposal on how to further strengthen and Joomla framework and web development platform, and give more power to whoever develops.

The Joomla in recent years has gained a power. There was a big step and since version 1.5, <<praise the framework, said advantages, in summary form on the 1.0>>. Now we're going to a version 1.6 and later for a version 2.0. The suggestion that I give here may not be applied to 1.6 by the deadline, but that does not mean that it can not be thought, or simply be ignored.

As we know, would be suicide compatitilidade break with hundreds of old Joomla extensions, where possible, this should be maintained. What I propose here, does not break compatibility with the 1.5 native extensions, and if some code needs to be changed, would be small portions of code, something that even a user with more or less experience to read a tutorial could turn a component to be compatible.

What I am proposing here is to apply the concepts of Joomla Domain-Driven Design (DDD). The advantages for what you have today, would be:


• Better code organization
• Next level of applications
• More easly to understand the domain(Content,
Category, etc)
• One repository of extensions
• Better maintence code
• Integration with multiple frameworks
• Single ACL to ALL apps( if want )
• Single Users to ALL apps( if want )
• Ubiquitous Language
• The Ubiquitous Language in DDD is a negotiated
language between the Domain Experts and the
technical guys
Ex.: $content->list()->fromCategory( ‘news’ )->getRows();
• Create a way to 3rd Extensions use this new
concept
• Not affect Development of 3rd Extensions J1.5
Compatible
• Less posibility to have errors

For those who do not know, Domain-Driven Design is:

- Better way to plan your application
- Focus on domain(logical rules)
- Code more Object Oriented

References:

http://domaindrivendesign.org/


Joomla DDD project.pdf

Amy Stephen

unread,
Sep 22, 2009, 9:20:50 PM9/22/09
to Joomla! CMS Development
Joomla! Production Working Group Leaders -

I would encourage one of you (at least) to get in touch with Julio and
put this guy to work.

It appears his brain is very focused on where Joomla! could go - he
has many great ideas http://bit.ly/3vozHp http://bit.ly/OkiWZ and
http://bit.ly/1DVqS

And, he's got lots of experience developing in Joomla!. He is the
author of the very popular ACL extension for 1.5 Noix ACL that's
knocking people's socks off. He has been involved since Mambo days and
he's still excited about Joomla!.

I'm thinking he'd be a great brain to help within the prototyping and
thinking about v 2.0.

It's always great to see such intelligence and enthusiasm in the
community.

Cheers!
Amy
>  Joomla DDD project.pdf
> 576KViewDownload

Júlio Pontes (Joomila)

unread,
Sep 23, 2009, 10:27:30 AM9/23/09
to Joomla! CMS Development
Amy, thank you very much for all the nice word you said about me. This
just makes me more excited about helping the joomla community. I'll be
waiting for people to contact me. I do have lots of ideas but alone it
is hard to do it all. Thanks again!

Júlio Pontes (Joomila)

unread,
Sep 24, 2009, 8:26:49 AM9/24/09
to Joomla! CMS Development
When we talk about applications, we need things like "After save
content you have to send e-mail to super administrator.". I have think
on structure and Services for Joomla!

What is Services?

Things with you need like e-mail, database, autentication, login,
cache, install, update...

In code I think is better for dev. and users use DSL(Domain Specific
Language) from services.

Ex.:

$joomla->services('email')->to('@AmyStepehn')->from('@juliopontes')-
>subject('Fluent interface')->body('What do you think?')->send();

If need send to lot of groups

$userEmails = $joomla->dsl('users)->lists('email')->fromUserGroup()-
>withName('Super Administrator')->getRows()

Obs.: function list($fields)

$joomla->services('email')->to( $usersEmail )->from('@juliopontes')-
>subject('Fluent interface')->body('What do you think?')->send();

Another services

$joomla->services('installation')->fromUrl('http://www....')->instal
();

Last night I think on..

$joomla->application()
->getExtensions()
->getPackage()

$joomla->services()
->update()
->Install()
->Email()
->Autentication()
->login()
->database()
->cache()
//social media services
->twitter()
->flickr()
->maps()

$joomla->extension($extensionType)
->fromPackage()
->instance()
->getPath()
->render()
->getParams()

Structure Idea -> http://twitpic.com/ixia6

ssnobben

unread,
Sep 25, 2009, 8:24:58 AM9/25/09
to Joomla! CMS Development
Agree Amy.

We need all power of brainware, time and enthusiasm for Joomla future.
Just keep on Júlio with your enthusiasm and work and hopefully get
connected with core Joomla devs.

All the best!

On 24 Sep, 14:26, Júlio Pontes (Joomila) <juliopfn...@gmail.com>
wrote:

Júlio Pontes (Joomila)

unread,
Sep 25, 2009, 2:01:49 PM9/25/09
to Joomla! CMS Development
More ideas here...

http://groups.google.com/group/joomla-dev-cms/web/WebJoomlaAPI_Fluent_Application.pdf

this is part of DSL(Domain Specific Language) is a programming
language or specification language dedicated to a particular problem
domain.

http://www.domainlanguage.com/

Júlio Pontes (Joomila)

unread,
Sep 27, 2009, 10:18:18 AM9/27/09
to Joomla! CMS Development
I dont know if the CORE TEAM use phpUnderControl for Joomla! I think
is very interesting..

We should take at least PHP_CodeSniffer - tokenises PHP, JavaScript
and CSS files and detects violations of a defined set of coding
standards.

http://pear.php.net/package/PHP_CodeSniffer

and phpUnderControl: is an addon application for the continuous
integration tool CruiseControl, which integrates some of the best PHP
development tools. This project aims to make your first steps with
CruiseControl and PHP as easy as possible. Therefore phpUnderControl
comes with a command line tool that performs all modifications to an
existing CruiseControl installation.

http://www.phpundercontrol.org/

Ian MacLennan

unread,
Sep 27, 2009, 1:16:45 PM9/27/09
to joomla-...@googlegroups.com
We have been experimenting with phpundercontrol. We are also looking
at hudson as it has been billed as simpler to set up than cc. We'll
see. So far my experience has been that hudson is more difficult.
Cruisecontrol seemed to take a lot of memory, and it seemed to leak
memory also, growing from 700 megs to 2 gigs of memory used. That was
without code coverage - only straight junit reports.

Ian
--
Sent from my mobile device

Niels Braczek

unread,
Sep 27, 2009, 1:17:07 PM9/27/09
to joomla-...@googlegroups.com
Júlio Pontes (Joomila) schrieb:

> I dont know if the CORE TEAM use phpUnderControl for Joomla! I think
> is very interesting..

I support the underlying suggestion. phpUnderControl is a great tool to
control the whole build process and more.

> We should take at least PHP_CodeSniffer - tokenises PHP, JavaScript
> and CSS files and detects violations of a defined set of coding
> standards.

Yes, and - please - a set of *mandatory* unit tests to ensure, that new
features or bug fixes do not break anything.

Regards,
Niels

--
| http://www.kolleg.de · Das Portal der Kollegs in Deutschland |
| http://www.bsds.de · BSDS Braczek Software- und DatenSysteme |
| Webdesign · Webhosting · e-Commerce · Joomla! Content Management |
------------------------------------------------------------------

Ian MacLennan

unread,
Sep 27, 2009, 1:25:36 PM9/27/09
to joomla-...@googlegroups.com
Are you volunteering to help write unit tests?

Ian

Niels Braczek

unread,
Sep 27, 2009, 1:32:40 PM9/27/09
to joomla-...@googlegroups.com
Ian MacLennan schrieb:

> Are you volunteering to help write unit tests?

Sure - I've done so before. The tests I wrote and sent as patches were
though not mentioned (except by Amy).

Ian MacLennan

unread,
Sep 27, 2009, 1:45:13 PM9/27/09
to joomla-...@googlegroups.com
Email them to me and I'll get them committed.

Ian

On 9/27/09, Niels Braczek <nbra...@bsds.de> wrote:
>

Niels Braczek

unread,
Sep 27, 2009, 5:06:23 PM9/27/09
to joomla-...@googlegroups.com
Ian MacLennan schrieb:

> Email them to me and I'll get them committed.

You'll find everything here:
http://groups.google.com/group/joomla-unit-test-group

I finally gave up, because I felt kinda lost in that group...

Ian MacLennan

unread,
Sep 27, 2009, 5:21:21 PM9/27/09
to joomla-...@googlegroups.com
Perfect.  I'll scan through and get stuff merged in.

Thanks for your work!
Ian

Niels Braczek

unread,
Sep 27, 2009, 11:07:41 PM9/27/09
to joomla-...@googlegroups.com
Ian MacLennan schrieb:

> Perfect. I'll scan through and get stuff merged in.

Thanks!

> Thanks for your work!

You're welcome! Currently, I'm fighting with two projects with a quite
bad burn down rate :(. When I'm through that, I'll continue working on
unit tests. Does it make sense to write momre tests for 1.5, or is it
more approproate to concentrate on 1.6?

Reply all
Reply to author
Forward
0 new messages