Answer to Question 1
Although the programming language should be technically high quality, the choice of the programming language depends on many factors. For components such as database management systems, you must often use the language or the dialect that they require. If you create Web applications, you cannot ignore the languages that browsers require. Sometimes the existing framework and available resources constrain the freedom of choice for the programming language. Furthermore, the methodology that you follow for development must be translatable to the programming language.
Answer to Question 2
An application is a set of programs that performs a specific task.