Click here to Skip to main content
15,879,326 members
Please Sign up or sign in to vote.
2.00/5 (1 vote)
I program with visual studio : vb.net, c#, asp.net and RPG.

I want to develop a new application like a calendar which must run on : mobile, tablet , web.
The database can be Sql Server or DB2 (depending on the customer).

I have been reading a lot of articles about: telerik, xamarin, ibm worklight, trying to decide the right technology.

First choice: ibm worklight. Maybe because I don't know so much about java and eclipse, but I didn't understand how it works. It's a very complex configuration and a mix of plugins put together. The benefits about worklight is that it has an hybrid project (android, iOS and web) which even connect easely to DB2. Although I didn't understand if I could develop iOS project without Mac. In few words too complex.

Second choice: because the DB is so different, I thought that WCF was the right technology for the connection with DB with Visual Studio and Xamarin. I think the integration with VS is too expensive. I didn't try it at all.

Third choice : then I saw visual studio 2013 with the Telerik plugin and it's AppBuilder project. I just took a look, but I didn't see a designer. It seems it must be made all by HTML 5.

Eventually I got lost !!!!

Maybe I haven't seen other possible platform. Before I take a choice I want to be sure I evaluated all the products on the market.

Has anybody developed a software on so many platforms ?
Has anybody on a technology I wrote above ?
Can anybody suggest me or give me a hint about the best technology to use ?

Thanks in advance.
Posted
Updated 27-Aug-14 12:18pm
v2
Comments
Sergey Alexandrovich Kryukov 27-Aug-14 18:21pm    
What you describe is not "hybrid", this is more of "cross-platform". Very roughly, at this moment, most existing approaches are classified in two: 1) based on Java, 2) based on CLR; in both cases, quite possible to develop on Windows, but testing on, say, iOS, would be useful. But, in proper setting, some other people could do this testing.
Yes, many developed cross-platform solutions, including myself. The notion "best" is something not really defined...

Well, in what I say, Web should be excluded. This is not because this is difficult or impossible, but because the notion of application itself is different. In other words, the concepts like "the same functionality" cannot be defined. It's never the same.

Web is not a platform, so you cannot compare it with OS. Web is much more limiting. The application is executed on both client and server parts, it uses stateless protocol, and so on. By definition, it cannot work in a way analogous to applications based on OS platforms...

—SA
antonio.cosentino.70 27-Aug-14 18:47pm    
Hi Sergey, thanks for answering.
For what I have seen, technology in this moment towards moving fast in mobile direction included Microsoft, IBM, Oracle etc..
The issue is to take the right choice before to start.
Probably, once I would have taken my choice, some "perfect" developing environment will come out.
In this moment, though, it seams to me that there are a lot of tools mixed together that make a developing environment.
The evidence is Xamarin or Telerik in Visual Studio and IBM worklight in Eclipse.
They making a race to get there first. My personal opinion is that nobody has really completed the job.

That's is why i'm confused.

So you developed a cross-platform application.
What did you use ?
Sergey Alexandrovich Kryukov 27-Aug-14 18:58pm    
I mostly used Mono... If you develop using even Visual Studio, the same application can run on Mono for Windows (and this is the most critical test), and then on iOS, all without recompilation. Still not easy...
—SA

Well, Microsoft suggest Web API
using json which can be used from everywhere you easily interact asyncronously with your middleware.
like a proxy on your website ideally, using whatever infrastructure you have, like preferably WCF if you have clients that are not browser.
http://www.asp.net/web-api/videos/getting-started/aspnet-web-api[^]
 
Share this answer
 
Going Native way, best way is to develop it using Eclipse and X-Code separately using JSON Web Services. Develop UI separately and use Web services for Business Logic.

Else if you develop with Xamarin you will need Mac OS for I-Phone application, and only part of code (like Business Logic) can be shared. Xamarin is good if you can pay for yearly license. The skill set requirement is higher even though the C# Code can be shared. The design pattern of Android Application resembles how you do in Eclipse and similarly for iOS it resembles to X-Code. Only the language used is C# instead of Java and X-Code respectively.

Another alternative is Phone Gap. I used this and it is very much meaningful for a developer with C# Background. You can develop using VS 2012 on Windows 8.1 and you can test executables like APK, XAP etc. on cloud. If your Application have not much to do with OS specific native features then Phone Gap is easiest way.

My recommendation is Purely Native Separate Codes, secondly HTML 5 (PhoneGap Free or Enterprise), and lastly Xamarin.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900