Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #109233 > unrolled thread

Recommendation for Object-Oriented systems to study

Started byAnkush Thakur <ankush.thakur53@gmail.com>
First post2016-05-29 07:42 -0700
Last post2016-06-03 10:24 -0700
Articles 3 on this page of 23 — 12 participants

Back to article view | Back to comp.lang.python


Contents

  Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-05-29 07:42 -0700
    RE: Recommendation for Object-Oriented systems to study "Joseph Lee" <joseph.lee22590@gmail.com> - 2016-05-29 09:00 -0700
      Re: Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-05-30 08:56 -0700
    Re: Recommendation for Object-Oriented systems to study Michele Simionato <michele.simionato@gmail.com> - 2016-05-29 10:49 -0700
      Re: Recommendation for Object-Oriented systems to study Terry Reedy <tjreedy@udel.edu> - 2016-05-29 14:29 -0400
        Re: Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-05-30 08:57 -0700
          Re: Recommendation for Object-Oriented systems to study Terry Reedy <tjreedy@udel.edu> - 2016-05-30 15:01 -0400
            Re: Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-05-31 10:52 -0700
              Re: Recommendation for Object-Oriented systems to study Terry Reedy <tjreedy@udel.edu> - 2016-06-01 05:22 -0400
                Re: Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-06-03 10:28 -0700
      Re: Recommendation for Object-Oriented systems to study Alan Evangelista <alanoe@linux.vnet.ibm.com> - 2016-05-29 15:12 -0300
        Re: Recommendation for Object-Oriented systems to study Marko Rauhamaa <marko@pacujo.net> - 2016-05-29 22:42 +0300
        Re: Recommendation for Object-Oriented systems to study Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-05-30 11:34 +1200
          Re: Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-05-30 08:59 -0700
        Re: Recommendation for Object-Oriented systems to study Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-01 22:44 -0700
          Re: Recommendation for Object-Oriented systems to study Alan Evangelista <alanoe@linux.vnet.ibm.com> - 2016-06-02 09:15 -0300
            Re: Recommendation for Object-Oriented systems to study Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-02 18:13 -0700
            Re: Recommendation for Object-Oriented systems to study Bob Martin <bob.martin@excite.com> - 2016-06-03 07:14 +0100
              Re: Recommendation for Object-Oriented systems to study Phuong Phan <p.h.phan2006@gmail.com> - 2016-06-03 18:07 +0900
                Re: Recommendation for Object-Oriented systems to study Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-03 09:17 -0700
    Re: Recommendation for Object-Oriented systems to study Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-05-30 14:14 -0400
    Re: Recommendation for Object-Oriented systems to study Sayth Renshaw <flebber.crue@gmail.com> - 2016-06-03 07:24 -0700
      Re: Recommendation for Object-Oriented systems to study Ankush Thakur <ankush.thakur53@gmail.com> - 2016-06-03 10:24 -0700

Page 2 of 2 — ← Prev page 1 [2]


#109265

FromDennis Lee Bieber <wlfraed@ix.netcom.com>
Date2016-05-30 14:14 -0400
Message-ID<mailman.41.1464632091.1839.python-list@python.org>
In reply to#109233
On Sun, 29 May 2016 07:42:04 -0700 (PDT), Ankush Thakur
<ankush.thakur53@gmail.com> declaimed the following:

>Hello,
>
>I'm a self-taught programmer who has managed to claw his way out of Python basics and even covered the intermediate parts. But I feel I have a ton of theory in my head and would like to see some smallish applications in action. More specifically, I'm looking for Object Oriented designs that will help me cement my knowledge and expose me to best practices that books never cover. I have half a mind to start reading up the Django or Pandas source code, but I don't want to overwhelm myself. 
>

	It is no clear if you want something for OOAD (object oriented Analysis
and Design) or for OOP (object oriented Programming) -- though the latter
works better with a foundation of the first.

	OOAD tends to be language independent (well, these days the texts
probably focus on UML as the notation -- but UML is not implementation).
With some difficulty, one can use a non-OO language to implement an OO
design (the first C++ systems were fancy macro pre-processors that
generated C source code; if one understands the type of constructs that
produces, one can hand code the same).

	In a very simplistic form OOAD comes down to reading a text description
of a task/system identifying nouns, verbs, and adjectives. The nouns are
what might become OO Classes, the verbs identify possible methods, and
adjectives may be attributes. 

	25 years ago, the common assignment in the OOAD/OOP (the second half
being an intro to C++) classes my company gave was to design a simple
calculator. The designs from most of the students tended to be "keyboard"
containing a matrix of "keys" sending "function codes" to a centralized
"processor" which  then sent results to update the "display"... My design
was "keyboard" with matrix of "keys" implementing functions by
pulling/pushing "values" on a "stack", with the "stack" updating the
"display" with the value on top of stack. If you haven't guessed -- my
design is based on RPN calculators, and even entering digits was
implemented by a digit key operation popping the top of stack, shifting
left one digit, appending the new digit (the fixed value of the key), and
pushing the result back onto the stack.

	Granted, you wouldn't make a hardware design where each key had a logic
chip... But it made for a very clean design to add operations... Subclass
the OperationKey class, override method that performs the operation. Add
instance of new subclass to the"keyboard". The other students would have
had to change both their keyboard matrix for a new operation, and modify
the processor class to dispatch to a handler for a new function code.
-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
    wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

[toc] | [prev] | [next] | [standalone]


#109416

FromSayth Renshaw <flebber.crue@gmail.com>
Date2016-06-03 07:24 -0700
Message-ID<b7cad8b9-ca83-42f1-aafc-8416818b0826@googlegroups.com>
In reply to#109233
On Monday, 30 May 2016 00:42:17 UTC+10, Ankush Thakur  wrote:
> Hello,
> 
> I'm a self-taught programmer who has managed to claw his way out of Python basics and even covered the intermediate parts. But I feel I have a ton of theory in my head and would like to see some smallish applications in action. More specifically, I'm looking for Object Oriented designs that will help me cement my knowledge and expose me to best practices that books never cover. I have half a mind to start reading up the Django or Pandas source code, but I don't want to overwhelm myself. 
> 
> Can somebody recommend smaller and simpler projects I can learn from? And if I can pick the brains of the creator, bonus points!
> 
> Thanks in advance!
> 
> Ankush

Hi Ankush

Can I refer you to a book, which isn't about object oriented design its actually about functional design, please wait though its one of the best books I am reading haven't made it to the end yet :-)

The author has written several books and about python object oriented design, but in writing about functional python it forces him to talk about when functional is good or bad and which parts of the language respond best to which approach, plus its clearly and straightforwardly written.

Its functional python programming by Steven Lott.

Cheers

Sayth

[toc] | [prev] | [next] | [standalone]


#109434

FromAnkush Thakur <ankush.thakur53@gmail.com>
Date2016-06-03 10:24 -0700
Message-ID<8154a110-8aed-45be-b668-3a9ddf2b9ced@googlegroups.com>
In reply to#109416
On Friday, June 3, 2016 at 7:54:55 PM UTC+5:30, Sayth Renshaw wrote:
> On Monday, 30 May 2016 00:42:17 UTC+10, Ankush Thakur  wrote:
> > Hello,
> > 
> > I'm a self-taught programmer who has managed to claw his way out of Python basics and even covered the intermediate parts. But I feel I have a ton of theory in my head and would like to see some smallish applications in action. More specifically, I'm looking for Object Oriented designs that will help me cement my knowledge and expose me to best practices that books never cover. I have half a mind to start reading up the Django or Pandas source code, but I don't want to overwhelm myself. 
> > 
> > Can somebody recommend smaller and simpler projects I can learn from? And if I can pick the brains of the creator, bonus points!
> > 
> > Thanks in advance!
> > 
> > Ankush
> 
> Hi Ankush
> 
> Can I refer you to a book, which isn't about object oriented design its actually about functional design, please wait though its one of the best books I am reading haven't made it to the end yet :-)
> 
> The author has written several books and about python object oriented design, but in writing about functional python it forces him to talk about when functional is good or bad and which parts of the language respond best to which approach, plus its clearly and straightforwardly written.
> 
> Its functional python programming by Steven Lott.
> 
> Cheers
> 
> Sayth

Thanks, Sayth. Functional programming is indeed a very interesting paradigm, but I hear that Python's functional paradigms are cramped at best. I will learn a pure functional language later, but for now I'm looking for good old objects.

Best,
Ankush

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | comp.lang.python


csiph-web