Object-oriented type inference
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Creating abstract superclasses by refactoring
CSC '93 Proceedings of the 1993 ACM conference on Computer science
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Object-oriented metrics: measures of complexity
Object-oriented metrics: measures of complexity
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Class hierarchy specialization
Acta Informatica
Understanding class hierarchies using concept analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Practical extraction techniques for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Precise Constraint-Based Type Inference for Java
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Refactoring for generalization using type constraints
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Analyzing the use of interfaces in large OO projects
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Towards the systematic use of interfaces in JAVA programming
PPPJ '03 Proceedings of the 2nd international conference on Principles and practice of programming in Java
Interface utilization in the Java Development Kit
Proceedings of the 2004 ACM symposium on Applied computing
Refactoring class hierarchies with KABA
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Bidirectional data flow analysis for type inferencing
Computer Languages, Systems and Structures
Cost and benefit of rigorous decoupling with context-specific interfaces
PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
Refactoring for Parameterizing Java Classes
ICSE '07 Proceedings of the 29th international conference on Software Engineering
FASE'07 Proceedings of the 10th international conference on Fundamental approaches to software engineering
Recommending rename refactorings
Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering
Refactoring using type constraints
ACM Transactions on Programming Languages and Systems (TOPLAS)
On the automated modularisation of java programs using service locators
SC'12 Proceedings of the 11th international conference on Software Composition
Refactoring using type constraints
SAS'07 Proceedings of the 14th international conference on Static Analysis
Hi-index | 0.00 |
Using small, context-specific interfaces in variable declarations serves the decoupling of classes and increases a program's flexibility. To minimize its interface, a thorough analysis of the protocol needed from a variable is required. Currently available refactorings for the extraction of interfaces leave the programmer alone with the decision which methods to include or, more problematically, which to omit: they let him choose manually from the protocol of an existing type, and only then offer to use the new interface where (if) possible. To aid the programmer in defining a new interface, we have developed a new refactoring that infers it from a variable's declaration and automatically inserts it into the code.