Our project COMMOOP aims to develop a competency structure model and appropriate measurement instruments for the field of object-orientedprogramming (OOP). We started by reviewing existing literature on competency mo...
详细信息
ISBN:
(纸本)9781509025046
Our project COMMOOP aims to develop a competency structure model and appropriate measurement instruments for the field of object-orientedprogramming (OOP). We started by reviewing existing literature on competency modelling in other subject areas regarding the development methodology as well as the model structures, identified common structural elements, verified, expanded and refined these based on an extensive literature analysis on theoretical and empirical studies on teaching and learning as well as on psychological aspects in the field of OOP. As theoretically derived candidates for potential competency dimensions we identified (1) OOP content knowledge and skills, (2) mastering representation, (3) cognitive processes and (4) metacognitive processes. This theoretically derived model framework was validated based on various competency descriptions in terms of applicability and completeness. For this purpose, we identified competency descriptions related to OOP in 44 computer science curricula and standards from several countries and compared these with our model. Further, we applied it to a list of competency definitions that was extracted by a working group at the ITiCSE 2015 from 14 case studies on K12 in 12 different countries. Finally, the structure model was aligned with the results of a survey among 59 computer science teachers and teacher students on learning difficulties. At the end, it turned out that our proposed model was quite complete already.
To assist Java programming educations, we have developed a Web-based Java programming Learning Assistant System (JPLAS) along with the code writing problem which allows students to study writing source codes for assig...
详细信息
ISBN:
(纸本)9781538663097
To assist Java programming educations, we have developed a Web-based Java programming Learning Assistant System (JPLAS) along with the code writing problem which allows students to study writing source codes for assignments. As the object-orientedprogramming language, encapsulation, inheritance, and polymorphism are the three fundamental concepts that all the students are expected to master. In this paper, we propose the informative test code approach to the code writing problem, which helps students study them by describing the necessary information for the code. For evaluations, we generated informative test codes for 10 assignments, and then asked 10 students to write the source codes, where they completed the high-quality ones using the concepts.
The power of objects lies in the flexibility of their interconnection structure. But this flexibility conies at a cost. Because an object can be modified via any alias, object-oriented programs are hard to understand,...
详细信息
ISBN:
(纸本)9783642020469
The power of objects lies in the flexibility of their interconnection structure. But this flexibility conies at a cost. Because an object can be modified via any alias, object-oriented programs are hard to understand, maintain, and analyze. Aliasing makes objects depend on their environment in unpredictable ways, breaking the encapsulation necessary for reliable software components, making it, difficult to reason about and optimize programs, obscuring the flow of information between objects, and introducing security problems. Aliasing is a fundamental difficulty, but, we accept its presence. Instead we seek techniques for describing, reasoning about, restricting, analyzing, and preventing the connections between objects and/or the flow of information between them. Promising approaches to these problems are based on ownership, confinement, information flow, sharing control, escape analysis, argument independence, read-only references, effects systems. and access control mechanisms.
When minor modifications need to be made in an object-oriented computer program, they often incur further more changes due to the presence of dependency in the codes and the program structure. Yet, to accommodate the ...
详细信息
ISBN:
(纸本)9780791844113
When minor modifications need to be made in an object-oriented computer program, they often incur further more changes due to the presence of dependency in the codes and the program structure. Yet, to accommodate the required change, there can also be more than one option to carry out the initial modifications. To select the modification option in this context, this paper proposes a systematic approach to estimate the scope of change propagation of an object-oriented program given some initial modifications. The strategy is to first capture the dependency relationships of the entities pertaining to an object-oriented program via the matrix representation. Based on this matrix-based model, the priority number method is proposed and applied to estimate the scope of change propagation by assuming some initial modifications. The core of this method is to estimate the chance of affecting other program entities due to some modified entities. A case study is conducted throughout the paper to illustrate and justify the proposed method.
In distributed object-oriented systems, objects belong to different locations. For example, in Java RMI, objects can be distributed over different JVM instances. Accessing a reference in RMI has crucial different sema...
详细信息
ISBN:
(纸本)9783642219528
In distributed object-oriented systems, objects belong to different locations. For example, in Java RMI, objects can be distributed over different JVM instances. Accessing a reference in RMI has crucial different semantics depending on whether the referred object is local or remote. Nevertheless, such references are not statically distinguished by the type system. This paper presents location types, which statically distinguish far from near references. We present a formal type system for a minimal core language. In addition, we present a type inference system that gives optimal solutions. We implemented location types as a pluggable type system for the ABS language, an object-oriented language with a concurrency model based on concurrent object groups. An important contribution of this paper is the combination of the type system with the flexible inference system and a novel integration into an Eclipse-based IDE by presenting the inference results as overlays. This drastically reduces the annotation overhead while providing full static type information to the user. The IDE integration is a general approach of its own and can be applied to many other type system extensions.
Functional programming concepts of referential transparency and lazy evaluation combine effectively with objected-oriented encapsulation. We present a design pattern for C++ classes that are logically immutable and fu...
详细信息
ISBN:
(纸本)0780350057
Functional programming concepts of referential transparency and lazy evaluation combine effectively with objected-oriented encapsulation. We present a design pattern for C++ classes that are logically immutable and fully determined by the parameters of their constructor. Hidden state is used internally to cache the results of computation performed in the scope of accessors, giving them lazy semantics, Modifying replicators model change by constructing a new instance without changing the original. Previously computed results are lazily copied via a back reference if the parameters report which the computation depends have nor changed. Since these classes are logically immutable they can be freely shared by reference ill complex networks, mitigating the amount of actual copying performed. These techniques realize several advantages - well known to the functional programming community including suitability for modular reasoning and parallel evaluation. 'Undo' facilities and safe recovery from exceptions can be provided with little extra effort. Examples from a large multi-platform biomedical imaging application illustrate the techniques.
This paper describes the results of an experiment in the use of the Gödel logic programming language for object-orientedprogramming. An object-oriented program is implemented in Gödel at two levels. First, ...
详细信息
This paper describes the evolution of recursive functions within an object-oriented Genetic programming (OOGP) system. We evolved general solutions to factorial, Fibonacci, exponentiation, even-n-Parity, and nth-3. We...
详细信息
ISBN:
(纸本)3540331433
This paper describes the evolution of recursive functions within an object-oriented Genetic programming (OOGP) system. We evolved general solutions to factorial, Fibonacci, exponentiation, even-n-Parity, and nth-3. We report the computational effort required to evolve these methods and provide a comparison between crossover and mutation variation operators, and also undirected random search. We found that the evolutionary algorithms performed much better than undirected random search, and thats mutation outperformed crossover on most problems.
Considering high complexity and abstraction of object-orientedprogramming concepts, there is a need for innovative solution, which may serve as mean for learning these concepts. The aim of this paper is the descripti...
详细信息
ISBN:
(纸本)9781728143811
Considering high complexity and abstraction of object-orientedprogramming concepts, there is a need for innovative solution, which may serve as mean for learning these concepts. The aim of this paper is the description of developed interactive educational application for object-oriented-programming. We decided to use Unity, which is a cross-platform 3D game engine. We made our interactive part of the application as a drag and drop game, in which the user creates solution for given problem using knowledge, which were presented to him in the introduction part of the application. After the user finishes the challenge, he needs to pass the quiz. In each level there are several questions for particular concepts, on which the user has to answer. In this part the user can verify his gained knowledge. We have collected feedback from the questionnaire.
暂无评论