As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I know they both use MVVM. Both are used in web development. But should I consider using both in a web app? Is that redundant? I've seen I can use KnockoutJS with [ASP.NET] MVC. But I don't know if I can use it with Silverlight in that way or any other way for that matter. I'm a bit new to both, so I don't know how to go about it.
Silverlight and HTML/JavaScript/CSS are both client technologies. So you would choose one or the other. Knockout falls into that HTML/JavaScript category.
On the server you can use any web services you want. Microsoft or otherwise. But if you like ASP.NET MVC, you can use the actions it provides ass your web services. Or you can use WCF services for the web services, too. In MVC 4 beta there is even a special controller type made for service calls (the WebAPI).
But the real answer is "it depends". Your selection depends on what you are trying to accomplish, your skills, who will maintain it, etc.
Not everyone uses Windows, besides Silverlight does not work on Android, iOS.
They are used for different purposes. What exactly do you want to do in your project?
BTW, knockout.js is included in ASP.NET MVC 4 projects by default.
If you don't know what is knockout I think you totslly don't need to use it)
Maybe the question is: what to choose between asp,net mvc and silverlight?
It's totally different technologies just using same pattern.
If you need to support large amount of users on different devices including old browseres you'll better to use jquery (knockout) or you planning rich feature app for small group of people (like admin interface) its easier to use silverlight.
And surely the is no problem to use them together
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm about to start building my first mobile app and wanted some direction. The app will need to:
run on iPhone, Windows Phone, and Android
access data from a database
be able to determine where it is (e.g., when I cross a state border, when I enter a city, or, generally, when I change locales)
the GUI will be relatively straightforward
After doing a bit of research, I have a few questions:
Should I use a framework (e.g., Rho, Appcelerator, or PhoneGap) or HTML5/CSS3/JS? Or, would I use both of those in combination?
I want to sell the app, so does that preclude building it as a website (i.e., HTML5/CSS3/JS)? In other words, if I build it as a website, doesn't that mean a user won't have to download it and install it like a native mobile app? I like the idea of making it a "native" mobile app vs. a website, although maybe I shouldn't.
Is REST the best way to access my data? My thought is to have a SQL Server database and build a REST service using .NET.
And other tips or guidance would be greatly appreciated.
Thanks,
Jay
If you use a tool such as Appcelerator then you the end product will be native. Appcelerator framework obfuscates the underlying native interfaces for android/iOS. There are a few instances where you'll need to know the differences between the two, for example when to use what Appcelerator class for each device, but in essence, you can write once and deploy to each device. Been using it for a while and is very nice. Appcelerator will give you all the hooks you need to tap into the devices natively.
PhoneGap will just wrap up your app and create a 'web app'. Basically a packaged website. IMO Appcelerator would be the way to go. This is more similar to your second bullet. You'll build the website, you just won't host it on a server. It will be packaged up and deployed to the device. In essence the phone becomes the 'web server' but only in the sense that the device is reading web pages that are local to the device.
As far as data, REST might be the best way to go. the calls would be quick. You may not really need to build your own DB. You might want to look and see if some of the data you are going to use is already out there. Unless you are collecting data. I don't know the details of your app so I'm not sure what help this opinion provides.
Hope this helps.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
in the last months the development of mobile apps has become more and more a focus of mine. I already created a few apps with PhoneGap and also dived in into mobile frameworks like jQuery Mobile ans Sencha Touch.
In a next step I would like to use a mobile apps builder and I stumbled on Tiggr and Application Craft. There are probably even more.
So I wanted to ask if some people here already have experience with those two or maybe even another app builder and share it with us. As both seem to cover the same area and I am not so interested in learning them all. I would like to know if someone can tell me which is "better".
I know that there has been a big topic about PhoneGap vs Titanium Appcelerator that helped me a lot so I hope I can get some helpful answers about this topic as well.
Thanks for reading,
Marvin
I have been using Application Craft for about a month (on and off) and so far i'm really impressed. They seem to be putting LOTS of work into it: things have broken only a couple of times, never anything serious. Also, they are building really thorough documentation, etc. they host the apps for free, and they seem to be adding features etc all the time. I would bet that in a year or so they will be huge; quality services on the net tend to grow fast thankfully.
I hadn't heard about Tiggr until now. From what i can see on their site, it looks as though their free service is far inferior to what Application Craft offer. They may be worth a try too?
Hope that helps
I haven't specifically tried Tiggr or ApplicationCraft, but as you've already mentioned there are quite a few different app creation systems out there, all of which work in slightly different ways. Many, for example MobileRoadie or AppBaker, supply a series of pre-built templates that you can customise and plug together in various ways. This is great if their templates support the type of app you want, but there's often no scripting support so if you want something custom you need to pay for their developers to add the features you need, or you should go elsewhere.
If you want complete control over how your app looks and works then you should use a more IDE-like system with built-in scripting support. Things to look out for in such a system would be a good code editor, a way of immediately previewing your app inside the tools, decent documentation, support, and examples. If you're planning a cross-platform app, you'll want a system that can simulate your app running on different phone screen sizes, so you can tune your GUI appropriately.
AppFurnace is a new cloud-based app development platform that provides all of the above (I should point out that I work for AppFurnace, of course).
Tiggr Mobile is a great service! Check out thier tutorials on creating an app that will run on any mobile device at http://blog.gotiggr.com/. They've also received good press and have an impressive gallery of apps that users have created and submitted.
You should probably put NS Basic/App Studio on your list as well. It provides a complete IDE, including a 'drag and drop' interface for adding elements to your forms. The overall feel is something like Visual Studio. You can program in JavaScript or Basic. More info at http://www.nsbasic.com/app.
(disclosure: I work for NS Basic)
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm trying to develop a mobile app I've been thinking about for a while. I want to know if anyone has used PhoneGap and what your experience has been with using their service.
PhoneGap is a framework for developing mobile applications using HTML and JavaScript. It is not a "service" per se, though they do have some services available, like support and cloud builds, but I suspect that is not what you mean.
PhoneGap is a fine framework and can definitely get the job done if you need cross-platform support for your applications. But it does have some limitations too. So whether or not it will suit your needs depends on what you mobile application does.
If you application is a graphically intense game with real-time rendering, or heavy communications between peer devices or something, then PhoneGap might not be for you. However if your application does not require any of that and is more about using less intensive features of a phone (Contacts, GeoLocation, Accelerometer, LocalStorage) and your UI can be easily created using HTML and JavaScript, then I would say PhoneGap would be great for you.
Some would say that PhoneGap is fine for simple apps and that for really complex, robust stuff you need to go native. I am hesitant to say it is that simple. PhoneGap is capable of making very complex applications in terms of logic, UI, etc.
Where PhoneGap really shines is its ability to work on multiple platforms. If you need to support multiple platforms (iOS, Android, BlackBerry, etc) and do not have the resources to support multiple native code bases, then PhoneGap and the other cross-platform choices (Adobe AIR, Titanium, etc) are awesome choices.
That is the situation that I am in. I am a lone developer that needs to support 3+ platforms. There is no way that I am going to waste my time doing native development for iOS, Android, Blackberry, etc, when I can get exactly what I need with PhoneGap, AIR or Titanium. I can get what I need in a fraction of the time with MUCH less maintenance using one fo these frameworks.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Is Windows forms Simart Client is a legacy thing now? And is it to be replaced by Prism (and/or MVVM)? Should I bother to learn about Smart Client?
Another question which might be related to is that what are the performance differences between Winforms and WPF apart from all the cool stuff in wpf like data binding and 3D? Does WPF struggle to run on Windows 2000 and Pre2000 OS? This question is important because it can very much decide which platform you are going to use winforms or WPF when you have to support old OSs (for e.g. in NHS)?
Having worked with both the Smart Client Software Factory and WPF + MVVM, I'd certainly consider SCSF "legacy". I wouldn't use it on a new project. First, it's based on WinForms, but maybe more importantly, it's a bloated framework. It's cumbersome and does not lend itself well to unit testing. I found, after developing an application with it for the better part of 5 years, that the framework just "got in the way" far too often.
I can't speak to Prism, but after my experience with SCSF I would shy away from any out-of-the-box frameworks. When I started working with WPF and MVVM I wrote my own "framework" bits. Really, the only things I found I needed were a good IoC container (StructureMap was my choice) and an EventAggregator (two interfaces and one class implementation that I wrote myself, borrowing directly from a post on Jeremy Miller's blog). Other than that, I go with straight WPF and the MVVM model of development.
Given a greenfield desktop application, my choice would be WPF, MVVM & STructureMap.
I think your first question pretty much comes down to WPF versus Winforms, which have been answered before.
However, regarding your second question about WPF on Win2000 and earlier, WPF is a part of .NET 3.0 and you need at least XP SP2 or Win2003 Server for .NET 3.0 as can be seen here, so if you want to use .NET in a pre XP environment, you'll have to stick with WinForms.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 13 years ago.
Why not to empower WPF or ASP.NET instead of creating a new product?
ASP.NET is simply a server-side language for websites. While they have added support for things like AJAX ASP.NET Controls, it still can't come close to the level of richness Silverlight is capable of.
And then WPF requires the 200+ MB .NET Framework which can only run on Windows.
Silverlight was created as a lightweight 5 MB plugin that can run on Windows and Mac alike while meeting strict security guidelines for Internet use. From my point of view, Silverlight is a different tool for a different purpose.
WPF is meant for regular desktop applications and cannot be embedded in a webpage (XBAP isn't the same), and ASP.Net has nothing to do with Silverlight. (ASP.Net is a server-side technology; Silverlight is client-side)
To complete with flash and offer an all in one solution to all types of development and take over the world. Not that it will beat flash and its lineup of tools any time soon.
Because no matter how you empower ASP.NET or WPF you won't get the richness of Silverlight, Flash, ... in a web browser. Javascript's kind of limited.
ASP.NET runs on the server, what was needed is something to run on the client.
WPF is empowered enough already, what was needed is something which can run on the client in a secure manner and that can't be used easily to do malicous things. In other words far from "empowering" WPF, some form of WPF needed to be seriously curtailed.
In addition it can't be assumed that a full .NET framework is present on the client, Silverlight is designed to contain just enough of the needed framework to make things happen with minimal requirements on the client.
A better question might be - why are WPF and Silverlight 2 separate things?
My best guess is that the decision was made to separate them "because we always have separate technologies for developing web vs. developing desktop applications" - but things are not nearly so cleanly split anymore and would make sense to see the 2 merge together.
Probably starting from scratch you wouldn't have both Silverlight and WPF.
I suspect that deep in the MSFT psyche they still don't 'get' the web - WPF was a way of modernising drawing on the desktop, adapting it to web was obviously an afterthought.