Keep it clean, and keep it simple--that is the maxim software developers should adhere to.
According to Lee Chuk Munn, a staff engineer at Sun Microsystems Asia-Pacific, writing applications is like writing a book.
"Programming is just an expression to a solution. A lot of it is about understanding and recognizing the problem and getting help. This [concept] is generic across all programming languages, it doesn't matter what you use--whether it's C+ or Java. The approach is still the same," he said.
Lee listed seven habits that he said all software developers should possess to be effective in their job:
1. Understand the problem
Before you can deal with the problem, you need to first understand the problem you are trying to solve.
Lee also highlighted the need to do the necessary research before starting development work, and to think about how people will go about using the application, so elements such as user-interface and design should not be neglected.
2. Use appropriate tools
Study various programming concepts and data structures, and start building a reservoir of software design patterns, Lee said.
Quoting American psychologist Abraham Maslow, Lee read: "If the only tool you have is a hammer, you will see every problem as a nail." --"Golden Hammer" rule.
3. Strive for simplicity
Programmers should develop applications that are:
- Easy to understand;
- Easy to explain;
- Easy to maintain; and
- Easy to document.
Lee noted that simplicity is not only associated with purity or clarity, it also reflects the engineer's understanding of the problem. "Anybody can come up with a convoluted solution," he said.
Noting that debugging is twice as difficult as writing a program, Lee said software developers will have an easier time patching bugs if their applications are clear and uncomplicated.
4. Keep your code clear
Only incorporate code that you understand, and make sure others understand it, too.
Lee explained that software developers are like novelists, each has his own writing style. "Whatever style you adopt [doesn't matter], just make sure you write clearly," he said. "When you write codes, you need to keep them clear. Don't squash them, just like how you would apply text spacing when you write a novel."
Think also about how you
organize and label
your codes.
Lee said: "Put yourself as an author, how would you write something that others can easily understand and follow your thoughts? That's how a programmer should code as well."
While there are no standard code layouts or models software developers can adopt, there are recommended coding practices, he said.
Programmers working on a Java platform, for example, can visit Web sites that recommend certain methods of naming variables, he added. "So there are conventions which most Java developers would already know," Lee said.
5. Learn to debug
Identify bugs early in the development process, and deploy automated testing tools such as
jUnit
.
6. Leverage what is available
Developers should also look for solutions or algorithms that are already publicly available, such as those highlighted in developer forums and mailing lists.
7. Continue to learn
Finally, like any other profession, software developers must always continue to learn, pick up new skills and improve.
Engineers can also learn from conducting an evaluation after a project has been completed, Lee added. "We need to learn from our good and bad [projects], and try and be better the next time, and the next time after that," he said.
Can developers then balance the commercial need to push out applications as quickly as possible, with the need to write codes that are clean?
Lee believes they can. "A lot of people say if they don't have quantity time, at least they have quality. That's not true... You can't have quality time if you don't put in quantity time," he said. "There's commercialization [in software development] but there's also 'art' and 'good' codes. And you can achieve both."
http://www.zdnetasia.com/news/software/0,39044164,62031175,00.htm
分享到:
相关推荐
The Seven Habits of Highly Effective People The Seven Habits of Highly Effective People
高效能人士的七个文本编辑习惯,程序员必备----------vim
A large percentage of time... Examples will be used to make clear how learning a limited number of habits will avoid wasting time and lower the number of mistakes. You can also see the video here: ...
"The 6 Habits of Highly Effective Bosses provides an excellent training model that a manager can both fully appreciate and easily implement." —Raymond G. Steitz, V.P. of Global Human Resources, ...
想在生活、学习、工作中高效率的工作,取得成功吗?那就读读这本书吧
7 habits of highly effective people
Six Habits of Merely Effective Negotiators
The 7 Habits of Highly Effective People V1.2
Seven habits.pptx
The 7 Habits of Highly Effective Teachers.pptx
高效能人士的7个习惯7 Habits for Effective People.pptx
Stephen Covey - The Seven Habits Of Highly Effective People.doc
The Seven Habits Of Highly Effective 高效人士的七项习惯
Synovate - Media habits of Chinese consumers.pptx
高效人士7个习惯-_7_Habits中英文
Crystal habits of LiMn2O4 and their influence on the electrochemical performance
A program to improve study habits of high-school students GRADUATE TRAINING FOR PRECOLLEGE TEACHERS OF PSYCHOLOGY 325 REFERENCES CITY COLLEQE. Directions Committee report. New York: The City ...
Virtualization and cloud make it easy to rapidly expand the size of infrastructure, but the habits and practices we used in the past with hardware-based infrastructure don't keep up. Teams end up with...