As a Corporate Trainer unless until I evaluate my trainees I don’t think I did completed the Training session. Recently looking in to the growing demand of AngularJS I instructed to provide training on the same. Nearly 4 to 5 batches I did trained. Including all the batches there are more then 300 IT professionals. After completion of training to evaluate all those trainees whether they grab required knowledge or not I prepared the following Questionnaires.
In this Set of Questions to evaluate a trainee I covered all the possible scenarios a programmer required to begin with AngularJS. If your training session is for intermediate level you can refer this Questionnaires for evaluation.
To Design the following apps please follow AngularJS MVC design pattern.
AngularJS Search Filter
Qus. In a HTML page below the Search box you need to display name of your 10 colleagues. While I will start search using last name of your colleague it need to display the similar records. To store names of your colleagues you can use a $scope object with JSON formatted data.
Data Binding in AngularJS
Qus. I have a JSON file with 10 Customers details. For each Customer I have the following three fields.
1. Customer Name
3. Customer Care Number
What I want is I want to display all the Customers Details in a tabular form using DIV structure. To design the Customers JSON file you can use dummy data.
Qus. In a HTML page I have two dropdown lists. First one need to show list of Country names (4 to 5 Countries max). On change of Country dropdown list I want to show respective states for that Country in the second dropdown list. Initially the default country is the first item of Country dropdown list & the default values for second dropdown list are the states for default country. For better performance I want to use switch case in place of if else.
Qus. In Controller I have a $scope object “employees” with two fields for each record “Name” & “Gender”. In HTML I want show male & female employees in two different lists. Use ng-show & ng-hide for showing & hiding the records.
Validations in AngularJS
Qus. To register a user in my Social Media application I need to design a form which will accept Name, Email, Contact Number & Date of Birth for registration. In this form Name is a mandatory field. Email must be a valid one. Contact Number filed will accept only numbers of 10 digits & Date of Birth must be in the format of YYYY-MM-DD. In case user is entering invalid data I need to show proper error message without submitting the form.
Single page Application
Qus. In a simple HTML page I have only three links Home, About Us & Contact Us. During I open this HTML file Home page is the default page with a single line Welcome message (Welcome to my Blog). When I will click on About Us link it need to show me the about us page with some dummy text. Similarly while I will click on Contact Us link it need to show Contact US page with dummy Contact Information. To make bookmark easy I want all these pages URL’s are different but during I visit from one page to other I don’t want to refresh the page. Physically Home, About Us & Contact us are three different HTML files. So that it is easier for me to maintain the app.
Ajax using AngularJS
Qus. Prepare a simple telephone directory with only 2 fields “Name” & “Number”. When I will submit the page it need to post the data into a php file for database operation. Provide a link in the bottom of this page. So that when I want to watch the list of members I can visit this link. You can fetch the list of members using $http get method.
Directive & Templates
Qus. In an App I have more than 100 of pages to show Tabular Data. What I need is I want a Custom Directive “my-table”. About the look n feel of the table I want the header background color dark blue & header texts in white color. For better user experience implement even & odd rows with light alternate colors. Table border width you can keep thin.
Service & Factory
Qus. Create a simple calculator which will have 4 functions Addition, Subtraction, Multiplication & Division.