代码之家  ›  专栏  ›  技术社区  ›  David Robbins

ScriptSharp能给我的工具包带来什么优势?

  •  20
  • David Robbins  · 技术社区  · 17 年前

    目前,我们使用jQuery为我们的应用程序添加RIA优势,但最近我们一直在Sharepoint门户中实现Coveo搜索引擎,并发现他们的产品中使用了ScriptSharp。ScriptSharp能带来什么?

    5 回复  |  直到 16 年前
        1
  •  23
  •   Jim Raden    17 年前

    我正在使用ScriptSharp,大约在2-3周前发现了它。老实说,我喜欢它。原生Javascript是一个挑战,DOM模型使客户端编程变得更糟。大约六个月前,我发现了jQuery,我认为这是天赐之物。jQuery提高了我的生产力,但我仍然经常被jQuery所困扰,因为你仍然需要编写、调试和调整Javascript。

    输入ScriptSharp。它提高了我的工作效率,大大减少了我的头痛。我能看到的最大优势是C#和Visual Studio的强大功能是你的 当你写代码的时候。 其力量不容低估。现在,过去需要数小时调试的小Javascript错误被消除了 在编译时。 代码行数可能是jQuery的两倍,但生产率要高得多,所以谁在乎呢?你基本上只是编写代码,编译/测试/调试周期要少得多。小时变成分钟。

    我会说,最初让ScriptSharp使用微软AJAX是相当困难的,直到我了解到 非常重要的一步 非常 很容易把它涂上光泽。)关键是在创建ScriptSharp库时选择项目类型“网站内的Script#类库”(或“网站内MS Ajax类库”)。这将ScriptSharp项目放置在网站的Bin/Scripts目录中,以及-- 非常重要 --将编译后的输出定向到该目录,而不是ScriptSharp项目的默认“bin”目录。也许一个例子会很有启发性:

    Web Site or Application directory\
       Bin\ 
          Scripts\           <-- "..\\" config setting sends .js files here.
             ScriptSharp Project directory\
                Bin\         <-- will not be used at run time
                   Debug\    <-- will not be used at run time
    

    总之,我觉得这个项目很有价值。我将编写我自己的HOW-to(在我的例子中涉及使用Web用户控件),说明如何将所有内容绑定在一起,并在此处发布一个URL。现在我已经弄清楚了ScriptSharp,它让我在RIA开发中非常高效。要是它更显眼,要是CodePlex网站还在就好了。

        2
  •  17
  •   mcintyre321    15 年前

    在我上一家公司,我非常广泛地使用了Script#。我设法编写了一些很酷的控件(事实上是一个完整的客户端MVC堆栈),这是我用javascript知识无法做到的。然而,由于多种原因,我不会再使用它了

    • 它仅限于的一个子集。NET 2.0,即便如此,它仍然是一个有漏洞的抽象
    • 最近Javascript单元测试和Javascript的VS智能感知已经变得更好了,因此静态类型的重要性有所降低
    • 使用它限制了我对jquery和javascript的学习

    如果你对交叉编译感兴趣,你也可以看看 http://jsc.sourceforge.net/ 该项目允许您使用.net 3.5并编译为JS、Java、Flash甚至PHP!但不确定生成的代码有多高效。..

    编辑:有一个名为JSIL的新项目,它也将.net代码重写为JS

        3
  •  8
  •   Glorfindel Doug L.    7 年前

    jsc编译器项目支持以下场景:

    • 从C#到MSIL再到Java,用于浏览器小程序
    • C#到MSIL到Java的应用程序
    • C#到MSIL到Java for JavaCard
    • 从C#到MSIL再到C99,用于本机存根应用程序
    • 从C#到MSIL再到ActionScript3 for Flash 9
    • 从C#到MSIL再到C#2.0

    只要稍加努力,Visual Basic也可以用作源语言。即使GWT和Script#这样做,jsc编译器也永远不会读取您的源代码。我的编译器读取你的IL。

    • 等待捐赠以优化编译时间和输出本身

    最新的例子是等离子动画,其中 single implementation

    FlashPlasma
    sourceforge.net )

        4
  •  3
  •   cgp    17 年前

    Script sharp Prototype: Microsoft’s GWT

    根据此页面:

    • 一种具有自然结构的干净语言。
    • 更容易重构和探索。
    • 能够生成文档。
    • 能够轻松自定义脚本代码。

    我不确定我是否同意所有这些,但无论如何,这就是卖点。它似乎带有一些面向对象的特性。观点如下:正如我在其他时候提到的,Java和C#开发人员似乎想抛弃Javascript的原型/非类型化方面,因为他们对以这种方式编写代码感到不舒服。非类型化的原型语言有自己的位置。

        5
  •  0
  •   Jerry    16 年前

    我想分享我为Script#编写的jQuery包装器类。现在,您可以在Script#项目中访问和使用jQuery的强大功能。

    http://www.springsys.com/blog/

    推荐文章