Since years, the prevalent programming paradigm in professional world of software development is the object-oriented one. However, the inertia of traditional forms of programming coupled with outdated learnings in the...
详细信息
ISBN:
(纸本)9781509029389
Since years, the prevalent programming paradigm in professional world of software development is the object-oriented one. However, the inertia of traditional forms of programming coupled with outdated learnings in the field, often leading to objectprogramming languages used with a procedural approach and then waste their potential and fall into few robust software. Assuming the influence of university careers systems in the dynamics of software development industry, it is essential to address the educational processes that occur in their area. This paper presents some pedagogical choices about how to teach programming under the paradigm of OOP and use of an educational software, called Wollok, which was designed by university teachers to accompany and sustain this process. It consists in a development environment that includes a new programming language based on the classic Smalltalk ideas with more modern languages own characteristics. Its simplicity allows focus on the main concepts of paradigm - objects, messages, polymorphism-and gradually incorporate more complexity classes, inheritance, mixins-according to the progress of the learning process.
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.
2007 presents I jubilee of 40 years of the object-oriented programming (OOP). In the paper. the importance of computer simulation for discovering OOP is explained, together with the development from process-oriented s...
详细信息
ISBN:
(纸本)9789077381366
2007 presents I jubilee of 40 years of the object-oriented programming (OOP). In the paper. the importance of computer simulation for discovering OOP is explained, together with the development from process-oriented simulation languages up to SIMULA 67 and behind and above the paradigm called OOP.
A designing of digital circuits is based on hardware description languages (HDLs). The dominating standard of HDLs is the VEDL, which basing on a digital circuit structure, a net-list, and an event-driven algorithm. I...
详细信息
ISBN:
(纸本)9788392263241
A designing of digital circuits is based on hardware description languages (HDLs). The dominating standard of HDLs is the VEDL, which basing on a digital circuit structure, a net-list, and an event-driven algorithm. In the publication is presented a description of the digital circuit built in an object-oriented programming. The base assumptions of a description are a digital circuit diagram and an event-driven algorithm. The descriptions are expressed in terms of the C#. A first part of the method based on a conception, which is widely published. A second part of the method is our conception of implementing an event-driven algorithm, using "a reformulating"..
Assigning ontological categories to OO programming abstractions is a task of ontological interpretation. In this paper, we describe an approach for ontological interpretation in which the task of interpretation is see...
详细信息
ISBN:
(纸本)9781467357395
Assigning ontological categories to OO programming abstractions is a task of ontological interpretation. In this paper, we describe an approach for ontological interpretation in which the task of interpretation is seen as a classification problem. The task of interpretation is performed in two stages, namely syntactic feature identification and ontological categorization. An analysis technique called Ontological Cards (Onto-card) is developed to identify ontologically relevant syntactic features from programs. The ontological card includes a set of syntactic and relational features describing the nature of program elements. A rule-based classifier system is implemented to classify programming abstractions into ontological categories. The approach is assessed with the help of two different Java-based applications. The descriptions make use of examples outlining issues and challenges involved in the approach.
Large Language Models (I have emerged as promising tools to assist students while solving programming assignments. However, object-oriented programming (OOP), with its inherent complexity involving the identification ...
详细信息
ISBN:
(纸本)9798400704987
Large Language Models (I have emerged as promising tools to assist students while solving programming assignments. However, object-oriented programming (OOP), with its inherent complexity involving the identification of entities, relationships, and responsibilities, is not yet mastered by these tools. Contrary to introductory programming exercises, there exists a research gap with regard to the behavior of LLMs in OOP contexts. In this study, we experimented with three prominent LLMs - GPT-3.5, GPT-4, and Bard - to solve real-world OOP exercises used in educational settings, subsequently validating their solutions using an Automatic Assessment Tool (AAT). The findings revealed that while the models frequently achieved mostly working solutions to the exercises, they often overlooked the best practices of OOP. GPT-4 stood out as the most proficient, followed by GPT-3.5, with Bard trailing last. We advocate for a renewed emphasis on code quality when employing these models and explore the potential of pairing LLMs with AAT's in pedagogical settings. In conclusion, while GPT-4 showcases promise, the deployment of these models in OOP education still mandates supervision.
This Research to Practice Full Paper presents a study regarding applying cyclic learning strategy with a special focus on object-oriented programming and states our findings, emphasizing both the advantages and disadv...
详细信息
ISBN:
(纸本)9781728117461
This Research to Practice Full Paper presents a study regarding applying cyclic learning strategy with a special focus on object-oriented programming and states our findings, emphasizing both the advantages and disadvantages. The research considers as a use-case the teaching activity in the Faculty of Computer Science of BabeBolyai University. The analysis takes into consideration several disciplines that compass a set of interconnected teaching objectives and aspects: (1) fundamental concepts and mechanisms (F) defined by object-orientated programming paradigm, (2) design principles, heuristics, and rules (D) that act as strategies implied in object -oriented design, and (3) functional and nonfunctional requirements related to software architecture (A). The study is directed by a statistical analysis of the grades obtained by the students at different courses that treat the (F, D, A) aspects, and also the results obtained at the Bachelor's final exam that evaluates the level of the acquired fundamental knowledge. Their evolution and correlation during a period of several years are analyzed, and together with an analysis of the degree of absorption of the students in the IT industry form the base of the study.
Understanding object-oriented programming (OOP) and its underlying concepts is essential in any computing-related field. However, learning the OOP concepts is often daunting for novice programmers due to their abstrac...
详细信息
ISBN:
(纸本)9781450362597
Understanding object-oriented programming (OOP) and its underlying concepts is essential in any computing-related field. However, learning the OOP concepts is often daunting for novice programmers due to their abstract nature. This paper presents a systematic approach of creating interactive learning activities for OOP concepts aligned with fundamental learning outcomes and misconceptions. The strategy combines analogies and visualisation to deliver concepts without students feeling distracted or overwhelmed by the technicalities inherent in textual code. A virtual reality implementation was developed, to help promote immersion and engagement with the abstract OOP concepts. The app was evaluated with CS2 students (n= 17), with the results showing a significant improvement in students' ability to visualise the targeted OOP concepts. Students responded positively and agreed it was an effective learning tool to complement lectures.
The advantages of using method Monte Carlo for simulation of radiative transfer in complex turbid random media like biological tissues are well recognized. However, in most practical applications the wave nature of pr...
详细信息
ISBN:
(纸本)9780819484444
The advantages of using method Monte Carlo for simulation of radiative transfer in complex turbid random media like biological tissues are well recognized. However, in most practical applications the wave nature of probing optical radiation is ignored, and its propagation is considered in terms of neutral particles, so-called photon packets. Nevertheless, when the interference, polarization or coherent effects of scattering of optical/laser radiation constitute the fundamental principle of a particular optical technique the wave nature of optical radiation must be considered and taken into account. In current report we present the state-of-the art and the development prospects for application of method Monte Carlo to the point of taking into account the wave properties of optical radiation. We also introduce a novel object-oriented programming (OOP) paradigm accelerated by Graphics Processing Unit that provides an opportunity to escalate the performance of standard Monte Carlo simulation up to 100 times.
Automatic programming is a concept which until today has not been fully achieved using evolutionary algorithms. Despite much research in this field, a lot of the concepts remain unexplored. The current study is part o...
详细信息
ISBN:
(纸本)9783319274003;9783319273990
Automatic programming is a concept which until today has not been fully achieved using evolutionary algorithms. Despite much research in this field, a lot of the concepts remain unexplored. The current study is part of ongoing research aimed at using evolutionary algorithms for automatic programming. The performance of two evolutionary algorithms, namely, genetic programming and grammatical evolution are compared for automatic object-oriented programming. Genetic programming is an evolutionary algorithm which searches a program space for a solution program. A program generated by genetic programming is executed to yield a solution to the problem at hand. Grammatical evolution is a variation of genetic programming which adopts a genotype -phenotype distinction and uses grammars to map from a genotypic space to a phenotypic (program) space. The study implements and tests the abilities of these approaches as well as a further variation of genetic programming, namely, object-oriented genetic programming, for automatic object-oriented programming. The application domain used to evaluate these approaches is the generation of abstract data types, specifically the class for the list data structure. The study also compares the performance of the algorithms when human programmer problem domain knowledge is incorporated and when such knowledge is not incorporated. The results show that grammatical evolution performs better than genetic programming and object-oriented genetic programming, with object-oriented genetic programming outperforming genetic programming. Future work will focus on evolution of programs that use the evolved classes.
暂无评论