I know this might seem odd for many Silverlight professionals, but alas, thats the case.
I learnt Silverlight just to make app on Windows Phone 7. Hence, for me Silverlight starts and ends with Windows Phone 7.
So, If I have to now design a Silverlight application for a browser, do I have to go back and learn any additional stuff or is the knowledge gained from learning for Windows Phone good enough to dive into creating the browser application.
I do know scope differences like 3.5+ in phone and 4,5 versions of Silverlight in Browser and lack of controls for Windows Phone development.
Also, I come from a development background, not a designing one.
/andy
Andy,
most of what you have learned while developing from windows phone will be applicable to the desktop. There are some differences and you can get a good understanding of those differences here:
http://msdn.microsoft.com/en-us/library/ff426931(v=vs.95).aspx
hth
Related
When I create new Windows Phone project I have an option to create a "Windows Phone" or "Windows Phone Silverlight" app. I know that they have different runtimes and different APIs.
I was under the impression that Microsoft wants to unify Windows and Windows Phone platforms so why is there even a Silverlight version? What benefits does it bring?
Also, if I want to create an app just for Windows Phone and never have plans to bring it to Windows, what should I choose, Silverlight or Windows Phone?
I'd suggest you go with "Windows Phone" (non-Silverlight). It's the new API, which works for both Windows and Windows Phone. At some point you may want to port the app or create a new one for Windows and you'll already know the API (and porting will be way easier). Also, the new API will most likely get more updates and features added, and at some point you may even be forced to update to it (either because the old one is no longer supported, or because it does not have some features that you need).
As it was said in the other answers - the Silverlight option is there only for backward compatibility and is likely to be phased out in time. That is - it's good if you already know the API and have many libraries (yours or others) for WP Silverlight, but if you're just starting - you'd better go for the new technology.
Edit
There is one other thing to consider before choosing between the two types of apps. Some features are only available in a Silverlight app, and others (smaller amount) - only in a Xaml app. Here's an article with some info on the differences: Migrating your Windows Phone 8 app to a Windows Runtime XAML app
Windows RT Xaml is quite new and People have to generate some knowledge first.
Silverlight for phone has been around for years and there's a load of tools available: Phone Toolkit, diverse Controls, etc.
Just killing it off would have hurt many developers who built up intellectual property over a long time forcing them to start over.
When starting a project with Silverlight you will have more things around that help you get stuff done.
When starting with WinRT Xaml, you will have better performance, but will have to figure a lot out by yourself.
So the Silverlight option is there to not throw of Silverlight developers.
I recently started a new project on WinRT Xaml and my experience was that I had to recreate a lot of common tools like Caches, etc. But also a lot of things that were in Toolkits previously are now part of the platform itself. Also, when moving over to Windows 8, you get to share a lot of code which is nice.
Unifying the environment(s) would be ideal. In my opinion, it hasn't been very successful. At one point in time, you could only develop under Silverlight, so what you are seeing is just a newer version of the same thing to keep backwards compatibility as well as to keep Silverlight's developers happy. In the future, it will probably be phased out. Plus if you want to support older Phones, Silverlight is basically your only choice (you'll be surprise, how many WP users haven't updated their 8.0 to 8.1)
There really isn't any other real benefit of Silverlight other than maybe the Windows Phone Toolkit which has been tremendously useful (you can see how many SO's answers rely on this simple addon). Once the universal runtime gets fleshed out to the point where the documentation reflects what's actually available -- then I think it would be the default project for developing in Windows going forward.
If you're just starting, I would use Silverlight the knowledge based is much greater. After you get use to the WP environment then switch to runtime.
Forgive me as this is not programming related question.
I know ASP.NET as well as WinForms development. I would like to know that if i want to learn windows mobile development how difficult it would be for me to start.
Is there a big difference between the two platforms ?
Is coding style and creating form design too different ?
If you know WinForms then you can most certainly rest assured that the Windows Phone platform will be a breeze to learn. I too came from a WinForms background and I found it pretty much a walk in the park to get in terms with Windows Phone. There are of course subtle differences in WinForms and Windows Phone such as Windows Phone uses Silverlight, which is a toned down version of WPF (Windows Presentation Foundation) which is in turn a powerful version if you like of WinForms.
But again, these are subtle differences and you will easily become comfortable using the Windows Phone API.
There are many tutorials on how to get started. Just google or youtube Windows Phone tutorial and you'll find many.
In terms of Coding Style, there are no real differences. The Windows Phone platform is obviously C# compatible so you can quite literally adhere to the same design patterns as you would with a WinForms application.
The main difference I suppose is the use of XAML. When designing a page, you can drag and drop controls which creates XAML.
I am new in windows phone development.
I really have some doubts,
Is WPF is actually using for the windows phone app development ?
I am just confused about to reply to one who ask "Which platform or technology will use for developing windows phone apps ?".
I hope to get a good clear reply here.. I googled it many times. but I didnt get any clear idea yet about this.
Thnks.
No, WP7 development does not use WPF. It uses Silverlight (or XNA for games).
However, the two are quite closely related. WPF was developed in 2006 and introduced the concepts of bindings, creation of UIs via XAML, visual trees, animation, dependency properties and much more. Many of the WPF concepts were re-used by Silverlight, the web-based plugin. Whilst WPF and Silverlight are similar, they are not the same. Despite this, with a little effort, code sharing between the two is possible.
See the following question for more references:
Getting Started with Windows Phone 7
Windows Phone 7 applications can be written using Silverlight or XNA.
With Silverlight you use XAML to create your user interface (as in WPF), but there are couple differences between these 2 technologies: Contrasting Silverlight and WPF.
I've heard that Windows Phone 7's user interface (UI) is completely based on Silverlight. Can anybody confirm this? Or it is implemented by other frameworks?
Windows Phone 7 will support developing apps in either Silverlight or XNA.
Are you asking if the shell, etc that comes on the phone itself is written in Silverlight? My first question would be "why does it matter what Microsoft used?" It's probably a good bet that they leveraged it, but I doubt they did everything in SL. At some point they have to get down to the OS. For example, I doubt the built-in media player core or Office apps are SL.
Looking at the unlocked emulator image contents would certainly let you deduce which parts were developed with what technologies. I leave that exercise to you.
Indeed Silverlight is used for third-party apps on Windows Phone 7, plus XNA is supported too as mentioned.
However the Office apps and some first-party applications are written using the Iris framework which is an internal only developer framework similar to WPF, it is the same framework used for the Zune Software (Dorado) which is used to sync to a Windows Phone 7 device.
Yes it is based on Silverlight
I can tell you one thing, they are using Expression Blend (or a modified version of it) for parts of the core UI design. You can see the developers using this on one of their promo videos.
If I want to develop for Windows Phone 7, what should I learn? XNA, Silverlight or other?
Microsoft has not yet announced what the development environment will be. They say they'll get more in-depth at MIX. If I were a betting man, I'd guess you'll get XNA out of the box, followed by some light version of Silverlight.
EDIT
I'd say it's no longer a guess that it will be Silverlight and XNA just based on the MIX sessions for Windows Phone.
If you want to make applications (or even simple games), choose silverlight. If you want to make 3d games, or games with xbox live integration, choose xna :-)