I would like to understand how the built-in function property works. What confuses me is that property can also be used as a decorator, but it only takes arguments when used as a built-in function ...
Get value of a specific object property in C# without knowing the class behind Asked 13 years, 5 months ago Modified 4 years, 7 months ago Viewed 213k times
When accessing a property, the "dot" syntax (images.main) supposes, I think, that it already exists. I had such problems without Typescript, in "vanilla" Javascript, where I tried to access data as: return json.property[0].index where index was a variable. But it interpreted index, resulting in a: cannot find property "index" of json.property[0]
For instance in this article I read this (.. class attribute (or class property, field, or data member) I have seen rather well cut out questions that show that there is a difference between class property and class field for instance What is the difference between a Field and a Property in C#?
The property allows you to use the former syntax while giving you the flexibility of change of the latter. In Python, you can define getters, setters, and delete methods with the property function. If you just want the read property, there is also a @property decorator you can add above your method.
Property is a broad concept used to denote a particular characteristic of a class which, once the class is instantiated, will help define the object's state. The following passages, extracted from "Object-Oriented Analysis and Design" by Grady Booch help clarify the subject. Firstly, it's important to understand the concepts of state and behaviour:
I have a DTO class which I Serialize Json.Serialize(MyClass) How can I exclude a public property of it? (It has to be public, as I use it in my code somewhere else)
There is a difference between registering a dependency property as a regular and as an attached property, other than a "philosophical" one (regular properties are intended to be used by the declaring type and its deriving types, attached properties are intended to be used as extensions on arbitrary DependencyObject instances).