Delphi and Sencha Touch - delphi

In this question I've been told about Sencha Touch as the "solution" fo r writing x-platform mobile/touch application. I browsed Sencha Touch demos using an iPadSimulator and wow... The experience is native, not web application.
So for what I need to achieve, this is very good.
Now, how is it possible from Delphi create a Sencha Touch powered application? Did anyone has an example?
ExtPascal doesn't support it directly, I searched on google and I found this post that states it. That post also says it will be supported may be next year.
By the way I also heard that it is possible to use ExtPascal as an engine for the web application (like for having a fast-cgi application) and then simply generate all the javascript manually. So in this case may be it would be possible to use Sencha Touch too.
I am not an expert at all in this area, could you please give me some hint (or some example) to take a good direction?
Thanks.
UPDATE: basically what I mean is, may you please guide me in making the GeoTweets Demo using Delphi, or even better, can anyone post it?

By studying a little more the subject I "discovered" that Delphi is not needed for creating Sencha Touch applications, since a minimalistic app just needs an html file and a javascript file.
Delphi will come into picture for managing user session and data, but that time the question will not be about Sencha Touch, but probably on how to manage JSON calls with Delphi in the best way. But this after I learnt more about Sencha Touch...

Related

Dojo vs jQueryMobile [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
With jQueryMobile I came to the point where I have to think about using another gui-framework.
E.g.: I'd like to have list-items to be swiped away from the list, to be deleted. The distance the list-items is swiped out should be the distance my finger moves the item. It shouldn't be automated. Well it should, when I release the finger, to finally remove it. jQm doesn't have approtpriated swipe-events for this. Furthermore jqm is extremely slow recognizing events.
I just found the dojo-framework. It seems to have better touch-events and it offers mvc. I'd like to check it out, but I don't have much time at the moment, so I'm depending on your opinions.
Now I'd like to ask a few questions:
Would it be possible to use swipe-events on list-items, like native applications to support?
Does anyone know if it'd have disatvantages to use dojo instead of jqm?
Is dojo using require.js?
Thx for your advises :)
Would it be possible to use swipe-events on list-items, like native applications to support?
Yes, Yes, Yes.
using a combination of JQM swipe events and some JQ.
if you search that same question on Stack overflow you'll probably get the answer.
Does anyone know if it'd have disadvantages to use dojo instead of jqm?
well think about this way. Do you think JQM that is releasing new versions every 6 months or so will ever stop to do so. And with each version, there's lots of improvements and Addon features. Depends whats your flavor. If you know JQM well, stick with it. If its alien to you, and you find Dojo easier to use then work with that.
Is dojo using require.js?
i never heard of dojo. but now that you mentioned it ill have a look.
have you checked the docs on requires js compatibility with whats out here? perhaps is a universal plugging.
ps. I just checked some Dojo demos. Looks Good.
Would it be possible to use swipe-events on list-items, like native applications to support?
Dojo provides several synthetic events (events that are calculated based upon other native events like touchstart, touchmove, touchend, ..). You can find those at the dojox/gesture module. It provides synthetic events like tap and swipe.
If the list item widget (dojox/mobile/ListItem) doesn't support it, that doesn't mean it's impossible. Dojo allows module inheritance and extending modules/widgets so it should be possible to implement that feature yourself.
Does anyone know if it'd have disatvantages to use dojo instead of jqm?
The second question you ask is primary opinion based*, but you cannot actually compare the two. While Dojo indeed has a mobile framework (dojox/mobile) like jQuery has with jQuery mobile, Dojo also has a lot of extra stuff (like you mentioned mvc) which means you need third party frameworks to do the same thing with jQuery (for example by using AngularJS).
Dojo's community is smaller than the jQuery community, so that means it might be harder to find support, tutorials and guides.
Dojo mobile is actively developed by the community and IBM also has also made a lot of improvements because they're using this in a product of their own called IBM Worklight.
(* So be careful if you don't want your question to be closed)
Is dojo using require.js?
The idea of require.js is derived from the Dojo AMD loader, however, Dojo picked the path to support backwards compatibility and so James Burke (Dojo developer and now Require.js lead) created his own framework based upon those concepts. So no, Dojo doesn't use require.js though they're very similar because they're based upon the same idea.
However, Require.js should be able to support Dojo. So you should be able to use require.js in stead of the Dojo AMD loader if you want to do that.

Is Sencha Touch a UI framework that can (or should?) be used with PhoneGap?

I'm planning to develop my first mobile app and wanted to leverage my skills as a web developer. Thus, I started to look at PhoneGap. In the process, I realized that I probably should use some sort of UI framework. It seems that jQuery Mobile has speed issues. Sencha Touch 2 supposedly is faster. So, I figured I should use PhoneGap + Sencha Touch 2.
However, it's seems to be that Sencha Touch 2 is not a UI framework. It seems to be something similar to PhoneGap. I might be heading in the wrong direction here.
Questions:
Is it a good idea to combine PhoneGap and Sencha Touch 2?
Are there other UI frameworks worth looking at?
Well, Sencha Touch is totally different from PhoneGap.
PhoneGap in a nutshell gives you javascript APIs which access native apis on many mobile platform.
Sencha Touch 2 is essentially a cross-platform mobile web framework. Although several native apis are introduced in Sencha Touch 2, please note that it's not the most important thing which makes ST2 outstanding. ST2 is best known for its solid and flexible class system, rapid mobile-web application development (then probably packaged as a native app), and robust UI customization as it utilizes SASS well.
It seems you are new to ST2, so please read the following articles carefully:
http://docs-origin.sencha.com/touch/2.2.1/#!/guide/getting_started
http://docs-origin.sencha.com/touch/2.2.1/#!/guide/first_app
And especially you have to understand this article thoroughly if you want to get the most important concepts of the class system.
http://docs-origin.sencha.com/touch/2.2.1/#!/guide/class_system

Charting control options for Silverlight for Windows Embedded

I want to make a charting control for an embedded device using Silverlight for Windows Embedded. Currently i am planning to use line shape for drawing the graph.
My question is if its a good approach(performance wise) or should i look for other options.
Or if any controls are available for SWE.
Thanks
Silverlight is not a proper answer to drawing charts on an Windows Embedded Compact device. You should go for using (or creating) a native GDI element. If performance is very important (e.g. for a fast-updating chart), you might also consider DirectDraw.
The best way in a commercial project would probably be to use a readymade component, such as this one.
You can find somebody else's experiences and advice here for pointers to what to look for when doing this yourself. If you expand your post with more details about what you are actually trying to achieve, I might give you a more detailed response.
The answer is stop using Silverlight, since Microsoft is abandoning the product. Do it in Flash—or better yet, use HTML5 and JavaScript.
In recent windows embedded applications that use windows universal apps I would highly recommend oxyplot.
http://oxyplot.org/
These plots are the best I've found on the internet so far and very easy to use. Best of all they are free. You can get these using a NuGet Package manager which makes getting updates fairly simple.

iOS (iPad) application on Flex/Flash Builder 4.5 - SplitView component?

(Disclaimer: I'm a beginner in mobile application development and I'm quite weak with programming but I'm willing to learn new things and take on new challenges. I apologise in advance if my question turns you off, or if it seems as though I haven't done any research. I did all the research I could but it didn't help me much.)
I'm new to developing iOS applications and my school gave me approximately 5 months to develop an iPad application. I have no knowledge or practice on Objective C so since Flash Builder 4.5 allows the development of mobile applications (and I have experiences with Flash Builder), I decided to develop my application on Flash Builder instead.
Everything is going fine until I was told to include a SplitView in my application. I implemented a List on the left side of the application. Clicking on any of the list items will navigate the user to a to another view but i also included and retained the list on the left side of the new view in order to simulate a "SplitView".
Initially it felt as though it will do the job of a SplitView like how it does when I attempted it on XCODE but it doesn't look or feel natural.
I found this video which shows that it is possible to create a SplitView on FB but I've cracked my brains and I really can't figure out how it is done. Is there anyone who can provide me with a rough guide on how to implement this? Thank you very much in advance.
Edit:
At the moment I implemented
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark">
<s:ViewNavigator id="MainView" left="292" width="732" height="748" firstView="views.MainView"/>
</s:Application>
this way, i can manage to navigate through the views without effecting the Root View Controller. this might not be the best way but it'll suffice at the moment. Are there are any better way to do this?
Take a look at the eskimo library
It has a lot of nice mobile features like "native" look and feel for both android and iOS.
Furthermore, it features some mobile components.
I believe the one you are looking for is called SplitViewApplication.
You will have to download the zip file though to unveil it since it is currently not on the feature list on their website.
EDIT
Apparently, Flex SDK 4.6 also supports this feature.
It has been released 2 days ago. You might want to check that out as well.
Cheers
Looks like HDividedBox is a right component for you.

Sencha Touch or jQuery Mobile? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I wonder if I were to develop a mobile Web app (now, in two weeks, or in a month), which one should I go for? Which one would you mobile Web developers go for?
If jQM 1.0 were officially released today, I would most likely embrace it (as long as it actually delivers what it promises). Now that it is in alpha, I wonder whether it is worth to jump into it yet for a commercial grade project? Would Sencha Touch be a better alternative?
Sencha Touch is an application framework (you create your interface programmatically through Javascript) while jQuery Mobile is more of a mobile enhancement library (you write regular HTML for your content, then add jQuery mobile for transitions/animations). jQuery Mobile has an easier learning curve, but Sencha Touch can better simulate "native" apps.
The first question you need to ask yourself is what is the purpose of the application. If you want to release an application for sales on one of the retail outlets (iTunes, Andoid App store), or you need access to device specific functions that are not accessible via local APIs yet (accelerometer, camera, contacts, etc) then you should be thinking Native or one of the hybrid solutions (Appcelerator, PhoneGap, etc.).
If your audience is going to be more in the "mobile web" space, such as a mobile version of a corporate web desktop site, or intranet web application port, then you should be looking at Sencha Touch and jQuery Mobile. The decision between those two is really going to be based on you development experience and and what you feel more comfortable with. Sencha Touch is a VERY robust platform that has a Desktop (ExtJS) and mobile (Sencha Touch) that mirror each other so knowing one pretty much allows you to get up and running with the other. Also, Sencha has moved to an MVC model on the client which really helps to organize client side code and make it much more congruent with server-side development platforms.
The post above is actually incorrect, using the MVC pattern on the client combined with the historyUrl on your dispatch commands gives you the ability to use the browser back and forward buttons of the browser, so that is not exclusive to jQuery Mobile. Also, the Sencha Team's suite of products includes a Designer application that provides Designer which is a WYSIWYG editor that allows for the drag and drog creation of UIs. This company's roadmap has them in the process of updating the Designer app to allow for the drag and drop design of Touch mobile screens and application that will function with the MVC pattern. They are also getting ready to release a new version of the Sencha Command tool that will automatically generate entire MVC application structures for you in a matter of minutes, which you can then add the necessary custom code to round out your application. Lastly, the new SASS theming capabilities allow designers to use CSS3 and SASS config files along with variables and Mixins to generate cross-browser CSS style sheets for your application.
So, the decision of which way to go for the mobile web development question comes down to how comfortable you are with object oriented javascript. If you are very comfortable with it, then Sencha Touch is the way to go as it very extensible class system built into the core engine that can be customized to your hearts content...but if you have minimal experience with JS and you want the server to deliver your UI and don't mind seeing the Address bar drop down to move between pages (less web 2.0 looking), then jQueryMobile is the way to go.
It's pretty obvious that I am biased to Sencha Touch due to its well thought out class structure, extensibility, very active user community, web/mobile continuity, and constant improvement to the core framework and new tools that simplify development efforts. And not to mention that the Touch platform is more mature as jQM has not reached production mode yet.
I've been using jQuery mobile for a while now. It works well under Blackberry 6, iPhone, and Android.
I wrote an article about it here: jQuery mobile alpha
Though it's alpha, they are showing good progress. I've been looking into their development in github, seems like there's going to be cool stuff by early 2011.
UPDATE 2011-12-01 jQuery Mobile relased version 1.0, finally out of alpha. Read more about it here: http://jquerymobile.com/blog/2011/11/16/announcing-jquery-mobile-1-0/
If you're going to make a mobile version of a website, I am going to use jQuery Mobile. If you're going to make a “native” mobile application, I will be more likely use Sencha Touch.
http://tysonlloydcadenhead.com/blog/jquery-mobile-vs-sencha-touch
Sencha touch has lived longer than jquerymobile but I found that jquerymobile handles device back button much better than SenchaTouch.
I always consider back/history button handling is important in my apps, so I prefer jquerymobile.
I always consider myself a JavaScript programmer, but I like the fact that I rarely need to to type any JavaScript code when I use jquerymobile.
jquerymobile design is brilliant IMHO.
I am also in favor of sencha, JQM is really slow and failed to give an impression of an native app.
Praveen
why limit yourself...
Look into PhoneGap and Titanium Appcelerator
the make the comparison based on what you are trying to accomplish. I know Sencha Touch has a licensing fee and like you said jQM is not officially released yet.
This is a great time to be in the mobile space because there are so many viable options
I think jQuery mobile is easier to learn and seems to be very promising. Version 1.0 is not yet available, but its going to be a good product. I find it very attractive because it is based on jQuery - simplicity is the motto
Don't forget that there is also Dojo Toolkit Mobile. It looks nice, at least at first look and it is built on top of the proven and solid Dojo Toolkit core. http://dojotoolkit.org/features/mobile.
The Dojo Toolkit don't get too much audience recently but it looks like they made a lot of progress from the times it was a bit heavy, I think it is worth looking at it.
I've been trying out the sencha architect and to be honest ithas been a nightmare to get running.
My background is DotNet, html, javascript, VB, java and have been using eclipse etc for a while so am not a huge newbie with figuring out dependencys etc.
Here is what I have struck:
I went to the Sench site, downloaded Architect.
It then got me to download toolkit and sencha touch. I downlaoded exactly what was recommend / instructed by the help files / site.
I have Sencha Architect V2.1.0 Build 584., sencha-touch-2.0.1.1-commercial.zip, SenchaSDKTools-2.0.0-beta3-windows.exe
I also downloaded and installed a new java sdk / run time etc. The install has been done on a dead clean XP box (vmware). Web server is xampp.
Sencha does not recognise the SenchaSDKTools-2.0.0-beta3. You have to hack it using hard to find instructions. Even after hacking it the architect fails to use the proper SDK and gives error messages on deployment.
There have also been numerous errors to figure out along the way and issues where data just wont load even having followed instructions to the letter.
I have spent 11 hours getting to the point where the application will run properly without whinging but it wont deploy. It is bad enough learning a new tool / framework etc without the ide causing grief and the "instructional demos" leading you up the path.
There are lots of people getting the same errors all over.
After 15 hours of effort I am giving it up as a bad job and am returning to IBM XPages / PHP and Blueprint CSS with old fashioned, hand coded html5 / CSS3 and jquery / Ajax / JSon apps.
My reason for doing this: Application Architect keeps pushing you back to the command line. I love the command line, give me a bash shell and vi and I'm good to go. However for complex, multi file deplyoments such as mobile apps a good IDE is worth its weight in gold. Architect is not there yet. I keep needing to lift the hood and hack to get things working.
I originally looked at Sencha for a 12 year old who is interested in mobile apps and is looking for an ide to use. I tried it out - it is not suitable - even getting a hello world type app running is going to be too much for a newbie and the first app in the help files doesnt explain itself but has you copying code for pulling data from a web site you have to sign up for. (ccitybars app).
A big improvement for sencha will be when Architect works out of the box (possibly an installer with sdk, tools , touch and architect all in one) and the fisrt app -walk through is a simple hello world that then builds to entering data, saving data and then displaying data before going multi form.
I was faced with the same choice about half a year ago, then went for jQTouch instead of Sencha Touch, which I found to be extremely Javascript centered. I'm currently working on a port of that same project to jQuery Mobile and I think the transition will be much smoother than it would have been with a Sencha Touch project.
If you know basic PHP I strongly suggest jqmphp.com. Up and running in less than 3 days a whole online mobile based site to order food!
MoSync team has recently done an interesting comparison:
Which Mobile JavaScript framework is the best: jQuery Mobile, Sencha Touch, jQtouch, or Kendo UI?
http://www.codefessions.com/2012/04/mobile-javascript-frameworks-evaluation.html
http://www.codefessions.com/2012/04/which-mobile-javascript-framework-is.html
http://www.codefessions.com/2012/05/which-mobile-javascript-framework-is.html
jQueryMobile wins but huge boost in arm is because of licensing. I prefer jQueryMobile because I don't want someone(thing) else to write my markup, that way hacking becoming difficult (at least for me), however, I do have couple of HTML5 apps under my belt now, one each in jQM and Sencha Touch. Sencha Touch makes it smoother, very hard to learn though while jQM gets you started in a day, there are bug but you usually get around them because of amazing web community around this framework.
I've built a nice production app in a few days using Sencha Touch 2.0 and it's delivering as documented. And, it's FAST. There might be some bugs, but, when I've run into one (which, is rarely), there seemed to be many ways to approach a solution so that it's really not that relevant.
Sencha Touch looks great but it is difficult to use. The Sencha support forums offer minimal support. Sencha Touch 2.x is still in alpha is quite buggy
Sencha touch will be the best option is you are just starting because it is well documented and it has a community support. Also, with phonegap, you spend more time on the development and less on things about other mobile platforms. Phonegap will build the application for you , once you upload it to the builder .
Comparing the two is like comparing apples and grapes...though you want to develop mobile apps with both, the level of comfort with either depends entirely on you.
This chart might be helpful if you want to compare the features : http://www.markus-falk.com/mobile-frameworks-comparison-chart/
Sencha Touch based apps can only work on WebKit based browsers. JQueryMobile based apps can work on all mobile web browsers.
I think you can go ahead with JQueryMobile for next 2 to 3 years. I am expecting in 2-3 years all mobile browsers will be based on WebKit engine. Once all mobile browsers start supporting WebKit, move to the Sench Touch mainly because of very good quality user interface.
I suggest KendoUI
It is unbeatable and fast performance in a training of couple of days. Not to mention the fast update and new features and support for server side wrappers (asp.net, php, jsp). It is unique!
I have used both and they each have conditions where one is better suited then the other.
In my opinion you would use JQueryMobile when
1. You need a quick and light weight mobile implementation of an web application.
2. You have time constraints (definitely faster to learn and implement then Sencha Touch).
3. Native look and feel is not a requirement.
When making an extension to an existing web application where relatively simple functionalities have to be extended to extended to mobile (really fast and easy) I found JQM to be extremely useful and straight forward.
In my opinion you would use sencha when
1. You want a native look and feel
2. You want a higher degree of functionality on the mobile side (possible access to native api's through phone gap)
3. Targeting the latest smartphones (performance is impressive)

Resources