Re: [PHP] Static methods vs. plain functions

[email protected] (Sebastian Krebs)
Newsgroups php.general
Message-ID <CALtuQzC3_CefmMG3eYrB8NX6zynr6WQNgkpazQxOWYu+eL1+2w@mail.gmail.com>
2013/9/19 Aziz Saleh <[email protected]>

> 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 <[email protected]>wrote:
>
>> 2013/9/19 Simon Dániel <[email protected]>
>>
>> > 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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.