Word of the Day: refactoring Posted: 29 May 2020 03:02 PM PDT | Word of the Day | | Daily updates on the latest technology terms | May 29, 2020 | | refactoring | Refactoring is "the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure," according to Martin Fowler, the "father" of refactoring. The concept of refactoring covers practically any revision or cleaning up of source code, but Fowler consolidated many best practices from across the software development industry into a specific list of "refactorings" and described methods to implement them in his book, Refactoring: Improving the Design of Existing Code. While refactoring can be applied to any programming language, the majority of refactoring tools were originally developed for the Java language. One approach to refactoring is to improve the structure of source code at one point and then extend the same changes systematically to all applicable references throughout the program. The result is to make the code more efficient, scalable, maintainable or reusable, without actually changing any functions of the program itself. Refactoring plays an important role in application modernization and moving legacy apps from a monolithic structure to microservices. Eric Raymond, a leading philosopher about program development, maintains that the concept of refactoring is consistent with the idea of get-something-working-now-and-perfect-it-later approach long familiar to Unix and open source programmers and hackers. The idea is also embodied in the approach known as extreme programming. Continue reading... | | | "Refactoring is a vital part of software code maintenance. This restructuring process improves the code's readability and extensibility -- it might even address looming flaws before users experience their effects." - Stephen J. Bigelow | Related Terms You Should Know microservices Refactoring a monolith into microservices modernizes the application. Ideally, it will create autonomous services that don't need to communicate with each other in real time. refactoring tools Names and variables that were obvious to one developer may not be so obvious to someone new. That's why it's important to look for a tool that will also change the comments. legacy code Learn how to refactor a repository pattern, discover how to add unit tests to those methods, and find suggestions for working with older code. Code refactoring has been heralded as an effective way to modernize applications, especially for mobile. Take this quiz to find out what you really know. Thank you for reading! For feedback about any of our definitions or to suggest a new definition (or learning resource) please contact us at: editor@whatIs.com | FOLLOW US | | About This E-Newsletter The Word of the Day is published by TechTarget, Inc., 275 Grove Street, Newton, Massachusetts, 02466 US.
Click to: Unsubscribe. You are receiving this email because you are a member of TechTarget. When you access content from this email, your information may be shared with the sponsors or future sponsors of that content and with our Partners, see up-to-date Partners List, as described in our Privacy Policy. For additional information, please contact: webmaster@techtarget.com. © 2020 TechTarget, Inc. all rights reserved. Designated trademarks, brands, logos, and service marks are the property of their respective owners. Privacy Policy | Partners List | | | |
The Water Cooler: Leadership in These Difficult Times Posted: 29 May 2020 01:48 PM PDT Every month on LinkedIn, business professionals engage with and discuss content that's most important to them. In April, the majority of the top 10 most shared articles on LinkedIn emphasized how to be successful leaders in the current challenging ... |