Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #101500
| From | Michael Torrie <torriem@gmail.com> |
|---|---|
| Newsgroups | comp.lang.python |
| Subject | Re: When I need classes? |
| Date | 2016-01-11 16:59 -0700 |
| Message-ID | <mailman.29.1452556762.13488.python-list@python.org> (permalink) |
| References | <c0bb7499-c359-4010-aac2-270d1b82a47d@googlegroups.com> <56927b37$0$1586$c3e8da3$5496439d@news.astraweb.com> <CAERt=-xWsUoy6bHdtE0W+VrLgGA3OE2=-GzwFfMWBxqi=s02bA@mail.gmail.com> <DA39F138-7794-4CB4-AC93-63937D15D6D6@gmail.com> |
On 01/11/2016 04:45 PM, Travis Griggs wrote:
> As a long term OO purist practitioner, I would add to this.
> Obviously, you can organize your code any way you want, with or
> without classes. You could put all your functions with an odd number
> of letters in one class, and all of the even numbered ones in another
> class.
And of course in Java you have to use classes for namespaces and
organization. In python, the equivalent is simply a module. It's
essentially a singleton object without having to do any boiler plate. A
module can even keep state, so long as you only need to keep track of
one instance or set of states at a time.
> Having listened to the guy (Alan Kay) who coined the term (Object
> Oriented Programming) quite a bit over the years, I believe that the
> focus of OO (of which classes are a particular implementation
> approach) is to bind behavior to data. In “traditional” programming
> approaches, one focused on the algorithm (behavior) first, and then
> figured out what data needed to flow where to get the job done.
> Classes provided a mechanism to turn that equation, generally
> speaking, around. One thinks about the data first, and then figures
> out what behavior binds best to that data. And how that data will
> interact (inter-object behavior, often called messages) to get your
> job done. For some (many) problems, this can be a real win. And for
> some, not so much.
>
> I think, this is often why, for a simple script, OO just kind of gets
> in the way. You have a straightforward procedure that you just want
> to do. The state (data) is not rich enough to make making it the
> focal point of your program.
The beauty of Python is that you can program procedurally, and still
work with objects as needed. Every data type in Python is some kind of
object and you can call appropriate methods on those objects. Even if
you do no OOP programming yourself. For example,
some_string = "foo:bar"
(a,b) = some_string.split(':')
The ease with which Python can be used in many programming paradigms is
one reason I like Python so much.
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
When I need classes? Arshpreet Singh <arsh840@gmail.com> - 2016-01-09 23:29 -0800
Re: When I need classes? Michael Torrie <torriem@gmail.com> - 2016-01-10 08:02 -0700
Re: When I need classes? Arshpreet Singh <arsh840@gmail.com> - 2016-01-10 22:45 -0800
Re: When I need classes? Cameron Simpson <cs@zip.com.au> - 2016-01-11 18:27 +1100
Re: When I need classes? Steven D'Aprano <steve@pearwood.info> - 2016-01-11 02:39 +1100
Re: When I need classes? Bernardo Sulzbach <mafagafogigante@gmail.com> - 2016-01-10 15:48 -0200
Re: When I need classes? Arshpreet Singh <arsh840@gmail.com> - 2016-01-10 22:24 -0800
Re: When I need classes? Arshpreet Singh <arsh840@gmail.com> - 2016-01-10 22:28 -0800
Re: When I need classes? Travis Griggs <travisgriggs@gmail.com> - 2016-01-11 15:45 -0800
Re: When I need classes? Mike S <mscir@yahoo.com> - 2016-01-13 22:27 -0800
Re: When I need classes? Michael Torrie <torriem@gmail.com> - 2016-01-11 16:59 -0700
Re: When I need classes? Bernardo Sulzbach <mafagafogigante@gmail.com> - 2016-01-11 22:53 -0200
Re: When I need classes? Chris Angelico <rosuav@gmail.com> - 2016-01-12 12:28 +1100
Re: When I need classes? Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-01-13 10:01 +1300
Re: When I need classes? Bernardo Sulzbach <mafagafogigante@gmail.com> - 2016-01-12 19:08 -0200
Re: When I need classes? Ian Kelly <ian.g.kelly@gmail.com> - 2016-01-12 17:18 -0700
Re: When I need classes? Steven D'Aprano <steve@pearwood.info> - 2016-01-13 12:33 +1100
Re: When I need classes? Rustom Mody <rustompmody@gmail.com> - 2016-01-12 19:36 -0800
Re: When I need classes? Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-01-13 16:27 +1100
Re: When I need classes? Rustom Mody <rustompmody@gmail.com> - 2016-01-12 22:31 -0800
Re: When I need classes? Rustom Mody <rustompmody@gmail.com> - 2016-01-13 08:33 -0800
Re: When I need classes? Rick Johnson <rantingrickjohnson@gmail.com> - 2016-01-14 10:00 -0800
csiph-web