{"title":"迈向状态机和面向对象语言的集成","authors":"O. Madsen","doi":"10.1109/TOOLS.1999.779018","DOIUrl":null,"url":null,"abstract":"The goal of the paper is to obtain a one-to-one correspondence between state machines as e.g. used in UML and object oriented programming languages. A proposal is made for a language mechanism that makes it possible for an object to change its virtual bindings at run time. A state of an object may then be represented as a set of virtual bindings. One advantage of object orientation is that it provides an integrating perspective on many phases of software development, including analysis, design and implementation. For the static set of OO language constructs there is almost a one-to-one correspondence between analysis/design notations and OO programming languages. No such correspondence exists for the dynamic aspects, but the proposed state mechanism is a contribution to a better correspondence. The proposal is based on previous work by A. Taivalsaari (1993) and compared to the more complex features for changing object behavior as found in CLOS, Smalltalk, and predicate classes, it is simple and efficient to implement.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"20 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"16","resultStr":"{\"title\":\"Towards integration of state machines and object-oriented languages\",\"authors\":\"O. Madsen\",\"doi\":\"10.1109/TOOLS.1999.779018\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The goal of the paper is to obtain a one-to-one correspondence between state machines as e.g. used in UML and object oriented programming languages. A proposal is made for a language mechanism that makes it possible for an object to change its virtual bindings at run time. A state of an object may then be represented as a set of virtual bindings. One advantage of object orientation is that it provides an integrating perspective on many phases of software development, including analysis, design and implementation. For the static set of OO language constructs there is almost a one-to-one correspondence between analysis/design notations and OO programming languages. No such correspondence exists for the dynamic aspects, but the proposed state mechanism is a contribution to a better correspondence. The proposal is based on previous work by A. Taivalsaari (1993) and compared to the more complex features for changing object behavior as found in CLOS, Smalltalk, and predicate classes, it is simple and efficient to implement.\",\"PeriodicalId\":434404,\"journal\":{\"name\":\"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)\",\"volume\":\"20 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1999-06-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"16\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/TOOLS.1999.779018\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/TOOLS.1999.779018","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Towards integration of state machines and object-oriented languages
The goal of the paper is to obtain a one-to-one correspondence between state machines as e.g. used in UML and object oriented programming languages. A proposal is made for a language mechanism that makes it possible for an object to change its virtual bindings at run time. A state of an object may then be represented as a set of virtual bindings. One advantage of object orientation is that it provides an integrating perspective on many phases of software development, including analysis, design and implementation. For the static set of OO language constructs there is almost a one-to-one correspondence between analysis/design notations and OO programming languages. No such correspondence exists for the dynamic aspects, but the proposed state mechanism is a contribution to a better correspondence. The proposal is based on previous work by A. Taivalsaari (1993) and compared to the more complex features for changing object behavior as found in CLOS, Smalltalk, and predicate classes, it is simple and efficient to implement.