I am a C# windows developer. I recently started to work with WinJS. Working with WinJS, I have noticed some challenges and limitations. Can face some new challenges as the community support for WinJS is very less. Below are the few points mentioned regarding this concern
a. WinJS does not support Visual Studio features like Finding References of Classes and Variables which is very useful to code productively.
b. WinJS is not strongly typed as C#. So we will get to know about the errors at runtime only instead of compile time which is difficult to Debug and time taking process.
c. WinJS does not support feature “What you see is what you get”. Visual Studio designer is not available for WinJS. We can see the application design only after we run the application which is again time taking thing.
There are very less chances of availability of “Ready to Work on WinJS” resources. Because most of the developers in Windows community work on C#, XAML languages.
d. Direct compatibility of third party libraries for WinJS might not be available.
Have anybody experience in WinJS and faced similar issues? Or Are there any solutions exists for this? What is the scope of improvement in Windows 10 version for WinJS??
For an HTML/CSS/JS designer, that's what Blend for Visual Studio is for. Load the project into Blend and you'll get a designer that also works when you're running the app. Documentation for this is on https://msdn.microsoft.com/en-us/library/jj129478.aspx, and there's a great video from //build 2013 that shows the flow, http://channel9.msdn.com/Events/Build/2013/2-311. I also cover using Blend to some extent in my free ebook, Programming Windows Store Apps with HTML, CSS, and JavaScript, 2nd Edition.
https://dev.windows.com/en-us/develop/winjs
see this link it give the solution your problem which is given below
a. WinJS does not support Visual Studio features like Finding References of Classes and Variables which is very useful to code productively.
b. WinJS is not strongly typed as C#. So we will get to know about the errors at runtime only instead of compile time which is difficult to Debug and time taking process.
c. WinJS does not support feature “What you see is what you get”. Visual Studio designer is not available for WinJS. We can see the application design only after we run the application which is again time taking thing.
Related
I installed the GtkSharp 3.22.24.36 package via Project > Add NuGet Packages..., which completed successfully. But now Monodevelop can't decide which version of GtkSharp to use (3.22.24.36 or the in-built one, 2.12).
If I uncheck gtk-sharp in the Edit references... dialog, it tells me that I can't use the UI designer without it.
How do I get Monodevelop to use the downloaded GtkSharp (3.22)?
MonoDevelop comes with a custom version of Gtk2 + Xwt bundled. If you plan to use Gtk3, then the designer must be deactivated, since it won't work with Gtk3.
My advice, anyway, no matter which toolkit you use, is to avoid using the designer. As soon as you involve the designer, you code heavily depends on the IDE you use (Visual Studio, MonoDevelop, NetBeans... you name it).
Creating user interfaces "by hand" is no longer traumatic as it was in the 90's with the Windows API. For example, you can find a very good Gtk# tutorial in ZetCode.
User Interface Toolkits are actually very similar, they change the name of widgets and sometimes provide a slightly different layout, but they are all mostly the same, no matter it is WinForms or Gtk(for C#), Swing (Java), or Qt (C++ and others).
I know its an older question but things changed. Abandon MonoDevelop, just use the .NET Standard bound implementation of GtkSharp. You can then literally design interface using glade xml files, using official Glade application from GTK+. You can find it here.
With the current push from MS to abandon Framework in favor of Core, we finally succumbed when we figured out they will kill Framework (which they just did with .NET 5 announcement), but we also used the opportunity to investigate other options for our ports of LoBs to core. We discovered GtkSharp as WinForms replacement and AvaloniaUI as WPF replacement, which not only work perfectly but also truly work cross-platform. We ported several applications already and actually moved more then half of business work stations from Windows to Linux.
I am embarking on my first windows phone app. I noticed there are two templates one is in Javascript (Blank App (Universal Apps)) and the other in C# (XAML) again Blank App (Universal Apps). Which one should I use, I know it depends a lot on the project context, but basically its just a simple phone app, that reads and displays data, mostly crud operations. Any help is appreciated.
I think there are a lot of resources in the internet regarding this question.
For example:
http://www.itwriting.com/blog/8350-xaml-and-c-or-html-and-winjs-for-windows-store-universal-and-cross-platform-apps.html
http://www.neowin.net/news/microsoft-likes-winjs-for-making-windows-8-apps-but-most-developers-prefer-xaml
https://softwareengineering.stackexchange.com/questions/156361/advantages-and-disadvantages-to-using-xaml-c-or-html5-javascipt-for-metro-apps
If you have a C#/.NET background, choose XAML - if you have a web background, choose WinJS...
I think that XAML is more popular than WinJS (especially for Windows Phone).
Here's my take to add to the list--http://www.kraigbrockschmidt.com/2013/01/17/html-javascript-xaml-directx-language-windows-store-app/ . In my partner-facing role at Microsoft I got this question quite a bit, and it really boils down to personal preference and experience unless you run into a place where the languages don't quite have parity at present. Parity was more of an issue in Windows 8, many areas were resolved for Windows 8.1. (Parity is more a matter between Windows/Windows Phone now rather than between the languages.)
Personally, being the author of Programming Windows Store Apps with HTML, CSS, and JavaScript, Second Edition (free ebook, Microsoft Press, 2014), I like the JS approach very much because you can leverage standards. On the downside, JS code is the least secure of all the options (see this blog post of mine), which might be a make-or-break consideration.
I'm completely new to Windows Phone and the Windows galaxy in general as far as programming goes. For a project of a phone app that has to run on a windows phone, I started exploring the resources and I have some questions.
One of the problems I encountered is that things change very quickly. For example, answers to this question say that browsers in Windows Phone will most likely not support HTML5. However, there are many online tutorials (for instance here) introducing ASP.NET MVC 4 and how it is appropriate for mobile apps.
I would personally like to go the "HTML5+javascript" way instead of learning how to develop with Silverlight, which apparently has been discontinued by Microsoft. However, my first concern is evidently to be able to create an application that works!
So with that in mind, my questions are the following:
My impression is that HTML5+JS is being introduced in replacement of Silverlight and will be more used in the future. Is that correct?
Knowing that I have to build an app which should be able to play videos and audio, record audio, and connect to a library to do some speech processing in the background, should I use Silverlight or can I try using ASP.NET MVC 4? (From what I gather, Silverlight would be better than XNA)
Are there limitations to using HTML5+JS as compared to Silverlight or the other way around?
Can you package a web app (i.e. using HTML5+JS) to be used locally on the phone if there is no access to a distant server?
Any specific pointers or answers on these specific issues will be more than welcome! :)
Currently, Windows Phone 7.1 does not support full HTML5+JS as a replacement for Silverlight. In Windows 8 (NOT the next version of windows phone, but the next version of Microsoft's desktop OS), HTML5+JS is presented as an alternative to using XAML and C# (it's a little confusing because on Windows 8, "metro" apps do not run Silverlight, but they still operate using XAML and C#). But that's neither here nor there... To summarily answer your question(s): In the phone's browser, there is very limited HTML5 capability.
From what you've described, you definitely want to use Silverlight for your Windows Phone app. The answer to that part of your question has never changed, Silverlight from the beginning of WP7 would be your best option. XNA is exclusively designed for gaming development.
To answer all of your questions, point by point:
My impression is that HTML5+JS is being introduced in replacement of
Silverlight and will be more used in the future. Is that correct?
This has not been confirmed (as of this post), but speculation is that this will be the case in some future release of the OS (no word on when that may be). But no, this is not currently an option, and there is no promise from Microsoft that it ever will be.
Knowing that I have to build an app which should be able to play
videos and audio, record audio, and connect to a library to do some
speech processing in the background, should I use Silverlight or can I
try using ASP.NET MVC 4? (From what I gather, Silverlight would be
better than XNA)
Silverlight. Silverlight. Silverlight. :) ASP.NET + MVC will not work. XNA is intended to be used for building games. Attempting to build more standard user interfaces using it would give you a migraine to say the least, and would not look anywhere near good.
Are there limitations to using HTML5+JS as compared to Silverlight or the other way around?
and
Can you package a web app (i.e. using HTML5+JS) to be used locally on the phone if there is > no access to a distant server?
As answered above, there is no way to do this on the phone.
As for pointers on all of this. I strongly encourage you to simply google (or bing if you're into that kind of thing) "getting started with windows phone" or "windows phone tutorials". Best source I could point you to is the Windows Phone Developer website. It's got some great tutorials that don't assume you know lots about windows phone. Best to get this material from Microsoft. It'll be more reliable, more well written, and ultimatly more useful. I've been writing Windows Phone apps since before the phone was released, and I still use it for learning the basics of something new. Great place.
Redmond has a good idea occasionally:
The next-gen Windows will come with a new programming foundation, letting developers build native apps with the same techniques they use for Web applications. Microsoft calls this new variety "tailored apps."
There is always a steep learning curve for developing GUIs; each new toolkit you learn is different enough that it takes a lot of time and effort and frustration. Thus developing in HTML with CSS begins to look very appealing: it's much easier and much more portable; and with HTML 5 and CSS 3, it is very powerful.
Is there any support yet on Ubuntu (or even better, a cross-platform toolkit) for developing native applications that use HTML/CSS for the GUI? To minimize overhead, I do not want to start a full browser session. (That's not very good desktop integration.) I am particularly interested in answers for native JavaScript or Python 3, but any language would be alright (easier to learn a new language than a new GUI toolkit, in my book).
Edit: I have found this page, but have not had time to read it all or test it. It linked to Python XULRunner, but again I have no previous knowledge of it.
This was asked on Ask Ubuntu back in August of 2011.
In summary, the options are:
SeedKit
The JavaScript bindings for GNOME.
There are more options, but those are the two "big ones".
You can write native apps in HTML/CSS and Javascript using node-webkit, is an app runtime based on Chromium and node.js, you can use node.js modules into your apps. it's available on Linux, Mac OSX and Windows
I would like to add QtWebKit to the list. It's like SeedKit with better support.
I'm using it personally on a project where we have native (C++) code for the data layer, business logic and the presentation layer is done via HTML5 and heavy use of JavaScript. As far as I know Qt can be used with python as well so perhaps you could use it for all the business logic.
I am getting into ActionScript-ing and SQLLite development.
What are the essential development IDEs and utility tools I should get set up for a smooth development experience?
It would be great if you categorize - as free and paid-for-software.
I am accustomed with the Microsoft "free" experience in terms of - Visual Studio Express edition or SQL Server Express edition.
Are there similar counter parts for this platform?
FlashDevelop - Open source IDE for flash but no visual designer. As far as SQLLite you can actually create and manage the databases all with actionscript but if you want to edit/create them with an IDE there are several open/free solutions, from a quick google search we have:
//SQLLite DB manager/admin tool made in Adobe AIR
http://www.dehats.com/drupal/?q=node/58
//Same idea but open source made with QT so probably C/C++
http://sourceforge.net/projects/sqlitebrowser/
//FlashDevelop
http://www.flashdevelop.org/wikidocs/index.php?title=Main_Page
Flashdevelop is pretty much king when it comes to code hinting/completion, pretty much what you'd expect in features from microsoft VS IDEs. There is also a pretty good user base and thus many tutorials/documentation and project templates.
I too use the DB admin tool formerly from www.dehats.com, which has since been renamed Lita and put on GitHub . However, a significant drawback to Lita is its complete lack of runtime error reporting when executing SQL queries.
Mauricio Piacentini is an excellent programmer, but Flash developers should be aware that his
SQLite Database Browser does not support the non-standard features added to AIR's version of SQLite, such as additional column affinity types.
So, as a complement to Lita I've been using Paul Robertson's Run! app. It doesn't have as many features as Lita, but it supports AIR's version of SQLite and it does report errors in your SQL queries.
Like Ascension, I'm a fan of FlashDevelop.