Top Banner
Khoa CNTT Trường CĐ Công Nghiệp Tuy Hòa TÌM HIỂU NGÔN NGỮ LẬP TRÌNH CSHAP(C#) Bắt Đầu Nhóm PNP
40

Slide C# báo cáo

Jul 30, 2015

Download

Documents

chepcrack
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Slide C# báo cáo

Khoa CNTT Trường CĐ Công Nghiệp Tuy Hòa

TÌM HIỂU NGÔN NGỮ LẬP TRÌNH CSHAP(C#)

Bắt Đầu

Nhóm PNPNhóm PNP

Page 2: Slide C# báo cáo

GIỚI THIỆU

1) Mục đích:

2) Nội dung :

Tìm hiểu nghiên cứu ngôn ngữ CShap làm nền tảng cho việc tiếp tục nghiên cứu kỹ thuật lập trình mạng. Qua đó nâng cao tầm hiểu biết và trình độ của SV

Nghiên cứu được chia làm hai giai đoạn:1. Giai đoạn một nghiên cứu những khái

niệm cơ bản của CShap và lập trình hướng đối tượng trong CShap 2. Giai đoạn hai nghiên cứu sâu kỹ thuật lập

trình mạng được cài đặt trên ngôn ngữ

Cshap.

GIỚI THIỆU

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

Page 3: Slide C# báo cáo

CÁC VẤN ĐỀ

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 4: Slide C# báo cáo

C# VÀ KIẾN TRÚC .NET

1. C# là một trình biên dịch hướng .NET, nghĩa là tất cả các mã của C# luôn luôn chạy trên trên môi trường .NET Framework. Điều đó dẫn đến 2 hệ quả sau:– Cấu trúc và các lập luận C# được phản ánh các phương pháp luận

của .NET ngầm bên dưới.– Trong nhiều trường hợp, các đặc trưng của C# thậm chí được quyết

định dựa vào các đặc trưng của .NET, hoặc thư viện lớp cơ sở của .NET.

2. C# là một ngôn ngữ độc lập. Nó được thiết kế để có thể sinh ra mã đích trong môi trường .NET, nó không phải là một phần của .NET bởi vậy có một vài đặc trưng được hỗ trợ bởi .NET nhưng C# không hỗ trợ và bạn cũng đừng ngạc nhiên khi có những đặc trưng C# hỗ trợ mà .NET không hỗ trợ.– chẳng hạn như quá tải toán tử.

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 5: Slide C# báo cáo

C# VÀ CÔNG CỤ HỔ TRỢ LẬP TRÌNH

Bạn có thể lập trình Cshap bằng bất cứ trình soạn thảo văn bản nàoVí dụ như notepad, Wordpad nhưng để làm tăng năngxuất của làm việc của các lập trình viên rút ngắn thời gian viết codeTa nên sử dụng các IDE hỗ trợ lập trình.Ví dụ như :Bộ IDE: Microsoft Visual Studio các phiên bản 2003,2005, 2008 và gần đây nhất là bản 2010Bên cạnh đó microsoft còn có các bản miễn phí Express dành cho Các cá nhân nghiên cứu hay học tập.

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 6: Slide C# báo cáo

HƯỚNG ĐỐI TƯỢNG TRONG C#

o C# dựa trên nền tảng là C++ nên các cú pháp về khai báo biếncấu trúc lặp ….Gần như tương tự C++ vì vậy chúng ta lướt quacác khái niệm trên. Ta chỉ nghiên cứu các khái niệm cơ bản của lập trình hướng đối tượng.o Giống như java C# cũng là ngôn ngữ lập trình hướng đối tượngo Xét ví dụ sau:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 7: Slide C# báo cáo

Ví dụ

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 8: Slide C# báo cáo

Tính kế thừa

o Khác với C++, C# chỉ hỗ trợ đơn kế thừa. Nghĩa là một lớp con chỉ được thừa kế từ một lớp cha duy nhất. Bù lại nó hổ trợ khái niệm interface có những đặc điểm của đa kế thừ nhưng loại bỏ được những phức tạp ở đa kế thừa ở C++

o Ở ví dụ trên tính kế thừa được thể hiện ở việclớp HinhVuong là lớp con kế thừa từ lơp cha là lớp HinhHoc cụ thể là kế thừa từ một lớp trựu tượng .

Lớp cha

Lớp con

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 9: Slide C# báo cáo

Tính kế thừa(tt)

Trong C# một lớp bắt buột phải thừa kế từ một lớp nào đó ngoại trừ lớp Object . C# hỗ trợ một lớp cơ sở toàn diện gọi là System.Object.Vì lớp cha HinhHoc là một lớp trừu tượng(abstract) chứa trong nó hai phương thức trừu tượng , C# sẽ yêu cầu lớp con HinhVuong phải override lại các phương thức đó.

Phương thức abstract ở lớp cha

Phương thức cài đặt ở lớp con

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 10: Slide C# báo cáo

Phương thức nạp chồng(Overloading)

o C# hỗ trợ phương thứ nạp chồng với một vài dạng phương thức khác nhau về những đặc tính sau:số lượng tham số, kiểu tham số.

o Nó không chấp nhận hai phương thức chỉ khác nhau về kiểu trả về, hay khác nhau về đặt tính của tham số đang được khai báo như sef hay out.

o Ở ví dụ ta thấy hàm tạo ở lớp HinhVuong được viết theo kiểu nạp chồng

Hàm tạo(Constructor) được viết theo 2 kiểu

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 11: Slide C# báo cáo

Giao diện(interface)

o Việc khai báo giao diện làm việc cũng tương tự như khai báo một lớp trừu tượng( abstactor) nhưng nó không cho phép thực thi bất cứ một phần nào của giao diện. Một giao diện chỉ được khai báo bên trong nó những phương thức, thuộc tính, bộ lập mục và sự kiện.

o Giao diện thì không chứa Constructor , không cho phép các phương thức nạp chồng, không cho phép khai báo các bổ, hay các từ khóa virtual hay static trên các thành phần. Mặc các thành phần trong giao diện luôn luôn là public

Giao diên IDoHoa được khai báo và cài đặt cho lớp HinhChuNhat

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 12: Slide C# báo cáo

Struct

o Trong C# struct được định nghĩa gần giống như một lớp chỉ khác tù khóa và một vài điểm như sau:

1. Struct là một kiểu giá trị không phải kiểu tham chiếu2. Struct không hỗ trợ kế thừa nhưng vẫn kế thừa từ lớp Object3. Trình biên dịch luôn cung cấp một constructor không tham số

mặc định và không cho phép thay thế.4. Với struct bạn có thế chỉ rỏ cách mà các trường đặt ngoài bộ

nhớ.

Khai báo 1 struct

Vì struct là kiểu giá trị nên thao tác new chỉ đơn giản là định vị bộ nhớ và gọi hàm tạo nên có thể code trên struct theo hai cách như sau:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 13: Slide C# báo cáo

Lỗi và xử lý biệt lệ

o Nếu bạn đã học VB thì cũng biết cách xử lý biệt lệ của nó rất hạn chế trong câu lệnh On Error Goto đối với C# nó mở ra một thế giới mới cho việc xử lý lỗi trong chương trình của bạn

o Cách của C# xử lý biệt lệ tương đối giống với Java và C++ nhưng trong C++ thỉnh thoảng phải cảnh giác với những biệt lệ bởi việc thực thi ẩn trong C++ có thể xảy ra. Nhưng bạn hãy hoàn toàn yên tâm khi sử dụng trong C# vì nó không gây bất cứ ảnh hưởng nào bất lợi nào trong thực thi

o Sau đây là những lớp biệt lệ của lớp cơ sở:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 14: Slide C# báo cáo

Các lớp biệt lệ cơ bản

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 15: Slide C# báo cáo

Các lớp biệt lệ cơ bản(tt)

o những lớp biệt lệ nên đươc đặt trong bất kì namspace nào tương đuơng những lớp mà chúng có thể được sinh ra - vì lí do đó những biệt lệ có liên quan đến IO thì nằm trong namspace System.IO

o Có 2 lớp quan trọng trong hệ thống các lớp được dẫn xuất từ System.Exception là :System.SystemException - sử dụng cho những biệt lệ thường xuyên được sinh ra trong thời gian chạy của .NET,hoặc là những lỗi chung thường được sinh ra bởi hầu hết những ứng dụng , ví dụ như là StackOverflowException đuợc sinh ra bởi thời gian chạy .NET nếu nó thăm dò thấy Stack đầy

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

CÁC VẤN ĐỀ

Page 16: Slide C# báo cáo

Đón bắt biệt lệ

cách mà nó làm như sau :    1. Dòng thực thi bước vào khối try.    2. Nếu không có lỗi xuất hiện, việc thực thi tiến hành một cách bình thường xuyên suốt khối try, và khi đến cuối khối try, dòng thực thi sẽ nhảy đến khối finally ( bước 5), tuy nhiên, nếu một lỗi xuất hiện trong khối try,thực thi sẽ nhảy đến khối catch ( bước tiếp theo)    3. trạng thái lỗi được xử lí trong khối catch    4. vào cuối của khối catch , việc thực thi được chuyển một cách tự động đến khối finally    5. khối finally được thực thi Cú pháp C# được sử dụng để thể hiện tất cả điều này cụ thể như sau:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 17: Slide C# báo cáo

Đón bắt biệt lệ(tt)

Những thuộctính của system.exceptionTrong ví dụ trên chúng ta chỉ xem xét 1 thuộc tính đó là message, của đối tượng exception. tuy nhiên có 1 số những thuộc tính trong lớp system.exception    - helplink: 1 liên kết đến 1 tập tin trợ giúp mà cung cấp nhiều thông tin hơn về biệt lệ    - message: chuỗi mô tả trạng thái lỗi    - source : tên của ứng dụng hoặc đối tượng mà gây ra lỗi    - Stacktrace: chi tiết về phương thức gọi stack ( để giúp đỡ truy dấu vết phương thức mà ném ra biệt lệ)    - TargetSite: một đối tượng phản ánh của .NET mà mô tả phương thức ném ra biệt lệ    - InnerException :nếu biệt lệ này được ném từ bên trong một khối catch , nó chứa đựng đối tượng biệt lệ mà gửi đoạn mã vào trong khối catch.

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 18: Slide C# báo cáo

Cơ chế Delegate & Event

DelegateDelegate

Lớp đóng gói các phương thức (method signature)Dùng trong event-handling model của C#Đặc tính

Type safeObject oriented mechanism

Delegate là class:Có instanceCó thể chứa những tham chiếu đến 1 hay nhiều method

Một delegate định nghĩa một signature

Return type

Sequence of parameter types

Tất cả các method có cùng signature có thể được add vào thể hiện của delegate

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 19: Slide C# báo cáo

Delegate instance có một danh sách các tham chiếu method

Cho phép add (+) các methodCó thể remove (-) các method

public delegate void MyDelegate1(int x, int y)

Delegate cho dạng hàm: void Method( int, int )

public delegate string MyDelegate2(float f)

Delegate cho dạng hàm: string Method( float )

1.) Define delegate

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 20: Slide C# báo cáo

2.) Instance delegate

public void Method1(int x, int y){

…}…MyDelegate1 del1 = new MyDelegate1(Method1);

public string Method2(float f){

…}…MyDelegate2 del2 = new MyDelegate2(Method2);

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 21: Slide C# báo cáo

3.) Call Delegate

int x = 5, y = 10;del1(x, y); del1(10, 20);

int y = 2;del1(100, y);

Gọi del1

float f =0.5f;string s;s = del2(f);

string s = del2(100f);

Gọi del2

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 22: Slide C# báo cáo

3.) Multi Cast

void Print(int x,int y) {Console.WriteLine(“x = {0}, y = {1}”, x, y);

}void Sum(int x, int y) {

Console.WriteLine(“Tong = {0}”, x+y);}

MyDelegate1 mulDel = new MyDelegate1(Print);mulDel += new MyDelegate1(Sum);

mulDel(5, 10);

mulDel -= new MyDelegate1(Print);mulDel(5,10);

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 23: Slide C# báo cáo

Cơ chế thông điệp giữa các lớp hay các đối tượngCó thể thông báo cho lớp khác biết được khi một lớp có phát sinh điều gì đóPublisher: lớp phát sinh sự kiệnSubscriber: lớp nhận hay xử lý khi sự kiện xảy raTrong môi trường giao diện GUIs (Graphical User Interfaces: GUIs):

Button đưa ra sự kiện “Click”, cho phép lớp khác có thể đáp ứng (xử lý) khi sự kiện này xảy ra.

VD: Button “Add” trong Form, khi sự kiện click xảy ra thì Form thực hiện lấy dữ liệu từ các TextBox đưa vào ListBox…

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 24: Slide C# báo cáo

Một lớp có publish một tập các event cho phép các lớp khác subscribeButton là lớp publish đưa ra event: click Form là lớp subscribe có phần xử lý riêng khi “click” của Button kích hoạt.

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

AA

BB

CC

eventevent

publishpublish

subscribesubscribeThông báoThông báo

Đăng kýĐăng ký

Page 25: Slide C# báo cáo

Sự kiện trong C# được thực thi nhờ uỷ thácLớp publishing định nghĩa ủy thácNhững lớp subscribing phải thực thiKhi sự kiện xuất hiện thì phương thức của lớp subscribing được gọi thông qua uỷ thác.

Phương thức để xử lý sự kiện gọi là trình xử lý sự kiện (event handler)

Trình xử lý sự kiện trong .NET Framework được mô tả như sau:Trả về giá trị voidTham số 1: nguồn phát sinh sự kiện, đây chính là đối tượng publisherTham số 2: là đối tượng thuộc lớp dẫn xuất từ EventArgs

Phải thực hiện trình xử lý sự kiện theo đúng mẫu trên!

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 26: Slide C# báo cáo

Khai báo delegate xử lý sự kiện

Khai báo event

Các lớp muốn xử lý khi sự kiện OnEventName phát sinh thì phải thực thi event handler

Cơ chế Delegate & Event(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU public delegate void HandlerName(object obj, EventArgs arg);

public event HandlerName OnEventName;

Page 27: Slide C# báo cáo

Tính đa luồng

Định nghĩa luồng: Luồng (thread) là một chuỗi liên tiếp những sự thực thi trong chương trình. Trong chương trình C#, việc thực thi bắt đầu bằng phương thức main() và tiếp tục cho đến khi kết thúc hàm main().Thao tác luồng: luồng được thao tác bằng cách dùng lớp Thread nằm trong namespace System.Threading, một thể hiện của luồng đại diện cho một luồng. Chúng ta có thể tạo các bằng cách khởi tạo một đối tượng luồng.Ví dụ: ThreadStart entryPoint = new ThreadStart(ChangeColorDepth);Thread depthChangeThread = new Thread(entryPoint);depthChangeThread.Name = "Depth Change Thread";depthChangeThread.Start();

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 28: Slide C# báo cáo

Tính đa luồng(tt)

Độ ưu tiên luồng:Độ ưu tiên của luồng được định nghĩa là các giá trị trong bản liệt kê ThreadPriority, các giá trị: Highest, abovenormal, Normal, Belownormal, Lowest. Mỗi luồng có một độ ưu tiên cơ sở.Sự đồng bộ: Một khía cạnh chủ yếu khác của sự đồng bộ hay là việc truy nhập một biến chỉ bởi nhiều luồng vào cùng thời điểm, nếu không đảm bảo được sự đồng bộ thì sẽ gây ra các lỗi ting vi.Để giải quyết việc đồng bộ, C# cung cấp cách thức truy nhập biến bằng từ khóa lock:Lock (x){

doSomething();}Các vấn đề về đồng bộ:Deadlock: là một lỗi có thể xuất hiện khi hai luồng cần truy nhập vào các tài nguyên mà bị khóa lẫn nhauRace condition: là một lỗi xuất hiện khi vài luồng cố gắng truy nhập vào cùng một dữ liệu và không quan tâm đến các luồng khác.

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 29: Slide C# báo cáo

Tính đa luồng (tt)

Ví dụ về tính đa luồng:static void DisplayNumbers()      {         Thread thisThread = Thread.CurrentThread;         string name = thisThread.Name;         Console.WriteLine("Starting thread: " + name);         Console.WriteLine(name + ": Current Culture = " +                           thisThread.CurrentCulture);         for (int i=1 ; i<= 8*interval ; i++)         {            if (i%interval == 0)               Console.WriteLine(name + ": count has reached " + i);         }      }

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 30: Slide C# báo cáo

Tính đa luồng (tt)

Phương thức cho main() cho threadPlayaround và lớp chứa đựng của nó là:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 31: Slide C# báo cáo

Tính đa luồng (tt)

Lỗi deadlock:

Vào cùng lúc đó một luồng khác đang chạy:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 32: Slide C# báo cáo

Những bổ từ truy cập(access modifiers):

o C# cung cấp một số bổ từ truy cập để cho biết sự tồn tại của một thành viên trong một lớp C# có hổ trợ 5 bổ từ như sau:

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 33: Slide C# báo cáo

C# VÀ THAO TÁC TRÊN XML

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

I). Khái niệm XML: XML là ngôn ngữ xây dựng cấu trúc tài liệu văn bản, dựa theo chuẩn SGML (Standard Generalized Markup Language: siêu ngôn ngữ có khả năng sinh ngôn ngữ khác). SGML được phát triển cho việc định cấu trúc và nội dung tài liệu điện tử, do tổ chức ISO (International Organization or Standards) chuẩn hoá năm 1986.

II). Đọc và ghi trên XML:Giới thiệu hai lớp XmlReader và XmlWriter :Cả hai lớp XmlReader và XmlWriter đều là những lớp trừu tượng. Hình vẻ dưới đây chỉ ra các lớp được thừa kế từ XmlReader và XmlWriter

Page 34: Slide C# báo cáo

C# VÀ THAO TÁC TRÊN XML(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

o Sử dụng lớp XmlTextReader: ta xét ví dụ đọc dữ liệu trong file XML có sẵn rồi hiển thì lên listview trên form thông qua một button. Trước hết phải khai báo using System.Xml; sau đó viết code ở nút button như sau:

o Sử dụng lớp XmlTextWriter: việc sử dụng system.xml cho phép chương trình của chúng ta xuất ra một file XML với nội dung mong muốn. Ta xét ví dụ sau:

Page 35: Slide C# báo cáo

C# VÀ THAO TÁC TRÊN XML(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Nhớ rằng khi dùng XmlTextWriter này sẽ ghi đè file mới lên file cũ (Trùng tên).

Page 36: Slide C# báo cáo

C# VÀ THAO TÁC TRÊN XML(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Sử dụng XPath trong .NETXPath là một ngôn ngữ truy vấn cho XML. Bạn sẽ dùng XPath để chọn một bộ con các các yếu tố giá trị văn bản hoặc các giá trị thuộc tính.

Không gian tên System.XPathĐây là một bảng liệt kê các lớp trong System.XPath, và một giải thích ngắn vì hỗ trợ của mỗi lớp:

Class Name Description

XPathDocument Một view của tài liệu XML . Chỉ đọc.

XPathNavigator Cung cấp khả năng điều hướng cho một XPathDocument.

XPathNodeIterator Cung cấp khả năng truy xuất trực tiếp các nút. XPath trang bị một bộ nút trong Xpath.

XPathExpression Một biên dịch phương thức XPath. Được dùng bởi SelectNodes, SelectSingleNodes, Evaluate, và Matches.

XPathException XPath exception class.

Page 37: Slide C# báo cáo

C# VÀ THAO TÁC TRÊN XML(tt)

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Page 38: Slide C# báo cáo

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

CÁC VẤN ĐỀ

NHÓM PNP(Peak Network Programming)

Danh sách thành viên gồm:1. Trần Văn ThaoLớp CĐtin31b email:[email protected] SĐT: 09798177872. Nguyễn Thanh HộiLớp CĐtin31b email:………………………… SĐT: ………………….3. Nguyễn Văn HiềnLớp CĐtin31b email:………………………… SĐT: ………………….4. Lê Hùng QuốcLớp CĐtin31b email:………………………… SĐT: ………………….5. Hồ Đông NhựtLớp CĐtin31b email:………………………… SĐT: ………………….

Page 39: Slide C# báo cáo

Tổng kết

Về cơ bản tìm hiểu được ngôn ngữ lập trình c#, .NET Framework, lập trình hướng đối tượng qua đó nâng cao kiến thức của sinh viên. Thêm kinh nghiệm tự nghiêm cứu tìm tòi ngôn ngữ lập trình mới.Làm nền cho việc tìm hiểu kỹ thuật lập trình mạng

Vì thời gian có hạn cùng những lý do khác nên không tránh được những sai sót trong slide mong thầy và các bạn thông cảm, góp ý cho nhóm.

CÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU

Thành quả đạt được:

Khó khăn Chưa đạt được

Page 40: Slide C# báo cáo

Tài liệu tham khảo

1. Professional C#, 2nd Edition, Xuất bản bởi Wrox Press Ltd.

2. Các giải pháp lập trình c# tổng hợp và biên dịch nguyễn ngọc bình phương-Thái Thanh Phong

3. Các trang diễn đàn trên internetCÁC VẤN ĐỀ

CODE ÁP DỤNG

NHÓM PNP

TỔNG KẾT

TÀI LIỆU

GIỚI THIỆU