2013/9/19 Aziz Saleh <azizsaleh@xxxxxxxxx> > I think that it would be more elegant if you are already in a OOP to keep > the flow and stick to OOP. It just doesn't make sense to me in an > environment that uses OOP to have functions laying around. > buzzword: multi-paradigm. Thats why it could make sense ;) > > Personally I like to group similar functionality together in their own > objects, > - That aren't objects, but classes. Actually you don't programm in object-oriented, but in class-oriented (or probably a mix) - You can (imo "should") use namespaces > this way I can reuse them on different projects, the random string > generator is an excellent example of something I usually use in almost all > of my projects. > > Function calling is usually faster than object calling (depends on how you > benchmark it) since there is an overhead to it. There are some who tried to > "benchmark" this and had opposite results, It all comes down to how are you > going to use that functionality: > > http://www.webhostingtalk.com/showthread.php?t=538076 > http://www.micro-optimization.com/global-function-vs-static-method > > Personally in my projects - specifically if I use a framework, I try to > stay away from making standalone functions unless absolutely necessary. > > > > On Thu, Sep 19, 2013 at 12:44 PM, Sebastian Krebs <krebs.seb@xxxxxxxxx>wrote: > >> 2013/9/19 Simon Dániel <simondani91@xxxxxxxxx> >> >> > Hi, >> > >> > I am working on an OOP project, and cannot decide which way to follow >> when >> > I have to write a simple function. >> > >> > For example, I want to write a function which generates a random >> string. In >> > an OOP environtment, it is a matter of course to create a static class >> and >> > a static method for that. But why? Isn't it more elegant, if I implement >> > such a simple thing as a plain function? >> >> >> I'd say: Definitely! >> >> >> > Not to mention that a function is >> > more efficient than a class method. >> > >> >> Actually I wouldn't be so sure about that. >> >> >> > >> > So, in object-oriented programming, what is the best practice to >> implement >> > such a simple function? >> > >> >> In "strict"-OOP [1] you would choose a static method, because functions >> are >> simply forbidden. However, PHP isn't strict about that by itself. So I for >> myself don't like the dogmatic "We use classes and nothing >> else!"-approach. >> If a function fits better, it's OK to be a function. >> >> [1] Actually that would end up in a mix of OOP and "class-oriented >> programming", which isn't that strict. >> >> -- >> github.com/KingCrunch >> > > -- github.com/KingCrunch