Spelling suggestions: "subject:"objectoriented programming."" "subject:"object_oriented programming.""
361 |
[en] AN OBJECT ORIENTED CLASS STRUCTURE FOR STEEL PROFILES DESIGN VERIFICATION IN MATLAB / [pt] UMA ESTRUTURA DE CLASSES ORIENTADA A OBJETOS PARA VERIFICAÇÃO DE PROJETO DE PERFIS METÁLICOS EM MATLABRONALD JUNIOR LEMOS ASSUNCAO 28 April 2022 (has links)
[pt] Esta dissertação descreve a extensão de uma ferramenta educacional
(LESM – Linear Elements Structure Model), desenvolvida na PUC-Rio
e implementada no ambiente do MATLAB, para dimensionamento de
pórticos metálicos bidimensionais seguindo os preceitos da norma brasileira
NBR8800:2008. Todas as etapas de desenvolvimento são descritas detalhadamente, trazendo também referências à norma utilizada, visto que a
funcionalidade deve atender rigorosamente a seus preceitos. As etapas adotadas
são: levantamento de requisitos da funcionalidade, levantamento de requisitos
do software, análise, projeto do programa, codificação, teste e operação. Vale
ressaltar que todos os desdobramentos das etapas são baseados na linguagem
orientada a objetos MATLAB, na qual o software LESM foi desenvolvido.
As etapas de desenvolvimento são elucidadas através de esquemas UML
(Linguagem de Modelagem Unificada) para que haja maior entendimento dos
relacionamentos organizacionais e processuais utilizados. Dessa maneira podem
ser traçados comparativos das novas estruturas de dados implementadas com
as anteriormente disponíveis na documentação do LESM. Além disso, apesar
da linguagem predominante utilizada no desenvolvimento ser a linguagem do
MATLAB, há menções relacionais à JavaScript, utilizado para elaborar alguns
recursos da nova funcionalidade. Por fim, após esclarecer todas as nuances
do processo de desenvolvimento, são modelados exemplos práticos utilizando
o LESM com o intuito de demonstrar a nova funcionalidade adicionada e a
acurácia de seus resultados. / [en] This document describes the extension of an educational tool (LESM –
Linear Elements Structure Model), developed on PUC-Rio and implemented in
the MATLAB environment for metallic dimensioning of 2D frames, following
the precepts of the Brazilian dimensioning standard, NBR8800:2008. The
entire development steps are described in details, along with references of
the standard used, since the new feature must strictly attend its precepts.
The order of the adopted steps is: feature requirements gathering, software
requirements gathering, analysis, program project, coding, test and operation.
It is worth mentioning that all of the steps are based on the objects
oriented language MATLAB, which the software LESM was developed.
The previously mentioned phases are elucidated through UMLs schemes
for a better understanding of the organizational relationships and processes
used. Thus, comparatives of the implemented new data structure with the
previously available in LESM documentation, disposed in UML diagrams,
can be traced. Furthermore, despite the predominant language used in the
development is MATLAB, will be also mentions to JavaScript, used to
elaborate some resources of the new feature. Finally, after clarifying all aspects
of the development process, practical examples using LESM are modeled to
demonstrate the new feature along with the results accuracy.
|
362 |
The use of ALICE, a visual environment for teaching and learning object-oriented programmingDwarika, Jeraline 23 April 2014 (has links)
University students learning object-oriented programming (OOP) encounter many complexities. This study undertook empirical research aimed at analysing learners’ interactions with the Alice visual programming environment, which seeks to engage and motivate learners to grasp concepts of OOP, whilst creating animated movies and video games.
A mixed-methods approach was employed, using questionnaire surveys and interviews to investigate learners’ experiences with Alice and their understanding of OOP. Findings indicated that learners lacked problem-solving abilities; were unable to grasp programming concepts on an abstract level and spent insufficient time practicing programming exercises. Alice proved to be an effective tool in helping to address these challenges and in improving learners’ grasp of OOP. Learners found Alice to have good usability.
Furthermore, test and exam results revealed a statistically significant difference between performances of learners who had been taught Alice in comparison to similar learners who were not exposed to the Alice intervention. / Computing / Information Systems / M. Sc. (Information systems)
|
363 |
The use of ALICE, a visual environment for teaching and learning object-oriented programmingDwarika, Jeraline 23 April 2014 (has links)
University students learning object-oriented programming (OOP) encounter many complexities. This study undertook empirical research aimed at analysing learners’ interactions with the Alice visual programming environment, which seeks to engage and motivate learners to grasp concepts of OOP, whilst creating animated movies and video games.
A mixed-methods approach was employed, using questionnaire surveys and interviews to investigate learners’ experiences with Alice and their understanding of OOP. Findings indicated that learners lacked problem-solving abilities; were unable to grasp programming concepts on an abstract level and spent insufficient time practicing programming exercises. Alice proved to be an effective tool in helping to address these challenges and in improving learners’ grasp of OOP. Learners found Alice to have good usability.
Furthermore, test and exam results revealed a statistically significant difference between performances of learners who had been taught Alice in comparison to similar learners who were not exposed to the Alice intervention. / Computing / Information Systems / M. Sc. (Information systems)
|
364 |
Using an e-learning tool to overcome difficulties in learning object-oriented programmingEssa, Saadia Fahim 03 1900 (has links)
This study was motivated by the need to overcome the pedagogical hindrances experienced by introductory object-oriented programming students in order to address the high attrition rate evident among novice programmers in distance education.
The initial phase of the research process involved exploring a variety of alternative visual programming environments for novices. Thereafter the selection process detailed several requirements that would define the ideal choice of the most appropriate tool. An educational tool Raptor was selected. Lastly, the core focus of this mixed method research was to evaluate undergraduate UNISA students’ perceptions of the Raptor e-learning tools with respect to the perceived effectiveness in enhancing novices’ learning experience, in an attempt to lower the barriers to object-oriented programming.
Students’ perceptions collectively of the Raptor visual tool were positive and despite the fact that the sample size was too small to achieve statistical significance, these quantitative and qualitative results provide the practical basis for implementing Raptor in future. Thus providing learning opportunities suited to learner interests and needs, can lead to an enormous potential to stimulate individuals’ motivation and development in creating a more positive learning experience to overcome barriers in
programming and enhance concept understanding to address the diverse needs of students in distance education that could lead to a reduced dropout rate. / Computing / M. Sc. (Computing)
|
365 |
Efficient object versioning for object-oriented languages from model to language integrationPluquet, Frédéric 03 July 2012 (has links)
Tout le monde a déjà rencontré la fonctionnalité ``Undo/Redo' qui permet de se balader dans les versions précédentes d'un document. Bien que le versioning -- sauver et parcourir plusieurs versions d'entités données -- est nécessaire pour beaucoup d'applications, il est difficile de l'implémenter facilement et efficacement en temps et en espace utilisés. Dans cette thèse, nous présentons un système de versioning efficace et expressif pour les langages orientés objet. <p><p>Nous commencons par développer un modèle qui permet au développeur de sélectionner avec précision les parties intéressantes de son système qui seront sauvegardées à des moments clefs. Ce modèle permet de parcourir facilement les différentes versions enregistrées et de faire cohabiter aisément les parties versionnées avec les parties non sélectionnées par le développeur. Ce modèle est de plus compatible avec trois types de versioning (linear, backtracking et branching versioning) qui permettent des opérations diverses sur la ligne du temps, comme supprimer toutes les versions après une version donnée ou créer une nouvelle branche à partir d'une ancienne version. <p><p>Ensuite nous développons les structures efficaces en temps et en espace qui implémentent ce modèle dans un monde réel. Basées sur les travaux de Driscoll et al. elles sont adaptées aux spécificités de chaque type de versioning. <p><p>Nous montrons ensuite comment ce système peut être intégré concrètement dans un langage orienté object. Plus précisément, nous montrons comment notre système peut être intégré de façon transparente pour le développeur grâce à des outils tels que les aspects ou la transformation de bytecodes. <p><p>Pour valider nos propos, nous avons implémenté notre système dans les langages de programmation Smalltalk et Java. Nous montrons des applications réelles qui l'utilisent, telles que les post-conditions à états et le problème du planar point location. <p><p>Nous terminons cette thèse par évaluer l'efficacité de notre implémentation en effectuant des benchmarks détaillés en Smalltalk et en Java. Nous avons notamment étudié l'espace pris par nos structures données et le temps d'éxecution de chaque opération de versioning. / Doctorat en Sciences / info:eu-repo/semantics/nonPublished
|
366 |
Graduate Advisor SystemPallow, Richard Brian 01 January 2005 (has links)
The purpose of this project is to update the architecture and design of the California State University San Bernardino Graduate Advisor System. This system allows potential students into the Master of Science degree program in Computer Science to complete their application online.
|
367 |
Towards the formalisation of use case mapsDongmo, Cyrille 11 1900 (has links)
Formal specification of software systems has been very promising. Critics against the end
results of formal methods, that is, producing quality software products, is certainly rare. Instead,
reasons have been formulated to justify why the adoption of the technique in industry
remains limited. Some of the reasons are:
• Steap learning curve; formal techniques are said to be hard to use.
• Lack of a step-by-step construction mechanism and poor guidance.
• Difficulty to integrate the technique into the existing software processes.
Z is, arguably, one of the successful formal specification techniques that was extended to
Object-Z to accommodate object-orientation. The Z notation is based on first-order logic
and a strongly typed fragment of Zermelo-Fraenkel set theory. Some attempts have been
made to couple Z with semi-formal notations such as UML. However, the case of coupling
Object-Z (and also Z) and the Use Case Maps (UCMs) notation is still to be explored.
A Use Case Map (UCM) is a scenario-based visual notation facilitating the requirements
definition of complex systems. A UCM may be generated either from a set of informal
requirements, or from use cases normally expressed in natural language. UCMs have the
potential to bring more clarity into the functional description of a system. It may furthermore
eliminate possible errors in the user requirements. But UCMs are not suitable to reason
formally about system behaviour.
In this dissertation, we aim to demonstrate that a UCM can be transformed into Z and
Object-Z, by providing a transformation framework. Through a case study, the impact of
using UCM as an intermediate step in the process of producing a Z and Object-Z specification
is explored. The aim is to improve on the constructivity of Z and Object-Z, provide more
guidance, and address the issue of integrating them into the existing Software Requirements
engineering process. / Computer Science / M. Sc. (Computer Science)
|
368 |
Sur l’utilisation du langage de programmation Scheme pour le développement de jeux vidéoSt-Hilaire, David 10 1900 (has links)
Ce mémoire vise à recenser les avantages et les inconvénients de
l'utilisation du langage de programmation fonctionnel dynamique
Scheme pour le développement de jeux vidéo. Pour ce faire, la
méthode utilisée est d'abord basée sur une approche plus théorique. En
effet, une étude des besoins au niveau de la programmation exprimés
par ce type de développement, ainsi qu'une description détaillant les
fonctionnalités du langage Scheme pertinentes au développement de
jeux vidéo sont données afin de bien mettre en contexte le sujet. Par
la suite, une approche pratique est utilisée en effectuant le
développement de deux jeux vidéo de complexités croissantes: Space Invaders et
Lode Runner. Le développement de ces jeux vidéo a mené à l'extension du
langage Scheme par plusieurs langages spécifiques au domaine et
bibliothèques, dont notamment un système de programmation orienté
objets et un système de coroutines. L'expérience acquise par le
développement de ces jeux est finalement comparée à celle d'autres
développeurs de jeux vidéo de l'industrie qui ont utilisé Scheme
pour la création de titres commerciaux. En résumé, l'utilisation de ce
langage a permis d'atteindre un haut niveau d'abstraction favorisant
la modularité des jeux développés sans affecter les performances de
ces derniers. / This master's thesis aims at pinpointing the pros and cons of using
the dynamic functionnal language Scheme for developing video
games. The method used is first based on a theoretical
approach. Indeed, the specific requirements for video game programming
and a detailed description of relevant Scheme features are presented.
Then, a practical approach is taken by presenting two video games
developed using the Scheme language: Space Invaders and Lode Runner. Their
development resulted in the creation of various domain-specific
languages and libraries, such as an objec- oriented system and a
coroutine system. Each of these are presented separately in their respective
chapter. Finally, the experience achieved in this process is compared
to the experience acquired by some video game companies that also used
Scheme for the developpement of their titles. The use of
Scheme allowed us to perform various high-level abstractions that
improved the modularity of the video games developed, without
affecting their performance.
|
369 |
Sur une approche à objets généralisée pour la mécanique non linéaireSaad, Roy 05 December 2011 (has links)
Les problèmes qui se posent aujourd'hui en mécanique numérique et domaines connexes sont complexes, et impliquent de plus en plus souvent plusieurs physiques à différentes échelles de temps et d’espace. Leur traitement numérique est en général long et difficile, d’où l’intérêt d’avoir accès à des méthodes et outils facilitant l’intégration de nouveaux modèles physiques dans des outils de simulation. Ce travail se pose dans la problématique du développement de codes de calcul numérique. L’approche proposée couvre la démarche de développement du modèle numérique depuis la formulation variationnelle jusqu’à l’outil de simulation. L’approche est appliquée à la méthode des éléments finis. Nous avons développé des concepts génériques afin d’automatiser la méthode des éléments finis. Nous nous sommes appuyés sur l'analyse tensorielle dans le contexte de la méthode des éléments finis. Le formalisme mathématique est basé sur l’algèbre tensorielle appliquée à la description de la discrétisation des formes variationnelles. Ce caractère générique est conservé grâce à l'approche logicielle choisie pour l’implantation; orientée objet en Java. Nous proposons donc un cadre orienté objet, basé sur des concepts symboliques, capables de gérer de manière symbolique les développements assistés des contributions élémentaires pour la méthode éléments finis. Ces contributions sont ensuite automatiquement programmées dans un code de calcul. L'intérêt de cette approche est la généricité de la description qui peut être étendue naturellement à tout autre modèle de discrétisation (spatiale ou temporelle). Dans ce travail, les concepts sont validés dans le cadre de problèmes linéaires simples (élasticité, chaleur,...), dans le cadre du traitement de formulations variationnelles mixtes (thermomécanique, Navier-Stokes,…) et dans un cadre Lagrangien (élasticité en grandes transformations, hyperélasticité,…). / The problems occurring today in computational mechanics and related domains are complex, and may involve several physics at different time and space scales. The numerical treatment of complex problems is in general tough and time consuming. In this context, the interest to develop methods and tools to accelerate the integration of new formulations into simulation tools is obvious. This work arises on the issue of the development of computational tool. The proposed approach covers the development process of numerical models from the variational statement to the simulation tool. The approach is applied to the finite element method. We have developed generic concepts to automate the development of the finite element method. To achieve this goal, we relied on tensor analysis applied in the context of the finite element method. The mathematical formalism is based on the tensor algebra to describe the discretization of a variational formulation. The generic character of the approach is preserved through the object-oriented approach in Java. We propose a framework based on object-oriented concepts capable of handling symbolic developments of elemental contributions for finite element codes. The advantage of this approach is the generic description that can be extended naturally to any discretization model in space or time. This concept is fully validated for simple linear problems (elasticity, heat convection, ...), for the treatment of mixed variational formulations (thermo-mechanical, Navier-Stokes for incompressible flows...) and Lagrangian frameworks (elasticity in larges transformations, hyperelasticity, ...).
|
370 |
On the Generalized Finite Element Method in nonlinear solid mechanics analyses / Sobre o método dos Elementos Finitos Generalizados em análises da mecânica dos sólidos não-linearPiedade Neto, Dorival 29 November 2013 (has links)
The Generalized Finite Element Method (GFEM) is a numerical method based on the Partition of Unity (PU) concept and inspired on both the Partition of Unity Method (PUM) and the hp-Cloud method. According to the GFEM, the PU is provided by first-degree Lagragian interpolation functions, defined over a mesh of elements similar to the Finite Element Method (FEM) meshes. In fact, the GFEM can be considered an extension of the FEM to which enrichment functions can be applied in specific regions of the problem domain to improve the solution. This technique has been successfully employed to solve problems presenting discontinuities and singularities, like those that arise in Fracture Mechanics. However, most publications on the method are related to linear analyses. The present thesis is a contribution to the few studies of nonlinear analyses of Solid Mechanics by means of the GFEM. One of its main topics is the derivation of a segment-to-segment generalized contact element based on the mortar method. Material and kinematic nonlinear phenomena are also considered in the numerical models. An Object-Oriented design was developed for the implementation of a GFEM nonlinear analyses framework written in Python programming language. The results validated the formulation and demonstrate the gains and possible drawbacks observed for the GFEM nonlinear approach. / O Método dos Elementos Finitos Generalizados (MEFG) é um método numérico baseado no conceito de partição da unidade (PU) e inspirado no Método da Partição da Unidade (MPU) e o método das Nuvens-hp. De acordo com o MEFG, a PU é obtida por meio de funções de interpolação Lagragianas de primeiro grau, definidas sobre uma rede de elementos similar àquela do Método dos Elementos Finitos (MEF). De fato, o MEFG pode ser considerado uma extensão do MEF para a qual se pode aplicar enriquecimentos em regiões específicas do domínio, buscando melhorias na solução. Esta técnica já foi aplicada com sucesso em problemas com descontinuidades e singularidades, como os originários da Mecânica da Fratura. Apesar disso, a maioria das publicações sobre o método está relacionada a análises lineares. A presente tese é uma contribuição aos poucos estudos relacionados a análises não-lineares de Mecânica dos Sólidos por meio do MEFG. Um de seus principais tópicos é o desenvolvimento de um elemento de contato generalizado do tipo segmento a segmento baseado no método mortar. Fenômenos não lineares devidos ao material e à cinemática também são considerados nos modelos numéricos. Um projeto de orientação a objetos para a implementação de uma plataforma de análises não-lineares foi desenvolvido, escrito em linguagem de programação Python. Os resultados validam a formulação e demonstram os ganhos e possíveis desvantagens da abordagem a problemas não lineares por meio do MEFG.
|
Page generated in 0.1 seconds