Tải bản đầy đủ (.pdf) (46 trang)

Bài giảng cơ sở lập trình máy tính chương 1 ths nguyễn thị khiêm hòa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (986.29 KB, 46 trang )

Chương 1:
Tổng quan về lập trình máy tính

Giảng viên: Ths. Nguyễn Thị Khiêm Hòa

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
1


Nội dung
1

Các khái niệm về lập trình máy tính

2

Các mô hình phát triển phần mềm

3

Các phương pháp tiếp cận trong lập trình

4

Tổng quan về lập trình hướng đối tượng

5

Ngôn ngữ C# và nền tảng .NET
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM


2


Các khái niệm lập trình
1

Các khái niệm cơ bản

2

Các bước xây dựng chương trình

3

Biểu diễn thuật toán

4

Cài đặt thuật toán bằng NNLT
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
3


Các khái niệm cơ bản


Lập trình máy tính






Gọi tắt là lập trình (programming).
Nghệ thuật cài đặt một hoặc nhiều thuật toán
trừu tượng có liên quan với nhau bằng một
ngôn ngữ lập trình để tạo ra một chương trình
máy tính.

Thuật toán


Là tập hợp (dãy) hữu hạn các chỉ thị (hành
động) được bố trí theo một trình tự xác định
được đề ra trước nhằm giải quyết một bài toán
cụ thể nào đó.
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
4


Các khái niệm cơ bản


Ví dụ


Thuật toán giải PT bậc nhất: ax + b = 0
(a, b là các số thực).

Đầu vào: a, b thuộc R
Đầu ra: nghiệm phương trình ax + b = 0

• Nếu a = 0
• b = 0 thì phương trình có nghiệm bất kì.
• b ≠ 0 thì phương trình vô nghiệm.
• Nếu a ≠ 0
• Phương trình có nghiệm duy nhất x = -b/a

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
5


Các tính chất của thuật toán


Bao gồm 5 tính chất sau:






Tính
Tính
Tính
Tính
Tính

đúng đắn
hữu hạn
xác định
khả thi

phổ dụng

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
6


Các bước xây dựng chương trình
Xác định vấn đề
- bài toán

Biểu diễn bằng:
• Ngôn ngữ tự nhiên
• Lưu đồ - Sơ đồ khối
• Mã giả

Lựa chọn
phương pháp giải
Xây dựng
thuật toán/ thuật giải
Cài đặt
chương trình
Lỗi cú pháp
Lỗi ngữ nghĩa

Hiệu chỉnh
chương trình
Thực hiện
chương trình
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM


7


Sử dụng ngôn ngữ tự nhiên
Đầu
Đầu
1.
2.

vào: a, b thuộc R
ra: nghiệm phương trình ax + b = 0
Nhập 2 số thực a và b.
Nếu a = 0 thì
2.1. Nếu b = 0 thì
2.1.1. Phương trình vô số nghiệm
2.1.2. Kết thúc thuật toán.
2.2. Ngược lại
2.2.1. Phương trình vô nghiệm.
2.2.2. Kết thúc thuật toán.
3. Ngược lại
3.1. Phương trình có nghiệm.
3.2. Giá trị của nghiệm đó là x = -b/a
3.3. Kết thúc thuật toán.
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM

8


Sử dụng lưu đồ - sơ đồ khối
Khối giới hạn

Chỉ thị bắt đầu và kết thúc.
Khối vào ra
Nhập/Xuất dữ liệu.
Khối lựa chọn
Tùy điều kiện sẽ rẽ nhánh.
Khối thao tác
Ghi thao tác cần thực hiện.

Đường đi
Chỉ hướng thao tác tiếp theo.
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM

9


Sử dụng lưu đồ - sơ đồ khối
Bắt đầu

Đọc a,b
Đ

S
a=0

Đ

S

Tính
x = -b/a


b=0

“Vô số
nghiệm”

“Vô
nghiệm”

Kết quả x

Kết thúc
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM

10


Sử dụng mã giả


Vay mượn ngôn ngữ nào đó (ví dụ Pascal) để
biểu diễn thuật toán.

Đầu vào: a, b thuộc R
Đầu ra: nghiệm phương trình ax + b = 0
If a = 0 Then
Begin
If b = 0 Then
Xuất “Phương trình vô số nghiệm”
Else

Xuất “Phương trình vô nghiệm”
End
Else
Xuất “Phương trình có nghiệm x = -b/a”
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM

11


Sử dụng ngôn ngữ lập trình


Dùng một ngôn ngữ lập trình để thực hiện cài
đặt (C#).

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM

12


Các mô hình phát triển phần mềm
Mô hình thác nước (Waterfall model)
 Mô hình thăm dò (Spiral model)
 Tạo nguyên mẫu
 Biến đổi hình thức
 Tập hợp các thành phần dùng lại


Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
13



Mô hình thác nước


Ưu điểm:





Thích hợp cho những dự án lớn.
Quản lý dự án sẽ dễ dàng và thuận tiện.

Nhược điểm:



Thiếu sự trao đổi giữa người sử dụng và
nhóm phát triển.
Không cho phép thay đổi nhiều theo các đặc
tả yêu cầu của hệ thống.

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
14


Mô hình thăm dò
Phát triển hệ thống nhanh, sửa lỗi đến khi hoàn
thiện.

 Ưu điểm:
 Linh hoạt trong việc thay đổi yêu cầu.
 Nhược điểm:
 Các pha bị lặp lại quá nhiều lần.

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
15


Tạo nguyên mẫu (prototype)
Phát triển hệ thống cho người sử dụng dùng rồi
tạo ra nguyên mẫu
 Ưu điểm:
 Linh hoạt trong việc thay đổi yêu cầu.
 Rút ngắn thời gian phát triển.
 Nhược điểm:
 Không thích hợp trong dự án lớn.

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
16


Các cách tiếp cận trong lập trình


Lập trình tuần tự: Assembler, basic
 Chương trình quá dài, khó nhớ
 Khó kiểm soát lỗi

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM

17


Các cách tiếp cận trong lập trình
 Lập


trình hướng cấu trúc

Ưu điểm
 Phân

chia chương trình thành các
module (Thủ tục, hàm)
 Dùng lại các đoạn chương trình

Chương trình = CTDL + giải thuật


Nhược điểm
 Thiếu

sự nhất quán khi trao đổi thông
tin dùng chung
 Tính tái sử dụng thấp
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
18


Lập trình hướng đối tượng

(Object Oriented Programming – OOP)


Lập trình hướng đối tượng
Là phương pháp lập trình thực hiện việc hợp nhất thành
phần dữ liệu và thao tác thành một, cho phép chúng ta
định nghĩa một đối tượng (Object) theo cách mà chúng ta
nghĩ về thế giới quanh mình (data) và gắn các hành động
cụ thể trên đối tượng đó (Method).



Đối tượng (Object)
Mô tả một thực thể hay một quan hệ trong thế giới thực

Đối tượng = Dữ liệu + Hành vi

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
19


Lập trình hướng đối tượng

Dữ liệu

Hành vi

- Giây

- Tăng giây


- Phút

- Tăng phút

- Giờ

- Tăng giờ

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
20


Một số nguyên tắc cơ bản


Trừu tượng hóa (Abstraction)
Mô tả bài toán với những khía cạnh quan trọng nhất

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
21


Một số nguyên tắc cơ bản


Trừu tượng hóa

Đơn hàng


Những công việc
thực hiện trên đối
tượng đơn hàng
là gì?”

Tạo đơn hàng
Cập nhật đơn hàng
Tổng giá trị

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
22


Một số nguyên tắc cơ bản


Đóng gói (Encapsulation)
Là sự che giấu dữ liệu cấm truy xuất trực tiếp từ bên
ngoài mà phải thông qua giao diện người dùng nhắm bảo
vệ dữ liệu và tăng tính mềm dẻo cho hệ thống.

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
23


Một số nguyên tắc cơ bản


Đóng gói (Encapsulation)
Lớp đối tượng


Bên ngoài
Các phương
thức chung của
đơn hàng

DonHang

int MaDH
int MaKH
Tinh_gia();
public:
TaoDH( )
CapnhatDH( )
GiatriDH( )

TaoDH
CapnhatDH
GiatriDH

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
24


Một số nguyên tắc cơ bản


Đóng gói (Encapsulation)

DonHang


Hmm... muốn thay
đổi Tinh_Gia thành
TinhTongGia

int MaDH
int MaKH
Tinh_gia();
public:
TaoDH( )
CapnhatDH( )
GiatriDH( )

GiatriDH() gọi phương
thức Tinh_gia()

Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
25


×