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

Lập trình windows C căn bản

14 300 0

Đ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

Định dạng
Số trang 14
Dung lượng 185,64 KB

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

Nội dung

Mọi dữ liệu được lưu trên Stack sẽ bị loại bỏ ngay khi hoàn thành phạm vi biến hoàn tất 1 phương thức, chương trình,….. Boxing và Unboxing  Boxing là quá trình chuyển dữ liệu từ ki

Trang 1

Các vấn đề cơ bản lập trình C#

Lập trình Windows

Trang 2

Các vấn đề cần nắm

 Kiểu dữ liệu trong C# (kỹ thuật boxing và unboxing)

 Cơ chế delegate (ủy quyền)

 Cơ chế event (sự kiện)

 Lập trình với Thread (tiểu trình)

 Nhập môn với winform

Trang 3

Kiểu dữ liệu trong C#

 C# là ngôn ngữ lập trình mạnh về kiểu dữ liệu

 Chia thành 2 kiểu chủ yếu là: kiểu giá trị (value type, thông thường là struct như: int, char,…) và kiểu tham chiếu (reference type, thông thường là class như: string,…)

 Kiểu giá trị được lưu trong vùng nhớ Stack

 Kiểu tham chiếu được lưu trong vùng nhớ Heap (giá trị địa chỉ lưu trong Stack)

Trang 4

Vùng nhớ Stack và Heap

 Vùng nhớ Stack là vùng lưu trữ dữ liệu với kích thước cố định, riêng biệt cho mỗi chương trình Mọi dữ liệu được lưu trên Stack sẽ bị loại bỏ

ngay khi hoàn thành phạm vi biến (hoàn tất 1

phương thức, chương trình,…)

 Vùng nhớ Heap là vùng lưu trữ dữ liệu có kích thước thay đổi và khá đồ sộ Dữ liệu trên Heap không bị loại bỏ khi biến tham chiếu đến đã hoàn thành phạm vi biến

Trang 5

Boxing và Unboxing

 Boxing là quá trình

chuyển dữ liệu từ kiểu

tham trị sang kiểu

tham chiếu Quá trình

có thể thực hiện

ngầm định

Trang 6

Boxing và Unboxing

 Unboxing là quá trình

ngược lại với boxing,

tức là đưa từ kiểu

tham chiếu ra kiểu

tham trị Quá trình

phải được thực hiện

tường minh (phải đảm

bảo đúng với kiểu dữ

liệu đã boxing)

Trang 7

Delegate

 Delegate là kiểu dữ liệu tham chiếu được dùng

để đóng gói một phương thức với tham số và

kiểu trả về xác định

 Gần giống con trỏ hàm trong C++ nhưng là

hướng đối tượng, an toàn và bảo mật

 Khai báo delegate trong namespace hoặc trong class

 Ví dụ:

public delegate int CompareFunc( object obj1, object obj2);

Trang 8

Delegate

 Sử dụng delegate để xác định phương thức lúc thực thi

 Cơ chế multicasting cho phép gọi hai hay nhiều phương thức thực thi thông qua một ủy quyền đơn Mục đích chính là có một ủy quyền có thể gọi thực hiện nhiều hơn một phương thức Để thực hiện được thì kiểu trả về của delegate phải

là kiểu void

 Ví dụ:

myMulticastDelegate = Writer + Logger;

myMulticastDelegate += Transmitter;

Trang 9

Event

 Event (sự kiện) là các hành động xảy ra trong

quá trình chạy chương trình (gõ phím, click chuột, nhấn nút,…) và được thông báo để được xử lý

thích hợp

 Event không thể biết trước chính xác khi nào xảy

ra, điều quan trọng là phải được xử lý thích hợp khi nó xảy ra

Trang 10

Event

 Cơ chế publishing và subscribing nghĩa là mỗi đối tượng đều có thể publish một tập hợp các event

để các lớp khác nếu cần xử lý khi nó xảy ra thì có thể đăng ký (subscribe) vào danh sách nhận và như vậy mỗi khi lớp publish đưa ra một sự kiện thì tất cả các lớp đã đăng ký sẽ được nhận thông báo

Trang 11

Event

 Trong NET cơ chế event được thực thi với

những delegate

 Lớp publisher định nghĩa một delegate và những lớp subscriber phải thực thi Khi một sự kiện xuất hiện thì phương thức của lớp subscriber được gọi thông qua delegate

 Một phương thức được dùng để xử lý các sự

kiện thì được gọi là trình xử lý sự kiện (event

handler)

Trang 12

Event

 Khai báo:

public delegate void myEventHandler ();

public event myEventHandler myEvent ;

hoặc

public EventHandler myEvent ;

Trang 13

Thread

 Với sức mạnh của CPU hiện nay thì hầu như các tác vụ thông thường (phép tính, di chuyển dữ

liệu,…) chỉ tiêu tốn một lượng nhỏ tài nguyên

CPU nhưng nếu theo nguyên lý đơn nhiệm thì lại chiếm riêng nguyên CPU (tức là các chương trình hay tác vụ khác phải chờ)

 Thread (tiểu trình) là khái niệm trong cơ chế

chương trình đa nhiệm, đại diện cho một hay một nhóm các tác vụ con

Trang 14

Thread

 Trong chương trình đa nhiệm thì nhiều tiến trình

có thể chạy đồng thời để tận dụng triệt để tài

nguyên CPU

 Giúp cho chương trình chạy mượt mà và nhanh chóng hơn

Ngày đăng: 22/01/2016, 18:24

TỪ KHÓA LIÊN QUAN

w