Explain how principles of computer programming are applied in different languages to produce software applications