
Yesterday, May 13, 2009, a .NET Architecture Day workshop entirely devoted to Windows 7 was held in Yekaterinburg at the Ural State University (Ural State University). The seminar program included the following presentations:
- key changes in the interface;
- graphics, multimedia and documents;
- changes at the platform level;
- application compatibility issues;
- application certification.
According to the program of the seminar, the reports should have been read by two speakers, but for some reason, there was one speaker - George Barkan, who took over all the reports and coped with the task perfectly well.
Reports
Interface
In the first part of the seminar, the key differences in the Windows 7 interface and how these interfaces are used by developers to get the most benefit from the innovations were described. So, it was presented with examples of using the ITaskbarList3 interface. In addition, the description of the Ribbon interface element, which debuted in Office 2007, turned out to be interesting. At the moment, the old “office” implementation of this control is outdated and must be replaced with the built-in functionality in Windows 7. It will be possible to implement such an interface in several ways:
- WPF;
- MFC native (starting with Windows 2000);
- Native (only with Vista and above). MVC approach.
The last option was considered in more detail. Its implementation in Windows is done by writing a special XML file that contains the description and behavior of the visual representation of the Ribbon element. The code is completely separate from the presentation, which resembles the MVC pattern, which the developers apparently inspired. An example of creating such an XML file with various behaviors was considered at the seminar in detail.
For more convenient application development using new Windows 7 chips on managed code, the Microsoft development team released the Windows Bridge library (formerly called Vista Bridge). In this library, a set of wrappers for WinAPI for working in managed code is implemented. During the seminar, examples of the use of this library were demonstrated.
Platform
In the second part of the seminar, the system changes in Windows 7 were touched upon. Such as deferred loading of services, launching services on demand, response of services to events. This interesting innovation in Windows 7 is designed to free up the process of booting the system from launching the currently unnecessary services. Suspended services can then react to some system events and automatically start, take the necessary actions and also end automatically. This saves resources and makes the system boot process faster. At the seminar, this option of its own service was considered: the service loaded on demand reacts to the appearance of a USB device in the system, after which it “wakes up” and performs copying of some files from the device. After copying the service stops. This mechanism works quickly and covertly from the user.
')
Next was described the new API, which will appear with the release of Windows 7. This is the Web Services API Native designed to provide functionality for native Win-applications for working with web-services. Previously, such functionality was proposed only for managed code, now it is in WinAPI. Versions will be available for systems from XP and above.
Most of the report was occupied by a story about the new built-in mechanism of Windows 7 Sensors and Locations, which is designed to provide a single interface for determining the user's location using all possible options and sensors installed in the system. For example, when GPS is in operation, data will be taken from it, in case GPS is unavailable (in buildings), an approximate determination of the user's location using GSM triangulation is possible. In addition, the new mechanism implements support for many other sensors, such as lighting.
The report ended with a description of the XPS format and the mechanisms where it is applied. The format is not standardized, it is not supported anywhere except in Windows, but in the Windows environment itself it is intended to increase the speed and quality of printing.
Multi-touch, graphics, sound
The final part of the seminar was the most extensive. First, it told about Multi-Touch-functions in Windows 7, probably the most expected innovation of the interface of the new operating system. They told about the API for multitouch, about the fact that it will be possible to write support for their gestures, except for the existing set of standard ones. They told about the support effect of inertia.
A very interesting mechanism that will be presented in Windows 7 for me seemed DirectDraw 2D. This mechanism is intended to replace the existing GDI / GDI + to achieve several goals:
- vector graphics acceleration using a video card;
- ClearType hardware acceleration and font blending;
- DirectWrite - font rendering will take into account sub-pixel anti-aliasing to correct spacing between characters;
- YDirection + ClearType - the possibility of vertical smoothing for complex fonts.
In addition, the support stated closer OpenType.
About the sound in Windows 7, they said little, but they were pleased that in Windows 7 there will be full support for BlueTooth headsets. In addition, a mute mechanism is introduced when speech applications are launched, for example, they start Skype and the rest of the system sounds automatically become quieter.
Certification
Most of the workshop was devoted to the description of the product certification process. Were described options for certificates and obtaining logos “works with” and “compatible with”. As was shown, getting the first logo is a trivial matter and does not incur any costs. Whereas to get the second logo you need to try and invest a little money. In general, the certification process does not really interest me, so I don’t remember anything special here, except that Microsoft will soon abandon the services of third-party companies in testing the code and release a special package for automatic testing.
Compatibility
The seminar ended with a description of the compatibility problem in Windows 7. A lot was said about the historical moments and what was done in Windows 7 in this regard. But most of all I remember the demonstration of the fact that in Windows 7, with UAC running, processes with higher rights are isolated from messages from code with lower rights. Personally, I have this expressed in the fact that Punto Switcher does not work in applications running as administrator.
From this part of the seminar, I also remember the story about Restart Manager, which allows you to mute interfering programs at the time of installation of programs and re-launch them after installation. To do this, your application must implement RM support.
At the very end there was a session of questions in which George told a lot of interesting things about technology, about himself and about working at Microsoft.
Links
The seminar materials will be available at this address
http://www.microsoft.com/rus/isv/archive.aspx . But now there you can download materials on similar seminars held in other cities (it is best to watch materials from Novosibirsk).
Personal impressions
The event took place at the height. The speaker Georgy Barkan showed himself from the best side almost single-handedly telling all the reports. It was interesting, the communication took place in a relaxed atmosphere. There were few participants, about 20-25 people, many did not come, although they were registered. To the credit of the organizers, I must say, there was full order with meals at the seminar, they were fed three times, which is important, since the seminar took place all day from 10-00 to 18-00.
I learned a lot of new things, although, it would seem, I try to keep track of all the innovations in Windows 7. I recommend everyone not to miss such events and try to attend them. Excellent experience and many interesting things.
PS: read the same thing, but with pictures you can
here