991 resultados para Software programming
Resumo:
In this session we build on inheritance and look at overriding methods and dynamic binding. Together these give us Polymorphism - the third pillar of Object Oriented Programming - and a very powerful feature that allows us to build methods that deal with superclasses, but whose calls get redirected when we pass in sub-classes.
Resumo:
In this session we look at the how to use noun verb parsing to try and identify the building blocks of a problem, so that we can start to create object oriented solutions. We also look at some of the challenges of software engineering, and the processes that software engineers use to meet them, and finally we take a look at some more Design Patterns that may help us reuse well known and effective solutions in our own designs.
Resumo:
This is the revision session for our Programming Principles course. We take a whistle-stop tour of the topics covered in the course, look at the three pillars of object oriented programming, and look ahead to the exam.
Resumo:
These are the resources used for the Computer Science course Programming Principles, designed to teach students the fundamentals of computer programming and object orientation via learning the Java language. We also touch on some software engineering basics, such as patterns, software design and testing. The course assumes no previous knowledge of programming, but there is a fairly steep learning curve, and students are encouraged to practice, practice, practice!
Resumo:
La entrada en vigor del Tratado de Libre Comercio (TLC) con Estados Unidos representa para los empresarios colombianos la oportunidad de acceder al mercado más importante del mundo en una posición privilegiada, bajo la cual resulta más sencilla la colocación de productos en este pais para aquellas compañías con vocación exportadora. Sin embargo, la alta competencia y desarrollo de este mercado hace necesario que las empresas cuenten con información apropiada que les permita enfocar sus esfuerzos en productos, segmentos de mercado o Estados específicos donde puedan alcanzar la sostenibilidad y perdurabilidad en el tiempo, así como el desarrollo de nuevas posibilidades comerciales. Para tal fin, realizamos este trabajo de investigación con el cual se busca generar una herramienta informática que contenga información respecto al flujo comercial de Colombia hacia cada uno de los 50 estados de EE.UU., detallando en cada caso las oportunidades comerciales identificadas por partidas arancelarias; y que servirá de apoyo para aquellos empresarios colombianos que buscan beneficiarse de la nueva coyuntura comercial que ofrece el acuerdo bilateral.
Resumo:
Pair Programming is a technique from the software development method eXtreme Programming (XP) whereby two programmers work closely together to develop a piece of software. A similar approach has been used to develop a set of Assessment Learning Objects (ALO). Three members of academic staff have developed a set of ALOs for a total of three different modules (two with overlapping content). In each case a pair programming approach was taken to the development of the ALO. In addition to demonstrating the efficiency of this approach in terms of staff time spent developing the ALOs, a statistical analysis of the outcomes for students who made use of the ALOs is used to demonstrate the effectiveness of the ALOs produced via this method.
Resumo:
A recent area for investigation into the development of adaptable robot control is the use of living neuronal networks to control a mobile robot. The so-called Animat paradigm comprises a neuronal network (the ‘brain’) connected to an external embodiment (in this case a mobile robot), facilitating potentially robust, adaptable robot control and increased understanding of neural processes. Sensory input from the robot is provided to the neuronal network via stimulation on a number of electrodes embedded in a specialist Petri dish (Multi Electrode Array (MEA)); accurate control of this stimulation is vital. We present software tools allowing precise, near real-time control of electrical stimulation on MEAs, with fast switching between electrodes and the application of custom stimulus waveforms. These Linux-based tools are compatible with the widely used MEABench data acquisition system. Benefits include rapid stimulus modulation in response to neuronal activity (closed loop) and batch processing of stimulation protocols.
Resumo:
In this paper we describe an exploratory assessment of the effect of aspect-oriented programming on software maintainability. An experiment was conducted in which 11 software professionals were asked to carry out maintenance tasks on one of two programs. The first program was written in Java and the second in AspectJ. Both programs implement a shopping system according to the same set of requirements. A number of statistical hypotheses were tested. The results did seem to suggest a slight advantage for the subjects using the object-oriented system since in general it took the subjects less time to answer the questions on this system. Also, both systems appeared to be equally difficult to modify. However, the results did not show a statistically significant influence of aspect-oriented programming at the 5% level. We are aware that the results of this single small study cannot be generalized. We conclude that more empirical research is necessary in this area to identify the benefits of aspect-oriented programming and we hope that this paper will encourage such research.
Resumo:
A virtual system that emulates an ARM-based processor machine has been created to replace a traditional hardware-based system for teaching assembly language. The proposed virtual system integrates, in a single environment, all the development tools necessary to deliver introductory or advanced courses on modern assembly language programming. The virtual system runs a Linux operating system in either a graphical or console mode on a Windows or Linux host machine. No software licenses or extra hardware are required to use the virtual system, thus students are free to carry their own ARM emulator with them on a USB memory stick. Institutions adopting this, or a similar virtual system, can also benefit by reducing capital investment in hardware-based development kits and enable distance learning courses.
Resumo:
The aim of task scheduling is to minimize the makespan of applications, exploiting the best possible way to use shared resources. Applications have requirements which call for customized environments for their execution. One way to provide such environments is to use virtualization on demand. This paper presents two schedulers based on integer linear programming which schedule virtual machines (VMs) in grid resources and tasks on these VMs. The schedulers differ from previous work by the joint scheduling of tasks and VMs and by considering the impact of the available bandwidth on the quality of the schedule. Experiments show the efficacy of the schedulers in scenarios with different network configurations.
Resumo:
Because of social exclusion in Brazil and having as focus the digital inclusion, was started in Federal University of Rio Grande do Norte a project that could talk, at the same time, about concepts of collaborative learning and educational robotics , focused on children digitally excluded. In this context was created a methodology that approaches many subjects as technological elements (e. g. informatics and robotics) and school subjects (e. g. Portuguese, Mathematics, Geography, History), contextualized in everyday situations. We observed educational concepts of collaborative learning and the development of capacities from those students, as group work, logical knowledge and learning ability. This paper proposes an educational software for robotics teaching called RoboEduc, created to be used by children digitally excluded from primary school. Its introduction prioritizes a friendly interface, that makes the concepts of robotics and programming easy and fun to be taught. With this new tool, users without informatics or robotics previous knowledge are able to control a robot, previously set with Lego kits, or even program it to carry some activities out. This paper provides the implementation of the second version of the software. This version presents the control of the robot already used. After were implemented the different levels of programming linked to the many learning levels of the users and their different interfaces and functions. Nowadays, has been implemented the third version, with the improvement of each one of the mentioned stages. In order to validate, prove and test the efficience of the developed methodology to the RoboEduc, were made experiments, through practice of robotics, with children for fourth and fifth grades of primary school at the City School Professor Ascendino de Almeida, in the suburb of Natal (west zone), Rio Grande do Norte. As a preliminary result of the current technology, we verified that the use of robots associated with a well elaborated software can be spread to users that know very little about the subject, without the necessity of previous advanced technology knowledges. Therefore, they showed to be accessible and efficient tools in the process of digital inclusion
Resumo:
Considering the transition from industrial society to information society, we realize that the digital training that is addressed is currently insufficient to navigate within a digitized reality. As proposed to minimize this problem, this paper assesses, validates and develops the software RoboEduc to work with educational robotics with the main differential programming of robotic devices in levels, considering the specifics of reality training . One of the emphases of this work isthe presentation of materials and procedures involving the development, analysis and evolution of this software. For validation of usability tests were performed, based on analysis of these tests was developed version 4.0 of RoboEduc
Resumo:
The Exception Handling (EH) is a widely used mechanism for building robust systems. In Software Product Line (SPL) context it is not different. As EH mechanisms are embedded in most of mainstream programming languages (like Java, C# and C++), we can find exception signalers and handlers spread over code assets associated to common and variable SPL features. When exception signalers and handlers are added to an SPL in an unplanned way, one of the possible consequences is the generation of faulty family instances (i.e., instances on which common or variable features signal exceptions that are mistakenly caught inside the system). In this context, some questions arise: How exceptions flow between the optional and alternative features an LPS? Aiming at providing answers to these questions, this master thesis conducted an exploratory study, based on code inspection and static analysis code, whose goal was to categorize the main ways which exceptions flow in LPSs. To support the study, we developed an static analysis tool called PLEA (Product Line Exception Analyzer) that calculates the exceptional flows of LPSs, and categorize these flows according to the features associated with handlers and signalers. Preliminary results showed that some types of exceptional flows have more potential to yield failures in exceptional behavior of SLPs
Resumo:
A non-linear model is presented which optimizes the lay-out, as well as the design and management of trickle irrigation systems, to achieve maximum net benefit. The model consists of an objective function that maximizes profit at the farm level, subject to appropriate geometric and hydraulic constraints. It can be applied to rectangular shaped fields, with uniform or zero slope. The software used is the Gams-Minos package. The basic inputs are the crop-water-production function, the cost function and cost of system components, and design variables. The main outputs are the annual net benefit and pipe diameters and lengths. To illustrate the capability of the model, a sensitivity analysis of the annual net benefit for a citrus field is evaluated with respect to irrigated area, ground slope, micro-sprinkler discharge and shape of the field. The sensitivity analysis suggests that the greatest benefit is obtained with the smallest microsprinkler discharge, the greatest area, a square field and zero ground slope. The costs of the investment and energy are the components of the objective function that had the greatest effect in the 120 situations evaluated. (C) 1996 Academic Press Limited