-
Notifications
You must be signed in to change notification settings - Fork 0
The Problem
bacinsky edited this page Dec 22, 2014
·
27 revisions
HOME / Webino in theory / The problem
Some problems with making web applications led to creating a Webino™ platform.
Problematic areas:
-
Application modularity
- Configuration is a DNA of an application
- It's required that configuration of one module could be overridden by another, loaded later.
- Configuration configures everything not saved in the database:
- System services
- System navigation
- System access control
- Layout rendering
- Data services
- Data selects
- Forms
- etc.
- Stable and flexible Zend Framework 2
-
HTML templates markup
- HyperText Markup Language is a markup by itself
- It's not required to add another markup to it, e.g. Smarty, Twig, etc.
- Templates should be dumb, without logic.
- HTML templates markup mixes logic with static
- What when we want to reuse logic, but need to change HTML code.
- What when we want to change logic, but need to reuse HTML code.
- What about a little change of a HTML code in another module
- The solution is decoupling and Inversion of Control
- WebinoDraw Layout Renderer
-
Modular data models
- ORM's are an anti-pattern
- Migrations are an anti-pattern
- What about when one module wants to add a property to the model in another module
- When one module need to add a column to the particular select of a model in another module
- WebinoData Modular Data Services
-
Static is hell
- Static calls to a method is hell, really.
- Don't use static methods ever. (except in an adapter for some special or legacy code)
-
Coding style
- Use spaces, not tabs.
- Use PSR-2 ever, period.
- Don't overuse class inheritance.
- Learn software design patterns
- Learn PHP Micro-Optimizations
If you want to go further, you need to know how Webino works.
If something is wrong with this wiki, please let us know.
Webino™ is a webapp's platform. © 2014 by Webino, s. r. o. All rights reserved.