Results 1 to 3 of 3
  1. Default Is this code smell?


    Is it considered bad practice to have a higher level code pass messages through one layer of abstraction? Like this:

    Code:
    class HigherAbstraction:
      def __init__(self):
        self.bar = LowerAbstraction()
    
      def Spam(self):
        return self.bar.Spam()
    
    class LowerAbstraction:
      def Spam(self):
        return 1
    
    this = HigherAbstraction()
    this.Spam()
    Is there a way that this can be better factored? Sometimes I have to create several different HigherAbstraction types of classes where all instances of HigherAbstraction also could use functionality from LowerAbstraction.

  2. the Immutable Neuter
    IGN: Stephen
    Server: U.S.A.
    Level: 25
    Job: Sailor
    Guild: USN
    Alliance: VAQ-141 Shadowhawks
    ireland

    Default


    codes have scent?

  3. Default


    Code:
    class HigherAbstraction(LowerAbstraction):
      def __init__(self):
        pass
    
    class LowerAbstraction:
      def Spam(self):
        return 1
    
    this = HigherAbstraction()
    this.Spam()
    Class inheritance. Also note that all methods in Python are virtual, so if you want to call a method from your base class in an overridden method, use something like BaseClassName.methodname(self, param1, param2).

    [FONT] seems to be broken. :\

  4.  

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •