We have determined it’s too difficult for us to maintain the bulk of javascript we need to write full-scale “single page” javascript “applications”. Relying on programming conventions still has left us wanting… especially in the area of refactoring. For developers new to these projects, they find it very difficult to change anything because they have no faith they know who else is truly relying on the component (things easy to do with “find all references…” and code access levels in strongly typed languages).
We’ve been playing with GWT, but one of our developers wants to use Script#. We are already a Microsoft-based shop, and do all of our server-side work in C#.
I don’t consider java to be a show-stopper for GWT, as it’s extremely similar to C#.
My initial concerns with Script# primarily revolve around support and documentation.
On one hand we have Google, on the other… “Some Dude”.
Script# is also closed-source… so if the developer stops working on it, are we S.O.L.?
I also feel GWT has more documentation and community support.
Anyways, have you worked with both? Thoughts? Pros/Cons?
(To head this off at the pass: the question is not whether to go with a compiler or not… the question is which compiler)
Similar, but different, questions:
What advantages can ScriptSharp bring to my tool kit?
Should I use ScriptSharp
I have been using GWT for several years. I have never heard of Script# so I will just tell you why you should stick with the Google solution.
Active development. Google has a paid team of engineers both actively fixing defects and working on new functionality. I am currently in discussions with some other developers on how to implement a new feature for GWT.
Large institution. Google has invested this project and used it to implement large-scale solutions. They’re eating their own dogfood, in other words. They have a vested interest in not letting it stagnate or become obsolete.
Community. There are plenty of people working on add-ins/third-party/etc libraries and APIs to use alongside the vanilla distribution. These same people are also testing, filing, and fixing defects.
Compatibility. GWT can work with anything that the browser can do. There are also plugins for jQuery and other major JavaScript libraries that just make it plain easier to manage the complexity of your project when working with JavaScript.
Open. You touched on this yourself.
Notice how I didn’t touch on issues of language choice. I don’t think that’s really relevant at the level you describe. Remember that the first time you run into a limitation or road block with Script# you’ll become quickly stuck due to the things that both you and I described.
Of course, I recommend GWT just because of the track record.