Software has a characteristic that is easily changed. During the software development process, any pristine will make a change in the software as long as you knock a few keys. Such changes may make the software better and eliminate the original bugs; it is also possible to make the software become worse and generate new bugs.
You may also have such an example: the normal operation of the work, after you seek your heart, after the modification of the perfect situation, the anti-distance is more and more far and farther and farther. Not ingenious, after an hour, you must show this software, sweat, how do you cross?
Such episodes have no stranger, each pristine is encountered, so the old generation of the pristine often warns us "There is no bad part, just don't go to mess, it is exempt from the chaos, this principle is fear that we put The more the program is changed, the worse. But the times are different, but the pristines are encouraged "there is no bad part, as long as you find any imperfections, you still have to go to modify", in the absence of money, you can't get it. Martin Fowler said this "There is nothing just an imperfect program code" to "Bad Smell", sniffing the Bad Smell is going to handle it immediately, which is refactoring. The Java IDE I am using is Intellij Idea, which has won my favorite with its smart instant analysis and convenient refactoring feature.
Martin Fowler also believes that Testing is important for Refactoring, and I think Version Control is also important to Refactoring. With the aid of the Version Control tool software, you don't have to worry about the program, the worse, because the Version Control tool software can help us log many versions, you can switch any version of the time at any time, just like a time machine.
Version Control is a more macroscopically called Software Configuration Management, referred to as SCM. Or should be said that SCM provides support for version control, but SCM is more perfect.
When I first entered the Tsinghua University Information Engineering Department, when I studied my master's class, I have to develop C language version of the VOD system with many students, and I have experienced a major disaster. Recalling that the source of the disaster mainly has the following two points:
The problem of inconsistency in the module: Because the number of participants is numerous, the same SUB-SYSTEM is responsible for a professor. This professor has several students to participate, so the version is confusing, often unable to integrate.
After changing the program, it cannot be performed: the software that has been successfully implemented, after someone is more "unrelated" program code, it cannot be performed.
Don't underestimate these two questions, this is enough to let us get busy. In addition, a schoolmaster left some of the form of garbage, but also when it is like a bomb, it will explode at any time. (Fortunately, there is a very good job in our VOD team, which rewrites the bunch of garbage into a well-organized program code, I really admire him to the effort). Plus I didn't get familiar with VOD, my senior didn't turn all things to me, my pressure is very large, because endocrine disorders, my whole face and neck are full of rash, and I have already arrived. . When I thought about the situation of the situation, I still feel a stomach.
The above two problems can be easily resolved through the imported SCM. Smart people learn from their own frustration, smarter people learn from others' frustration. I have already told you that I have caused many problems because of the lack of SCM, very smart, if you haven't started using SCM, you should start planning to import SCM. Importing SCM can be said to be a low difficulty software engineering, but is good to operate. Special note: SCM is one of the requirements of CMM Level 2. For companies that intentionally follow CMM, the SCM is undoubtedly the most prior picked step.
At present, there are many SCM products, most people choose to use free CVS, or cheap Microsoft Visual SourceSafe, additional MKS, Rational Clearcase, PVCS Dimensions, Oracle9i SCM is also such a product, but obviously is relatively high. In addition, some Java development tools are also integrated into related functions, such as Borland JBuilder, Together ControlCenter:
Not only software projects require version control, in my opinion, as long as there is anything that is high, you need version control, such as our constitution, you need version control. After the first decade of President Li Teng, the constitution has been amended by six revisions, the frequency of the constitutional is almost a year, and even the spirit of our constitution is currently similar to the US presidential system. Similar to the UK The cabinet system, similar to the Double-time system, or the so-called improved double-head system, no one is clear. Recently, the President Chen Shui-bian intends to launch a constitutional project in the second half of the year, as a SCM enthusiast, suggesting that the government has purchased a set of PVCS or Rational ClearCase to use the version of the revision project. In this way, if the constitutional constitutional monsters are unbalanced, this monster is ready to swallow the entire country, we can quickly use the version-controlled backtracking function, restore the old version of the constitution, to return to the constitutional order, Solve people from the country.
"But the SCM software is very expensive. In the government's financial embarrassment, the debt is high in nearly three megabits?" I said that you are really much more, we can secret account from the National Security Bureau of the recently exposed Billions of messenger, order the foreign minister, the money, two sets of money, there is 14 million yuan! You can also put the full number to the Liu Guanjun who fled abroad.
PS1. Recent record and film industry launched 404 anti-piracy big parade. In view of my article, I am chaotic, so I specially adapt about IFPI's words to call for everyone: "Today you COPY an article, tomorrow you will lose the opportunity to read a good article. I am Cai Xue, I hope to write a article for everyone to read it. If you really want to share my article with others, you can use HyperLink's way to connect to the URL of this article.