Week 1: Introduce ➤ What is the.NET Framework ? CLR, MSIL,IL,FLC Garbage collection Namespace...

52
C#4.0 Week 1: Introduce What is the .NET Framework ? CLR, MSIL,IL,FLC Garbage collection Namespace What C# is and how it relates to the .NET Framework

Transcript of Week 1: Introduce ➤ What is the.NET Framework ? CLR, MSIL,IL,FLC Garbage collection Namespace...

C#4.0Week 1: Introduce

➤What is the .NET Framework ? CLR, MSIL,IL,FLC Garbage collection Namespace

➤ What C# is and how it relates to the .NET Framework

C#4.0

WHAT IS THE .NET FRAMEWORK?

Microsoft’s modern software development platform

Programs executed by Common Language Runtime (CLR)

FLC(Framework class library) Includes a large library of components (classes) which can be used in programs

Supports several programming languages, including C#, Visual Basic, C++, J#

Windows Programming 1 Chapter 1: Introducing C# Slide 2

C#4.0

.NET Framework

Windows Programming 1 Chapter 1: Introducing C# Slide 3

C#4.0

.NET Framework

4

.NET 1.1 (Apr-2003)VS .NET 2003Default: Server 2003

.NET 3.5 (Nov-2007)VS.NET 2008Default: Windows 7

.NET 3.0 (Nov-2006)Default: Windows Vista, Server 2008

.NET 2.0 (Nov-2005)VS.NET 2005

.NET 1.0 (Feb-2002)

.NET 4.0 (2010)VS.NET 2010Default: Windows 7

C#4.0

Writing Applications Using the .NET Framework

CLR: Common Language Runtime MSIL or IL: Microsoft Intermediate Language JIT: just-In-Time compiler Assemblies Managed Code Garbage Collection

Windows Programming 1 Chapter 1: Introducing C# Slide 5

C#4.0

.NET Framework -CLR

Common Language Runtime Architecture

Windows Programming 1 Chapter 1: Introducing C# Slide 6

C#4.0

Writing Applications Using the .NET Framework

7

MS ILCLR

C++ Compiler

C# Compiler

J# .NET Compiler

CT C#.NET

CT VB.NET

CT C++.NET

CT J#.NET

VB .NET Compiler

1011010

1011010

1011010

Programmer

C#4.0

Writing Applications Using the .NET Framework

Windows Programming 1 Chapter 1: Introducing C# Slide 8

C#4.0

Assembly

Managed Modules Chứa IL code để thực thi

Chứa resource, metadata… Portable Executable (PE)

Process assembly (EXE) Library assembly (DLL)

9

.NET Assembly

DLL

EXE

C#4.0

Managed Code

Software that is written using the .NET Framework is called Managed

10

Windows(OS khác)

Legacy Software(unmanaged code)

Common Language Runtime

Managed Executable

C#4.0

Garbage collection

11

class myClass{ void Method(){ variable v1; variable v2; do{

…. }}

B

EC

A

D

Managed Heap

A và D sẽ bị xoá do ko còn tham chiếu hay truy cập tới

C#4.0

Namespaces

Namespaces are also used as a means of categorizing items in the .NET Framework

Qualified names use period characters (.) between namespace levels

Within a namespace, you can define nested namespaces, also using the namespace keyword.

Windows Programming 1 Chapter3: Variables and Expressions Slide 12

C#4.0

Namespaces

Windows Programming 1 Chapter3: Variables and Expressions Slide 13

C#4.0

14

Namespace Description

System Chứa lớp toán học, chuyển đổi dữ liệu

System.IO Các lớp cho thao tác Input và Output

System.Net Các lớp liên quan đến network protocol

System.Collections Chức các lớp liên quan đến xử lý tập hợp

System.Data Các lớp của ADO.NET

System.Drawing Các lớp thực thi chức năng GUI

System.Threading Các lớp lập trình MultiThread

System.Web Các lớp liên quan đến HTTP protocol

System.Xml Các lớp liên quan XML

Namespace

C#4.0

Đặc tính lõi: IL, kiểu dữ liệu trong CTS Hỗ trợ Win GUI và control WebForm (ASP.NET) Data Access (ADO.NET) Directory Access File System, registry access Networking and web browsing .NET attributes and reflection WinOS access COM interoperability

15

Framework (Base) Class Library FCL/BCL

C#4.0

Run .NET App from Client

Required MS .NET Framework compatible MS .NET Framework 2.0, 3.5

Install .NET 3.5 Full Redistributable package (dotnetfx35.exe, 197MB)

Windows Vista comes with .NET Framework 3.0

Windows 7 comes with .NET Framework 4.0

16

.NET App

.NET App

.NET App

C#4.0

17

C#4.0

WHAT IS C#?

Applications You Can Write with C# Windows applications Web applications Web services:

Windows Programming 1 Chapter 1: Introducing C# Slide 18

C#4.0

Visual Studio

Powerful, professional Integrated Development Environment (IDE)

Integrates compilers, debugger and many other useful tools for development

Can work with many different types of project, including: Console (text-based) applications Windows (GUI) applications Web applications (ASP.NET) Class libraries

Windows Programming 1 Chapter 1: Introducing C# Slide 19

C#4.0

Visual Studio

Solution explorer

Toolbox windows

Visual designer

Properties windows

Windows Programming 1 Chapter 1: Introducing C# Slide 20

C#4.0

Visual Studio projects

A project contains source code files, settings and resources for an application

May contain references to class libraries May contain data used by application Building a project:

Compiles source files Copies non-source files to output folder Creates an assembly in output folder

Building a solution builds all its projects

Windows Programming 1 Chapter 1: Introducing C# Slide 21

C#4.0

Project details

References – class librariesused by this application

Solution folder contents

Project folder contents

Solution file (.sln) and project file (.csproj) are created by VS and contain solution/project configuration information

Windows Programming 1 Chapter 1: Introducing C# Slide 22

C#4.0

Creating a Visual Studio project

Demo

Windows Programming 1 Chapter 1: Introducing C# Slide 23

C#4.0Week 1: THE C# LANGUAGE

Chapter 2: Writing a C# Program

A basic working knowledge of Visual Studio 2010 and Visual C# 2010 Express Edition

How to write a simple console application How to write a Windows Forms application

C#4.0

Visual C# 2010 Ultimate

Windows Programming 1 Chapter 2: Writing a C# Program Slide 25

C#4.0

CONSOLE APPLICATIONS

Windows Programming 1 Chapter 2: Writing a C# Program Slide 26

C#4.0

WINDOWS FORMS APPLICATIONS

MO_BAI1

Windows Programming 1 Chapter 2: Writing a C# Program Slide 27

C#4.0

The Solution Explorer

Windows Programming 1 Chapter 1: Introducing C# Slide 28

C#4.0

The Properties Window

Windows Programming 1 Chapter 1: Introducing C# Slide 29

C#4.0

Code view

Windows Programming 1 Chapter 1: Introducing C# Slide 30

C#4.0

The Error List Window

Windows Programming 1 Chapter 1: Introducing C# Slide 31

C#4.0

SUMMARY

Windows Programming 1 Chapter 2: Writing a C# Program Slide 32

? ? ?

C#4.0Week 1: THE C# LANGUAGE

Chapter 3:Variables and Expressions Basic C# syntax Variables and how to use them Expressions and how to use them

C#4.0

BASIC C# SYNTAX

The look and feel of C# code is similar to that of C++ and Java.

C# compilers ignore additional spacing in code, whether it results from spaces, carriage returns, or tab characters (collectively known as whitespace characters).

Statements C# is a block-structured language, meaning

statements are part of a block of code.

Windows Programming 1 Chapter3: Variables and Expressions Slide 34

C#4.0

block These blocks, which are delimited with curly

brackets ({ and }), may contain any number of statements, or none at all

Windows Programming 1 Chapter3: Variables and Expressions Slide 35

C#4.0

comments Comments can be created using //… Multi-lines comments use /* … */ You can use single-line comments that start

with three / symbols instead of two /// A special comment

Comments are ignored by the compiler Used only for human readers

Windows Programming 1 Chapter3: Variables and Expressions Slide 36

C#4.0

The code outlining

You can do this with the #region and #endregion keywords, which define the start and end of a region of code that can be expanded and collapsed.

Windows Programming 1 Chapter3: Variables and Expressions Slide 37

C#4.0

VARIABLES

C# syntax for declaring variables merely specifies the type and variable name:

<type> <name>;

int intNumberOfStudents; Declaration includes

Name, follow Naming Convention Rules Data Type Required Value for Constants Optional Initial Value for Variables

Windows Programming 1 Chapter3: Variables and Expressions Slide 38

C#4.0

Simple Types

Windows Programming 1 Chapter3: Variables and Expressions Slide 39

C#4.0

Simple Types

Windows Programming 1 Chapter3: Variables and Expressions Slide 40

C#4.0

Simple Types

Windows Programming 1 Chapter3: Variables and Expressions Slide 41

C#4.0

Using Simple Type Variables

Mo_b3

Windows Programming 1 Chapter3: Variables and Expressions Slide 42

C#4.0

Variable Naming

The first character of a variable name must be either a letter, an underscore character ( _ ), or the at symbol (@).

Subsequent characters may be letters, underscore characters, or numbers.

Windows Programming 1 Chapter3: Variables and Expressions Slide 43

C#4.0

String Literals

Windows Programming 1 Chapter3: Variables and Expressions Slide 44

C#4.0

String Literals

This means that the following strings are equivalent:

"Karli \’s string."

"Karli \u0027 s string.“ @ "A short list:

item 1item 2“

"C:\\Temp\\MyDir\\MyFile.doc“ @ "C:\Temp\MyDir\MyFile.doc"

Windows Programming 1 Chapter3: Variables and Expressions Slide 45

C#4.0

EXPRESSIONS

Operators can be roughly classified into three categories:

➤ Unary— Act on single operands ➤ Binary—Act on two operands ➤ Ternary—Act on three operands

Windows Programming 1 Chapter3: Variables and Expressions Slide 46

C#4.0

Mathematical Operators

Windows Programming 1 Chapter3: Variables and Expressions Slide 47

C#4.0 Windows Programming 1 Chapter3: Variables and Expressions Slide 48

C#4.0

Manipulating Variables with Mathematical Operators

Windows Programming 1 Chapter3: Variables and Expressions Slide 49

C#4.0

Assignment Operators

Windows Programming 1 Chapter3: Variables and Expressions Slide 50

C#4.0

Operator Precedence

Windows Programming 1 Chapter3: Variables and Expressions Slide 51

C#4.0

SUMMARY

Windows Programming 1 Chapter 3: Variables and Expressions Slide 52

? ? ?