1. Trang chủ
  2. » Công Nghệ Thông Tin

bài 1 làm quen với c#

65 581 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Làm quen với c#
Thể loại Bài học
Định dạng
Số trang 65
Dung lượng 11,25 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu về .NET và Visual StudioGiới thiệu về các kiến thức lập trình cơ bản trên ngôn ngữ C# Kiểu dữ liệu Toán tử Thao tác với chuỗi Cấu trúc điều khiển Phương thức Xử lý ngoại lệ Mụ

Trang 1

Bài 1: Làm quen với C#

Trang 2

Giới thiệu về NET và Visual Studio

Giới thiệu về các kiến thức lập trình cơ bản trên ngôn ngữ C#

Kiểu dữ liệu

Toán tử

Thao tác với chuỗi

Cấu trúc điều khiển

Phương thức

Xử lý ngoại lệ

Mục tiêu bài học

Giới thiệu về NET và Visual Studio

Giới thiệu về các kiến thức lập trình cơ bản trên ngôn ngữ C#

Kiểu dữ liệu

Toán tử

Thao tác với chuỗi

Cấu trúc điều khiển

Phương thức

Xử lý ngoại lệ

Trang 3

Windows Forms là ứng dụng có giao diện đồ họa chạy trên hệ điều hành Windows

Windows Forms là ứng dụng chạy trên máy tính của người

Trang 4

Kiến trúc NET

.NET Appliations

Visual Basic Visual C# Visual C++ Visual F#

.NET Framework

.NET Framework Class Library

Các lớp Windows Forms Các lớp ASP.NET Các lớp

khác

.NET Framework Class Library

Các lớp Windows Forms Các lớp ASP.NET Các lớp

Ứng dụng được quản lý Hệ thống kiểu thông dụng Ngôn ngữ trung

gian

Hệ điều hành và phần cứng

Windows XP Windows Vista Windows 7 Các hệ điều hành khác

Trang 5

Ứng dụng Windows Forms không truy cập hệ điều hành hay phần cứng máy tính trực tiếp mà thông qua các dịch vụ của NET

Framework

.NET Framework gồm hai thành phần chính:

.NET Framework Class Library

Common Language Runtime

.NET Framework

Trang 6

.NET Framework Class Library bao gồm thư viện các đoạn mã được

viết sẵn cung cấp các chức năng cần thiết khi lập trình

Các lớp Windows Forms được sử dụng để phát triển ứng dụng

.NET Framework Class Library

.NET Framework Class Library bao gồm thư viện các đoạn mã được

viết sẵn cung cấp các chức năng cần thiết khi lập trình

Các lớp Windows Forms được sử dụng để phát triển ứng dụng

Trang 7

Common Language Runtime (CLR)

Trang 8

CLR (Môi trường quản lý việc thi hành mã) cung cấp các dịch vụ cầnthiết để chạy ứng dụng được viết bằng ngôn ngữ NET

Tất cả các ngôn ngữ NET đều được biên dịch thành ngôn ngữ

trung gian (common intermediate language – CIL) hay còn được gọi

là mã được quản lý

Tất cả các ứng dụng NET đều được thực thi dưới sự dám sát của CLR (quản lý bộ nhớ, thực thi code, bảo mật ….), nên còn được gọi

là ứng dụng được quản lý

CRL cung cấp Hệ thống kiểu chung (Common Type System) định

nghĩa kiểu mà sẽ được sử dụng bởi tất cả các ngôn ngữ NET

Các chương trình viết bằng các ngôn ngữ NET khác nhau có thể

tương tác được với nhau

Common Language Runtime (CLR)

CLR (Môi trường quản lý việc thi hành mã) cung cấp các dịch vụ cầnthiết để chạy ứng dụng được viết bằng ngôn ngữ NET

Tất cả các ngôn ngữ NET đều được biên dịch thành ngôn ngữ

trung gian (common intermediate language – CIL) hay còn được gọi

là mã được quản lý

Tất cả các ứng dụng NET đều được thực thi dưới sự dám sát của CLR (quản lý bộ nhớ, thực thi code, bảo mật ….), nên còn được gọi

là ứng dụng được quản lý

CRL cung cấp Hệ thống kiểu chung (Common Type System) định

nghĩa kiểu mà sẽ được sử dụng bởi tất cả các ngôn ngữ NET

Các chương trình viết bằng các ngôn ngữ NET khác nhau có thể

tương tác được với nhau

Trang 10

Ngôn ngữ trung gian (IL) được biên dịch từ file nguồn

Các tham chiếu đến các file thư viện mà ứng dụng gọi đến

Assembly có thể chạy trên PC được cài đặt CLR Khi assembly đượcchạy, CLR chuyển mã IL sang mã máy là mã có thể được chạy bằng

Ngôn ngữ trung gian (IL) được biên dịch từ file nguồn

Các tham chiếu đến các file thư viện mà ứng dụng gọi đến

Assembly có thể chạy trên PC được cài đặt CLR Khi assembly đượcchạy, CLR chuyển mã IL sang mã máy là mã có thể được chạy bằng

hệ điều hành

Trang 11

So sánh C# với các ngôn ngữ lập trình NET khác

Giống

Cùng sử dụng chung các lớp NET Framework Tạo và làm việc với form, điều khiển, sử dụng csdl và làm việc trên cùng một IDE Visual Studio

So sánh C# với các ngôn ngữ lập trình NET khác

Giống

Cùng sử dụng chung các lớp NET Framework Tạo và làm việc với form, điều khiển, sử dụng csdl và làm việc trên cùng một IDE Visual Studio

Trang 12

.NET ngày càng hoàn thiện và cung cấp nhiều tính năng cho ngườidùng hơn

Visual Studio 2010 tích hợp NET 4.0

Sự phát triển NET FrameWork

Trang 13

Visual Studio 2010

Trang 14

Visual Studio 2010

Visual Studio là một bộ sản phẩm gồm IDE và NET Framework

IDE để phát triển ứng dụng

.NET Framework cung cấp môi trường thực thi ứng dụng

Môi trường phát triển tích hợp

(IDE – Integrated Development Environment) Visual Studio 2010

Môi trường phát triển tích hợp

(IDE – Integrated Development Environment)

.NET FRAMEWORK

Trang 15

Professional Phù hợp cho lập trình viên muốn phát triển các ứng dụng Window,

web hay mobile.

Premium Phù hợp với lập trình viên hay nhóm lập trình viên muốn phát triển

các ứng dụng có khả năng mở rộng Phiên bản này bao gồm các công

cụ hữu ích cho việc lập trình như công cụ kiểm thử, công cụ triển khai CSDL, công cụ quản lý thay đổi và công cụ quản lý vòng đời dự

án Tuy nhiên các công cụ này chỉ được hỗ trợ ở mức cơ bản.

Premium Phù hợp với lập trình viên hay nhóm lập trình viên muốn phát triển

các ứng dụng có khả năng mở rộng Phiên bản này bao gồm các công

cụ hữu ích cho việc lập trình như công cụ kiểm thử, công cụ triển khai CSDL, công cụ quản lý thay đổi và công cụ quản lý vòng đời dự

án Tuy nhiên các công cụ này chỉ được hỗ trợ ở mức cơ bản.

Trang 16

Ngôn ngữ và nền tảng

Những ngôn ngữ lập trình chính được hỗ trợ bởi Visual Studio 2010

Ngôn ngữ Mô tả

Visual Basic Được thiết kế để phát triển ứng dụng nhanh chóng.

Visual C# Kết hợp các đặc tính của java và C++ và phù hợp với phát triển ứng

dụng nhanh chóng.

Visual C++ Phiên bản nâng cấp của C++.

Visual F# Kết hợp lập trình chức năng, thủ tục và hướng đối tượng.

Visual F# Kết hợp lập trình chức năng, thủ tục và hướng đối tượng.

Nền tảng có thể chạy Visual Studio 2010

Windows XP, Windows Vista, Windows 7 hoặc là những phiên bản mới hơn

Nền tảng có thể chạy ứng dụng được tạo bởi Visual Studio 2010

Windows 2000 hoặc mới hơn, phụ thuộc vào thành phần NET nào mà ứng dụng sử dụng

Trang 17

IDE có thể sử dụng để phát triển ứng dụng viết bằng bất cứ ngônngữ nào trong 4 ngôn ngữ trên

.NET Framework cung cấp thư viện hỗ trợ cho cả 4 ngôn ngữ lập

trình

Khi cài đặt VisualStudio sẽ tự động cài SQL Server 2008 Express làphiên bản thu gọn của Microsoft SQL Server 2008

Visual Studio 2010

Trang 18

KIỂU DỮ LIỆU

KIỂU DỮ LIỆU

Trang 19

Cũng giống như VB, C# có hai kiểu dữ liệu

Dữ liệu kiểu giá trị

Tương ứng với kiểu Integer, Double… của Visual Basic

Dữ liệu kiểu tham chiếu

Tương ứng với kiểu String và Object … của Visual Basic

Kiểu dữ liệu

Trang 20

Dữ liệu kiểu giá trị

C# keyword VB Bytes NET type

(structure)

Mô tả (Kiểu dữ liệu được hỗ trợ bởi NET 4)

byte Byte 1 Byte Số nguyên dương từ 0 đến 255

sbyte SByte 1 Sbyte Số nguyên có dấu từ -128 đến 127

short Short 2 Int16 Số nguyên từ -32.768 đến 32.767

ushort UShort 2 UInt16 Số nguyên dương từ 0 đến 65.535

int Integer 4 Int32 Số nguyên từ -2.147.483.648 đến +2.147.483.647

uint UInteger 4 UInt32 Số nguyên dương từ 0 đến 4.294.967.295

long Long 8 Int64 Số nguyên từ -9.223.327.036.854.775.808 đến

9.223.327.036.854.775.807 ulong ULong 8 UInt64 Số nguyên dương từ 0 đến 18.446.744.073.709.551.615 float Single 4 Single Số thập phân có 7 chữ số sau dấu phẩy

double Double 8 Double Số thập phân có 14 chữ số sau dấu phẩy

decimal Decimal 16 Decimal Số nguyên dương với 28 chữ số (gồm phần nguyên và

thập phân) char Char 2 Char Ký tự Unicode

bool Boolean 1 Boolean Giá trị đúng (true) hay sai (false)

Trang 21

Dữ liệu kiểu giá trị bao gồm

Các kiểu dữ liệu lưu số

Lưu số nguyên: sbyte (1 byte), short (2 byte), int (4 byte), long

Dữ liệu kiểu giá trị

Dữ liệu kiểu giá trị bao gồm

Các kiểu dữ liệu lưu số

Lưu số nguyên: sbyte (1 byte), short (2 byte), int (4 byte), long

Trang 22

C# keyword VB keyword NET type (Class) Mô tả

tượng nào

Dữ liệu kiểu tham chiếu

Tham chiếu đến bất kỳ kiểu đối tượng nào

Kiểu string là kiểu object được định nghĩa trước

Trang 23

.NET định nghĩa các kiểu dữ liệu bởi Common Type System thuộc

Trang 24

Khai báo và khởi tạo biến kiểu giá trị

Visual Basic

Khai báo và gán giá trị

Khai báo và gán giá trị trên cùng dòng

Khai báo và khởi tạo hằng

Khai báo và gán giá trị

Khai báo và gán giá trị trên cùng dòng

Khai báo và khởi tạo hằng

Khai báo và gán giá trị

Khai báo và gán giá trị trên cùng dòng

Khai báo và khởi tạo hằng

Khai báo và gán giá trị

Khai báo và gán giá trị trên cùng dòng

Khai báo và khởi tạo hằng

kieuBien tenBien = giaTri;

Trang 25

C# hỗ trợ hai kiểu ép kiểu: Ép kiểu mở rộng và ép kiểu thu hẹp

double z = (a+b+c)/3; // Chuyển b, c từ int sang double

C# hỗ trợ hai kiểu ép kiểu: Ép kiểu mở rộng và ép kiểu thu hẹp

Chuyển từ kiểu có độ chính xác cao sang kiểu có độ chính xác thấp hơn

byte  short  int  long  decimal byte  short  int  double

byte  short  float  double

Trang 26

Sử dụng phương thức ToString có sẵn trong mỗi cấu trúc

Sử dụng phương thức Parse có sẵn trong mỗi cấu trúc

string chuoiSoTien = soTien.ToString();

decimal soTien2 = Decimal.Parse(chuoiSoTien);

Sử dụng phương thức ToString có sẵn trong mỗi cấu trúc

Sử dụng phương thức Parse có sẵn trong mỗi cấu trúc

Sử dụng lớp Convert

Dùng phương thức này để chuyển kiểu cho tất cả các kiểu được xây dựng sẵn

decimal soTien3 = Convert.ToDecimal(chuoiSoTien);

string soTienStr = Convert ToString(soTien3);

Trang 27

TOÁN TỬ

Trang 28

C# cung cấp các toán tử và cách sử dụng các toán tử này giốngnhư Visual Basic

Toán tử số học

Toán tử Tên phép toán Mô tả

- Phép trừ Trừ toán hạng bên trái cho toán hạng bên phải

* Phép nhân Nhân toán hạng bên trái với toán hạng bên phải

- Dấu âm Chuyển giá trị dương thành giá trị âm và giá trị âm

thành giá trị dương

Trang 29

Sử dụng các toán tử trong C# cũng tương tự như sử dụng các toán

tử trong Visual Basic

Trang 30

Thứ tự ưu tiên giống như trong Visual Basic

1 Toán tử tăng (++) và toán tử giảm ( )

2 Toán tử dương (+) và toán tử âm (-)

3 Toán tử nhân (*), chia (/) và chia lấy dư (%)

Trang 31

C# cung cấp các phép gán tương tự như Visual Basic

Toán tử gán

= Gán giá trị mới cho biến

+= Cộng giá trị của biến với toán hạng bên phải rồi gán kết quả cho biến

-= Lấy giá trị của biến trừ đi toán hạng bên phải rồi gán kết quả cho biến

*= Nhân biến với toán hạng bên phải rồi gán kết quả cho biến

/= Lấy giá trị của biến chia cho toán hạng bên phải rồi gán kết quả cho biến

%= Lấy giá trị của biến chia lấy dư cho toán hạng bên phải rồi gán kết quả

cho biến

Trang 32

Sử dụng phép gán cũng tương tự như trong Visual Basic

x +=10; //x = 27c

Trang 33

C# cung cấp các toán tử logic tương tự như Visual Basic

Tuy kí hiệu toán tử C# khác với Visual Basic nhưng việc sử dụng

chúng giống hệt nhau.

Toán tử logic

Trang 34

C# cung cấp các toán tử tương tự như Visual Basic

Việc sử dụng các toán tử này cũng giống như trong Visual Basic

Lưu ý ký hiệu toán tử bằng và toán tử không bằng của hai ngôn

C# cung cấp các toán tử tương tự như Visual Basic

Việc sử dụng các toán tử này cũng giống như trong Visual Basic

Lưu ý ký hiệu toán tử bằng và toán tử không bằng của hai ngôn

Trang 35

Cũng giống như Visual Basic, lớp Math cung cấp các phương thứcthao tác với dữ liệu kiểu số

Lớp Math

Math.Round (soThapPhan [,doChinhXac) Làm tròn chẵn.

Math.Pow(so, mu) Tính lũy thừa

Math.{Min|Max}(soThu1, soThu2) Tìm giá trị nhỏ nhất (lớn nhất) của hai số

Trang 37

Khái niệm chuỗi (String) trong C# cũng giống như khái niệm chuỗitrong Visual Basic

Khai báo và khởi tạo chuỗi

Nối chuỗi

Thao tác với chuỗi

string a = “Xin chao” ; // Gán một chuỗi hằng cho string

string b = “”; // Gán chuỗi rỗng cho string

string c = null; // Gán giá trị null cho string

string c1 = “Nguyen Van ” + “ An”; // c1 = “Nguyen Van An”

string a = “Nguyen Van” ;

string b = “ An”;

string c2 = a + b; // c2 = “Nguyen Van An”

string c3 = a + “ An”; // c3 = “Nguyen Van An”

string c4 = “Nguyen Van” + 2; // c4 = “Nguyen Van2”

string a += “An”; // a = “Nguyen VanAn”

Khái niệm chuỗi (String) trong C# cũng giống như khái niệm chuỗitrong Visual Basic

Khai báo và khởi tạo chuỗi

Nối chuỗi

string c1 = “Nguyen Van ” + “ An”; // c1 = “Nguyen Van An”

string a = “Nguyen Van” ;

string b = “ An”;

string c2 = a + b; // c2 = “Nguyen Van An”

string c3 = a + “ An”; // c3 = “Nguyen Van An”

string c4 = “Nguyen Van” + 2; // c4 = “Nguyen Van2”

string a += “An”; // a = “Nguyen VanAn”

Trang 38

Để thêm các ký tự đặc biệt vào chuỗi như ký tự tab, xuống dòng…

có hai cách

Sử dụng chuỗi thoát: \n, \t, \r, \\, \”…

Sử dụng chuỗi nguyên mẫu: Sử dụng @ trước chuỗi

Thao tác với chuỗi

string convat = “voi\tho\rga\tvit”;

chuoi convat sẽ có định dạng như sau:

string convat = “voi\tho\rga\tvit”;

chuoi convat sẽ có định dạng như sau:

Chú ý: Đối với chuỗi nguyên mẫu, sử dụng dấu “” khi muốn thêm dấu “

(vd: @”Nhan “”x”” de thoat” sẽ hiển thị Nhan “x” de thoat)

Trang 39

Giống như VB, C# cung cấp các định dạng hiển thị

Sử dụng phương thức ToString

Định dạng hiển thị

Code Định dạng Giải thích

C hoặc c Currency Hiển thị tiền tệ

P hoặc p Percent Hiện thị phần trăm

N hoặc n Number Hiển thị số có ký tự phân tách (123,345.34)

F hoặc f Float Hiển thị số thập phân

D hoặc d Digits Hiển thị số nguyên (123345.34)

Giống như VB, C# cung cấp các định dạng hiển thị

Sử dụng phương thức ToString

D hoặc d Digits Hiển thị số nguyên (123345.34)

E hoặc e Exponential Hiển thị số theo ký pháp khoa học (E)

G hoặ g General Hiển thị số thập phân theo cách thông thường hoặc ký pháp khoa học

Trang 41

C# cung cấp các cấu trúc điều khiển giống như Visual Basic

Cấu trúc tuần tự

Cấu trúc lựa chọn

Cấu trúc lựa chọn đơn Cấu trúc lựa chọn kép Cấu trúc đa lựa chọn

Cấu trúc lặp

Cấu trúc lặp biết số vòng lặp Cấu trúc lặp không biết số vòng lặp

Việc sử dụng các cấu trúc này giống như Visual Basic chỉ khác nhau

về cú pháp

Cấu trúc điều khiển

C# cung cấp các cấu trúc điều khiển giống như Visual Basic

Cấu trúc tuần tự

Cấu trúc lựa chọn

Cấu trúc lựa chọn đơn Cấu trúc lựa chọn kép Cấu trúc đa lựa chọn

Cấu trúc lặp

Cấu trúc lặp biết số vòng lặp Cấu trúc lặp không biết số vòng lặp

Việc sử dụng các cấu trúc này giống như Visual Basic chỉ khác nhau

về cú pháp

Trang 42

Display.Text = “Đỗ”;

}

Trang 48

Dim sum As Integer = 0

For i As Integer = 1 To 5 Step 1

Trang 49

break: Khi gặp lệnh này sẽ thoát ra khỏi vòng lặp

continue: Khi gặp lệnh này sẽ bỏ qua các câu lệnh sau nó và thựchiện vòng lặp tiếp theo

Lệnh break và continue trong vòng lặp

break: Khi gặp lệnh này sẽ thoát ra khỏi vòng lặp

continue: Khi gặp lệnh này sẽ bỏ qua các câu lệnh sau nó và thựchiện vòng lặp tiếp theo

Trang 50

PHƯƠNG THỨC

PHƯƠNG THỨC

Trang 51

Visual Basic cung cấp hai kiểu cú pháp cho thủ tục (phương thức)

Phương thức Sub (không trả về giá trị)

Phương thức Function (trả về giá trị)

C# chỉ cung cấp một cú pháp duy nhất cho phương thức

Visual Basic cung cấp hai kiểu cú pháp cho thủ tục (phương thức)

Phương thức Sub (không trả về giá trị)

Phương thức Function (trả về giá trị)

C# chỉ cung cấp một cú pháp duy nhất cho phương thức

(Private|Public) Function tenthutuc (ByVal thamso1As kieuthamso) As kieutrave

//Thân thủ tục

End Sub

(private|public) kieutrave tenphuongthuc (kieubienthamso thamso1) {

Trang 52

Cú pháp

Phương thức không trả về giá trị

Phương thức trả về giá trị và có tham số

Phương thức không trả về giá trị

Phương thức trả về giá trị và có tham số

Trang 53

Cú pháp gọi đến phương thức cũng tương tự như Visual Basic

[Me.] tenphuongthuc ([danhsachthamso])

[this.] tenphuongthuc ([danhsachthamso])

Cú pháp gọi đến phương thức cũng tương tự như Visual Basic

Trang 54

Theo mặc định, đối số được truyền theo giá trị

Để truyền đối số theo tham chiếu, sử dụng từ khóa ref

Truyền tham số theo tham chiếu và tham trị

private void Form1_Load(object sender, EventArgs e)

{

int x = 10;

int y = 5;

doiGiaTri(ref x, ref y);

MessageBox.Show( "x = " + x + "\ny= " + y);

doiGiaTri(ref x, ref y);

MessageBox.Show( "x = " + x + "\ny= " + y);

Ngày đăng: 23/05/2014, 16:02

TỪ KHÓA LIÊN QUAN

w