Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

C# C# Objects Encapsulation with Properties Computed Properties

Benson Gathee
PLUS
Benson Gathee
Courses Plus Student 1,280 Points

what's a computed property name and how can I go about this question?

what's a computed property name and how can I go about this question?

Square.cs
namespace Treehouse.CodeChallenges
{
    class Square : Polygon
    {

        public double SideLength { get; private set; }

        public Square(double sideLength) : base(4)
        {
            SideLength = sideLength;
        }

        double Area = 4*4;
    }
}
Polygon.cs
namespace Treehouse.CodeChallenges
{
    public class Polygon
    {
        public int NumSides { get; private set; }

        public Polygon(int numSides)
        {
            NumSides = numSides;
        }
    }
}

1 Answer

Steven Parker
Steven Parker
218,654 Points

A computed property is one that delivers a value resulting from some process or calculation instead of just something stored in a backing variable. It's defined very much like an ordinary property, except it will have a bit more code in the "get" method.

This concept and code examples were covered in the video just prior to this challenge, which happens to be named Computed Properties.

Benson Gathee
Benson Gathee
Courses Plus Student 1,280 Points

That's works! For this case

namespace Treehouse.CodeChallenges { public class Polygon { public int NumSides { get; private set; }

    public Polygon(int numSides)
    {
        NumSides = numSides;
    }
    public double Area 
    { 
        get { return SideLength * SideLength; } 
    }
}

}