Overview:
In the last topics we looked at the BIC, or the Blink Intelligent Client. This is the engine that runs your answerSpace within an appshell or through the browser as a web app, as well as exposing things like native functionality and handling complex tasks like offline mode.
There are two main BIC offerings - BIC2 and BIC3. The big differences you’ll notice between the BICs are the frameworks the BICs are built on. Actual features are comparable.
Both BICs are maintained, and fully support by BlinkMobile, though as mentioned in the previous lesson, if you're looking at starting a new project, we highly recommend you consider using the file-based development services.
BIC2:
BIC2 is built on jQuery, and jQueryUI. BIC2 is a little more “templated” than BIC3, meaning out of the box you will get things like top menu bars that include home, back, and pending queue buttons.
The templates can be modified heavily through the use of CSS and Javascript.
Forms are rendered using standard HTML5 as well as jQueryUI for some form elements (such as data pickers). This can result in fast form loading times and interactivity for larger forms.
Forms can be preloaded through the use of Data Suitcases, which are either server or locally stored XML documents.
BIC3:
BIC3 is based on jQuery and jQueryMobile, plus Backbone framework.
The addition of jQueryMobile means as a developer you will have access to mobile friendly form elements, jQueryMobile widgets such as list views and search widgets for menus, as well as access to any of the jQueryMobile events (such as page load events, page change, etc.).
Something to keep in mind is with the addition of the jQueryMobile styling, larger and more complex forms can take longer to load, and so your project should be designed with form size in mind.
The addition of Backbone also opens up the app to easier API access. Backbone has been extended to add additional functionality specific to BlinkMobile BIC and Forms.
For example, forms can easily be manipulated using APIs, allowing you to populate forms from local databases by using libraries such as LocalForage for storing data, updated, and even add highly customised validation and conditional logic.
Next: