2007 · 14 citations · 12 references
ComputingComputer ScienceTeachingInstruction In Higher EducationProgramming LanguagesSoftware EngineeringComputer Science EducationObject-oriented DesignObject-oriented ProgrammingSoftware ConstructionSoftware DesignSoftware RefactoringComputer Science CurriculumComputer Science PedagogyExtreme ProgrammingMaintainabilityObject-oriented Programming EducationObject-oriented RefactoringRefactoringSoftware Development Methodology
Refactoring is the process of transforming the internal structure of existing code while keeping the integrity of the code's functional requirements. Refactoring is proven to increase program maintainability, flexibility, and understandability and is recognized as a best practice in the software development community. However, with the exception of courses or lectures on extreme programming, refactoring is overlooked in the computer science curriculum. This paper presents the fourth lesson of an innovative pedagogical approach to teaching refactoring on the college level. This lesson covers the creation of well formed object-oriented methods including characteristics for evaluating such methods. Through this hands-on approach, building well formed object-oriented methods through refactoring can be better understood and integrated into the computer science curriculum.
12
Refactoring improving the design of existing code
Mauricio A. Saca · 2017 · 2.1K citations
Some misconceptions about lines of code
Jarrett Rosenberg · 2002 · 135 citations