Hacker News new | past | comments | ask | show | jobs | submit login

Because a property is actually a method, so other, internal state could change what the property returns. Think of something like an "IsConnectionOpen" flag. The class' internals may change it as if it is not readonly, but to the consuming code, the IsConnectionOpen property should appear readonly.



That's clear - but that's not the case presented in the slides...

"Automatic" is clear, "getter-only" is clear, but "automatic getter-only" leaves me scratching my head.


Do you know where it is in the video? Are they not talking about something like this?

    public bool IsOpen{get; private set;}
    public void Open(){
        try{
            // do some complex work
            this.IsOpen = true;
        }
        catch{
            this.IsOpen = false;
        }
    }
    public void Close(){
        // do some other work
        this.IsOpen = false;
    }


Not sure about the minute, the video is prohibitively long...

It's on the 9th slide: https://view.officeapps.live.com/op/view.aspx?src=http%3a%2f...


I see. Maybe they mean "implicit private set"? Otherwise, one of the sibling comments has a good point about the binary compatibility issues with fields vs properties.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: