Designing Object Oriented Software Applications within the Context of Software Frameworks

Bibliographic Details
Main Author: Ali, Zoya
Language:English
Published: The Ohio State University / OhioLINK 2011
Subjects:
Online Access:http://rave.ohiolink.edu/etdc/view?acc_num=osu1316183692
id ndltd-OhioLink-oai-etd.ohiolink.edu-osu1316183692
record_format oai_dc
spelling ndltd-OhioLink-oai-etd.ohiolink.edu-osu13161836922021-08-03T06:03:47Z Designing Object Oriented Software Applications within the Context of Software Frameworks Ali, Zoya Computer Science Android J2EE Design Patterns Object-oriented software design and programming is an essential part of a computer science curriculum. The idea behind object-oriented design is that because programs are intended to solve problems in the real world, basing software components on real world entities will make the analysis and design of software easier. In the existing Computer Science (CS) curricula that we have examined, we have found that object-oriented concepts are taught with the intent of towards developing software directly using an object-oriented language – such as C++, Java, or C#. However, most software of any consequence is rarely developed directly using a programming language. Most current commercial software is developed using software frameworks, by extending and customizing the default, generic, functionality that frameworks provide. As a consequence, we have observed that novice software developers (such as fresh college graduates) who have been taught object-oriented design, are able to apply good design principles in theory, but rarely in professional practice, in which they are asked to design software intended to run inside a software framework, such as .NET, J2EE, or the Android SDK. In fact, we observe that even software developers, who are not novices, often abandon good design practices when developing software while using a framework, and tend to focus their entire energy on simply “making it work”.In this thesis we attempt to address the above problems. We provide a methodology to teach object-oriented design and implementation for frameworks. We have developed and illustrated this approach using examples drawn from real projects. We show how design patterns can serve as the bridge between the paradigms imposed by the framework and the ideal, unconstrained design of the system. We show through evaluation that the students have positive attitudes towards this methodology, and that designs that have been done by students using this methodology are better than those done without using the methodology. We also illustrate that the students begin to get useful insights about the framework itself. 2011-10-20 English text The Ohio State University / OhioLINK http://rave.ohiolink.edu/etdc/view?acc_num=osu1316183692 http://rave.ohiolink.edu/etdc/view?acc_num=osu1316183692 unrestricted This thesis or dissertation is protected by copyright: all rights reserved. It may not be copied or redistributed beyond the terms of applicable copyright laws.
collection NDLTD
language English
sources NDLTD
topic Computer Science
Android
J2EE
Design Patterns
spellingShingle Computer Science
Android
J2EE
Design Patterns
Ali, Zoya
Designing Object Oriented Software Applications within the Context of Software Frameworks
author Ali, Zoya
author_facet Ali, Zoya
author_sort Ali, Zoya
title Designing Object Oriented Software Applications within the Context of Software Frameworks
title_short Designing Object Oriented Software Applications within the Context of Software Frameworks
title_full Designing Object Oriented Software Applications within the Context of Software Frameworks
title_fullStr Designing Object Oriented Software Applications within the Context of Software Frameworks
title_full_unstemmed Designing Object Oriented Software Applications within the Context of Software Frameworks
title_sort designing object oriented software applications within the context of software frameworks
publisher The Ohio State University / OhioLINK
publishDate 2011
url http://rave.ohiolink.edu/etdc/view?acc_num=osu1316183692
work_keys_str_mv AT alizoya designingobjectorientedsoftwareapplicationswithinthecontextofsoftwareframeworks
_version_ 1719430260553940992