Publication:
Diseño e implementación de un precompilador para permitir herencia múltiple en Java

Loading...
Thumbnail Image
Identifiers
Publication date
2016-01
Defense date
2016-01-20
Tutors
Journal Title
Journal ISSN
Volume Title
Publisher
Impact
Google Scholar
Export
Research Projects
Organizational Units
Journal Issue
Abstract
La herencia es algo básico en todo desarrollo tecnológico. Sería difícil, por no decir imposible, imaginar un lenguaje orientado a objetos que no la contemplase. Del mismo modo, la herencia múltiple o multiherencia (herencia donde en lugar de un padre existen dos padres o más) es extremadamente útil, pero no está soportado por todos los lenguajes de programación, debido a ciertas dificultades tecnológicas. Java es uno de esos lenguajes. La idea del proyecto es hacer, de la forma más sencilla posible para el programador, una adaptación del código Java que permita diseñar e implementar el código como si soportase la herencia múltiple, eliminando además las dificultades tecnológicas que esto atañe. Esta aplicación cambiará el código fuente de forma automática y transparente para el programador, de tal manera que se consiga algo tan similar a la herencia múltiple que nos permita utilizarla en diseños y desarrollos. Java solventa el inconveniente de no tener herencia múltiple a través del uso de interfaces. Combinando la herencia simple y las interfaces se puede uno acercar mucho a la herencia múltiple. Lo que ocurre, es que esto, de cara al usuario que quiere diseñar una aplicación es más complejo, sobre todo conceptualmente, y puede dar lugar a que no se haga bien, o simplemente que no se intente. La idea de este proyecto es justamente esa, utilizando la potencia de las interfaces que nos permite Java, permitir al usuario diseñar la aplicación usando herencia múltiple y, con este precompilador, pasar dicho diseño de multiherencia a uno compuesto por una herencia simple y un conjunto de interfaces, tal y cómo las buenas prácticas de Java nos instaría a usar.
Inheritance is basic to all technological development. It would be difficult, if not impossible, to imagine an object-oriented language that does not allow it. Similarly, multiple inheritance or multi-inheritance (inheritance where instead of a parent are two or more) is extremely useful, but is not supported by all programming languages because of certain technological difficulties. Java is one of those languages. The project idea is to, in the simplest possible way for the programmer, an adaptation of the Java code that allows design and implement the code as allow multiple inheritance, while eliminating the technological difficulties this regard. This application will change the source code automatically and without effort to the programmer, so that they get something so similar to multiple inheritance to allow us to use it in design and development. Java solves the inconvenience of not having multiple inheritance using interfaces. Combining single inheritance and interfaces can you get very close to multiple inheritance. What happens is that for the user who wants to design an application this solution is more complex, especially conceptually, and can lead to not do well, or simply not try. The idea of the project is to use the interfaces that Java let us to allow at the user to design the application using multiple inheritance. With this precompiler we will be able to transform a multi inheritance design to other based in simple inheritance and a set of interfaces, as Java good practices says us that it must be done.
Description
Keywords
Java (Lenguaje de programación), Compiladores, Herencia
Bibliographic citation