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.
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"..
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.
Various methods and tools have been proposed to overcome the learning obstacles for object-oriented programming (OOP). However, it remains difficult especially for novice learners. The problem may be not only adopting...
详细信息
Various methods and tools have been proposed to overcome the learning obstacles for object-oriented programming (OOP). However, it remains difficult especially for novice learners. The problem may be not only adopting an instructional method, but also an Integrated Development Environment (IDE). Learners employ IDEs as a means to solve programming problems and an inappropriate IDE may impose additional cognitive load. Therefore, this quasi-experimental study tried to identify the cognitive effects of a more visually supportive and functional IDE. It was explored by the functional near-infrared spectroscopy method, which is a relatively new physiological tool for measuring cognitive load. Novice students participated in the study in two experimental groups and they were required to write a Java application using two different IDEs. The results indicated a significant difference between the experimental groups and the findings are discussed in view of the principles of Cognitive Load Theory and Multimedia Learning.
This paper presents an observational study that takes an initial step towards answering the question of how the selection of a programming paradigm affects the maintainability of a software system. Answers to this que...
详细信息
ISBN:
(纸本)9781728168074
This paper presents an observational study that takes an initial step towards answering the question of how the selection of a programming paradigm affects the maintainability of a software system. Answers to this question are important because they can provide insight on how the maintainability characteristics of different programming paradigms could be leveraged to improve software-engineering education. The observational study compares developers' effectiveness and speed performing pre-determined maintenance tasks on two equivalent variations of a web-based application: one based on Procedural programming and one based on object-oriented programming. Presented within this paper are the study's design, metrics measuring maintenance effectiveness and speed, and a statistical analysis of the results, which provides evidence that the maintainability characteristics of the two paradigms are different within the context of this research. In addition, as an observational study, some of its important contributions are lessons learned about the experiment design process and ideas for new hypotheses. These are presented in preparation for a future, broader research, and larger-scale experiment. Finally, we discuss some forward-thinking ideas about how differences in the maintenance characteristics of programming paradigms may influence on software-engineering education.
The teaching of computer programming has been a constant challenge for teachers at the university level, either due to the complexity at the taxonomic level that it represents or the abilities of each student about th...
详细信息
ISBN:
(纸本)9781665409568
The teaching of computer programming has been a constant challenge for teachers at the university level, either due to the complexity at the taxonomic level that it represents or the abilities of each student about the generation of algorithmic solutions. Adaptive learning has demonstrated over time the ability to improve effective learning indicators in students, working directly with stimuli, changes in strategies, or content delivered. The platforms that have implemented adaptability are diverse and at different educational levels. This study presents the effect of reinforcing Java programming for university students through an adaptive learning platform. The results, through the experimental study, demonstrated the effectiveness of integrating adaptivity to a software tool.
暂无评论