SlideShare a Scribd company logo
1 
SynapseIndia Fundamentals of Dotnet 
Development
2 
Class Schedule – November 6, 2003 
 Introductions and other beginning stuff… 
 Review Class Syllabus / Class Goals 
 Class Dates 
 Introduction to .NET 
 Introduction to C# 
 Class Exercise(s) 
 Homework Assignment
3 
.Net Fundamentals 
CT-186
4 
Text Books 
 Applied .NET Framework Programming by 
Jeffrey Richter 
 Programming C# by Jessie Liberty
5 
Grades 
 5 take-home assignments (75%) 
 Final Exam (part of last class) (25%)
6 
Prerequisites 
Fundamental of Programming (CT100) 
or 
by permission of the instructor.
7 
Class Goals
8 
Class Goals 
 Provide an overview of the .NET Architecture with 
Major Components 
- Programming Languages 
- ADO.NET 
- ASP.NET 
- Web Services 
- XML Integration
9 
Class Goals 
Understand the .NET Frameworks as an Object Oriented 
Strongly Typed Computing Environment
10 
Class Goals 
 Work with various .NET Framework components 
- Common Language Runtime (CLR) 
- .NET Framework Class Library (FCL) 
- Assemblies 
- Strong Names 
- The Global Assembly Cache (GAC) 
- Using the GACUTIL
11 
Class Goals 
Introduction to the C# Programming Language
12 
Course Schedule 
Week Topics 
1 Introduction to .NET Framework, C# 
2 Basic C# Windows Forms Programming 
3 Types, Objects, and Classes in .NET 
4 .NET ADO and XML 
5 Exceptions, Intro to ASP.NET, Assemblies 
6 Web Services, Final Exam
13 
Class Dates 
 Class Dates ( 6, 7, or 8 classes ?) 
 November 6, 13, 20 – December 4, 11, 18 
 November 27, Thanksgiving, no class 
 Other possible dates: 
- Monday November 24th 
- Monday December 1st 
- Monday December 8th or Tuesday December 9th 
- Monday December 15th or Tuesday December 16th 
- Or ?
14 
Effective Learning 
 First is Doing 
- Class exercises 
 Coaching 
 Helping each other 
- Homework 
 Second is Discussing 
- Class discussions 
 Asking questions 
 Sharing ideas and information 
 Last is Listening
15 
Learning Environment 
 Learn something  Write some code 
 Homework Assignments 
Write some code 
Programming is Fun!
16 
The only dumb questions 
are the ones not asked!
17 
Time to Address Open Questions 
 Begin each class with a time for questions 
 Questions left open from previous classes 
 Questions emailed to me during the week 
 Questions triggered by the homework 
 Or other ???
18 
Your introductions 
 Programming background 
- Operating systems, languages 
- Any exposure to .NET ? Other courses ? 
 What do you expect to get out of this course ?
19 
Please email me the following… 
• Full Name, Nick Name, Student ID # 
• Home Phone / Work Phone
20 
Email Address (s) [email gives me one] 
 Your background in computing/programming 
 Any experience with .NET, other courses, ? 
 Your objective or goals for this course 
 Any material you have a special interest in covering? 
 Any issues or questions that you have? 
 Additional dates you can attend classes on.
21
22 
What Is the Microsoft .NET 
Framework? 
The Microsoft® .NET Framework is an 
important new component of the Microsoft 
Windows® family of operating systems. It is 
the foundation of the next generation of 
Windows-based applications that are easier 
to build, deploy, and integrate with other 
networked systems.
23 
The .NET Initiative 
“To create rich applications…, businesses must offer a 
programmatic interface to their business logic services 
… [which] must be callable remotely using a network 
like the Internet. Simply stated, the .NET initiative is 
about connecting information, people and devices” 
- Jeff Richter
24 
What Is the Microsoft .NET 
Framework? 
Most consumers will never notice that the 
.NET Framework is running on their Pocket 
PC, smartphone, or desktop computer. But 
they may appreciate the reliability, ease of 
use, and ability to connect to other systems 
that the .NET Framework helps bring to 
computers.
25 
What Is the Microsoft .NET 
Framework? 
The .NET Framework helps software 
developers and systems administrators more 
easily build and maintain systems with 
improvements toward performance, security, 
and reliability. Here's how.
26 
A New Approach to Building 
Windows Software 
The .NET Framework simplifies Windows 
software development. It provides developers 
with a single approach to build both desktop 
applications—sometimes called smart client 
applications—and Web-based applications. It 
also enables developers to use the same tools 
and skills to develop software for a variety of 
systems ranging from handheld smartphones 
to large server installations.
27 
A New Approach to Building 
Windows Software 
Software built on the .NET Framework can 
be easier to deploy and maintain than 
conventional software. Applications can be 
designed to automatically upgrade 
themselves to the latest version. The .NET 
Framework can also minimize conflicts 
between applications by helping incompatible 
software components coexist.
28 
Benefits of the .NET Framework 
• Helps IT professionals better integrate 
existing systems with its native support for 
Web services. 
• Assists with the deployment of software to 
both users and Web servers. 
• Facilitates the development of software with 
improved reliability, scalability, performance, 
and security.
29 
Helps developers be more 
productive by: 
• Making it easier for them to reuse existing 
code. 
• Enabling them to more easily integrate 
components written in any of the more than 
20 supported programming languages. 
• Helping them more easily build software for 
a wide range of devices using same skills 
and tools.
30 
The Development Environment – Visual 
Studio.NET 
 Finally , Visual Studio truly becomes an 
Integrated Development Environment, with 
multi-language development. 
 Runs on Windows 2000, NT, XP and the .NET 
server family. 
 Support for building 32 and 64 bit applications 
 Usual gamut of wizards, debuggers, linkers… 
 Plenty of good documentation 
 Free .NET Framework SDK – compilers, tools, 
documentation
31 
The Development/Runtime platform – 
the .NET Framework 
- The new runtime environment in .NET 
- Provides a set of base classes for developers to build 
on 
- A unified type system to allow language inter-operability 
- This course deals with the fundamentals of 
programming this framework
32 
To summarize, .NET is… 
 An OS platform 
 The .NET Enterprise Servers.NET building block 
services 
 .NET Device Software 
 The Development Environment – Visual 
Studio.NET 
 The Development/Runtime platform – the .NET 
Framework
33 
The .NET Framework 
 Think of what device drivers do in terms of 
abstracting access by an application 
Application 
Windows 
Scanner 
Driver 
Mouse 
Driver
34 
The .NET Framework 
 If we abstract the underlying OS in the same 
way… 
Application 
.NET Framework 
Windows 
2000 
Windows 
XP 
FreeBSD 
UNIX
35 
The .NET Framework 
 The .NET Framework introduces a layer of 
abstraction (and obviously, some overhead) to the OS 
as we currently know it. 
 Is this reason enough to move to it ? Let’s look at the 
state of Windows development without .NET…
36 
The current state of affairs 
 Win32/C programming 
- Fairly low-level, not object oriented, interoperability 
with other languages is hard, memory leaks an issue. 
 C++/MFC programming 
- Large language, complex idioms, prone to abuse, 
interoperability with other languages and other C++ 
implementations still hard, memory leaks still an issue 
 Visual Basic programming 
- Object aware, but not object oriented. 
- Interop with other languages possible, but ugly.
37 
The current state of affairs 
 COM programming 
- Allows you cross language integration at the binary 
level. 
- Interface based programming encouraged 
- Fairly complex to understand and set up 
- Deployment is registry based, fairly fragile. 
- Distributed COM was notoriously hard to set up 
because of the security issues involved 
- A Microsoft-only solution 
 Java programming 
- Great language, but no cross language integration. 
- Interpreted byte-code did have performance issues
38 
The current state of affairs 
 Into the mix just discussed, throw in JavaScript, 
ASP, HTML, DHTML 
 Everything we just talked about has it’s own 
runtime engine/environment, it’s own set of 
libraries and it’s own set of development tools. 
 In a highly connected world, our solutions need 
to span languages, machines and network 
boundaries.
39 
What the .NET Framework gives us 
 Consistent programming model 
 A simple OO programming model 
 Application component isolation 
- Newer versions can be installed safely 
- Goes a long way in helping improve DLL Hell 
 Simplified installation model 
- Xcopy, no registry entries 
- Uninstalls involve just deleting files/folders 
- Shared components easier to install than COM 
components
40 
What the .NET Framework gives us 
 Multi-platform support 
- The fact that the OS is abstracted away, with code 
compiled to an intermediate language makes this 
possible 
 Cross language integration 
- This is in contrast with COM’s cross-language 
interoperation. Types can be used between languages. 
- This also makes cross language debugging possible. 
 Automatic memory management 
- Reduces the incidence of memory leaks . The Visual 
Basic runtime has done this for sometime, but it is 
now available to all languages
41 
What the .NET Framework gives us 
 Code verifiability 
- Rich type information gives us the ability to check that 
code is operating safely 
- e.g. Buffer overflows prevented. 
 Consistent error handling mechanism 
- Exceptions used instead of error codes and 
HRESULTS 
- Exceptions have to be handled – cannot ignore them 
 Code security 
- Signing allows the runtime to verify that code has not 
been tampered with. 
- Code access security associates permissions with code.
42
43 
Basic Components of the .NET 
Framework 
The .NET Framework consists of two main 
parts: 
• common language runtime 
• .NET Framework class library
44 
The heart of the Framework 
 The most important elements of the franework 
are: 
- The Common Language Runtime (CLR) 
- The Framework Class Libraries (FCL) 
ASP.NET WinForms 
Framework Class Library 
Base Data XML … 
Common Language Runtime 
OS Services
45 
Common Language Runtime 
•Provides the common services for .NET 
Framework applications. 
•Programs can be written for the common 
language runtime in just about every language, 
including C, C++, C#, and Microsoft Visual 
Basic®, as well as some older languages such 
as Fortran. 
•The runtime simplifies programming by 
assisting with many mundane tasks of writing 
code, including memory management—which 
can be a big generator of bugs—security 
management, and error handling.
Common Language Runtime 
46 
(CLR) 
 Locates, loads and runs code written in runtime-aware 
languages. 
 Handles object creation, memory management, 
making method calls, enforces code security and 
provides a process abstraction. 
 Code that targets the CLR is called managed code, 
while code that uses the native OS services directly 
is called unmanaged code. 
 Languages that can produce managed code (or 
.NET programming languages) 
- C#, VB.NET, VC++ with managed extensions, Fujitsu 
COBOL.NET, Jscript.NET, Eiffel, Python, Perl…
47 
Managed Module 
A Managed Module is a standard windows portable 
executable (PE) file that requires the CLR to execute.
48 
Managed Code 
Code executed and managed by the Microsoft® .NET 
Framework, specifically by the .NET Framework's 
common language runtime. 
Managed code must supply the information necessary 
for the common language runtime to provide services 
such as memory management, cross-language 
integration, code access security, and automatic 
lifetime control of objects. 
All code based on Microsoft Intermediate Language 
executes as managed code.
49 
.NET Framework Class Library 
The library includes prepackaged sets of 
functionality that developers can use to more 
rapidly extend the capabilities of their own 
software. The library includes three key 
components: 
• o ASP.NET to help build Web applications and 
Web services. 
• o Windows Forms to facilitate smart client user 
interface development. 
• o ADO.NET to help connect applications to 
databases.
50 
Framework Class Library (FCL) 
 Provides base class libraries available to all .NET 
programming languages. 
 Access to primitive types, file I/O, graphical 
rendering, crypto, GUI, XML support, etc. 
Think of the CLR as abstracting the underlying OS (e.g. 
Windows), and the FCL as abstracting the OS 
libraries. (e.g. Win32)

More Related Content

What's hot

Introduction to .NET Framework
Introduction to .NET FrameworkIntroduction to .NET Framework
Introduction to .NET Framework
Kamlesh Makvana
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
Rakesh Joshi
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
Rakesh Joshi
 
.Net framework
.Net framework.Net framework
.Net frameworkRaghu nath
 
Dotnet framework
Dotnet frameworkDotnet framework
Dotnet frameworkNitu Pandey
 
Vb.net session 01
Vb.net session 01Vb.net session 01
Vb.net session 01Niit Care
 
Interview Question of Aspdotnet
Interview Question of AspdotnetInterview Question of Aspdotnet
Interview Question of Aspdotnet
MohitKumar1985
 
Dotnet ch1
Dotnet ch1Dotnet ch1
Dotnet ch1
007laksh
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net FundamentalsAli Taki
 
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
yazad dumasia
 
Overview of .Net Framework 4.5
Overview of .Net Framework 4.5Overview of .Net Framework 4.5
Overview of .Net Framework 4.5
Bhushan Mulmule
 
Visual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 OverviewVisual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 Overview
Harish Ranganathan
 
Dot Net Fundamentals
Dot Net FundamentalsDot Net Fundamentals
Dot Net FundamentalsLiquidHub
 

What's hot (19)

Introduction to .NET Framework
Introduction to .NET FrameworkIntroduction to .NET Framework
Introduction to .NET Framework
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
 
.Net framework
.Net framework.Net framework
.Net framework
 
Dotnet framework
Dotnet frameworkDotnet framework
Dotnet framework
 
Dotnet basics
Dotnet basicsDotnet basics
Dotnet basics
 
.Net slid
.Net slid.Net slid
.Net slid
 
Vb.net session 01
Vb.net session 01Vb.net session 01
Vb.net session 01
 
Interview Question of Aspdotnet
Interview Question of AspdotnetInterview Question of Aspdotnet
Interview Question of Aspdotnet
 
Dotnet ch1
Dotnet ch1Dotnet ch1
Dotnet ch1
 
Unit6
Unit6Unit6
Unit6
 
C# chap 2
C# chap 2C# chap 2
C# chap 2
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
 
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
C# .NET: Language Features and Creating .NET Projects, Namespaces Classes and...
 
Intro1
Intro1Intro1
Intro1
 
Overview of .Net Framework 4.5
Overview of .Net Framework 4.5Overview of .Net Framework 4.5
Overview of .Net Framework 4.5
 
Visual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 OverviewVisual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 Overview
 
Dot Net Fundamentals
Dot Net FundamentalsDot Net Fundamentals
Dot Net Fundamentals
 
Introduction to .net
Introduction to .netIntroduction to .net
Introduction to .net
 

Similar to Synapse india fundamentals of dotnet development

E-Comura Documentation
E-Comura DocumentationE-Comura Documentation
E-Comura Documentationanuj_rakheja
 
dotNET frameworks
dotNET frameworksdotNET frameworks
dotNET frameworks
nawal saad
 
01 intro to programming in .net
01   intro to programming in .net01   intro to programming in .net
01 intro to programming in .netFelisha Hosein
 
Unit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdfUnit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdf
Ujwala Junghare
 
Difference between .net and asp.net all you need to know
Difference between .net and asp.net  all you need to knowDifference between .net and asp.net  all you need to know
Difference between .net and asp.net all you need to know
sophiaaaddison
 
What is the next generation of .Net?
What is the next generation of  .Net?What is the next generation of  .Net?
What is the next generation of .Net?
Faiyneen Shaikh
 
Introducation to C#
Introducation to C#Introducation to C#
Introducation to C#
musrath mohammad
 
.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions
QUONTRASOLUTIONS
 
Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?
LOGINPHP360
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics Presentation
Sudhakar Sharma
 
Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?
LOGINPHP360
 
Basic C# and .net
Basic C# and .netBasic C# and .net
Basic C# and .net
Jannatul Ferdus
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word documentSIVAJISADHANA
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
SIVAJISADHANA
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
SIVAJISADHANA
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)
Shoaib Ghachi
 

Similar to Synapse india fundamentals of dotnet development (20)

E-Comura Documentation
E-Comura DocumentationE-Comura Documentation
E-Comura Documentation
 
dotNET frameworks
dotNET frameworksdotNET frameworks
dotNET frameworks
 
01 intro to programming in .net
01   intro to programming in .net01   intro to programming in .net
01 intro to programming in .net
 
Unit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdfUnit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdf
 
The Seven Pillars Of Asp.Net
The Seven Pillars Of Asp.NetThe Seven Pillars Of Asp.Net
The Seven Pillars Of Asp.Net
 
Lecture 10
Lecture 10Lecture 10
Lecture 10
 
Difference between .net and asp.net all you need to know
Difference between .net and asp.net  all you need to knowDifference between .net and asp.net  all you need to know
Difference between .net and asp.net all you need to know
 
What is the next generation of .Net?
What is the next generation of  .Net?What is the next generation of  .Net?
What is the next generation of .Net?
 
Introducation to C#
Introducation to C#Introducation to C#
Introducation to C#
 
.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions
 
Part i
Part iPart i
Part i
 
Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics Presentation
 
Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?Why is .Net Technology Recognised for Software Development?
Why is .Net Technology Recognised for Software Development?
 
Basic C# and .net
Basic C# and .netBasic C# and .net
Basic C# and .net
 
Chapter1
Chapter1Chapter1
Chapter1
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)
 

More from Synapseindiappsdevelopment

Synapse india elance top in demand in it skills
Synapse india elance top in demand in it skillsSynapse india elance top in demand in it skills
Synapse india elance top in demand in it skills
Synapseindiappsdevelopment
 
SynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture moduleSynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture module
Synapseindiappsdevelopment
 
SynapseIndia dotnet module development part 1
SynapseIndia  dotnet module development part 1SynapseIndia  dotnet module development part 1
SynapseIndia dotnet module development part 1
Synapseindiappsdevelopment
 
SynapseIndia dotnet framework library
SynapseIndia  dotnet framework librarySynapseIndia  dotnet framework library
SynapseIndia dotnet framework library
Synapseindiappsdevelopment
 
SynapseIndia dotnet development platform overview
SynapseIndia  dotnet development platform overviewSynapseIndia  dotnet development platform overview
SynapseIndia dotnet development platform overview
Synapseindiappsdevelopment
 
SynapseIndia dotnet development framework
SynapseIndia  dotnet development frameworkSynapseIndia  dotnet development framework
SynapseIndia dotnet development framework
Synapseindiappsdevelopment
 
SynapseIndia dotnet web applications development
SynapseIndia  dotnet web applications developmentSynapseIndia  dotnet web applications development
SynapseIndia dotnet web applications development
Synapseindiappsdevelopment
 
SynapseIndia dotnet website security development
SynapseIndia  dotnet website security developmentSynapseIndia  dotnet website security development
SynapseIndia dotnet website security development
Synapseindiappsdevelopment
 
SynapseIndia mobile build apps management
SynapseIndia mobile build apps managementSynapseIndia mobile build apps management
SynapseIndia mobile build apps management
Synapseindiappsdevelopment
 
SynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architectureSynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architecture
Synapseindiappsdevelopment
 
SynapseIndia java and .net development
SynapseIndia java and .net developmentSynapseIndia java and .net development
SynapseIndia java and .net development
Synapseindiappsdevelopment
 
SynapseIndia dotnet development panel control
SynapseIndia dotnet development panel controlSynapseIndia dotnet development panel control
SynapseIndia dotnet development panel control
Synapseindiappsdevelopment
 
SynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client librarySynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client library
Synapseindiappsdevelopment
 
SynapseIndia php web development
SynapseIndia php web developmentSynapseIndia php web development
SynapseIndia php web development
Synapseindiappsdevelopment
 
SynapseIndia mobile apps architecture
SynapseIndia mobile apps architectureSynapseIndia mobile apps architecture
SynapseIndia mobile apps architecture
Synapseindiappsdevelopment
 
SynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architectureSynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architecture
Synapseindiappsdevelopment
 
SynapseIndia mobile apps
SynapseIndia mobile appsSynapseIndia mobile apps
SynapseIndia mobile apps
Synapseindiappsdevelopment
 
SynapseIndia dotnet development
SynapseIndia dotnet developmentSynapseIndia dotnet development
SynapseIndia dotnet development
Synapseindiappsdevelopment
 
SynapseIndia dotnet client library Development
SynapseIndia dotnet client library DevelopmentSynapseIndia dotnet client library Development
SynapseIndia dotnet client library Development
Synapseindiappsdevelopment
 
SynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically developmentSynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically development
Synapseindiappsdevelopment
 

More from Synapseindiappsdevelopment (20)

Synapse india elance top in demand in it skills
Synapse india elance top in demand in it skillsSynapse india elance top in demand in it skills
Synapse india elance top in demand in it skills
 
SynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture moduleSynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture module
 
SynapseIndia dotnet module development part 1
SynapseIndia  dotnet module development part 1SynapseIndia  dotnet module development part 1
SynapseIndia dotnet module development part 1
 
SynapseIndia dotnet framework library
SynapseIndia  dotnet framework librarySynapseIndia  dotnet framework library
SynapseIndia dotnet framework library
 
SynapseIndia dotnet development platform overview
SynapseIndia  dotnet development platform overviewSynapseIndia  dotnet development platform overview
SynapseIndia dotnet development platform overview
 
SynapseIndia dotnet development framework
SynapseIndia  dotnet development frameworkSynapseIndia  dotnet development framework
SynapseIndia dotnet development framework
 
SynapseIndia dotnet web applications development
SynapseIndia  dotnet web applications developmentSynapseIndia  dotnet web applications development
SynapseIndia dotnet web applications development
 
SynapseIndia dotnet website security development
SynapseIndia  dotnet website security developmentSynapseIndia  dotnet website security development
SynapseIndia dotnet website security development
 
SynapseIndia mobile build apps management
SynapseIndia mobile build apps managementSynapseIndia mobile build apps management
SynapseIndia mobile build apps management
 
SynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architectureSynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architecture
 
SynapseIndia java and .net development
SynapseIndia java and .net developmentSynapseIndia java and .net development
SynapseIndia java and .net development
 
SynapseIndia dotnet development panel control
SynapseIndia dotnet development panel controlSynapseIndia dotnet development panel control
SynapseIndia dotnet development panel control
 
SynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client librarySynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client library
 
SynapseIndia php web development
SynapseIndia php web developmentSynapseIndia php web development
SynapseIndia php web development
 
SynapseIndia mobile apps architecture
SynapseIndia mobile apps architectureSynapseIndia mobile apps architecture
SynapseIndia mobile apps architecture
 
SynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architectureSynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architecture
 
SynapseIndia mobile apps
SynapseIndia mobile appsSynapseIndia mobile apps
SynapseIndia mobile apps
 
SynapseIndia dotnet development
SynapseIndia dotnet developmentSynapseIndia dotnet development
SynapseIndia dotnet development
 
SynapseIndia dotnet client library Development
SynapseIndia dotnet client library DevelopmentSynapseIndia dotnet client library Development
SynapseIndia dotnet client library Development
 
SynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically developmentSynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically development
 

Synapse india fundamentals of dotnet development

  • 1. 1 SynapseIndia Fundamentals of Dotnet Development
  • 2. 2 Class Schedule – November 6, 2003  Introductions and other beginning stuff…  Review Class Syllabus / Class Goals  Class Dates  Introduction to .NET  Introduction to C#  Class Exercise(s)  Homework Assignment
  • 4. 4 Text Books  Applied .NET Framework Programming by Jeffrey Richter  Programming C# by Jessie Liberty
  • 5. 5 Grades  5 take-home assignments (75%)  Final Exam (part of last class) (25%)
  • 6. 6 Prerequisites Fundamental of Programming (CT100) or by permission of the instructor.
  • 8. 8 Class Goals  Provide an overview of the .NET Architecture with Major Components - Programming Languages - ADO.NET - ASP.NET - Web Services - XML Integration
  • 9. 9 Class Goals Understand the .NET Frameworks as an Object Oriented Strongly Typed Computing Environment
  • 10. 10 Class Goals  Work with various .NET Framework components - Common Language Runtime (CLR) - .NET Framework Class Library (FCL) - Assemblies - Strong Names - The Global Assembly Cache (GAC) - Using the GACUTIL
  • 11. 11 Class Goals Introduction to the C# Programming Language
  • 12. 12 Course Schedule Week Topics 1 Introduction to .NET Framework, C# 2 Basic C# Windows Forms Programming 3 Types, Objects, and Classes in .NET 4 .NET ADO and XML 5 Exceptions, Intro to ASP.NET, Assemblies 6 Web Services, Final Exam
  • 13. 13 Class Dates  Class Dates ( 6, 7, or 8 classes ?)  November 6, 13, 20 – December 4, 11, 18  November 27, Thanksgiving, no class  Other possible dates: - Monday November 24th - Monday December 1st - Monday December 8th or Tuesday December 9th - Monday December 15th or Tuesday December 16th - Or ?
  • 14. 14 Effective Learning  First is Doing - Class exercises  Coaching  Helping each other - Homework  Second is Discussing - Class discussions  Asking questions  Sharing ideas and information  Last is Listening
  • 15. 15 Learning Environment  Learn something  Write some code  Homework Assignments Write some code Programming is Fun!
  • 16. 16 The only dumb questions are the ones not asked!
  • 17. 17 Time to Address Open Questions  Begin each class with a time for questions  Questions left open from previous classes  Questions emailed to me during the week  Questions triggered by the homework  Or other ???
  • 18. 18 Your introductions  Programming background - Operating systems, languages - Any exposure to .NET ? Other courses ?  What do you expect to get out of this course ?
  • 19. 19 Please email me the following… • Full Name, Nick Name, Student ID # • Home Phone / Work Phone
  • 20. 20 Email Address (s) [email gives me one]  Your background in computing/programming  Any experience with .NET, other courses, ?  Your objective or goals for this course  Any material you have a special interest in covering?  Any issues or questions that you have?  Additional dates you can attend classes on.
  • 21. 21
  • 22. 22 What Is the Microsoft .NET Framework? The Microsoft® .NET Framework is an important new component of the Microsoft Windows® family of operating systems. It is the foundation of the next generation of Windows-based applications that are easier to build, deploy, and integrate with other networked systems.
  • 23. 23 The .NET Initiative “To create rich applications…, businesses must offer a programmatic interface to their business logic services … [which] must be callable remotely using a network like the Internet. Simply stated, the .NET initiative is about connecting information, people and devices” - Jeff Richter
  • 24. 24 What Is the Microsoft .NET Framework? Most consumers will never notice that the .NET Framework is running on their Pocket PC, smartphone, or desktop computer. But they may appreciate the reliability, ease of use, and ability to connect to other systems that the .NET Framework helps bring to computers.
  • 25. 25 What Is the Microsoft .NET Framework? The .NET Framework helps software developers and systems administrators more easily build and maintain systems with improvements toward performance, security, and reliability. Here's how.
  • 26. 26 A New Approach to Building Windows Software The .NET Framework simplifies Windows software development. It provides developers with a single approach to build both desktop applications—sometimes called smart client applications—and Web-based applications. It also enables developers to use the same tools and skills to develop software for a variety of systems ranging from handheld smartphones to large server installations.
  • 27. 27 A New Approach to Building Windows Software Software built on the .NET Framework can be easier to deploy and maintain than conventional software. Applications can be designed to automatically upgrade themselves to the latest version. The .NET Framework can also minimize conflicts between applications by helping incompatible software components coexist.
  • 28. 28 Benefits of the .NET Framework • Helps IT professionals better integrate existing systems with its native support for Web services. • Assists with the deployment of software to both users and Web servers. • Facilitates the development of software with improved reliability, scalability, performance, and security.
  • 29. 29 Helps developers be more productive by: • Making it easier for them to reuse existing code. • Enabling them to more easily integrate components written in any of the more than 20 supported programming languages. • Helping them more easily build software for a wide range of devices using same skills and tools.
  • 30. 30 The Development Environment – Visual Studio.NET  Finally , Visual Studio truly becomes an Integrated Development Environment, with multi-language development.  Runs on Windows 2000, NT, XP and the .NET server family.  Support for building 32 and 64 bit applications  Usual gamut of wizards, debuggers, linkers…  Plenty of good documentation  Free .NET Framework SDK – compilers, tools, documentation
  • 31. 31 The Development/Runtime platform – the .NET Framework - The new runtime environment in .NET - Provides a set of base classes for developers to build on - A unified type system to allow language inter-operability - This course deals with the fundamentals of programming this framework
  • 32. 32 To summarize, .NET is…  An OS platform  The .NET Enterprise Servers.NET building block services  .NET Device Software  The Development Environment – Visual Studio.NET  The Development/Runtime platform – the .NET Framework
  • 33. 33 The .NET Framework  Think of what device drivers do in terms of abstracting access by an application Application Windows Scanner Driver Mouse Driver
  • 34. 34 The .NET Framework  If we abstract the underlying OS in the same way… Application .NET Framework Windows 2000 Windows XP FreeBSD UNIX
  • 35. 35 The .NET Framework  The .NET Framework introduces a layer of abstraction (and obviously, some overhead) to the OS as we currently know it.  Is this reason enough to move to it ? Let’s look at the state of Windows development without .NET…
  • 36. 36 The current state of affairs  Win32/C programming - Fairly low-level, not object oriented, interoperability with other languages is hard, memory leaks an issue.  C++/MFC programming - Large language, complex idioms, prone to abuse, interoperability with other languages and other C++ implementations still hard, memory leaks still an issue  Visual Basic programming - Object aware, but not object oriented. - Interop with other languages possible, but ugly.
  • 37. 37 The current state of affairs  COM programming - Allows you cross language integration at the binary level. - Interface based programming encouraged - Fairly complex to understand and set up - Deployment is registry based, fairly fragile. - Distributed COM was notoriously hard to set up because of the security issues involved - A Microsoft-only solution  Java programming - Great language, but no cross language integration. - Interpreted byte-code did have performance issues
  • 38. 38 The current state of affairs  Into the mix just discussed, throw in JavaScript, ASP, HTML, DHTML  Everything we just talked about has it’s own runtime engine/environment, it’s own set of libraries and it’s own set of development tools.  In a highly connected world, our solutions need to span languages, machines and network boundaries.
  • 39. 39 What the .NET Framework gives us  Consistent programming model  A simple OO programming model  Application component isolation - Newer versions can be installed safely - Goes a long way in helping improve DLL Hell  Simplified installation model - Xcopy, no registry entries - Uninstalls involve just deleting files/folders - Shared components easier to install than COM components
  • 40. 40 What the .NET Framework gives us  Multi-platform support - The fact that the OS is abstracted away, with code compiled to an intermediate language makes this possible  Cross language integration - This is in contrast with COM’s cross-language interoperation. Types can be used between languages. - This also makes cross language debugging possible.  Automatic memory management - Reduces the incidence of memory leaks . The Visual Basic runtime has done this for sometime, but it is now available to all languages
  • 41. 41 What the .NET Framework gives us  Code verifiability - Rich type information gives us the ability to check that code is operating safely - e.g. Buffer overflows prevented.  Consistent error handling mechanism - Exceptions used instead of error codes and HRESULTS - Exceptions have to be handled – cannot ignore them  Code security - Signing allows the runtime to verify that code has not been tampered with. - Code access security associates permissions with code.
  • 42. 42
  • 43. 43 Basic Components of the .NET Framework The .NET Framework consists of two main parts: • common language runtime • .NET Framework class library
  • 44. 44 The heart of the Framework  The most important elements of the franework are: - The Common Language Runtime (CLR) - The Framework Class Libraries (FCL) ASP.NET WinForms Framework Class Library Base Data XML … Common Language Runtime OS Services
  • 45. 45 Common Language Runtime •Provides the common services for .NET Framework applications. •Programs can be written for the common language runtime in just about every language, including C, C++, C#, and Microsoft Visual Basic®, as well as some older languages such as Fortran. •The runtime simplifies programming by assisting with many mundane tasks of writing code, including memory management—which can be a big generator of bugs—security management, and error handling.
  • 46. Common Language Runtime 46 (CLR)  Locates, loads and runs code written in runtime-aware languages.  Handles object creation, memory management, making method calls, enforces code security and provides a process abstraction.  Code that targets the CLR is called managed code, while code that uses the native OS services directly is called unmanaged code.  Languages that can produce managed code (or .NET programming languages) - C#, VB.NET, VC++ with managed extensions, Fujitsu COBOL.NET, Jscript.NET, Eiffel, Python, Perl…
  • 47. 47 Managed Module A Managed Module is a standard windows portable executable (PE) file that requires the CLR to execute.
  • 48. 48 Managed Code Code executed and managed by the Microsoft® .NET Framework, specifically by the .NET Framework's common language runtime. Managed code must supply the information necessary for the common language runtime to provide services such as memory management, cross-language integration, code access security, and automatic lifetime control of objects. All code based on Microsoft Intermediate Language executes as managed code.
  • 49. 49 .NET Framework Class Library The library includes prepackaged sets of functionality that developers can use to more rapidly extend the capabilities of their own software. The library includes three key components: • o ASP.NET to help build Web applications and Web services. • o Windows Forms to facilitate smart client user interface development. • o ADO.NET to help connect applications to databases.
  • 50. 50 Framework Class Library (FCL)  Provides base class libraries available to all .NET programming languages.  Access to primitive types, file I/O, graphical rendering, crypto, GUI, XML support, etc. Think of the CLR as abstracting the underlying OS (e.g. Windows), and the FCL as abstracting the OS libraries. (e.g. Win32)