Frameworks and IDEs
Posted: Wed Mar 22, 2006 4:50 pm
Hello all!
I'm currently under the planning and research stage of a year long web application project that will be, eventually, implemented in php. Being a fourth year Software Engineering student I'm familiar with designing and architecting robust and reliable systems. Implementation wise I am epxerienced with J2EE technology in a struts approach and integrating mostly any Apache Group Project technology.
The project's main topic is that of data management, data retrieval from various sources, data cleasing/scrubbing, staging and sharing.
Now, initially I thought I'd work with J2EE and struts, something I know very well. But discussions with the project's clients, consultants and stakeholders have favoured php technology for various justifyable reasons which I will not get into. The Phrame php Framework follows the struts approach I'm familiar with but I rather favour something totally new. Sticking to one approach all the time isn't good for experience.
Anyhow, I've been researching php web application frameworks that offer the following "functionalities":
- Small Learning Curce (Overall, I'm not familar with php. I've only worked on it once and that was for a minor upgrade and maintenance issue)
- Loosely coupled MVC (i.e. Modularity)
- Object-Oriented
- Object-Record Mapper (ORM)
- Caching (very important)
- Validation
- AJAX (For this project, this is more of a business-level requirement than a technical one)
- Abstraction. This is very important. For instance, I want the coding to be done in terms of objects, methods and properties. Not of URLs and query parameters. Another example would be the use of custom tag librairies.
- Enables/Forces clean coding. Seperating view from logic. This has to do with abstraction and MVC. But I want to stress the importance of this.
- Excellent documentation.
- Active Support.
Based on my current research, I'm leaning towards the ZOOP framework: http://zoopframework.com/
It has excellent documentation, which is a must.
I've heard good things about Seagull, but am not impressed on how it is documented. Unless there's some documentation source I'm missing...
Also, I'm still looking for a php IDE. Since I'm used to eclipse I initially thought I'd just install a php development environment plugin but come to think of it, I rather work with a IDE fully dedicated to php. The IDE I'm looking for has to offer the following:
- Complete Debugger (Code breakpoints, Stack Trace View...)
- Integrated Version Control
- Code Documentation Tool
- Nested Code Completion
- Refactoring
- Overall nice look and feel with syntax highlighting and other features that increase readability
- Automated Packaging and Deployment.
- Plugin Support
Right now I'm looking at Zend Studio.
Any suggestions or discussion on frameworks and IDEs for this particular subject matter?
Cheers and thanks for you inputs.
I'm currently under the planning and research stage of a year long web application project that will be, eventually, implemented in php. Being a fourth year Software Engineering student I'm familiar with designing and architecting robust and reliable systems. Implementation wise I am epxerienced with J2EE technology in a struts approach and integrating mostly any Apache Group Project technology.
The project's main topic is that of data management, data retrieval from various sources, data cleasing/scrubbing, staging and sharing.
Now, initially I thought I'd work with J2EE and struts, something I know very well. But discussions with the project's clients, consultants and stakeholders have favoured php technology for various justifyable reasons which I will not get into. The Phrame php Framework follows the struts approach I'm familiar with but I rather favour something totally new. Sticking to one approach all the time isn't good for experience.
Anyhow, I've been researching php web application frameworks that offer the following "functionalities":
- Small Learning Curce (Overall, I'm not familar with php. I've only worked on it once and that was for a minor upgrade and maintenance issue)
- Loosely coupled MVC (i.e. Modularity)
- Object-Oriented
- Object-Record Mapper (ORM)
- Caching (very important)
- Validation
- AJAX (For this project, this is more of a business-level requirement than a technical one)
- Abstraction. This is very important. For instance, I want the coding to be done in terms of objects, methods and properties. Not of URLs and query parameters. Another example would be the use of custom tag librairies.
- Enables/Forces clean coding. Seperating view from logic. This has to do with abstraction and MVC. But I want to stress the importance of this.
- Excellent documentation.
- Active Support.
Based on my current research, I'm leaning towards the ZOOP framework: http://zoopframework.com/
It has excellent documentation, which is a must.
I've heard good things about Seagull, but am not impressed on how it is documented. Unless there's some documentation source I'm missing...
Also, I'm still looking for a php IDE. Since I'm used to eclipse I initially thought I'd just install a php development environment plugin but come to think of it, I rather work with a IDE fully dedicated to php. The IDE I'm looking for has to offer the following:
- Complete Debugger (Code breakpoints, Stack Trace View...)
- Integrated Version Control
- Code Documentation Tool
- Nested Code Completion
- Refactoring
- Overall nice look and feel with syntax highlighting and other features that increase readability
- Automated Packaging and Deployment.
- Plugin Support
Right now I'm looking at Zend Studio.
Any suggestions or discussion on frameworks and IDEs for this particular subject matter?
Cheers and thanks for you inputs.