Okay, I've been searching to find out which one is the best between Angularjs and jQuery mobile for creating hybrid apps. specifically, an eCommerce type of app. so there won't be much animation as such apart from page transitions etc which i think both Angularjs and jQuery mobile are capable of page transitions mobile style.
I know this question has been asked before but there has been many changes to both Angularjs and jquery mobile since the last questions so I was wondering what the pros and cons are for noth.
I'm more inclined towards jquery mobile as it seems to be easier to use and also because I have never used angularjs before... but i'm willing to go towards angularjs if my app would benefit from it and if not then I can carry on with jquery mobile?
any advise would be appreciated.
Well it depends on the time constraint of the project. If you have enough time to learn AngularJS then you can do have AngularJS.
Both of the framework are good, but as a co-developer I would follow the best practices in development which is MVC framework which is AngularJS offered.
Related
What is the fastest way to move (migrate app) from Ionic to NativeScript with the least efforts?
Without rewrite old AngularJS controllers and services.
And using NativeScript with AngularJS not Angular 2.
I need to re-write UI with CSS (replacing HTML with XML) only.
Question is: Does this applicable? or there is no option but to re-write whole app!
If yes, what the path that I have to follow to make it?
The story if you want to know why I want to do this:
I have a mobile application that based on Ionic (ionic 1 with AngularJS), Ionic is really nice platform to build app, but a lot of headache specially with performance challenges, in my App I have a really an issue with this through many devices, until I found NativeScript which is really awesome, so I'm thinking about move my current live app from Ionic to NativeScript.
Until now, as I see seems I have to re-write whole app from scratch, but this is costly and not an option for me, I was searching in internet and found no clear answers, even in documentation they seems only using Angular2 with TS (which is better but not have time for this now) or just plan JavaScript.
This is good side reference: Lost in hybrid app frameworks like Ionic, Cordova,
Simply put you can't. Angular 1 is dependent on the DOM. With NativeScript there is no DOM. Which is why you have performance issues in the webview. You need to just bite the bullet and rewrite it with ng2 you'll thank yourself later. The webview is your downfall with your performance on Cordova and to get away from that you'll have better performance and the perf benefits you get with ng2 are also very nice. Heres a link with some good info on ionic 2 to NativeScript but that's as good as it gets. Because you can't easily from Cordova webview app to native UI like NativeScript or react native. https://www.thepolyglotdeveloper.com/2016/05/converting-ionic-2-mobile-app-nativescript/
Here's someone who just went ionic 2 to NativeScript and commented on the slack channel https://nativescriptcommunity.slack.com/archives/general/p1471789794013989 join the slack channel for some really awesome community help if you decide to do it.
I'm trying to decide what tech to use to create a mobile app. I want to be able to share as much code as possible between web, iOS & Android. To do this I'm planning on using HTML & javascript, then wrapping the apps using PhoneGap.
I've tried using AngularJS several times, but it's too complicated for me to learn (I want to get the app out, not spend months learning the framework). I've been watching tutorials on ember.js and it looks like it has a much more familiar architecture for me.
I like the look of Kendo UI core & mobile, but can't find any examples of using the widgets from an ember app. Is it possible to do that, or would it likely be so painful or would I have to write so much glue code that I'd wish I hadn't bothered? If so, is there a better way I can get a decent set of cross-platform widgets?
From what I've read, AngularJS is perfect for single page applications.
But what additional libraries / components would I need to be able to create an app that looks and feels like a native desktop and/or mobile app?
I'm new to web development and from a beginner's perspective Angular UI seems to have quite a limited number of widget types?
Am I missing something obvious and Angular UI / bootstrap is genuinely all you need?
Is it possible (common) to integrate other UI libraries with Angular?
If 2. is yes, which libraries do you recommend and what's involved? If it's easy to integrate other UI libraries why is there a special "Angular" version of bootstrap - how does this differ from normal bootstrap?
Is it common to extend Angular UI and create your own components? Is this recommended?
Angular is quite new, so there aren't so many libraries out there yet. Because if of the nature of angular.js "views" it isn't always required to have an explicit library for UI. (I use bootstrap, but without any angular modules.)
Yes. Write some directives and you are good to go.
There 2 libraries for bootstrap. One uses the original jQuery bootstrap code, the other doesn't. Why? It is cooler to just <nav><tab /><tab/></nav> then writing divs and uls. (That maybe because many Flex developer coming to angular)
Yes it is common to extend (better: create) your own components. It's recommended because you code becomes much more reusable. Also: You don't like one thing on your component? Simply change the implementation in one place.
I think what you're asking is "angular is great, I love not having to muck around with callbacks and the dom to refresh my UI, but I miss jquery mobile's look and feel - is there a way to get both angular's good bits (routing/controllers/directives) and the slick look of jqm'?
Unfortunately, right now the answer is 'errmm, kinda'. There's a (multiply-forked) library called jqm-angular-adapter at https://github.com/opitzconsulting/jquery-mobile-angular-adapter tho the documentation is in German). Another StackOverflow question may point to a solution - Using jQuery Mobile Adapter in AngularJS - Applying jqmCompatMode false to Enable Angular Routing - which I only just found today and will be trying out myself to see if it's the holy grail of routing and moblifying HTML5 screens.
I'm developing with PhoneGap for a month already. In my first app, I used JQuery and the results were horrible. I learned about zepto.js and xuijs being two of the most recommended libraries for cross-platform development. What do you think of these two? which one should I use? Any other things to consider? Any other tips to improve the performance of my apps?
I t depends on the App, mainly. If it's going to be using animation, I highly reccomend Zepto, as it makes that really easy. If you're going to be developing one using multiple views, I would reccomend xuijs, or Sencha Touch. It really depends on what you're going to be doing with it.
After completing one project with Backbone JS and jQuery Mobile for the iPad Mobile Safari, it left me feeling that jQuery Mobile is maybe not the right tool for that particular job.
I have found the performance of jQuery Mobile generally quite disappointing. A lot of the mobile JS frameworks (that handle transitions, dialogs etc) seem to suffer from the same thing. Getting jQuery Mobile and Backbone JS to work nicely together seemed a little jagged.
I needed something like jQuery Mobile to handle drag and drop elements and page transitions (and dialog boxes). Backbone JS is great for what we're doing, so we want to keep this in the toolbox. We're doing projects only for the iPhone and iPad and doing them natively (with Objective-C) just isn't appropriate in this case.
The recently completed project ended up using jQuery, jQuery Mobile, jQuery UI, some little plugin that makes jQuery UI work with touch, Backbone JS, Underscore JS... It all just seems so heavy for a web app on the mobiles! I want something powerful and smaller in footprint.
Sencha Touch seems to have great performance, but it does seem that you need to jump feet first into it and go the whole way with how it works. But maybe I have that all wrong? I'm more looking for something that plays nice with Backbone, is relatively lightweight and has lots of bits for building nice bits of UI for the iPhone/iPad (gesture support, page/dialog transitions, list views etc). Ideally something that acts more like jQuery - where I call it to do the bits on the DOM and stays out of the way when we don't want it - rather than it being a dictating framework and having to play by it's rules (like jQuery Mobile and most probably Sencha Touch). Also saw jQTouch... But this has been taken over by Sencha now, meaning that it's dead?
Is there anything that does this? Something lightweight, stable, fast and reliable that we can use, in conjunction with Backbone JS, to create fast, responsive web apps for Mobile Safari...that still has all the useful bits of UI and transitions etc that would make the app shine?
Hmmm... I agree with you about the JavaScript framework bloat part. I found that quite frustrating with jqTouch, jQuery Mobile and Sencha as well. There was just too much stuff that didn't need to be there. Then I looked at Zepto and BaseJS, but they were mostly just for mobile JavaScript and provided no controls or layout help. So I rolled up my sleeves and reinvented the wheel. I created a framework called ChocolateChip-UI. It provides a clear and straightforward markup language for mobile Web apps called WAML (Web App Markup Language). It also provides many standard iOS type controls and layouts that are easily customized to create unique looks. Most ChocolateChip-UI controls can be hand-coded or created dynamically and initialized with a simple call. ChocolateChip-UI takes care of making the controls have the appropriate behaviors.
I took a quick look at Backbone and my feeling is that it should be possible to use ChocolateChip-UI's layouts and controls as Backbone Views. The root of all ChococlateChip-UI apps is "app". This will have one or move "views" which can also have "sub-views". So, it seems like you should be able to map ChocolateChip-UI views and subviews to Backbone views. If you get this to work, please do let me know. Regardless, when I have enough spare time I'll be interested in testing it myself and seeing if I might make a special version of ChocolateChip-UI with Backbone support built in for those that want to use Backbone. Basically then that version of ChocolateChip-UI would become an enhanced view engine for Backbone.
For that matter, ChocolateChip-UI is open source. Feel free to cannibalize or lobotomize it to suit your purposes.
Sencha Touch is indeed quite 'jump feet first into it and go the whole way' - But in my opinion this is worth the time. (I'm currently in the proces of 'getting into Sencha Touch)
In my own search for the right framework I also came across NimbleKit (http://www.nimblekit.com). Nimblekit is in it's stable release, offers the iOS UI elements and can be extended with any JS Library you wish. Yet, Nimblekit is not web-app based...
Because of that the choice comes down to jQuery Mobile (and wait for the further development of this library // performance optimization) or Sencha, a very extensive framework but a steep learning curve.
The performance of Webapps will always be difficult to optimize.