【问题标题】:Silverlight 3.0 and web developmentSilverlight 3.0 和 Web 开发
【发布时间】:2009-04-24 01:28:43
【问题描述】:

最近我刚刚被分配了一个项目来开发一个使用Silverlight 3.0 全部容量的 Web 应用程序/站点。我是 Web 开发的初学者,到目前为止,我更像是一名软件工程师,而不是搞乱 Web 开发。

但是,我对这种新体验感到非常兴奋,因为我觉得我可以探索更多。所以我刚开始学习 .NET Framework、C# 和一些 ASP.NET,过去 3 天。

只是为了让您了解我的编程背景,到目前为止,我已经用 Java 和 C 编程了 3 年,所以我对它很有经验。你有什么建议可以给我吗?

该项目将在 1.5 个月后开始,所以我有一些东西要赶上。我认为我的方法是先了解 .NET 和 ASP.NET 的概念,然后再学习 Silverlight。看看我的背景,我相信 C# 不会太难。

您能推荐一些可以帮助我学习的好书和其他资源吗?

【问题讨论】:

    标签: .net asp.net silverlight web-applications


    【解决方案1】:

    【讨论】:

      【解决方案2】:

      这完全取决于您项目的时间线以及应用程序中有多少是基于 Silverlight 的,以及实际上有多少将基于 ASP.NET(Silverlight 3 添加了浏览器支持,因此可能没有太多 ASP .NET)。

      如果大部分代码都在 Silverlight 3 中,我将从以下内容开始:

      1. .NET 框架概述
      2. 基础 C#
      3. 异步/分布式 C#(将有利于 Silverlight 中的网络通信)
      4. Silverlight 设计/开发
      5. ASP.NET

      我认为最难的部分是让 Silverlight 应用程序具有视觉吸引力(当然,除非有设计师参与处理 UX)。

      【讨论】:

        【解决方案3】:

        如果您有丰富的 Java 经验,C# 是轻而易举的事。这是具有不同功能和实现的相同想法。因此,您的集合类具有不同的名称,泛型看起来略有不同,并且您的线程处理方式也有所不同。想想你经常做的事情和你经常使用的 Java 对象/框架/库,然后找到 .Net 等价物。

        我不相信 Java 中存在像 LINQ 这样的东西,所以这是 .Net 编程的一个非常酷的方面,值得一看。 This book 对 LINQ 概念有很好的快速介绍,其余的可以作为参考。

        Silverlight/XAML/WPF 非常简单,但它带有一个非常大的框架和大量需要学习的东西,因为它非常灵活。 http://silverlight.net/http://windowsclient.net/learn/ 有一些很棒的视频供您选择一两个功能作为基础,以加快了解 silverlight、c#、.net 等的一些概念。听起来你没有是时候拿下几本书了,所以这些视频应该很酷,而且有很多可供选择。

        至于具体了解 Silverlight 的内容,我想说绑定可能是最酷的功能。而且,看看动画,因为这是一个非常酷的方面,而且很容易实现。

        这里有一个PDF WPF binding expression cheat sheet 用作参考。而且,here 是在 C# 中制作 Silverlight 动画的一个非常简单的示例。

        【讨论】:

          【解决方案4】:

          作为一名 Java/C 程序员,最大的挑战可能是让您了解 Silverlight(和 WPF)的工作方式。如果您将它们视为传统的 UI 工具包(例如 Win32 API),那么您将陷入困境。

          我发现WPF Unleashed 非常适合进入 WPF(在最初与这些概念作斗争之后)。希望Silverlight2 Unleashed 也一样好,虽然我还没读过。

          学习曲线很痛苦,但是一旦“点击”你就不会回去了。

          【讨论】:

            【解决方案5】:

            也许考虑 Silverlight 的最佳方式是将其视为 Flash。它主要是关于视觉效果,而不是传统的编程。 Silverlight 将完全在客户端和浏览器中运行。例如,您不能将其用于访问服务器上的数据库之类的事情。

            要构建一个有竞争力的网站和/或网络应用程序,您需要使用的不仅仅是 Silverlight。

            您不需要将 C# 与 Silverlight 一起使用,您可以使用 JavaScript。由于您已经精通 Java,这可能是您更好的选择。

            在宣布 Silverlight 3 的 MIX09 大会上,有几场关于 Silverlight 3 的精彩演示,它增加了 Silverlight 2 中没有的许多新功能。您可以从http://videos.visitmix.com/MIX09 下载和观看这些视频。

            【讨论】:

              【解决方案6】:

              在宣布 Silverlight 3 的 MIX09 大会上,有几场关于 Silverlight 3 的精彩演示,它增加了 Silverlight 2 中没有的许多新功能。您可以从http://videos.visitmix.com/MIX09 下载和观看这些视频。

              感谢您指出这一点。实际上,我已经在 mix 会议上观看了所有关于 Silverlight 3.0 的视频。我想这真是太神奇了……

              如果 Silverlight 是在客户端运行的东西,那么我就不需要在数据库中存储那么多东西了。对吗?

              有哪些使用 Silverlight 且可能使用数据库的示例应用程序?到目前为止,我只是对如何将 C# 和 ASP.NET 绑定到 Silverlight 感到困惑。也许我的 .NET 知识还没有那么远。

              【讨论】:

              • 某种类型的服务(WCF、WebServices、REST 等)是 Silverlight 的最佳数据交换。 Silverlight 为 WCF 服务提供大量支持。
              【解决方案7】:

              此时,Silverlight 3 处于 Beta 1 阶段。因此,您找不到任何完整的电子书来告诉您 Silverlight 的所有功能。

              首先,你必须学习 c# 和 asp.net 应用程序。之后,您应该阅读 Silverlight 2 电子书(我建议“Pro Silverlight 2 in C# 2008”)。此外,您应该学习一些.net平台上的相关技术,如WCF、LINQ、Sql Server 2008。

              最后,您需要关注 Silverlight 3 中的一些新功能和 Silverlight 2 中的一些功能。

              • Out of Browser。尝试创建同时支持in of browser和out of browser(但UI不同)的Silverlight应用程序。

              • 静态类型和动态加载可帮助您减小 Xap 文件大小,但它仍然是强有力的参考。

              • Silverlight 中的资源。它可以帮助您创建动态 Silverlight 应用程序。

              • 动画可帮助您创建更好的用户体验。

              进阶

              • Pixel Shader。 帮助您通过 GPU 渲染创建出色的 UX。(在 Beta 1 中您不能使用 GPU 进行渲染)如果您需要创建自定义着色器,您需要安装 DirectX SDK测试您的自定义着色器。

                sampler2D input : register(s0); 
                float4 main(float2 uv : TEXCOORD) : COLOR 
                { 
                    float4 Color; 
                    Color = tex2D( input , uv.xy); 
                    return Color; 
                }
                

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2011-06-21
                • 2011-06-24
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多