Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.xs4all.nl!newsfeed6.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'python.': 0.02; 'subject:: [': 0.03; 'patterns': 0.04; 'subject:Python': 0.05; 'say,': 0.05; 'python': 0.09; 'convenience': 0.09; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; ':-)': 0.13; 'isbn': 0.16; 'jumping': 0.16; 'message-id:@dough.gmane.org': 0.16; 'received:80.91.229.3': 0.16; 'received:plane.gmane.org': 0.16; 'subject: \n ': 0.16; 'subject:object': 0.16; 'subject:oriented': 0.16; 'subject:programming': 0.16; 'worst': 0.16; 'wrote:': 0.17; 'alex': 0.17; "shouldn't": 0.17; 'examples': 0.18; 'subject:] ': 0.19; 'mostly': 0.20; 'trying': 0.21; 'bit': 0.21; "haven't": 0.23; 'tried': 0.25; 'header:In-Reply-To:1': 0.25; 'header:User- Agent:1': 0.26; 'c++': 0.27; 'header:X-Complaints-To:1': 0.28; 'no,': 0.29; 'this.': 0.29; 'usually': 0.30; 'code': 0.31; 'implement': 0.32; 'from:addr:yahoo.co.uk': 0.32; 'johnson': 0.32; 'could': 0.32; 'to:addr:python-list': 0.33; "can't": 0.34; 'something': 0.35; 'there': 0.35; 'received:org': 0.36; 'but': 0.36; 'subject:with': 0.36; 'should': 0.36; 'possible': 0.37; 'does': 0.37; 'why': 0.37; 'mark': 0.38; 'several': 0.39; 'to:addr:python.org': 0.39; 'called': 0.39; 'header:Received:5': 0.40; 'your': 0.60; 'more.': 0.62; "you'll": 0.62; 'introduction': 0.62; 'subject': 0.66; 'dry': 0.84; 'mins': 0.84; 'subject:good': 0.84; 'try,': 0.84; 'kat': 0.91 X-Injected-Via-Gmane: http://gmane.org/ To: python-list@python.org From: Mark Lawrence Subject: Re: [newbie] Looking for a good introduction to object oriented programming with Python Date: Sun, 05 Aug 2012 23:11:46 +0100 References: <54b916fe-9e2d-4f9e-b533-b5ecf677c8a5@a19g2000vba.googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Gmane-NNTP-Posting-Host: host-78-147-30-1.as13285.net User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:14.0) Gecko/20120713 Thunderbird/14.0 In-Reply-To: X-Antivirus: avast! (VPS 120805-0, 05/08/2012), Outbound message X-Antivirus-Status: Clean X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 32 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1344204577 news.xs4all.nl 6926 [2001:888:2000:d::a6]:37982 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:26573 On 05/08/2012 20:46, lipska the kat wrote: [snip] > There is a book you could try, it's a bit dry and I read it when I can't > sleep, about 30 mins usually does it :-) > It's called Design Patterns by Gamma, Helm, Johnson and Vlissides > ISBN 0-201-63361-2. > They do use C++ code in examples but as they say, this is just a > convenience and shouldn't colour your view of the subject > I still read the introduction and get something out of it after several > years. You should be able to implement the patterns in Python > although I must admit I haven't tried that yet > Please no, that's the worst possible book for someone trying to learn OOD in Python. It's mostly if not completely irrelevant, jumping through hoops that you don't need in Python because of its dynamic nature. Start with the factory pattern and I hope you'll understand why I say this. Search for "design patterns alex martelli" and you'll get all you need and more. > lipska > > > -- Cheers. Mark Lawrence.