This note explains why general multiple inheritance is contra-intuitive in object-oriented programming. Firstly, we show some problems which occur when using general multiple inheritance. Secondly, we analyze the purp...
详细信息
This note explains why general multiple inheritance is contra-intuitive in object-oriented programming. Firstly, we show some problems which occur when using general multiple inheritance. Secondly, we analyze the purposes for which multiple inheritance is used in large and complex software systems according to our experience. This provides arguments for our rejection of general multiple inheritance. Instead of it, a more specific multiple inheritance scheme called mixin should be provided. On the one hand, this would secure that the programmer's intuition and the behaviour of the inheritance algorithm always agree and, on the other hand, we obtain the same performance the single inheritance languages do.
The aim of this study is to model launch vehicles with focus on 3-DOF trajectory optimization using a modular approach. Despite the large number of operational launch vehicles, they usually consist of basic components...
详细信息
The aim of this study is to model launch vehicles with focus on 3-DOF trajectory optimization using a modular approach. Despite the large number of operational launch vehicles, they usually consist of basic components and subsystems. In other words, a launch vehicle is an assembly of stages, which in turn is divided into propellant system and engine, and the engine is an assembly of basic components such as pumps, turbines, combustion chamber, and nozzle. To allow future extension and reuse of the codes, a modular structure using object-oriented programming is used. Two formulations of state equations of the trajectory and two optimization methods are described. The launch vehicle performance will be measured by payload mass for a given mission. The simulations of the VLS-1, Ariane 5 and VLS-Alfa were performed and showed good agreement with the literature.
Kinematic indicators play an increasingly important role in the interpretation of rocks that experienced deformation in the deep crust. Because most ductile shear zones lack clearly offset markers, small-scale structu...
详细信息
Kinematic indicators play an increasingly important role in the interpretation of rocks that experienced deformation in the deep crust. Because most ductile shear zones lack clearly offset markers, small-scale structures such as asymmetric porphyroclast tails, porphyroblast inclusion trails, and composite planar (S-C) fabrics usually provide the only records of the sense of displacement. Field observations and analog models have demonstrated that these types of structures can yield reliable shear-sense information, but no single quantitative model has been able to simulate the diverse geometries exhibited by known shear-sense indicators. We have developed such program for Macintosh computers, using object-oriented programming techniques. The program, named ShearSense, demonstrates that the development of most abundant shear-sense indicators is governed by a small number of kinematic variables and that it may be possible to read shear strain magnitude from structural geometries. The program also illustrates the potential of object-oriented programming for computer simulation of geologic phenomena.
The paper tries to identify the essential characteristics of object-oriented programming, and then asks which features, beyond new terminology, will justify a programming language being called ‘object-oriented’. Usi...
详细信息
The paper tries to identify the essential characteristics of object-oriented programming, and then asks which features, beyond new terminology, will justify a programming language being called ‘object-oriented’. Using these criteria, the ‘object-orientedness’ of MODULA-2 is investigated. Concluding that the language allows, but does not support, this style of programming, minimal additions that would be necessary to satisfy the characteristics of objectorientation are considered.
A new system of library code is proposed and initiated. It is emphasized that the same terminologies as we find in our textbooks should be used for class names in the library code. This proposal is inspired by .NET of...
详细信息
A new system of library code is proposed and initiated. It is emphasized that the same terminologies as we find in our textbooks should be used for class names in the library code. This proposal is inspired by .NET of Microsoft. Several rules of thumb are suggested in order to obtain easy-readable coherent codes. As a first step, we present the library code for exact diagonalization in physics. When we build codes, we distinguish between model independent and dependent parts. For the model independent parts, we use the familiar terminologies like Hamiltonian, HilbertSpace, GroundState, etc as class names. As an explicit example, we calculate ground state energy of a quantum dot, showing the triplet-singlet transition.
The control of batch manufacturing systems is complex, and one viable solution is to break control into a series of levels within an overall hierarchy of control. Cell control forms a major element of such a hierarchy...
详细信息
The control of batch manufacturing systems is complex, and one viable solution is to break control into a series of levels within an overall hierarchy of control. Cell control forms a major element of such a hierarchy in that cell controllers manage and co-ordinate the manufacturing equipment within each cell. This equipment includes robots, machine tools and material handling systems. This paper reviews objectorientedprogramming, and describes its use in a cell control system termed X-Cell. object-oriented programming has advantages in terms of a modular programming style, an increased flexibility and easier maintainability. An overview of X-Cell is given. Three main modules are used: the scheduler, the operation dispatcher, and the monitor. Each uses a number of objects. The use of object-oriented programming results in flexibility in handling a wide range of factors.
Many empirical studies have shown that educational games and recent technologies impact education and increase learning effectiveness, students' motivation and engagement. The overall aim of this study is to evalu...
详细信息
Many empirical studies have shown that educational games and recent technologies impact education and increase learning effectiveness, students' motivation and engagement. The overall aim of this study is to evaluate the usability of Imikode, a virtual reality (VR) game that was developed to introduce the concepts of object-oriented programming to novices. The improved version of the Imikode VR game consists of three features: An artificial intelligence component designed to provide real-time error feedback to users, an intelligent agent that guides and teaches users how to play the game and finally, the integration of multiple game play that gives learners more opportunities to explore the VR environment for greater immersive learning experience. This study adopted a survey approach and recruited first-year computer science students to measure learner satisfaction with educational virtual reality games and examined the correlations among the attributes of the Usefulness, Satisfaction and Ease of Use questionnaire of usage of Imikode. The results showed that the students were satisfied with Imikode and perceived the virtual reality educational game as very useful for learning object-oriented programming concepts. In addition, there was a correlation among the questionnaire variables, which means that researchers can use the instrument for future usability studies in the context. We further proffered some design recommendations for building software tools.
A block diagram editor has been developed for the Macintosh personal computer from a specification developed for a general graphical human-computer interface for an extended X-based Control Engineering workstation (eX...
详细信息
A block diagram editor has been developed for the Macintosh personal computer from a specification developed for a general graphical human-computer interface for an extended X-based Control Engineering workstation (eXCeS). It was implemented using THINK C. a version of C with object-oriented extensions that has been specially developed to provide case of programming for graphics based applications in the Macintosh environment. Our experiences are reported on using this programming environment for this application and details are given of its design and implementation. We also comment on the applicability of the objectoriented paradigm for the development of Computer-Aided Control Systems Design (CACSD) tools.
The material presented is to introduce how an advanced object-oriented programming (OOP) technique can be applied to an automatic machine workshop. It is a user-friendly and well-manipulated software which uses a sema...
详细信息
The material presented is to introduce how an advanced object-oriented programming (OOP) technique can be applied to an automatic machine workshop. It is a user-friendly and well-manipulated software which uses a semantic net of information representation by applying a hierarchy of various object components and/or structures. It has already been proven to be a very useful software concept in handling a flexible, automatic manufacturing system. In order to discuss further the application of the OOP concept in detail, an automatic machine workshop is used as an example to illustrate the applications. It is found that this kind of object-based approach offers a swift tool to integrate objects into a manufacturing environment to make the control of an automatic machine workshop possible. (C) 2000 Elsevier Science S.A. All rights reserved.
This paper describes a proof outline logic that covers most typical object-oriented language constructs in the presence of inheritance and subtyping. The logic is based on a weakest precondition calculus for assignmen...
详细信息
This paper describes a proof outline logic that covers most typical object-oriented language constructs in the presence of inheritance and subtyping. The logic is based on a weakest precondition calculus for assignments and object allocation which takes field shadowing into account. Dynamically bound method calls are tackled with a variant of Hoare's rule of adaptation that deals with the dynamic allocation of objects in object-oriented programs. The logic is based on an assertion language that is closely tailored to the abstraction level of the programming language. (c) 2005 Elsevier B.V. All rights reserved.
暂无评论