Professional Documents
Culture Documents
C4 - Gioi thieu ve lap trinh va ngon ngu lap trinh
C4 - Gioi thieu ve lap trinh va ngon ngu lap trinh
C4 - Gioi thieu ve lap trinh va ngon ngu lap trinh
HCM
BỘ MÔN CÔNG NGHỆ PHẦN MỀM - KHOA CÔNG NGHỆ THÔNG TIN
CHƯƠNG 4
GIỚI THIỆU VỀ LẬP TRÌNH VÀ
NGÔN NGỮ LẬP TRÌNH
1
NỘI DUNG
2
1. Khái niệm chương trình và lập trình
• Đây là khóa học về lập trình và tư duy logic
• Khi bạn đã học lập trình bằng một ngôn ngữ, thì việc học một ngôn ngữ
khác, chẳng hạn như C ++, Java,… sẽ tương đối dễ dàng
• Lập trình là gì?
• Lập trình là viết các đoạn mã (code) máy tính tạo ra một chương
trình để giải quyết một vấn đề.
• Lập trình là việc chuyển thuật toán thành một chương trình để cho
máy tính biết chính xác phải làm gì và làm như thế nào.
• Tại sao phải học lập trình?
• Lập trình cung cấp cho bạn khả năng số hóa các ý tưởng của mình.
• Đây là kỹ năng quan trọng cho nhiều vị trí công việc trong lĩnh vực
CNTT
3
Khái niệm chương trình
• Chương trình là một chuỗi các lệnh được viết theo trình tự logic
để thực hiện một tác vụ cụ thể
• Chương trình có thể được thực thi bởi máy tính.
• Chương trình được tạo ra bởi một lập trình viên sử dụng ngôn ngữ
lập trình.
5
2. Các loại lỗi
6
3. Các thế hệ ngôn ngữ lập trình
• Ngôn ngữ lập trình là ngôn ngữ để
tạo ra chương trình.
• Gồm bộ từ khóa, cú pháp, quy tắc
chỉ dẫn máy tính thực hiện các công
việc cụ thể.
• Các ngôn ngữ phổ biến nhất là:
Python, Java, Javascript, C / C ++,…
• Bậc của ngôn ngữ
• Tùy thuộc vào mức độ gần gũi của
chúng với ngôn ngữ máy tính sử
dụng (0s và 1s = low) hoặc với ngôn
ngữ con người sử dụng.
7
Các thế hệ ngôn ngữ lập trình
8
Bậc của ngôn ngữ
9
1GL: Ngôn ngữ máy
• Ngôn ngữ duy nhất mà máy tính hiểu trực tiếp.
• Biểu diễn dữ liệu và chỉ dẫn chương trình dưới dạng chữ số nhị phân
(0 hoặc 1).
• Mỗi loại máy tính có ngôn ngữ máy riêng.
→Máy tính không thể hiểu các chương trình được viết bằng ngôn ngữ
máy khác.
• Ưu điểm:
• Code có thể chạy rất nhanh và hiệu quả, vì nó được thực thi trực tiếp
bởi CPU
• Nhược điểm:
• Khó đọc, viết và chỉnh sửa nếu có lỗi.
• Ngôn ngữ lập trình phụ thuộc vào phần cứng
• Không khả chuyển.
10
1GL: Ngôn ngữ máy
11
2GL: Hợp ngữ
• Là một ngôn ngữ ký hiệu sử dụng các ký hiệu để biểu diễn các lệnh
bằng ngôn ngữ máy.
• Một câu lệnh hợp ngữ bao gồm một nhãn, một mã phép toán và một
hoặc nhiều toán hạng.
• Kết nối chặt chẽ với ngôn ngữ máy và kiến trúc bên trong của hệ
thống máy tính.
• Một chương trình nguồn được viết bằng hợp ngữ cần một trình biên
dịch (assembler) để chuyển chúng thành ngôn ngữ máy.
12
2GL: Hợp ngữ
• Example: Chương trình cộng 2 số sử dụng hợp ngữ .
• Ưu điểm:
• Hiệu quả về thời gian thực thi và sử dụng bộ nhớ
• Nhược điểm:
• Phụ thuộc vào máy → ít khả chuyển
13
3GL: Ngôn ngữ thủ tục
• Các câu lệnh của chương trình không liên quan chặt chẽ đến các đặc
tính bên trong của máy tính và được coi là các ngôn ngữ bậc cao.
• Giống ngôn ngữ tự nhiên / con người.
• Để biên dịch chương trình từ ngôn ngữ bậc cao sang ngôn ngữ máy
cần:
• Interpreter (Trình thông dịch)
• Compiler (Trình biên dịch)
14
3GL: Ngôn ngữ thủ tục
• Một số ngôn ngữ thủ tục: Pascal, C/C++, C#, Java, Cobol,…
• Ưu điểm:
• Khả chuyển
• Dễ đọc, viết, gỡ lỗi → lập trình viên có nhiều thời gian hơn để suy
nghĩ về logic chương trình tổng thể.
• Nhược điểm:
• Yên cầu biên dịch → Thực thi chậm hơn.
• Example: Chương trình cộng 2 số bằng ngôn ngữ C++
int a, b, c;
a = 83;
b = -2;
c = a + b;
15
4GL: Ngôn ngữ phi thủ tục
• Ngôn ngữ cấp độ rất cao
• Lập trình viên chỉ xác định những gì họ muốn máy tính làm, mà
không cung cấp tất cả các chi tiết về cách nó phải được thực hiện.
• Đoạn mã được viết bằng những câu gần giống tiếng Anh.
• Ví dụ của 4GL là ngôn ngữ truy vấn cho phép người dùng yêu cầu
thông tin từ cơ sở dữ liệu.
• Ưu điểm:
• Code dễ bảo trì hơn
• Nâng cao năng suất của các lập trình viên vì họ phải nhập ít dòng
code hơn để hoàn thành công việc.
• Việc đào tạo ngôn ngữ này sẽ nhanh chóng và dễ dàng
• Nhược điểm:
• Không sử dụng hiệu quả tài nguyên của máy.
16
4GL: Ngôn ngữ phi thủ tục
• Ví dụ ngôn ngữ phi thủ tục:
• SQL, QBE, Intellect,…
17
5GL: Ngôn ngữ thông minh
• 5GLs tập trung vào việc giải quyết các vấn đề bằng cách sử dụng
các ràng buộc được cung cấp cho chương trình, thay vì sử dụng
một thuật toán được viết bởi một lập trình viên.
• Chúng được sử dụng rộng rãi trong nghiên cứu trí tuệ nhân tạo.
• Ngôn ngữ dựa trên tri thức.
• Ví dụ 5GL: Prolog, OPS5, and Mercury.
• Giống với ngôn ngữ tự nhiên.
18
Lựa chọn ngôn ngữ lập trình
• Quyết định lựa chọn ngôn ngữ nào để sử dụng phụ thuộc
vào:
• Môi trường làm việc
• Tính phù hợp của tác vụ/vấn đề
• Tốc độ phát triển hoặc tốc độ thực thi
• Chuyên môn của lập trình viên
• …
19
4. Giới thiệu Python
20
Giới thiệu Python
Giới Python được tạo ra bởi Guido van Rossum ở Hà
thiệu Lan vào năm 1990
Python
Một ngôn ngữ lập trình đa năng
21
5. Môi trường cài đặt
22
Download Anaconda
23
Cài đặt
• Mở file đã download và làm theo các bước hướng dẫn như bên
dưới
24
Cài đặt (tiếp theo)
25
Cài đặt (tiếp theo)
26
Viết và thực thi chương trình Python
27
Sử dụng Anaconda Prompt
1. Click vào Start menu → Click folder “Anaconda3 (64-bit)” → chọn
Anaconda Prompt.
2. Gõ “python” và nhấn Enter
3. Bạn có thể gõ code Python sau dấu >>> và nhấn Enter
4. Để thoát khỏi Python, nhấn CTRL+Z
28
Sử dụng Anaconda Prompt
• Để chạy một chương trình Python có sẵn:
1. Sử dụng Notepad hoặc các trình soạn thảo khác → viết chương trình →
Lưu file with name: filename.py
2. Mở Anaconda prompt
3. Gõ lệnh: >python path-to-your-file
29
Sử dụng Spyder IDE
• Click vào Start menu → Click folder “Anaconda3 (64-bit)” → Chọn Spyder
• Viết chương trình vào trình soạn thảo → click nút Run or nhấn F5.
• Kết quả của chương trình hiển thị ở góc dưới bên phải của cửa sổ Console
30
Sử dụng Jupyter Notebook
1. Khởi động Jupyter Notebook
• Click vào Start menu → Click folder “Anaconda3 (64-bit)” → Chọn
Jupyter Notebook.
• Jupyter Notebook chạy trên trình duyệt mặc định
31
Sử dụng Jupyter Notebook
32
Sử dụng Jupyter Notebook
33
Sử dụng Jupyter Notebook
34
Sử dụng Jupyter Notebook
5. Lưu file
• Notebook is là file có đuôi
*.ipynb và mặc định được
lưu trong thư mục cài đặt
Anaconda3.
• Nếu muốn lưu file ra thư
mục khác:
• Click File → Download
as → Notebook (.ipynb)
• Hoặc chọn lưu file ra các
định dạng khác, such as
Python (.py), PDF,…
35
Sử dụng Jupyter Notebook
6. Upload một file vào
Jupyter notebook
• Click nút “Upload” → chọn file →
click “Upload” .
36
Sử dụng Jupyter Notebook
7. Thay đổi thư mục làm việc của Jupyter notebook
• Tạo thư mục tại vị trí mong muốn
• Run “Anaconda Prompt”
• Gõ command:
ipython notebook –notebook dir=/path/directory
• /path/directory: đường dẫn tới thư mục đã tạo (Chú ý chữ hoa
thường)
37
Sử dụng Python online
• http://www.pythontutor.com
38
Q&A
39