X-FeedAbuse: http://nntpfeed.proxad.net/abuse.pl feeded by 78.192.65.63 Path: csiph.com!usenet.pasdenom.info!nntpfeed.proxad.net!news.muarf.org!news.roellig-ltd.de!open-news-network.org!border2.nntp.ams1.giganews.com!nntp.giganews.com!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!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.005 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'subject:Python': 0.05; 'seemed': 0.07; 'cc:addr:python-list': 0.10; 'wed,': 0.15; 'gonna': 0.16; 'python".': 0.16; 'subject:OOP': 0.16; 'wrote:': 0.16; "wouldn't": 0.16; 'instance,': 0.18; 'skip': 0.18; 'python?': 0.18; 'cc:2**0': 0.21; 'cc:addr:python.org': 0.21; 'java': 0.22; '2015': 0.23; 'interfaces': 0.23; "i've": 0.24; 'header:In-Reply-To:1': 0.24; 'define': 0.27; 'message- id:@mail.gmail.com': 0.28; "i'm": 0.29; 'boundaries': 0.29; 'classes': 0.30; 'maybe': 0.31; 'know.': 0.34; 'received:google.com': 0.34; 'done': 0.35; 'jason': 0.35; 'something': 0.35; 'subject:: ': 0.37; 'pm,': 0.39; 'application': 0.39; 'system.': 0.39; 'here:': 0.62; 'more': 0.62; 'subject:Classic': 0.84 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=PGJ2XeEQcvCjDolA8HYPkDei/uvoG2nM+tr70Gi6TcM=; b=RZxQo643GJekxVUHWSxhD4ooz1Da+aHgiKlSwbg+pCV/ndJ6vfQaPu9Scn4b8wgZVK tqvh9Trae1QJsdyZVvGnmEDxlCrsoF3BiuxuiGaUJlYNgdwptkrdoHpv/DCRGBABofpt s3C6fp2fRk11SfAZtpesBNEUVro1L7XxXIOlWKLfoDdcjhJn+tYVgnFE1U5XD55T8tHG wmUhuKpFPZX5cPnov5WL5j9LsaXYQbGdRYdtSD+xw3YOE3maYnkQfEgYOaGB5/rM5uIE 77dWeuee5AkT5dYuXWjt3xxzSZOGCirYdq4N+LBITC7BPGw0abOZ/IcnPQuejqeWTfD9 oYJA== MIME-Version: 1.0 X-Received: by 10.43.66.5 with SMTP id xo5mr1959403icb.57.1434569892459; Wed, 17 Jun 2015 12:38:12 -0700 (PDT) In-Reply-To: <23b2fae3-91d5-486b-9898-78b34bee486f@googlegroups.com> References: <23b2fae3-91d5-486b-9898-78b34bee486f@googlegroups.com> Date: Wed, 17 Jun 2015 14:38:12 -0500 Subject: Re: Classic OOP in Python From: Skip Montanaro To: "Jason P." Cc: Python Content-Type: text/plain; charset=UTF-8 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.20+ 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: 18 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1434569901 news.xs4all.nl 2873 [2001:888:2000:d::a6]:51588 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:92774 On Wed, Jun 17, 2015 at 2:21 PM, Jason P. wrote: > I'm gonna try to develop a modest application from ground up using > TDD. If it had been done in Java for instance, I would made > extensive use of interfaces to define the boundaries of my > system. How would I do something like that in Python? Maybe start here: http://stackoverflow.com/questions/2124190/how-do-i-implement-interfaces-in-python and see if abstract base classes will be sufficient. (I wouldn't know. I've never used Java or PHP.) More generally, you might try search the web for "interfaces in python". The above just seemed to be the most relevant response to me. Skip