1. Because maybe the author wanted to keep the property hidden and only expose a getter function and hide the setter?
2. Same reason. They are being set internally. A sane programmer would not give you the power to do that because its a product of internal calculations.
3. Naming of method&#x2F;function and variables is the second hardest thing in programming :) 
4. The callback of on.(&#x27;floor_button_pressed&#x27;) gives you an floorNumber argument which is more than sufficient. What event in real life would you describe with on(&#x27;in-droor-button-press&#x27;) ?