THE WHATIS.COM WORD-OF-THE-DAY   
August 14, 2003

refactoring 
________________
SPONSORED BY: Microsoft

The Quick Guide to Windows Server 2003. Get the latest information on
installation, new features and training. Click here!
http://WhatIs.com/r/0,,17026,00.htm?microsoft 

________________   
TODAY'S WORD: refactoring 

See our complete definition with hyperlinks at
http://searchcio.techtarget.com/sDefinition/0,,sid19_gci919168,00.html 

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. 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 current tools have been
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. In his
book, Fowler describes a methodology for cleaning up code while
minimizing the chance of introducing new bugs. 

In January 2001, automated refactoring tools began to appear in
earnest, including the IntelliJ IDEA Java IDE (integrated development
environment), the X-ref plug-in tool for the Emacs editor and the
Instantiations jFactor stand-alone refactoring tool. Many basic
editing environments support simple refactorings like renaming a
function or variable across an entire code base. Most current
refactoring-capable tools support Extract Method and Inline Method at
minimum, but support for more complex but useful refactorings like
Extract Interface and Extract Superclass is still not common, though
available.
 
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. 

______________________
RELATED TERMS:

source code
http://searchwebservices.techtarget.com/sDefinition/0,,sid26_gci213030,00.html

integrated development environment
http://searchvb.techtarget.com/sDefinition/0,,sid8_gci754848,00.html

Emacs
http://searchenterpriselinux.techtarget.com/sDefinition/0,,sid39_gci212050,00.html

Extreme Programming
http://searchvb.techtarget.com/sDefinition/0,,sid8_gci214366,00.html 

______________________
SELECTED LINKS:

Martin Fowler maintains a Web site about refactoring. 
http://www.refactoring.com/ 

Eric S. Raymond's article is called "Hacking and Refactoring." 
http://www.artima.com/weblogs/viewpost.jsp?thread=5342 

______________________
TODAY'S TECH NEWS:

LOVSAN STILL LOOSE; THOUSANDS HIT
The Lovsan worm is still spreading, though it's difficult to put a
number on just how many systems have been hit worldwide. 
http://searchsecurity.techtarget.com/originalContent/0,289142,sid14_gci919010,00.html

IBM EXPANDS AVAILABILITY, IMPROVES ICT MESSAGING CLIENT
IBM has expanded its experimental messaging client IBM and made it
available to users of its AlphaWorks developer site.
http://search400.techtarget.com/originalContent/0,289142,sid3_gci919120,00.html

IBM OFFERS FREE TOOLS FOR BUILDING GRID FUNCTIONALITY
IBM is offering free tools that programmers can use to develop
products for on-demand computing environments. The suite is available
as a free download from IBM's AlphaWorks site.
http://search400.techtarget.com/originalContent/0,289142,sid3_gci918990,00.html

>> Catch up on all the latest IT news at  
http://searchtechtarget.techtarget.com/ 

______________________
Learning Path | Malware: Worms, viruses, and other malicious code

Read our series of abbreviated definitions in sequence and be the
malware Know-It-All at your office.
http://searchsecurity.techtarget.com/sDefinition/0,,sid14_gci915380,00.html 

______________________
Secret Word-of-the-Day | What is it?

HINT: This is a standard interactive programming language for getting
information from (or updating) a database. 

>> Think you know the Secret Word-of-the-Day? See if you're right!
http://searchdatabase.techtarget.com/sDefinition/0,290660,sid13_gci214230,00.html 

_____________________
Quiz #11 | Artificial Intelligence

How much do you know about AI? Take this week's quiz and find out! 

>> Click to take the quiz
http://searchcrm.techtarget.com/sDefinition/0,,sid11_gci789222,00.html 

______________________________ 
RECENT ADDITIONS AND UPDATES 

[1] dark energy 
http://whatis.techtarget.com/definition/0,,sid9_gci917929,00.html 

[2] strawman 
http://searchcrm.techtarget.com/sDefinition/0,,sid11_gci840566,00.html 

[3] qubit 
http://whatis.techtarget.com/definition/0,,sid9_gci341232,00.html 

[4] flash mob 
http://whatis.techtarget.com/definition/0,,sid9_gci916705,00.html 

[5] IT Crossword Puzzle: Malware 
http://searchsecurity.techtarget.com/sDefinition/0,,sid14_gci916579,00.html 

____________________________________________________________________
:::::::::::::::::::  WHATIS.COM CONTACTS   :::::::::::::::::::

LOWELL THING, Site Editor ([EMAIL PROTECTED])
____________________________________________________________________

MARGARET ROUSE, Associate Editor ([EMAIL PROTECTED])

:::::::::::::::::::::  ABOUT THIS NEWSLETTER  ::::::::::::::::::::::
This newsletter is published by TechTarget, the most targeted IT
media. http://www.techtarget.com

Copyright 2003 TechTarget. All rights reserved.


Unsubscribe from 'Word of the Day'
 - Simply Reply to this E-mail with REMOVE within the Body or Subject
>  or
 - Go to: http://WhatIs.techtarget.com/register
 - Log in to edit your profile.
 - Click on the link to Edit email subscriptions.
 - Uncheck the box next to the newsletter you wish 
   to unsubscribe from.
 - When finished, click "Save Changes to My Profile."


Reply via email to