Wednesday, May 23, 2007

How to Lern .NET?

  • .NET Framework
  • Any .Net Language
  • ADO.NET
  • OOP
  • ASP.NET/WinForms

Above is the .NET Framework Diagram
How to start .NET
It is assumed that you have some level of exposure to programming and now you want to learn .NET or already you are a .NET programmer but want to refresh your skills. Both of you are welcomed.

First you should install Visual Studio on your computer (if you are using VS2005,install sqlserver separately). It is always a good idea to buy some good books. The budget depend on your pocket. Initially it is OK to buy a total 3 books-for .NET Framework, ADO.NET and C#.NET / VB.NET- I personally refer you the following books, though I have come across a plenty of other good ones.

  • .Net Framework Essentials By Thuan L. Thai, Hoang Q. Lam
  • ADO.NET in a Nutshell By Bill Hamilton, Matthew MacDonald
  • Programming C# By Jesse Liberty
If you don't want to spend money on books then it is fine to depend on Internet. Many .net sites and pdf documents are easily accessible.Try out


Learning Strategy
Now you are ready to start! You want to know what is significant about .net. Dot Net framework contains a base class library which you can use in your programmes, CLR-The engine to execute your code, Programming Languages-C #,VB.NET,J# etc. ADO.NET-for database programming.

So learning .net is learning all these. Part of learning a programming language is to know the scope of the language-Where it can be used? How much potential it has? etc. Start with .NET Framework and parallely learn C#.NET. (Look at the below List to have an idea on what to learn in each of these). Once you are confident enough to write simple programs, then go for ADO.NET which is the database specific portion of .net.

Essential Things to Learn
.NET Framework
CLR,IL, ildsm.exe, Side by Side Execution, GAC, CTS, Assembly, Metadata, Manifest, Memory management etc.

Any of the .Net Languages (C# or VB.NET)
Control structures, datatypes, Classes, Functions, Structure, Constructor, Abstract Class , Interface, delegate, events etc.

ADO.NET
ADO Classes- DataSet, DataTable, Data Adapter, Connection, Providers, dataview, dataview manager, DataReation etc.

OOP Basics
Elements of OOP (Abstraction, Encapsulation, Inheritance, Polymorphism, Modularity etc.), Knowledge on Componentization. (visit http://fascinatingoops.blogspot.com)

ASP.NET/WinForms
Creating a Form .Menu,Controls(TreeView,Datagrid etc), event handling,passing data between forms, data Binding,

How much time it will take?
It depends! But usually 4-8 weeks is enough if you have some exposure to programming languages. Try spending 1-4 hrs per day. 2 hrs is optimal. Divide your time in such a way that at the initial stage, for the first 10 hrs, learn .NET Framework and make an idea about it. Then without wasting time, do your "hello world". Then onwards emphasis should be given equally for programming and reading. Try out those concepts you read. After 1 or 2 months you can decide your own strategy based on your personal traits.

(To be Continued............)

Tuesday, May 22, 2007

.NET Design Goals.

The .NET Framework was designed with several intentions:

Interoperability - Because interaction between new and older applications is commonly required, the .NET Framework provides means to access functionality that is implemented in programs that execute outside the .NET environment. Access to COM components is provided in the EnterpriseServices namespace of the framework, and access to other functionality is provided using the P/Invoke feature.

Common Runtime Engine - Programming languages on the .NET Framework compile into an intermediate language known as the Common Intermediate Language, or CIL; Microsoft's implementation of CIL is known as Microsoft Intermediate Language, or MSIL. In Microsoft's implementation, this intermediate language is not interpreted, but rather compiled in a manner known as just-in-time compilation (JIT) into native code. The combination of these concepts is called the Common Language Infrastructure (CLI), a specification; Microsoft's implementation of the CLI is known as the Common Language Runtime (CLR).


Language Neutrality- The .NET Framework introduces a Common Type System, or CTS. The CTS specification defines all possible datatypes and programming constructs supported by the CLR and how they may or may not interact with each other. Because of this feature, the .NET Framework supports development in multiple programming languages. This is discussed in more detail in the .NET languages section below.


Base Class Library - The Base Class Library (BCL), sometimes referred to as the Framework Class Library (FCL), is a library of types available to all languages using the .NET Framework. The BCL provides classes which encapsulate a number of common functions, including file reading and writing, graphic rendering, database interaction and XML document manipulation.


Simplified Deployment - Installation of computer software must be carefully managed to ensure that it does not interfere with previously installed software, and that it conforms to increasingly stringent security requirements. The .NET framework includes design features and tools that help address these requirements.


Security - .NET allows for code to be run with different trust levels without the use of a separate sandbox.

Introduction

Welcome to .NET-Wagon!!
  • This Informal blog is dedicated to Microsoft .NET and related technologies.
  • Aimed at Code snippets, Articles,Discussions....