1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH GIAO DIỆN

251 620 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ập trình giao diện
Tác giả Hồ Quang Khải
Trường học Trường Đại học Otter University
Chuyên ngành Công nghệ thông tin
Thể loại Bài giảng
Định dạng
Số trang 251
Dung lượng 2,97 MB

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

Nội dung

» Học xong môn học này sinh viên phải có khả năng sử dụng ngôn ngữ lập trình Visual C# 2005 để tạo nên các ứng dụng đơn giản sử dụng lập trình đáp ứng sự kiện và các đối tượng giao diện

Trang 1

Giới thiệu môn học

Tên môn học:

Khoa: Công nghệ thông tin

Trang 2

Giới thiệu môn học

– Tên môn học: Lập trình giao diện

– Giảng viên: Hồ Quang Khải –

khai.hq@ou.edu.vn ; hqkhai@gmail.com

– Thời lượng: 35 tiết lý thuyết + 35 tiết thực hành

Trang 3

Giới thiệu môn học

– Mục tiêu, yêu cầu môn học:

» Môn học cung cấp cho sinh viên các nguyên lý cơ bản

về thiết kế và lập trình các ứng dụng có giao diện trực tiếp với người dùng cuối Môn học này cũng giúp cho sinh viên làm quen môi trường lập trình trực quan

dựa trên môi trường Microsoft Visual Studio 2005

» Học xong môn học này sinh viên phải có khả năng sử

dụng ngôn ngữ lập trình Visual C# 2005 để tạo nên các ứng dụng đơn giản sử dụng lập trình đáp ứng sự kiện và các đối tượng giao diện đồ họa cơ bản

Trang 4

Giới thiệu môn học

Tài liệu tham khảo:

[A] H.M.Deitel, P.J.Deitel, Visual C#®

2005: How to Program, Second Edition,

Deitel, PRENTICE HALL, 2005

[B] Jenifer Tidwell, Designing Interfaces,

O'Reilly, 2005 [C] Karli Watsonet al , Beginning Visual

Trang 5

Giới thiệu môn học

Tài liệu tiếng Việt (không chính thức):

1 Tự học lập trình C Sharp (pdf)

2 Kỹ thuật lập trình C# 2.0 (chm)

Trang 6

Giới thiệu môn học (2)

Nội dung chi tiết các chương:

Xem đề cương

Trang 8

– Sinh viên thi cuối kỳ: 50% (thi viết

trắc nghiệm trên giấy)

Trang 9

Những điều sinh viên cần lưu ý

SV nên chủ động tham khảo tài liệu (trước và sau

buổi học), khưyến khích sử dụng tài liệu tiếng Anh

SV nên làm đầy đủ tất cả các bài thực hành, đây

là phần rèn luyện kỹ năng quan trọng khi viết các

chương trình phần mềm

SV nên tổ chức học tập theo nhóm, nếu có thắc

mắc trong học tập thì trao đổi với nhau trước khi

hỏi Thầy, Cô

Trang 10

Môn học: Lập trình giao diện

Chương 1

TỔNG QUAN

VỀ LẬP TRÌNH GIAO DIỆN

Trang 13

Mô hình xây dựng ứng dụng phần mềm

đa tầng

Trang 14

Mô hình xây dựng ứng dụng phần mềm

đa tầng

Trang 15

Mô hình xây dựng ứng dụng phần mềm

đa tầng

Trang 16

Nội dung, ý nghĩa của tầng giao diện

(presentation tier)

– Giao tiếp trực tiếp với người dùng

– Nhận yêu cầu từ người dùng

– Trả kết quả người dùng mong muốn

– Tạo sự tiện lợi, dễ dùng, dễ học

– Giúp thao tác nhanh chóng, chính xác

– Giúp đỡ, hướng dẫn người sử dụng

Trang 17

Các loại giao diện phần mềm thường sử

dụng (cho người dùng cuối)

- Giao diện dòng lệnh

- Giao diện cửa sổ

- Giao diện trang web

Trang 18

Giới thiệu nội dung chính của môn học:

- Tạo tầng presentation tier

- Sử dụng giao diện cửa sổ (windows

form)

- Sử dụng môi trường MS Visual Studio

2005

- Lập trình bằng ngôn ngữ C# (C Sharp)

Trang 19

Giới thiệu môi trường MS Visual Studio

2005 và ngôn ngữ lập trình C#

Trang 20

Giới thiệu môi trường MS Visual Studio

2005 và ngôn ngữ lập trình C#

Trang 22

VỀ NHÀ:

- Cài đặt MS VS.NET 2005 có C Sharp

- Cài đặt MSDN cho C Sharp

- Tạo các ứng dụng đơn giản sử dụng C Sharp

HẾT CHƯƠNG 1

Trang 23

LẬP TRÌNH GIAO DIỆN

Ngôn ngữ C#

Trang 24

Nội dung chính

1 Giới thiệu C#

2 Lớp (Class) và Đối tượng(Object)

3 Cấu trúc điều khiển chương trình

(Control Statements)

4 Phương thức (Method)

5 Dãy (Array)

Trang 25

1 Giới thiệu C#

Trong phần này chúng ta sẽ được học:

Trang 27

 Windows applications

tử nhập

(Graphical User Interfaces - GUIs)

Trang 28

1.1 Giới thiệu C# (tt)

 Chú thích đơn: //…

 Chú thích có nhiều dòng: /* … */

 Chú thích được lờ đi khi biên dịch

 Chỉ dùng khi người đọc mã nguồn chương trình

 Là các nhóm đặc trưng có liên quan với nhau của C#

trong một phân loại

 Cho phép sử dụng mã nguồn lại dễ dàng

 Có rất nhiều Namespaces trong thư viện NET

framework

 Namespace cung cấp cho ta cách mà chúng ta tổ

chức quan hệ giữa các lớp và các kiểu khác

 Bao gồm: spaces, newline characters và tabs

Trang 29

 Không được bắt đầu bằng ký số

 Có thể bắt đầu bằng ký tự @

1.1 Giới thiệu C# (tt)

Trang 30

 Mỗi console hoặc windows application đều phải có

 Tất cả các chương trình bắt đầu bằng cách thực thi

Trang 31

1.1 Giới thiệu C# (tt)

 Giao diện người dùng đồ họa (GUI -

Graphical User Interface)

người dùng cũng như hiển thị dữ liệu dễ dàng hơn

namespace

Trang 32

1.1 Giới thiệu C# (tt)

Trang 33

1.2 Chương trình hiển thi

một dòng văn bản

Ví dụ:

fig3.01, fig3.14, fig3.15, fig3.17

Trang 34

Console.Write và Console.WriteLine

ra chuổi ký tự như sau

 Console.Write() - Viết một giá trị ra cửa sổ

window

 Console.WriteLine() - tương tự trên nhưng sẽ tự

động xuống hàng khi kết thúc lệnh

giá trị in ra kiểu chuổi

Trang 35

Một số Escape sequence

Escape sequence Description

\n Newline Position the screen cursor to the beginning of the

next line

\t Horizontal tab Move the screen cursor to the next tab stop

\r Carriage return Position the screen cursor to the beginning

of the current line; do not advance to the next line Any characters output after the carriage return overwrite the previous characters output on that line

\\ Backslash Used to print a backslash character

\" Double quote Used to print a double quote (") character

Trang 36

Kiểu dữ liệu

(Primitive data types)

 Là các kiểu dữ liệu được xây dựng sẵn trong C#

 String, Int, Double, Char, Long…

 Có 15 kiểu dữ liệu nguyên thủy

 Tên mỗi kiểu dữ liệu là một từ khóa trong C#

 Có thể khai báo các biến có cùng kiểu dữ liệu trên

cùng một hàng hoặc nhiều hàng khác

 Dùng để đọc một ký tự văn bản từ của sổ console,

giá trị trả về sẽ là kiểu int hoặc kiểu string tuỳ ý

Trang 37

1.3 Chương trình cộng số nguyên

Trang 38

1.4 Bộ nhớ

thước (size) và giá trị (value)

bị mất đi

sử dụng

Trang 39

1.4 Bộ nhớ (tt)

sum 117

Trang 40

 Kết quả trả về của phép chia tùy thuộc vào kiểu

dữ liệu của biến:

số nguyên được làm tròn

Trang 41

1.5 Toán tử số học (tt)

Trang 45

Câu hỏi

 ?

 ?

 ?

Trang 46

2 Lớp (Class) và Đối tượng(Object)

Trong phần này chúng ta sẽ được học:

 Khái niệm về Lớp (class), Đối tượng (object), Phương

thức (method) và Biến thực thể (instance variable)

 Cách khai báo một lớp và sử dụng nó để tạo Đối tượng

 Cách hiện thực các hành vi của Lớp (các phương thức)

 Cách hiện thực các tính chất của Lớp (biến thực thể và

thuộc tính)

 Cách gọi các phương thức của một đối tượng

 Sự khác biệt giữa biến thực thể của một lớp và biến

cục bộ của một phương thức

 Cách sử dụng phương thức xây dựng lớp (Constructor)

 Sự khác biệt giữa kiểu giá trị (value type) và kiểu

tham chiếu (reference type)

Trang 47

2 Lớp (Class) và Đối tượng(Object)

2.1 Lớp (Class), Đối tượng (Object),

Phương thức (Method) và Biến thực thể (Instance variable)

2.2 Khai báo một lớp và khởi tạo đối tượng

2.3 Khai báo một phương thức với thông số

(Parameter) 2.4 Biến thực thể (Instance Variables)

và thuộc tính (Properties) 2.5 Khác biệt giữa kiểu giá trị (value type)

và kiểu tham chiếu (reference type) 2.6 Khởi tạo Đối tượng bằng phương thức xây

dựng lớp (Constructor) 2.7 Số Floating-Point và Decimal

Trang 48

2.1 Lớp (Class), Đối tượng (Object), Phương thức

(Method) và Biến thực thể (Instance variable)

của các đối tượng trong tự nhiên

Trang 49

2.1 Lớp (Class), Đối tượng (Object), Phương thức

(Method) và Biến thực thể (Instance variable)

những Object khác

trong Class nhưng không phải là Method

được gọi là biến thực thể (instance

variables)

Member Access Modifiers

public: thành phần được truy xuất bất cứ nơi

nào trong thực thể của đối tượng hiện có

private : thành phần chỉ được truy xuất bên

trong định nghĩa Class

Trang 50

2.1 Lớp (Class), Đối tượng (Object), Phương thức

(Method) và Biến thực thể (Instance variable)

 Xây dựng Object của Class

 Có thể có đối số

 Không trả về giá trị

 Có thể có nhiều constructor trong một class

thể của Class

Project < Add Class: thêm một Class mới

vào Project

Trang 51

2.2 Khai báo một lớp và khởi tạo

7 // display a welcome message to the GradeBook user

8 public void DisplayMessage()

9 {

10 Console.WriteLine( "Welcome to the Grade Book!" );

11 } // end method DisplayMessage

12 } // end class GradeBook

Trang 52

2.3 Khai báo một phương thức với

7 // display a welcome message to the GradeBook user

8 public void DisplayMessage( string courseName )

Trang 53

2.4 Biến thực thể (Instance Variables)

và thuộc tính (Properties)

Ví dụ: Fig 4.7

8 private string courseName; // course name for this GradeBook

9

10 // property to get and set the course name

11 public string CourseName

Trang 54

2.5 Khác biệt giữa kiểu giá trị (value type)

và kiểu tham chiếu (reference type)

Trang 55

2.6 Khởi tạo Đối tượng bằng phương

thức xây dựng lớp (Constructor)

Ví dụ:

Fig 4.12 GradeBook.cs

9 // constructor initializes courseName with string supplied as argument

10 public GradeBook( string name )

8 // Main method begins program execution

9 public static void Main( string[] args )

10 {

11 // create GradeBook object

12 GradeBook gradeBook1 = new GradeBook( // invokes constructor

13 "CS101 Introduction to C# Programming" );

14 GradeBook gradeBook2 = new GradeBook( // invokes constructor

15 "CS102 Data Structures in C#" );

Trang 56

2.7 Số Floating-Point và Decimal

dấu chấm động (floating-point)

Decimal là Decimal lưu trữ một số thực

giới hạn chính xác, trong khi

floating-point lưu trữ một số thực giới hạn xấp xỉ

nhưng có tầm giá trị lớn hơn

Ví dụ: Fig 4.15, Fig 4.16

Trang 57

Câu hỏi

 ?

 ?

 ?

Trang 58

3 Cấu trúc điều khiển chương trình

(Control Statements)

Trong phần này chúng ta sẽ:

 Sử dụng kỹ thuật giải quyết vấn đề

 Phát triển giải thuật theo quy trình từ trên xuống và cải

tiến từng bước

Sử dụng câu lệnh if và if else để lựa chọn

Sử dụng câu lệnh while để thực thi các câu lệnh trong ứng

dụng có sự lặp đi lặp lại nhiều lần

 Sử dụng lặp theo biến đếm (counter-controlled) và lặp theo

phần tử cầm canh (sentinel-controlled)

 Sử dụng các toán tử tăng, giảm, gán

 Hiểu được cơ sở của việc lặp theo biến đếm

Sử dụng câu lệnh for và do while để thực thi các câu

lệnh trong ứng dụng có sự lặp đi lặp lại nhiều lần

Sử dụng câu lệnh switch trong đa lựa chọn

Sử dụng câu lệnh break và continue trong điều khiển

luồng chương trình

 Sử dụng các toán tử luận lý để thiết lập các biểu thức điều

Trang 59

3 Cấu trúc điều khiển chương trình

3.13 Cơ sở của việc lặp theo biến đếm (counter-controlled)

3.14 Câu lệnh for 3.15 Câu lệnh do while 3.16 Câu lệnh switch

3.17 Câu lệnh break và

continue

3.18 Các toán tử luận lý 3.19 Tóm tắt lập trình cấu trúc

Trang 60

3.1 Giải thuật (Algorithms)

 Thủ tục (Procedure)

thực hiện

 Điều khiển chương trình

(Program control)

thực hiện đúng

Trang 61

 Giống như ngôn ngữ tiếng Anh

 Không phải là một ngôn ngữ lập trình

thật sự

 Chuyển đổi sang mã nguồn C# một

cách đơn giản

Trang 62

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

(Program of control)

sau đó chuyển đến dòng kế tiếp

Trang 63

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

 Được dùng để ánh xạ chương trình

 Minh họa thứ tự các sự kiện

 Sự kết hợp giữa các cấu trúc điều khiển

Trang 64

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

add grade to total

add 1 to counter

total = total + grade;

counter = counter + 1;

Trang 65

3.4 Câu lệnh if

Các biểu thức được đánh giá theo kiểu bool

Trang 66

3.5 Câu lệnh if else

 Tiến trình thay phiên nhau diễn ra khi câu lệnh sai

 Thích hợp hơn với một hành động có hai lựa chọn

 Cấu trúc lồng nhau có thể kiểm tra nhiều trường hợp

 Các cấu trúc có nhiều dòng lệnh phải đặt trong ({ })

 Có thể là nguyên nhân gây ra lỗi

 Lỗi thiên về luận lý (Fatal logic error)

 Lỗi không thiên về luận lý (Nonfatal logic error)

Grade >= 60

print “Passed”

print “Failed”

Trang 67

3.6 Câu lệnh while

Tiếp tục thực hiện khi câu lệnh while đúng

Kết thúc khi khi câu lệnh while sai

 Phải thay đổi điều kiện

 Lặp vô tận (Endless loop)

true

false

Product = 2 * product Product <= 1000

Trang 68

3.7 Lặp theo biến đếm

(counter-controlled)

 Lặp theo biến đếm (Counter Controlled)

 Được sử dụng để nhập dữ liệu cho mỗi lần lặp

 Số lượng không thay đổi

 Một biến đếm (counter) được dùng để xác định

Input the next grade Add the grade into the total Add one to the grade counter Set the class average to the total divided by ten

Trang 69

3.8 Lặp theo phần tử cầm canh

(sentinel-controlled)

controlled)

When flag value = user entered value

 Cho phép một biến tạm thời sử dụng như một biến khác

Trang 70

3.8 Lặp theo phần tử cầm canh

(sentinel-controlled)

Initialize total to zero

Initialize counter to zero

Input the first grade (possibly the sentinel)

While the user has not as yet entered the sentinel

Add this grade into the running total Add one to the grade counter

Input the next grade (possibly the sentinel)

If the counter is not equal to zero

Set the average to the total divided by the counter Print the average

Else

Print “No grades were entered”

Trang 71

3.9 Các câu lệnh điều khiển lồng nhau

(Nested Control Statements)

 Là việc chèn một cấu trúc điều khiển vào bên trong

một cấu trúc điều khiển khác

 Nhiều vòng lặp (Multiple loops)

Thực hiện lặp bằng câu lệnh if

Initialize passes to zero Initialize failures to zero Initialize student to one

While student counter is less than or equal to ten Input the next exam result

If the student passed

Add one to passes Else

Add one to failures

Trang 72

3.10 Các toán tử gán

 Có thể rút ngắn mã chương trình

 Có thể thực hiện với tất cả các toán tử số học:

*= e *= 5 e = e * 5 20 cho e /= f /= 3 f = f / 3 2 cho f

Trang 73

3.11 Các toán tử tăng giảm

Toán tử tăng (Increment operator)

 Toán tử giảm (Decrement operator)

Trang 74

3.12 Các kiểu dữ liệu cơ bản

sbyte System.SByte 8-bit signed integer -128:127 (-27:27-1)

short System.Int16 16-bit signed integer -32,768:32,767 (-215:215-1)

int System.Int32 32-bit signed integer -2,147,483,648:2,147,483,647 (-231:231-1)

long System.Int64 64-bit signed integer -9,223,372,036,854,775,808: 9,223,372,036,854,775,8

07 (-263:263-1) byte System.Byte 8-bit signed integer 0:255 (0:28-1)

ushort System.UInt16 16-bit signed integer 0:65,535 (0:216-1)

uint System.UInt32 32-bit signed integer 0:4,294,967,295 (0:232-1)

ulong System.UInt64 64-bit signed integer 0:18,446,744,073,709,551,615

Trang 75

3.12 Các kiểu dữ liệu cơ bản

Figures

Range (approximate)

Float System.Single 32-bit single-precision

Kiểu dữ liệu số dấu chấm di động (Floating Point Types)

Kiểu dữ liệu số thập phân (Decimal Type):

Name CTS Type Description Significant

Figures

Range (approximate)

Trang 76

3.12 Các kiểu dữ liệu cơ bản

char System.Char Represents a single 16-bit

(Unicode)character

Kiểu Boolean :

Kiểu Character Type:

Kiểu tham khảo tiền định nghĩa:

Name CTS Type Description

object System.Object The root type, from which all other types in the

CTS derive (including value types)

Trang 77

3.13 Cơ sở của việc lặp theo biến đếm

(counter-controlled)

 Là biến dùng để xác định nếu việc lặp được tiếp diễn

 Khi nào việc lặp lại được tiếp diễn

Trang 78

 Nếu Expression1 có nhiều biến, Expression3 phải có nhiều biến tương ứng

 ++counter và counter++ là tương đương nhau

 Phạm vi của biến

vòng lặp for

Trang 79

3.14 Câu lệnh for

for ( int counter = 1; counter <= 5; counter++ )

Giá trị khởi tạo của biến điều khiển tăng giá trị của biến điều khiển

biến điều khiển Giá trị cuối cùng của biến điều khiển

từ khóa

điều kiện lặp

counter++

Thiết lập giá trị khởi

tạo cho biến điều

int counter = 1

Phần thân của vòng lặp (có thể có nhiều câu lệnh)

Tăng giá trị biến điều khiển

Ngày đăng: 16/04/2014, 15:11

HÌNH ẢNH LIÊN QUAN

Bảng ghi hoạt động (Activation Records) - Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH GIAO DIỆN
Bảng ghi hoạt động (Activation Records) (Trang 112)
Bảng ghi hoạt động (Activation Records) - Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH GIAO DIỆN
Bảng ghi hoạt động (Activation Records) (Trang 113)
Bảng ghi hoạt động (Activation Records) - Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH GIAO DIỆN
Bảng ghi hoạt động (Activation Records) (Trang 202)
Bảng ghi hoạt động (Activation Records) - Giáo án - Bài giảng: BÀI GIẢNG MÔN LẬP TRÌNH GIAO DIỆN
Bảng ghi hoạt động (Activation Records) (Trang 203)

TỪ KHÓA LIÊN QUAN