What are the different types of Applications?