10 things you should know about Microsoft Silverlight

Source: Internet
Author: User

Designing a suitable website is very important for any growing enterprise, but how to make your website have rich Internet applications (RIA) is not that simple. To reduce the burden on developers, Microsoft recently launched Silverlight, a cross-platform and cross-browser plug-in for Web developers. This plug-in is currently available in the form of "Candidate edition" to support application development with rich user experience, including multimedia, interactive and animation. The Silverlight plug-in currently supports IE and Firefox browsers on Windows platforms, as well as Firefox and Safari browsers on Mac OS X platforms.
I have been using Silverlight for a long time and have been studying this tool known as the "Flash killer" by Microsoft. Based on the first-hand experience of several months, we have summarized the essence of its technical aspects.
With the release of the siverlight public edition approaching, it's time to get familiar with Silverlight and how it affects your web applications. However, there is so much information about Silverlight that it is difficult to tell which is important and which is just advertising. Next I will do my best to summarize the ten things that you should know about Silverlight.

1. Silverlight Eliminates cross-browser/operating system problems

For most development teams, developing a website that supports today's popular browsers (including IE, Firefox, Safari, and opera) is not easy. The problem is not only to write more code, but also to the exponential increase in testing. As developers develop applications for browsers of different versions of different operating systems, the test workload will become very huge.

Generally, there are two ways for developers to solve this problem: only some browsers are supported, or the number of quality assurance personnel is increased to cope with the heavy workload.

In contrast, this Silverlight plug-in provides a unified development model regardless of the user's operating system and browser. Currently, Silverlight supports two operating systems and three browsers. Microsoft promises to add support for opera browsers on Windows and Mac platforms in the future. In addition, the Mono Project (. NET "open-source edition" Project) has made great progress in its moonlight project. Through this project, siverlight plug-in can be used to support the Linux platform.

2. Silverlight 1.1 is worth looking forward

The recently released Silverlight 1.0 allows many organizations to consider whether they want to start using Silverlight. Although Silverlight 1.0 has many important and interesting features, most of the siverlight adoption will have to wait until its version 1.1 is released.

Silverlight 1.1, which is currently in Alpha preview, will support the. NET platform for the first time. This includes the basic. Net Language, C #, and Visual Basic. In addition, according to Microsoft, Silverlight 1.1 will also provide. Net Support for dynamic languages, such as Ruby, Python, Dynamic Visual Basic, and controlled JScript.

In my opinion, the major languages supported by siverlight are C # and Visual Basic, because they allow current. NET developers to create interesting Silverlight applications. In Silverlight 1.1, any. NET language will be supported, because it is actually. Net assembly that is actually submitted to the browser.

In contrast, Silverlight 1.0 only supports the ECMA language interpreted on the client. Silverlight 1.0 is suitable for existing web developers who are already programming using the client scripting language.

Silverlight 1.1 also supports a wide range of custom models, which is important to ensure a comprehensive development experience. The experience of Silverlight 1.0 is still immature, and it is unlikely that a third-party group will be interested in its management and development.

3. Silverlight uses technologies that developers already know

Silverlight is a combination of existing Microsoft technologies: a mix of XAML (XML Application Markup Language), JavaScript, And. NET technologies similar to the Windows Presentation framework.

If developers are familiar with Microsoft's. NET and web technologies, they can use their existing knowledge to create Silverlight applications. Even if developers do not have these skills, mastering these technologies is not only useful for a single product or project, but can be applied to development outside the Silverlight application, this is not exactly the case with other solutions, such as Adobe Flash's ActionScript.

Which Silverlight version to apply to a new project depends on your development team's skills. If your development team is mainly engaged in ASP. NET Server-side development (C # and VB. NET in most cases), you should wait until the release of Silverlight 1.1. If your team is familiar with the client scripting language, such as JavaScript, Silverlight 1.0 is a great platform worth introducing.

4. The Silverlight user interface is just a markup language.

XAML is a hybrid language used by Silverlight for user interface design. You may already be familiar with HTML, another popular markup language. An HTML file is a simple text that contains information that tells the web browser how to display the appearance of a page and how it feels to the user. XAML does the same thing. However, unlike the instructions that the browser explains about how to present the file, the display is completed by the Silverlight runtime.

It is important to use XAML as a tag because it can be dynamically created. No matter what tools your developer uses for web development on the server side, you can create dynamic HTML to create pages. This technology is very eye-catching, because you can create hmtl code that is reused on the site. A good example is that most websites usually have headers and bottoms that are used repeatedly throughout the page.

Because XAML is just a tag, you can use the server-side technology to dynamically create the XAML, just as your development team used HTML in the past. This is a different markup language, but the technology is the same.

5. Silverlight and Ajax technologies are complementary.

The web page technology is constantly evolving. Back in 1990, when web technology was first introduced, everyone was warning that developers should transfer to the server as quickly as possible for programming, so that the application can be elevated. Although this method is technically correct, it reduces the user experience. Now Ajax technology is booming. To put it simply, Ajax directly writes code in a browser to support better user interaction. A typical example is Google map and Microsoft Live map.

Silverlight follows this pattern and brings a more expressive user interface in the browser. Using Ajax technology to exchange data between the server and the client makes the Silverlight application more powerful. The rich user interface model of Silverlight is applied to the powerful data transmission model of Ajax, which can provide an incredible interactive experience without forcing users to wait for the page to refresh.

6. Silverlight allows developers and designers to work together

Web is forcing the development team to think more about design and work. Unless in special circumstances, the response to user experience and beautiful interfaces have become a must-consider aspect. In general, this requires the use of art and user interface design skills in application development. Today, we generally hire an artist to design the website.

However, the resources used and implemented by the artist are usually different from those used by the developer. In general, the artist provides the image file (such as photoshopor .jpg) or HTML box to the developer and then integrates it into a project. No matter what technology you use, these designs must be integrated into web application code. As the design changes, the integration work is repeated over and over again. Silverlight proposes a better development process. Microsoft's Silverlight toolkit includes traditional development tools such as Visual Studio and new designer-oriented tools such as expression Studio (related article: Can Microsoft Expression studio challenge Adobe? ", Http://tech.it168.com/ I /2007-06-29/200706290828093.shtml ).

For Silverlight, the main design tool is expression blend, which allows users to create XAML in a convenient and familiar way for designers. For designers, using blend is just as convenient as using Adobe render straor or photoshop. Their major difference is that blend and developers use the same basic file. Blend and Visual Studio operate on the same project files, XAML, and JavaScript files. Integration steps are not required in Silverlight when a design is created and modified. Designers can see that their design interacts with the same logic added by developers. This helps designers and developers to work closely together.

7. Silverlight can submit content separately.

Silverlight is submitted to the Web browser in multipart form. This means that the code is transmitted in one or more encapsulated packages (JavaScript files, code sets, and so on) as one or more packages (as XAML files, other resources are also transmitted separately (including images, fonts, and videos ). Some developers who are familiar with Flash single file submission may think that this is a weakness of the Silverlight platform when they first come into contact with Silverlight.

In fact, I think this is a good function. Compared with flash, separate data packets make it easier to create content on the dynamic server. It allows us to create compelling dynamic XAML on the server and transmit it simply in other tagged ways. Silverlight has a tool that can use ZIP files to package multiple files used by The XAML code and efficiently download them to the client. However, it is not a required requirement.

8. Silverlight is a new thing

Currently, Silverlight 1.0 is in the release candidate stage, while Silverlight 1.1 is in alpha version. This is Microsoft's first attempt on this technology.

Compared with similar services provided by other companies, this technology is not mature enough, among which Adobe Flash and flex products are the most famous for its competition. The current flash version is 9.0. It has experienced a long period of development and is already in the leading position in terms of popularity and functional richness. However, this does not mean that Silverlight won't catch up with it. Microsoft has its own set of things in terms of others' successes and failures. Of course, it does not mean that Silverlight will catch up with competitors.

If the application you plan to create is mainly used to replace the data-driven desktop application, you may miss the lack of basic Control and Data Binding functions in Silverlight. Silverlight is not a replacement for Windows Forms, WPF, Java applets, or Sharepoint.

In short, Silverlight is not designed to replace earlier enterprise applications. However, if you want to create a cross-platform, cross-browser rich user experience of a compelling application, Silverlight is undoubtedly very suitable.

9. Comparison between Silverlight XAML and WPF XAML

It is easy to boast of XAML as a great thing, because Microsoft's basic class library (WPF) on the Windows Presentation layer also uses XAML. Unfortunately, these advantages are actually not as attractive as they seem, for two reasons: the low adoption rate of WPF and the difference between wpf xaml and Silverlight XAML.

First, compared with other client technologies, WPF has a relatively low adoption rate. Therefore, considering the fact that XAML has not been fully developed, XAML is an advantage, but not a very big one. Second, compared with wpf xaml, Silverlight XAML is a simplified language, so Silverlight XAML is not so powerful. This is both a good thing and a bad thing. Silverlight XAML is very easy to understand, but if your developer is switching from WPF to Silverlight, it may seem incomplete.

In my opinion, this simpler syntax is actually more suitable for Silverlight, because its runtime is very small and manageable for end users. Silverlight XAML does not contain content that is not required for common tasks. Of course, it will be advantageous to create more functions in Silverlight. The current practice is to carefully consider what functions should be added to it, in order to maintain the characteristics of small and lightweight APIs.

10. Silverlight is a great way to learn XAML.

As mentioned above, Silverlight's XAML has a relatively small syntax. This means that it is the best way to learn how XAML works. Developers who try to learn XAML and understand this technology will use Silverlight as a way to create clear and concise code. Most developers will soon begin to think that they will like the functions of Silverlight. When they start to view the wpf xaml, they will find that most of the functions are very familiar.

On the contrary, developers who initially learned WPF will have to give up some of their previous features after they come into contact with Silverlight.

Currently, Silverlight runs at about 4.5 MB. For the first time, the. NET 3.0 runtime that supports WPF is close to 30 mb. Of course, not all. Net 3.0 content is WPF, but WPF occupies a majority. Starting from a smaller Silverlight XAML is a key to quick learning of XAML. You will not be stuck in the trivial details of advanced wpf xaml concepts, such as templates, themes, data binding, and 3-D.

It's time to determine where your website uses Silverlight. Silverlight is an exciting technology that brings benefits to enterprises, customers, and users. I hope this article will help you understand the real advantages and disadvantages of this technology.

 

Note: This article is excerpted from Internet Information for learning and communication purposes only. It is not intended for commercial purposes.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.