Changes for page Code Example: Data Structure Style vs. Object Style
Last modified by chrisby on 2024/03/03 17:01
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -7,15 +7,15 @@ 7 7 8 8 ### Data Structure Style 9 9 10 - t ypeSquarestruct{10 + struct Square { 11 11 length float 12 12 } 13 13 14 - t ypeCirclestruct{14 + struct Circle { 15 15 radius float 16 16 } 17 17 18 - func Circumference(g Object) float { 18 + function Circumference(g Object) float { 19 19 switch type(g): 20 20 case Square: 21 21 return 4 * g.length ... ... @@ -23,7 +23,8 @@ 23 23 return 2 * PI * g.radius 24 24 } 25 25 26 -1. 26 +1. Adding a function Area() with the same anatomy as Circumference() is easy, since it only requires adding new code. 27 +1. Adding a new datatype, Rectangle, is more difficult because it requires touching existing code, namely any functions like Circumference() or Area() that need to be enabled handle this datatype. 27 27 28 28 #### 29 29