
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.
Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.
Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

Цитата |
All experience starts with the interface. The interface experience is the result of the underlying technology and the amount of layers of abstraction. The more abstraction you use, the less efficient the interface becomes and the more error-prone the application becomes. The higher the abstraction, the more detail and efficiency is lost. Understand this clearly: The ideal number of lines of code in any project is as few as possible whilst being as clear and readable as possible! What everyone doesn’t need is a general purpose framework. Nobody has a general problem, everyone has a very specific problem they are trying to solve. – Rasmus Lerdorf Some companies began listening to the hype about PHP frameworks and they started their next projects using one of these popular general purpose frameworks only to end up in a disaster. Not only did they discover that the general purpose framework was really bad at solving their very specific need, but it was also extremely slow in doing so. It was impossible to scale and as a result they started ripping the framework apart in a desperate attempt to pull out all those things they really didn’t need. Always use the pragmatic approach: Action or policy dictated by consideration of the immediate practical consequences rather than by theory or dogma. – Collins English Dictionary, Complete and Unabridged, 12th Edition 2014 The wrong way: Always use a framework on top of PHP. |
Цитата |
Always use a design pattern I have this big allergy to ivory-tower design and design patterns. Peter Norvig, when he was at Harlequin, he did this paper about how design patterns are really just flaws in your programming language. Get a better programming language. He’s absolutely right. Worshiping patterns and thinking about, “Oh, I’ll use the X pattern.” – Brendan Eich in Coders at work - Reflections on the Craft of Programming In software engineering, a design pattern is a reusable solution to a commonly occurring problem in software design. A design pattern is not a finished design that can be transformed directly into code. It is a description or an idea for how to solve a problem that can be used in many different situations. Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved. PHP supports imperative, functional, object-oriented, procedural, and reflective paradigms. PHP is a huge toolbox with lots of different tools that makes it possible to solve many problems in many different ways - not just one way. PHP is all about freedom, fast and scalable solutions, and having many different ways to deal with problems. When we try to improve ourselves, and in this case more specifically our code, we sometimes get hung up in the philosophy of a particular pattern or idea and tend to forget to think practically. |
Цитата |
When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I’m using abstractions that aren’t powerful enough - often that I’m generating by hand the expansions of some macro that I need to write. – Paul Graham We shouldn’t get to caught up in the philosophy or idea behind a specific pattern or solution. Our main concern is to keep the code as easy to navigate and understand as possible and as a result easy to maintain and easy to keep secure. We must also remember that there exists such a thing as an anti-pattern. It is a pattern that may be commonly used but is ineffective and/or counterproductive in practice. I think patterns started off as generally recognized best solutions for common problems. But now that they have been around for a while and we have experienced applications being made ten times more complicated than they need to be because people try to cram in all the patterns that they have read about (“my application is well architected, because it is loaded to the gills with patterns.”) my impression of the value of the pattern has shifted a bit. – Paul Weaton in Evil Design Patterns Always use the pragmatic approach: Action or policy dictated by consideration of the immediate practical consequences rather than by theory or dogma. – Collins English Dictionary, Complete and Unabridged, 12th Edition 2014 The wrong way: Looking for a pattern to solve a problem. |
Цитата (twin @ 29.08.2016 - 14:54) |
Сейчас еще Сергей появится. Вообще разнесет в пух и прах мой перевод))) |
Цитата (twin @ 29.08.2016 - 14:44) |
Цитата In the software industry you can compare a pre-built house to a general purpose framework. Building software using general purpose frameworks doesn’t make you a coder or a programmer any more than putting together a pre-built house makes you a carpenter. |
Цитата (twin @ 29.08.2016 - 14:44) |
В индустрии программирования фреймворк можно сравнить с заранее построенным домом. Разработка с использованием фреймворка делает из вас кодера или программиста не более чем использование такого дома делает из вас столяра или плотника. |
Цитата (twin @ 29.08.2016 - 15:34) |
которая поможет вам создавать программное обеспечение, но в то же время она заставляет вас работать в рамках правил и ограничений самой структуры. |
Цитата (twin @ 29.08.2016 - 16:40) |
When you use a framework in PHP you add a layer of abstraction on top of yet another layer of abstraction, one that was already in place for you to use to begin with. |
Цитата (twin @ 29.08.2016 - 16:40) |
При использовании фреймворка поверх PHP, вы добавляете новый слой абстракции туда, где уже нужно начать использовать возможности самого PHP. |
Цитата (twin @ 29.08.2016 - 17:24) |
The higher the abstraction, the more detail and efficiency is lost. |
Цитата (twin @ 29.08.2016 - 17:24) |
Чем выше уровень абстракции, тем больше деталей и тем меньше эфективность. |
Цитата (twin @ 29.08.2016 - 17:24) |
Action or policy dictated by consideration of the immediate practical consequences rather than by theory or dogma. |
Цитата (twin @ 29.08.2016 - 17:24) |
Действие или мышление продиктованы рассмотрением непосредственных практических последствий, а не теорий или догм. |
Цитата (twin @ 29.08.2016 - 18:54) |
"О! Я буду использовать шаблон X!" (последнее предложение не понял, перевел как смог. sad.gif ) |
Цитата (twin @ 29.08.2016 - 19:43) |
When I see patterns in my programs, |
Цитата (twin @ 29.08.2016 - 19:43) |
Когда я вижу закономерности в моих программах, |