Ionic Interview Questions and Answers
by Mohammed, on May 19, 2018 11:42:01 AM
Q1. What is Ionic Framework?
Ans: IONIC framework is an HTML5 platform that enables web developers to build hybrid mobile apps. Hybrid apps are those apps that have access to native perform layer and are small websites running in browser shell in the apps. It is a powerful HTML5 SDK that helps to build mobile apps using HTML , CSS, and JavaScript. Ionic framework mainly emphasizes on the look and feel of the app and its UI interaction. This means that we aren’t a replacement for PhoneGap or JavaScript framework. Ionic fits well with the front end part of your app. They are free to use under MIT license so it can be used for personal or commercial projects.
Q2. Mention few features of Ionic?
Ans:
- CSS components :
- JavaScript components
- AngularJS Architecture
- Ionic View
- Cordova Plugins
Q3. How to get the installed version of the Ionic framework?
Ans: Run ionic.version command in console of your web browser to check installed version of IONIC Framework.
Q4. What are hybrid mobile apps?
Ans: Hybrid apps are actually developed using a combination of the native and HTML5-based web features. An HTML5 mobile app is basically a web page, or chain of web pages, that are developed to run on a small screen. Hybrid development unites the best and leaves the worst points of both the native and HTML5 platforms. Hybrid app can also be called as a web app, which is initially developed using HTML5 and JavaScript and then it is wrapped in a lean native container that makes it accessible to native platform features as well. Apart, from being a bit slow platform in accessing NFC, Bluetooth, etc and requires a third party plug-in, hybrid platform has handful of advantages. A hybrid application has a potential to develop applications using Android, Windows and Blackberry in spite of the factor that each of the platform requires different development environment, language and framework. To get a prominent presence in the app store without spending significant effort for developing a different app, companies develop hybrid apps as wrappers for an existing web page. Moreover, hybrid apps are also popular because they allow cross-platform development. That means, developers can reuse the same HTML code components on different mobile operating systems, which in turn, reduces significantly the development costs. Tools like PhoneGap and Sencha Touch allow users to design and code across platforms, using the power of HTML.
Q5. What is the difference between ionic polymerization and free-radical?
Ans:
IONIC POLYMERIZATION | FREE-RADICAL IONIC |
|
|
Q6. How many types of storage available in Ionic framework?
Ans: The easy way to store key or values and JSON objects is known as storage in Ionic Framework. In this various storage, engines are used. While on the web application, the storage will tend to use IndexedDB, WebSQL, and localstorage. Various types of storage are available in ionic framework. Some of them are:
- HTML5 local storage
- Cookie and session storage
- indexedDB
- WebSQL
- PouchDB
- Webservice/api storage
- Cordova storage.
Q7. Why build native apps, when hybrid apps development frameworks are there?
Ans: Some of the following could not be achieved effectively using web frameworks:
- Access to platform-specific UI components, like maps, date pickers, switches, and navigation stacks.
- Native mobile gesture recognizers
- Complex and sophisticated threading models that help parallelize work onto multiple threads.
Q8. What are some of the disadvantages of building native apps?
Ans:
- Even a small change needs a recompile that slows up the developers. This become a nightmare when the codebase is very large.
- Testing new functionality is cumbersome.
- Calls between native and interpreted environment could end up blocking UI thread.
Q9. List some advantages and disadvantages of ionic framework?
Ans: Some advantages and disadvantages of ionic framework are listed below:
Advantages:
- All the supported platforms have only one source. Mainly they are android and OSX.
- It is mainly developed in HTML, CSS, and JS. Almost all the developers are familiar with these languages.
- Most importantly, angular is being used which is by default embedded in the ionic framework.
- It is completely free and is considered as one of the best open-source software for developing hybrid mobile applications.
Disadvantages:
- There is a performance gap between the ionic and the native applications. Ionic apps are not as fast as the native apps.
- Ionic applications may not be as secure as the native applications.
- The ionic applications may lack in some native functions. In such case, plugins have to be developed.
Q10. How to use observables in ionic framework?
Ans: Observables are something that are not specific to Ionic or Angular and are provided by the RxJSlibrary. Observables are almost similar to the promises but can do a lot more. It can deal with multiple values at a time rather than just resolving one value. You can even subscribe to an observable to manipulate the data which is associated with it. Observables are considered to be “lazy”, i.e. they won’t get executed until and unless they are subscribed to. Various operations can be applied to the observables for modifying it and returning a new one. You can even create your own observable. The observable patterns are combined into one with the help of subject which is preferred for simple implementations.
Q11. What is the advantage of caching the views in Ionic apps? Provide examples.
Ans: Ionic by default caches up to ten views, which improves performance and also maintains different states in the views at the same time. For example, the cache can maintain scroll position in the views or active state of buttons.
Caching can be disabled per view by using cache: false in UI-router’s state config, like in the following example:
$stateProvider.state(‘myState’, {
cache: false,
url : ‘/myUrl’,
templateUrl : ‘my-template.html’
})
Caching can be also disabled globally, by setting maxCache to 0:
$ionicConfigProvider.views.maxCache(0);
Q12. How can you detect a platform (Android or iOS) at runtime in Ionic application?
Ans: Ionic provides platform classes: when the application is loaded, Ionic adds CSS classes to the <body> tag. For example, on iOS devices, Ionic adds platform-ios class to <body> tag. Ionic also adds OS version classes such as platform-ios8 (for iOS 8) and platform-android4_4 (for Android 4.4).
Q13. How can you test Ionic applications?
Ans: Ionic applications are built using AngularJS. Angular has a rich set of test libraries and frameworks such as Jasmine and Karma test runner. These frameworks can be used to write unit tests for Ionic applications. Also, ionic-CLI provides live reload feature so the application can be tested in the browser. For example, the ionic serve command can be used to load the application in any browser. Thus, we can use Chrome Developer Tools or Mozilla Firefox with Firebug to debug and inspect Ionic applications.
Q14. What’s the difference between “ionic build” and “ionic prepare”?
Ans: ionic prepare <platform> copies all files from the www folder into the target platform’s www folder.
ionic build <platform> also does this, but also builds the app’s source code so that it can be run on a simulator/emulator or a device.
Q15. List Some Popular Apps Built With Ionic Framework?
Ans: Some popular applications built with the help of ionic framework:
- Pacifica: Cognitive Behavioural Therapy.
- TD Trading: Stock Trading App.
- Sworkit: Workout and Fitness Plan.
- Market Watch: Stock Market and Business News.
- Chef Steps: Cooking Tutorials and Tool.
- Nationwide: Insurance and Financial Services.
- Just Watch: Streaming Search Engine.
- Untapped: Social Discovery and Check-in Network.
- National Museum of African American History and Culture.
- Crypto change: Crypto currency Tracker.
Related Interview Questions...
- Android Interview Questions and Answers
- Android Interview Questions and Answers for Freshers
- IOS Interview Questions and Answers
- Mobile Testing Interview Questions and Answers
- Swift Programming Interview Questions
- C Programming Interview Questions and Answers
- Advanced C++ Programming Interview Questions and Answers
- C Interview Question and Answers
- React Native and Redux Interview Questions and Answers
- C and Data Structure Interview Questions And Answers