469,270 Members | 1,164 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,270 developers. It's quick & easy.

Professional Applications Devolpment

Hi,

First of all:
i spend a lot of time on thinking and researching about how to
make developing webapplications with php a more structured/systematic
thing. I even fancied to switch over to jsp since i heard all those
stiltedness rumors about it's professionalism/stability etc.

Anyway my current attitude is that fullfilling the following needs
would make application depvelopment via PHP a really
fast/professional/structured thing:

- An MVC -architecture framework (e.g MOJAVI)
- template parser (for View part)
- severall helper toolkits/frameworks
(DB abstraction layer/Form validation etc.)
- disciplined/skilled Devloper ;)

These are of course not really new findings and
as we all know there are a lot of different implementions/combinations
of the above named out on the web.

So what i want to know is:
- what is your prefered software/framework to fullfill the above
needs.?
- For what purposal do you use them ?
- what are the advantages/disadvantages ?

Wouldn't it be nice to have something like the
"PHP professional webapplication development guidline" ?
containing:
- toolkits/frameworks
- techniques
- tutorials etc.

I think this is really worth thinking and talking about.

Cheers,
NIkolas

Oct 12 '05
65 4799
>I think the sample app has to be at least complex enough to test the
main features that people want in a framework: form validation, unit
testing, athentication, etc.

yes indeed, i got something in mind which covers all mentioned aspects.
be patienced ;)
bye,
Nikolas

Oct 20 '05 #51
Peter,

I too think ruby on rails is hot.
Although the presentation layer lacks reusability, in my opinion, and
models too, being too tightly coupled on db and not using the model
relationship code in controller but in the model itself, it is really
some fast way to build an application, and the resulting work is not
bad either.

Nikolas,

Would testing frameworks for php be adequate for you ? I think java,
dotnet frameworks and even ones such as ruby on rails alongside with
php should be tested in my opinion, and according to some criterias, as
as Peter stated.

Oct 21 '05 #52
Weird-beard,

Although the presentation layer lacks reusability
What about helper functions and partials?

models too, being too tightly coupled on db
How so?

not using the model relationship code in controller but in the model itself


What's wrong with that? (I'm new to MVC)
Thanks,
Peter

Oct 22 '05 #53
Ruby vs. Java = Ruby wins

Hemos on Slashdot rewrote a Java app in Rails

Lines of Code
Rails: 1164
Java: 3293

Number of Classes:
Rails: 55
Java: 62

Number of Methods:
Rails: 126
Java: 549

Configuration Lines
Rails: 113
Java: 1161

Rails app 15-30% faster

----------------------------------------------------

Sources
From slide 29 in this presentation

http://forum.textdrive.com/viewtopic.php?pid=46803

link to slashdot page for this slide
http://developers.slashdot.org/artic.../04/04/1520227

Oct 24 '05 #54
Didn't mean to change the subject

Maybe better to say it was

Ruby on Rails vs. Java/Spring

Oct 24 '05 #55
I really am not interested in lines of code or the performance, I am
interested in fast application development. The problem I think with
ruby on rails is, as the models include interaction logic with each
other (as far as I know in ruby on rails the controller does not handle
this) which complicateds business models, makes them tightly coupled on
each other. Furthermore, the sql scripts recommended to be inserted
into business model does really smell, tightly coupling the database
selection.

So, in my opinion,

A good framework, is not the one you create applications fast. No
matter how fast you create an application, that speed will not beat,
being able to use a great deal of what you have done previously.
Reusability.

thus, lines of code or running speed has little importance, comparing
to this issue. Ruby on rails is cool, can be used to build small apps,
but is inadequate for filling your pockets with code to be used on
later, I think.

Oct 24 '05 #56
>Would testing frameworks for php be adequate for you ?
it depends: from the academic point of view other language's
frameworks are also
interessting. But for the moment i will be satisfied with php.

Cheers,
Nikolas

Oct 24 '05 #57
Weird-beard wrote:
but is inadequate for filling your pockets with code to be used on
later, I think.

Wouldn't that result in more (pieces of) framework?

Greetings,

Henk Verhoeven,
www.phpPeanuts.org.
Oct 24 '05 #58
I guess it would. Why are you against that ? (If you are)

Oct 25 '05 #59
Weird-beard wrote:
I guess it would. Why are you against that ? (If you are)

I am not. In fact, phpPeanuts is partly the result of factoring reusable
components out of application code. It's just that most frameworks are
open source and "filling your pockets with code" seems contradictory to
the idea of open source to share your code with others. Now with code
that is only reusable within the application domain, that would be a
different story (though with a GPL Licenced framework you would have to
share that too). But with pieces of framework, i would like to suggest
"contributing to the open source community".

Greetings,

Henk,
www.phpPeanuts.org

P.S. Although sharing is encouraged, the phpPeanuts license does not
enforce it and the framework's design even facilitates building your own
codebase of reusable components and framework overrides without having
to maintain the framework code itself. See
http://www.phppeanuts.org/site/index_php/Pagina/72
Oct 25 '05 #60
I looked at phppeanuts and it looks like some framework I have been
working on for some time. I havent had the time to investigate the
peanuts thoroughly, but the first difference I see is I keep page or
"view" info (Banner,footer, menus etc.) on xml files or any persistence
mechanism. So, my end users can fool around the pages - edit them, add
new pages etc. as they will easily. My first aim was that. Alas, there
is no documentation yet.

Tried to use some light version of hibernate I coded for the project,
works for me for now, but not able to handle complex inheritance nor
complex associations, only simple relationships.

I too am fond of xp, though still have a laziness about writing unit
tests. I will read further about peanuts as soon as I have some time,
architecture seems solid and good.

Oct 26 '05 #61
Hi,

Weird-beard wrote:
(..)
but the first difference I see is I keep page or
"view" info (Banner,footer, menus etc.) on xml files or any
persistence mechanism. So, my end users can fool around the
pages - edit them, add new pages etc. as they will easily.


I still dream of this framework that is like a Wiki, only if you press
ALT and click on something it jumps into meta mode where you can change
the layout and the programming of that something. Every change is
effective immediately and, like a wiki, you have a list of meta changes
so that you can allways go back to previous versions.

I have a friend who was doing something like this with the GUI in
Smalltalk. Smalltalk is great for that because its IDE is also written
in Smalltalk, he could reuse and modify all its windows and components.
Becuase it compiles individual methods and links them into the running
program changes can be effective immediately. And it usually has some
sort of change management too. It is amazing to see him work with it.
Pitty he never finishes it.

But let't talk about your ideas. I think it requires sort of a fixed set
of UI components that are highly parameterized, and maybe all kinds of
editors for your end users to modify the parameters. To make the tool
effective, you will need to know quite well what your users want to
change and in what way, otherwise you end up with too many parameters,
which is too complex for your users and too much work to program for you.

With phpPeanuts i kind of made the opposite choice: I don't pretend to
know what the developers using phpPeanuts want to do with it. Instead i
put everything into code and allow developers to override on various
levels (except for some template-like "skins", but even with those i
deliberitely chose php-includes because of the freedom of using
arbitrary php between the <? ?> tags.)

So i guess you would be best off with a framework that sort of builds a
server-side persistent DOM, with smart components for the high level
work and event handlers for the low level customization. I don't think
phpPeanuts is that kind of framework. I think Seaside is much closer to
this (http://www.seaside.st/). It even has a "jump into meta mode"
feature to change things you can see. But i am afraid you would have to
learn Smalltalk... .

Greetings,

Henk Verhoeven,
www.phpPeanuts.org.
Oct 27 '05 #62
Hi,

i put together a small sample application, which covers the most common
things.
have a look at http://www.chaosbutze.de/sampleapp/.
I will wait about one week to integration improvements/suggestions and
correct errors.
After that i will post the link to all relevant forums news groups.

Any suggestions and comments are highly appreciated.

Cheers,
Nikolas

Nov 5 '05 #63
HI Nikolas,

Could you provide a little discription about what the application does?
If this comparison project is going to be successful then I think the
sample application needs a name and version number. In the future
people may want to make a new application specification to incorporate
new ideas in web programming. Then we will know which comparisons go
with which application and version of that application.

Peter

Nov 7 '05 #64
Also having a named and versioned application will allow for advances
in programming environment PHP6, Rails 2.0 when these become available.

Nov 7 '05 #65
peter:
Could you provide a little discription about what the application does? yes but don't care if its useful or not ;)
It's a kind of contactmanagment .
You got contacts (persons) and you are able to have 0toN notes to these
contacts,.
In the futurepeople may want to make a new application specification to incorporate
new ideas in web programming. Yes you are right...i already got some feedback containing ideas like
userprivilegs.
But i wan't to keep the basic sample as easy as possible to avoid
people from getting discouraged about it's complexity.
So i decided to keep all additional ideas as 'extras'
e.q. sampleapp 1.0 implement in xzq...with extra (needs to be specified
of course) userpriv .
then I think the sample application needs a name and version number. It will of course ...i thought about "sampleApp" or something but this
is not that
important at the moment ...lets see if people are interessted or not
....
Then we will know which comparisons go
with which application and version of that application.

Yes right i got that in mind but first of all i need to know if i
missed something general.

Cheers,
Nikolas

Nov 8 '05 #66

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

10 posts views Thread by The Count | last post: by
reply views Thread by zhoujie | last post: by
reply views Thread by suresh191 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.