Question 1
Iteration and recursion has been widely used in computer programming for a long time. Recursion is a function which calls itself many times until some condition is met. An example of recursion is in Fibonacci numbers. Recursion is used in this function. On the other hand iteration is used in situation where some part of a code is repeated many times until some condition has been met.
Question 2
There are four techniques that are widely used for reducing bugs that are found in arrays. The two techniques are static analysis, use of well established regression base, developing and making use of unit regression tests and use of static analysis and code review. Static analysis involves the study of code line by line to see if there is a bug in any of the lines. This is tedious to the programmers. To counter this load of work, there are tools which have been developed so that the process can be automated.
Another method is by use of regression testing. This is used in situations where the code that is new has been seen to bring problems to the existing system. There is therefore a need to develop a regression test so that initial running of the system can be captured. There are several approaches that this can be done. The third way is for the software that unit testing where the regression tests can be applied to the various units or to the whole application. There are advantages of using unit testing and also advantages that are experienced while using application testing.
The final method is by making use of static analysis and code review. In this case, any new code is tested and checked for errors. When writing code has been completed, the whole programming team will come together and review the whole code to look for errors. The best approach to correcting bugs is static analysis and code review. With this method, the code is tested before it is deployed to the operating environment. Also, with this method, the whole team also has a chance to look at the whole code to look for errors.
Question 3
Dynamically typed languages are commonly used today. This is attributed to the flexibility that comes with them. They are commonly used today to deploy Web 2.0 applications. Given the fact that many companies are adopting Web 2.0, the use of dynamically typed languages is inevitable. The reason as to why there are many companies who are still using dynamically typed languages is that it is easy to use and to integrate with other languages. It is the language that is used in the Web today.
There are still organizations that use static languages. The reason for this is that it is still widely believed that real programmers are still using these languages. For this reason, they prefer a language that has a wide support than languages which are supported by few. They believe that languages which hhave wide support have a better security.
References
Sokolov, S. (2007). Bulletproofing C++ code. Dr. Dobb's Journal , 32 (2), 37.
Tratt, L., & Wuyts, R. (2007). Dynamically typed languages. IEEE Computer Society , 28-30.