Timeline for Origin of structures and classes
Current License: CC BY-SA 3.0
8 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| May 19, 2012 at 15:42 | comment | added | xralf | @Giorgio Yes, this tighter integration looks likely. It looks like the relation between functions and structure instances, so that every instance of structure can use certain functions which have no sense for other types of structures. | |
| May 19, 2012 at 15:39 | comment | added | xralf | @WorldEngineer I thought that operating systems are written in Assembly and C language and there are libraries for code organization. | |
| May 18, 2012 at 19:55 | comment | added | Giorgio | @xralf: Maybe reading about Simula 67 you can find out more about the motivations for OOP. BTW, as far as I can remember, Simula 67 has virtual methods already. So virtual methods are a really old invention. | |
| May 18, 2012 at 19:51 | comment | added | Giorgio | The alternative is to use modules (Modula-2), or packages (Ada, Java, Scala, etc), or units (some Pascal dialects). In this way you can group types and operations together. However, classes offer a tighter integration between data and operations, and additional features like inheritance. | |
| May 18, 2012 at 19:44 | comment | added | user28988 | The idea became popular because it's an excellent way of organizing code. Applications have gotten progressively larger and more complex. Some operating systems have over 100 million lines of code. While a fairly poor measure actual complexity it does require massive organizational efforts. | |
| May 18, 2012 at 19:37 | vote | accept | xralf | ||
| May 18, 2012 at 19:33 | comment | added | xralf |
I like the pedagogical approach of this your answer. So, if I understand it right I can learn more about this idea when reading something about Simula 67 as WorldEngineer writes and maybe somewhere will be written why this idea became popular between other programming languages.
|
|
| May 18, 2012 at 19:07 | history | answered | Giorgio | CC BY-SA 3.0 |