This paper examines conceptual models and their application to computational thinking. Computational thinking is a fundamental skill for everybody, not just for computer scientists. It has been promoted as skills that...
详细信息
FoCaLiZe is an object-orientedprogramming environment that combines specifications, programs and proofs in the same language. This paper describes how its features can be used to formally express specifications and t...
详细信息
Understanding of the object concept in object oriented programming (OOP) is obviously the center of the paradigm. Many educators and researchers explored students' difficulties and developed teaching materials tar...
详细信息
ISBN:
(纸本)9783030027506;9783030027490
Understanding of the object concept in object oriented programming (OOP) is obviously the center of the paradigm. Many educators and researchers explored students' difficulties and developed teaching materials targeted at this central concept. The paper presents a diagnostic tool we developed that aims to reveal students' perception and understanding about the current object, referring to it by the this annotation. Proper conceptualization of this indicates an understanding of objects in general, and involves aspects of memory allocation and programming approaches. The tool contains five questions, each devoted to covering different aspects in various frameworks, such as: using this in constructors, using this as a visible parameter, using this in inheritance, or making necessary changes in transition from a non-static context that uses this to a static context. The questionnaire combines closed questions with a request to explain the answers and open questions. In the paper we present the purpose of each question, and address what it comes to examine. The diagnostic tool is based on known educational approaches: Bloom's taxonomy, assessment for, as, and of learning and learning from errors. The tool can be used by educators at high school or academic levels as a teaching tool, as a base for discussions, or as an evaluation tool. A short report on the use of the tool with different populations, including high school teachers, is presented. The paper uses Java as the programming language, but it easily can be translated to other OOP languages.
Not only is understanding object-orientedprogramming fundamental for software engineering and computer science students, but it is also important for non-major programming courses. Combined with the burden of navigat...
详细信息
ISBN:
(纸本)9781538678978
Not only is understanding object-orientedprogramming fundamental for software engineering and computer science students, but it is also important for non-major programming courses. Combined with the burden of navigating a new programming language, students can struggle to understand the abstract concepts that underpin the paradigm. Existing learning solutions typically concentrate on a particular programming language. This paper proposes The Realization Framework for teaching abstract programming concepts without code. It employs analogies and visualization to translate the abstract concepts into forms students can understand. Theories on education and student interaction are incorporated to guide the learning process. INTERACTIVEOOP, a practical implementation of this framework, was evaluated by novice programmers in a non-major CS2 programming course. Students responded positively to the tool, noting that the interactive, visual presentation of abstract concepts helped them deepen their understanding.
Cyber Physical Systems (CPSs) are a category of systems of systems (SoS) that integrate physical and computational elements. Such systems have existed for some time, but rigorous design methodologies for CPSs are scar...
详细信息
Cyber Physical Systems (CPSs) are a category of systems of systems (SoS) that integrate physical and computational elements. Such systems have existed for some time, but rigorous design methodologies for CPSs are scarce. The typical design process of a CPS makes use of a large number of models to help answer the wide range of design questions that arise in development. In other words, the design process produces models that describe the various crucial aspects, scopes and system components on different level of detail and abstraction. These partial models can potentially be coupled for effective information propagation across the different modeling perspectives to increase design reliability. However, they are usually expressed in different specialized tools and programming languages as a consequence of the system heterogeneity and the preference of the numerous designers involved. This paper therefore proposes generating abstractions of detailed sub-models, and then embedding those abstractions into system-wide models formulated in other formalisms.
In Component-Based Software Engineering, the problem of selecting software components involve several risk factors. Traditionally, these have been identified and mitigated using software project management techniques....
详细信息
ISBN:
(纸本)9781728131863
In Component-Based Software Engineering, the problem of selecting software components involve several risk factors. Traditionally, these have been identified and mitigated using software project management techniques. However, the new demand for intelligent components has added complexity to the process. Despite the success and technological advances, its development in an environment ready for production faces many challenges. There are numbers of technical issues that limit their adoption and selection, due to the introduction of new risk factors, different from traditional ones. Thus, our goal is to formulate a technique to minimize the risk in the intelligent component selection process. To achieve this goal, first, we review the literature to Figure out how software project management takes care of the risk and to identify and classify the risks factor associated with intelligent software components. Second, we formulate the component selection problem as a search based optimization problem. And Third, we illustrate our proposal by presenting an example in the context of an air pollution forecasting component. As a result, we were able to: (1) identify a lack of useful tools to manage the risk factor effectively in a software project; (2) we classify intelligent component associated risk; and (3) we introduce a risk management technique that supports the component selection process by maximizing requirement accomplishment, that is, minimizing the risk of the provision of the functionalities that satisfy the requirements. Overall, our work is an initial step in using search-based optimization in risk management to the component selection process.
SIMD (Single Instruction, Multiple Data) instruction sets are ubiquitous on modern hardware, but rarely used in software projects. A major reason for this is that efficient SIMD code requires data to be laid out in me...
详细信息
ISBN:
(纸本)9781450358040
SIMD (Single Instruction, Multiple Data) instruction sets are ubiquitous on modern hardware, but rarely used in software projects. A major reason for this is that efficient SIMD code requires data to be laid out in memory in an unconventional manner, forcing developers to explicitly refactor their code and data structures in order to make use of SIMD. In previous work, we proposed SHAPES, an abstract layout specification for enabling memory optimisations for managed, object-oriented languages. In this paper, we explain how, by extending SHAPES with well-known constructs from the literature, which are not specific to SIMD, we can extend SHAPES to compile programs to use SIMD instructions. The resulting language (sketch) seems able to exploit SIMD capabilities without sacrificing ease of development.
Exploit the features of TypeScript to easily create your very own web applications Key Features Develop modular, scalable, maintainable, and adaptable web applications by taking advantage of TypeScript Walk through th...
详细信息
ISBN:
(数字)9781788396608
ISBN:
(纸本)9781788391474
Exploit the features of TypeScript to easily create your very own web applications Key Features Develop modular, scalable, maintainable, and adaptable web applications by taking advantage of TypeScript Walk through the fundamentals of TypeScript with the help of practical examples Enhance your web development skills using TypeScript 2.x Book Description TypeScript is an open source and cross-platform statically typed superset of JavaScript that compiles to plain JavaScript and runs in any browser or host. This book is a step-by-step guide that will take you through the use and benefits of TypeScript with the help of practical examples. You will start off by understanding the basics as well as the new features of TypeScript 2.x. Then, you will learn how to work with functions and asynchronous programming APIs. You will continue by learning how to resolve runtime issues and how to implement TypeScript applications using the object-orientedprogramming (OOP) and functional programming (FP) paradigms. Later, you will automate your development workflow with the help of tools such as Webpack. Towards the end of this book, you will delve into some real-world scenarios by implementing some full-stack TypeScript applications with ***, React and Angular as well as how to optimize and test them. Finally, you will be introduced to the internal APIs of the TypeScript compiler, and you will learn how to create custom code analysis tools. What you will learn Understand TypeScript in depth, including its runtime and advanced type system features Master the core principles of the object-orientedprogramming and functional programming paradigms with TypeScript Save time using automation tools such as Gulp, Webpack, ts-node, and npm scripts Develop robust, modular, scalable, maintainable, and adaptable applications with testing frameworks such as Mocha, Chai, and *** Put your TypeScript skills to practice by developing full-stack web applications with ***, React and Angul
In order to solve the problem of modeling, deduction and measurement of operational concepts, a method of modeling and measurement of operational concepts based on Joint Mission Thread (JMT) and Activity-Based Method ...
详细信息
ISBN:
(数字)9781728161068
ISBN:
(纸本)9781728161075
In order to solve the problem of modeling, deduction and measurement of operational concepts, a method of modeling and measurement of operational concepts based on Joint Mission Thread (JMT) and Activity-Based Method (ABM) is proposed. Combining the actual situation of our country and its own characteristics, according to the characteristics of ABM and JMT, the operational concepts are modeled. Through model deduction based on OPM (object-Process Methodology), the function and logic of the operational concepts are tested. Combining with JMT, the operational concepts are decomposed into indicators to realize the measurability of the operational concepts. This method can provide reference for the normative description, modeling, testing and index decomposition of operational concepts.
暂无评论