Sunday, August 26, 2007

New Features in Visual Studio 2008

  • .NET Framework multi targeting.
  • Setting breakpoints and Debugging through the script code and Jscript intellisense support.
  • LINQ designers and LINQDataSource Control is added.
  • Split window with Design and Source page combined.
  • Visual studio tools for office 2007 is fully integrated
  • ASP.NET AJAX controls have been added
  • Supports XAML for presentation
  • You can build applications that target Microsoft Office SharePoint Server
  • RAD tools to easily consume WCF Services (Added Workflow Activity in WF to consume a WCF service)
  • Login/Logout, Role management and profile services for windows applications
  • WF Designer and Debugger integration
  • Added IronPython Programming Language.
  • Windows Vista Look & Feel

Introduction to LINQ (Language Integrated Query)

What is LINQ?

LINQ is a new feature to be released as a language enhancement in VB 9.0 and C# 3.0. it is an Object relational mapper which enables an unified approach to query databases, XML files and text files.
LINQ bridge between data domain (Database and XML Files) and programming domain (Objects). it brings together the power of SQL or Query language into the programming languages like C# 3.0 and VB 9.0.

Different flavors of LINQ exists and they are

LINQ to SQL
LINQ to XML
LINQ to XSD (a wrapper around LINQ to XML)
LINQ to Dataset
PLINQ (for Parallel processing)
LINQ to Objects
LINQ to Entities (Included in ADO.NET VNext)

LINQ is not a compiler feature its a language feature any one can extend LINQ and customize them, Some of them are

LINQ to Sharepoint (Can be found in CODEPLEX open source community)
LINQ to Active directory

List of Feature .NET Framework

Features in .net 2.0

1. Webparts
2. Profile services
3. membership services & membership controls
4. Role management services
5. Master Pages
6. Sitemaps
7. Dataset designer (Enables to easily create strongly typed dataset and Data access layer)
8. Caching
SQL Cache dependency
SQL Cache dependency(with broker service)
Partial page caching
9. Annonymous delegates
10. Partial class
11. Generics
12. Personalization
13. Data controls (sqldatasource, xmldatasource, object datasource, etc)
14. New Provider Model
15. ASP.Net configuration tool
16. Reporting services
17. Type Forwarding

Note: There are even more features in .net 2.0

Features in .Net 3.0

1. Windows Communication Foundation ( The Unified Framework For Rapidly Building
Service-Oriented Applications )
2. Windows Presentation Foundation
3. Windows Cardspace
4. Windows Workflow Foundation (Tools and engine for building workflow-enabled apps )


Features in .Net 3.5

1. Ajax enabled controls
2. LINQ, DLINQ, BLINQ, PLINQ, XLINQ
3. LINQ to SQL, Linq to XML, Linq to datasets
4. Extension methods
5. Lambda expressions
6. Query expressions
7. Expression trees
8. Anonymous types
9. collection and object initializers
10. Typed local variables and arrays
11. LinqSqlDataSource control added
12. Enables debugging of javascript and intellisense for javascript

Scrum (Software Engineering Process)

Scrum is a process for building software. scrum is not a methodology.
scrum enables the members not to disturbed often by the management, To know where they are. Members are given the freedom to do what they want, they dont need approvals and other stuffs from the management for what they are doing because all my members are already experts.

So the management believes what ever they do will most probably give a good results. Members are assigned tasks and at every iterration all the management needs is result or the product. Each iterations in scrum is called as scrum sprint (Time Box).

Scrum assumes the team involved in the process are
- highly performing
- intelligient in their functional areas
- cross functional domain and business experts are involved
- self managing team with more responsibilities
- Project duration is small

Frequent scrum meeting among the team members (not with the management) happens to discuss what they have done and they have to do next.
Done here means Documented, implemented, tested Quality assured and Complete.

One of the member in the team is considered as Scrum master, who is responsible for ensuring quality assurance.