This paper deals with objectoriented software implementation of the algorithms for transformation of the continuous-time linear systems to the discrete-time systems. These algorithms are used for displaying the basic...
详细信息
ISBN:
(纸本)9781467379397
This paper deals with objectoriented software implementation of the algorithms for transformation of the continuous-time linear systems to the discrete-time systems. These algorithms are used for displaying the basic discrete-time systems characteristics: step response, impulse response and frequency response in PLC based tunnel simulator. State-space system representation and basic interconnection of the systems are also considered.
Originally proposed in the mid-90s, design patterns for software development played a key role in object-orientedprogramming not only in increasing software quality, but also by giving a better understanding of the p...
详细信息
ISBN:
(纸本)9783662465493;9783662465486
Originally proposed in the mid-90s, design patterns for software development played a key role in object-orientedprogramming not only in increasing software quality, but also by giving a better understanding of the power and limitations of this paradigm. Since then, several authors have endorsed a similar task for other programming paradigms, in the hope of achieving similar benefits. In this paper we present a set of design patterns for Mdl-programs, a hybrid formalism combining several description logic knowledge bases via a logic program. These patterns are extensively applied in a natural way in a large-scale example that illustrates how their usage greatly simplifies some programming tasks, at the level of both development and extension. We also discuss some limitations of this formalism, examining some usual patterns in other programming paradigms that have no parallel in Mdl-programs.
Reactive programming and event-based programming are two closely related programming styles that are becoming ever more important with the advent of advanced HCI technology and the ever increasing requirement for appl...
详细信息
ISBN:
(纸本)9781450337229
Reactive programming and event-based programming are two closely related programming styles that are becoming ever more important with the advent of advanced HCI technology and the ever increasing requirement for applications to run on the web or on collaborating mobile devices. A number of publications about middleware and language design - so-called reactive and event-based languages and systems - have already seen the light, but the field still raises several questions. For example, the interaction with mainstream language concepts is poorly understood, implementation technology is in its infancy and modularity mechanisms are almost totally lacking. Moreover, large applications are still to be developed and patterns and tools for developing reactive applications is an area that is vastly unexplored. This workshop gathers researchers in reactive and event-based languages and systems. The goal of the workshop is to exchange new technical research results and to define better the field by coming up with taxonomies and overviews of the existing work.
Development environments which aim to provide short feedback loops to developers must strike a balance between immediacy and the ability to abstract and reuse behavioral modules. The Lively Kernel, a self-supporting, ...
详细信息
ISBN:
(纸本)9781450339056
Development environments which aim to provide short feedback loops to developers must strike a balance between immediacy and the ability to abstract and reuse behavioral modules. The Lively Kernel, a self-supporting, browser-based environment for explorative development supports standard object-orientedprogramming with classes or prototypes, but also a more immediate, object-centric approach for modifying and programming visible objects directly. This allows users to quickly create graphical prototypes with concrete objects. However, when developing with the object-centric approach, sharing behavior between similar objects becomes cumbersome. Developers must choose to either abstract behavior into classes, scatter code across collaborating objects, or to manually copy code between multiple objects. That is, they must choose between less concrete development, reduced maintainability, or code duplication. In this paper, we propose Lively Groups, an extension to the object-centric development tools of Lively to work on multiple concrete objects. With Lively Groups, developers may dynamically organize live objects that share behavior using tags. They can then modify and program such groups as if they were single objects. Our approach scales the Lively Kernel's explorative development approach from one to many objects, while preserving the maintainability of abstractions and the immediacy of concrete objects.
To denote an exact form of decoupling software modules in object-orientedprogramming the dependency inversion principle is used. By using this principle, the conventional dependency relationships known from high-leve...
详细信息
We present an object model that is the ground for several software products written by our team in C++ and used by our customers for over 10 years. The object model has allowed us to design software packages of many c...
详细信息
object-orientedprogramming is easily accessible by beginners, since it allows for modeling real-world entities as software objects. Storytelling is a natural way to introduce the basic concepts behind object-oriented...
详细信息
ISBN:
(纸本)9781450331463
object-orientedprogramming is easily accessible by beginners, since it allows for modeling real-world entities as software objects. Storytelling is a natural way to introduce the basic concepts behind object-orientedprogramming. To convey object-orientedprogramming concepts to children, such as object, attribute and etc., we present a new tangible programming tool-TanProStory, for children in 1-3 grades. Children can tell a story by arranging programming blocks to initialize a character and construct a program controlling its action. TanProStory consists of three parts: programming blocks, Animation Game and Sensor input module. programming blocks in TanProStory are surface-sensitive, i.e. only the command on the top surface can be detected. We conducted a preliminary user study and analyzed the results, which can guide a better design of TanProStory.
While in Java 5.0 generics have been introduced in Java 8 the language has been expanded by lambda expressions. The very popular feature in functional programming languages, type inference, is introduced in Java, but ...
详细信息
ISBN:
(纸本)9783885796404
While in Java 5.0 generics have been introduced in Java 8 the language has been expanded by lambda expressions. The very popular feature in functional programming languages, type inference, is introduced in Java, but only in a very restricted form, similar as in other object-oriented languages. This paper presents an Eclipse plugin which allows writing Java 8 programs without any type annotation. A type inference algorithm determines all possible types which the Eclipse plugin presents to the user afterwards. So the user can select the desired type. This plugin allows to determine most general types, which are often not obvious. The programs therefore become more reuseable, which is the goal of any software development.
Writing parallel programs is hard, especially for inexperienced programmers. Parallel language features are still being added on a regular basis to most modern object-oriented languages and this trend is likely to con...
详细信息
Foundational models of object-oriented constructs typically model objects as records with a structural type. However, many object-oriented languages are class-based;statically-typed formal models of these languages te...
详细信息
暂无评论