Khái niệm cơ bản của Lập Trình



1. Lập trình là gì?
- Còn được gọi tắt Ngôn Ngữ. Nếu bạn xem máy tính như 1 đứa trẻ và Lập Trình là việc dạy cho đứa trẻ đó làm được việc này việc kia, thì cái chúng ta cần trước tiên là một ngôn ngữ mà đứa trẻ đó có thể hiểu, bởi 1 lý do đơn giản là máy tính không thể hiểu được tiếng người, dù là Tiếng Anh hay Tiếng Việt.

- Hiện nay có rất nhiều ngôn ngữ lập trình ví dụ như: Pascal, Fortran, C/C++,... Nhiệm vụ của chúng ta và máy tính là bằng một cách nào đó cùng hiểu được một trong những ngôn ngữ trên. Với máy tính để nó hiểu được 1 ngôn ngữ, đơn giản chỉ cần cài ngôn ngữ đó vào là coi như xong, việc còn lại là chúng ta phải học ngôn ngữ đã cài đó nữa là có thể lập trình được.

- Tại sao lại có nhiều ngôn ngữ như vậy? Đơn giản là mỗi cái có 1 thế mạnh của nó, cái thì tốt trong việc làm phần mềm, cái thì tốt cho thiết kế trang web, cái khác thì tốt cho việc tạo ra Game và AutoIT thì tốt nhất cho việc tự động hóa.


Xem thêm: https://vi.wikipedia.org/wiki/Lập_trình_máy_tính

2. Ngôn ngữ lập trình là gì?

- Còn được gọi tắt Ngôn Ngữ. Nếu bạn xem máy tính như 1 đứa trẻ và Lập Trình là việc dạy cho đứa trẻ đó làm được việc này việc kia, thì cái chúng ta cần trước tiên là một ngôn ngữ mà đứa trẻ đó có thể hiểu, bởi 1 lý do đơn giản là máy tính không thể hiểu được tiếng người, dù là Tiếng Anh hay Tiếng Việt.

- Hiện nay có rất nhiều ngôn ngữ lập trình ví dụ như: Pascal, Fortran, C/C++,... Nhiệm vụ của chúng ta và máy tính là bằng một cách nào đó cùng hiểu được một trong những ngôn ngữ trên. Với máy tính để nó hiểu được 1 ngôn ngữ, đơn giản chỉ cần cài ngôn ngữ đó vào là coi như xong, việc còn lại là chúng ta phải học ngôn ngữ đã cài đó nữa là có thể lập trình được.

- Tại sao lại có nhiều ngôn ngữ như vậy? Đơn giản là mỗi cái có 1 thế mạnh của nó, cái thì tốt trong việc làm phần mềm, cái thì tốt cho thiết kế trang web, cái khác thì tốt cho việc tạo ra Game và AutoIT thì tốt nhất cho việc tự động hóa.


Xem thêm: http://vi.wikipedia.org/wiki/Ngôn_ngữ_lập_trình

3. Mã nguồn là gì?

Nếu bạn xem việc Lập Trình là một trò chơi xếp hình để cuối cùng có được một Mô Hình, thì mã nguồn chính là bản vẽ của mô hình đó trên giấy. Trên bản vẽ ấy ta sẽ thấy được cách các mảnh ghép được kết nối với nhau như thế nào, miếng nào trước miếng nào sau. Thay vì chứa các mảnh ghép thì mã nguồn sẽ chứa những từ ngữ mà máy tính có thể hiểu được.

Đặc biệt từ một bản vẽ bạn có thể tạo ra nhiều mô hình khác và tất cả những mô hình đó đều giống nhau hoàn toàn. Nếu hiểu đúng bạn sẽ thấy bản vẽ (tức là mã nguồn) có giá trị hơn mô hình (tức là sản phẩm EXE) rất nhiều.


Xem thêm: https://vi.wikipedia.org/wiki/Mã_nguồn

4. Dòng lệnh là gì?

- Lại nói về trò chơi xếp hình với khái niệm Mã Nguồn được xem là một bản vẽ trên giấy, thì Dòng Lệnh được xem là một mảnh ghép trên bản vẽ đó. Với Lập Trình, những mảnh ghép đó chính là những dòng chữ, những con số, những biểu thức tính toán.

- Một dòng lệnh thường có 2 yếu tố đó là điểm bắt đầu và điểm kết thúc của nó. Trong hầu hết các ngôn ngữ điểm kết thúc dòng lệnh được đánh dấu bằng dấu chấm phẩy [ ; ]. Trong AutoIT và những ngôn ngữ còn lại, điểm kết thúc của dòng lệnh được đánh dấu bằng việc xuống dòng (Enter). Còn điểm bắt đầu, nó đơn giản chính là sau điểm kết thúc của dòng trước đó.

- Ngoài ra còn một số quy tắt khác đối với dòng lệnh, tụi mình sẽ tìm hiểu khi được gặp.


5. Trình soạn thảo là gì?

- Bạn đã biết thế nào là Lập Trình và kết quả của việc Lập Trình là tạo ra Mã Nguồn bằng cách dùng 1 Ngôn Ngữ Lập Trình nào đó. Vậy câu hỏi tiếp theo là làm sao để tạo ra Mã Nguồn? Hay nói khác hơn là làm sao để Lập Trình?
=>Bạn cần một Trình Soạn Thảo.

- Như tụi mình đã biết Mã Nguồn thật chất là những dòng chữ, những con số cho nên Trình Soạn thảo chính là những phần mềm có thể đánh chữ được (bao gồm cả Word và Notepad). Và tụi mình cũng biết rằng, mỗi ngôn ngữ có 1 thế mạnh của riêng nó, không cái nào giống cái nào, cho nên trình soản thảo cũng phải có sự hỗ trợ tương ứng, chính vì lý do này mà ít ai dùng Word và Notepad để Lập Trình, mặc dù tụi nó hoàn toàn có thể làm ra Mã Nguồn được.

- Khi nói cài một ngôn ngữ lập trình vào máy tính, tức là bao gồm cả việc cài trình soạn thảo của ngôn ngữ đó vào và trình soạn thảo cũng chính là 1 trong những phần quan trọng nhất của 1 ngôn ngữ.


6. Trình biên dịch là gì?

- Kết quả của việc Lập Trình là chúng ta có được Mã Nguồn, nhưng máy tính không thể dùng mã nguồn đó để giúp tụi mình giải 1 bài toán, chat với bạn bè hay chơi 1 bản nhạc. Vậy kết quả cuối cùng của Lập Trình phải là những chương trình tương tự như Window Media, Yahoo Messenger mới đúng, đồng nghĩa với việc khi đã có được Mã Nguồn công việc vẫn chưa kết thúc.

- Tụi mình còn phải dùng cái gọi là Trình Biên Dịch để chuyển Mã Nguồn thành sản phẩm cuối cùng, đó là những chương trình hoàn chỉnh có thể hoạt động chỉ bằng 1 cái Click chuột. Trình Biên Dịch cũng có sẵn sau khi ta cài một Ngôn Ngữ Lập Trình vào máy tính và hầu hết các Trình Soạn Thảo đều tích hợp vào Trình Biên Dịch luôn để cho Lập Trình Viên tiện chạy thử và kiểm tra Mã Nguồn.


Xem thêm: https://vi.wikipedia.org/wiki/Trình_biên_dịch

7. Sản phẩm EXE là gì?

- Còn được gọi với những cái tên khác nhau là: Chương Trình, Phần Mềm, Ứng Dụng,...

- Đây là kết quả cuối cùng và cũng là cái mà Lập Trình Viên mong muốn có được khi bắt đầu việc Lập Trình. Những chương trình như Window Media, Yahoo Messenger, Internet Explorer và ngay cả 1 Game cũng được gọi là Sản Phẩm EXE.

- Nó được tạo ra bằng cách dùng một Trình Biên Dịch để chuyển Mã Nguồn thành File có phần mở rộng thuộc nhiều loại mà trong đó loại thường thấy nhất là EXE ví dụ như:game.exe Phần mở rộng exe mặc định được ẩn đi trong Window Explorer. Bạn có thể bật nó lên bằng cách vào:
Window Exporer=>Tools=>Folders Option=>View (Tab)
=>Bỏ Tùy Chọn: Hide extensions for know file types=>Ok


Xem thêm: https://vi.wikipedia.org/wiki/Phần_mềm

8. Mã máy là gì?

- Nếu đã xem qua các định nghĩa trước đó, bạn sẽ thấy rằng từ Mã Nguồn của các Ngôn Ngữ Lập Trình như Pascal, C++,... máy tính sẽ dùng Trình Biên Dịch để tạo ra Sản Phẩm EXE. Nhưng một câu hỏi đặt ra là làm vậy để chi, nếu máy tính đã hiểu được ngôn ngữ kia rồi thì còn Biên Dịch làm chi nữa?

- Câu trả lời là vì những ngôn ngữ đó chỉ là ngôn ngữ trung gian, nó chưa phải là loại ngôn ngữ mà máy tính có thể hiểu được, việc chuyển từ Mã Nguồn của các ngôn ngữ khác thành Sản Phẩm EXE chính là việc chuyển chúng thành Mã Máy và đây cũng chính là ngôn ngữ duy nhất mà máy tính có thể hiểu được, hay nói đúng hơn là máy tính hoạt động dựa trên Mã Máy.

- M ã Máy còn có những cái tên khác là: Ngôn ngữ máy, máy ngữ, machine language hay machine code.

- Nhưng tại sao chúng ta không học Mã Máy lun đi, học Pascal, C++ làm chi cho đau tim vậy?
=>Bởi vì mã máy chỉ toàn những dãy số 0 và 1, nếu bạn thích thì cứ học, nhưng bảo đảm không ai dạy vì cấu trúc của nó rất phức tạp, học còn đau tim hơn mấy ngôn ngữ khác nhiều.


Xem thêm: https://vi.wikipedia.org/wiki/Ngôn_ngữ_máy

9. Thư viện là gì?

- Nhắc đến thư viện bình thường ở ngoài đời thì các bạn có thể hình dung ra rồi. Nó lưu trữ các tài liệu kiến thức, đối với lập trình nó chứa các mã nguồn của các chương trình khác nhau, bạn có thể sử dụng để tham khảo thuật toán hay sử dụng trực tiếp thuật toán đó. Các thuật toán trong đó thương được những người đi trước nghĩ ra và được tối ưu lại và nó được sử dụng nhiều lần trong các chương trình khác nhau.

Và thư viện cũng có vài loại khác nhau:
+ Trình soạn thảo của các ngôn ngữ: cũng chính là 1 thư viện nhưng nó chứa các hàm mã máy sử dụng để biên dịch code của nó thành mã máy.
+ Thư viện mã nguồn: đây là các thư viện chứa các thuật toán giải 1 bài tập hoàn chỉnh và là những bài toán cơ bản. Người lập trình có thể sử dụng đến nó nhiều lần, bằng cách khai báo thư viện bạn có thể sử dụng trực tiếp nó thay vì phải viết lại nhiều lần trong các chương trình của mình.
+ Thư viện liên kết động (DLL): Thư viện này được sử dụng cho chương trình đã được biên dịch của mình. Nhiều chương trình có 1 hàm chung thì có thể đưa hàm đó vào thư viện DLL để tiết kiệm dung lượng (các chức năng khác các bạn tìm hiểu sau)


10. Từ khóa là gì?

- Từ khóa (mảnh ghép) là các từ đặt biệt dành cho trình biên dịch để nó nhận biết và chuyển đổi thành các đoạn mã máy tương ứng hoặc nó chỉ là yêu cầu trình biên dịch làm một việc gì đó (không nhất thiết là chuyển dổi thành mã máy).

Xem thêm: https://vi.wikipedia.org/wiki/Từ_khóa

11. Chú thích Code là gì?

- Khi bạn viết một chương trình mà số dòng lệnh (code) trong đó lên tới hàng trăm thì công việc sửa chữa và nâng cấp trở nên rất khó khăn khi ta phải nhìn lại một đống code như thế, hoặc khi ta muốn đọc một bản code mẫu thì cũng sẽ rất khó khăn. Khi đó ta cần có chú thích code.
- Chú thích code do người viết thêm vào để giải thích rõ ràng thuật toán hay chức năng của hàm hay một nhóm hàm nào đó. Chú thích code không phải là chỉ thị cho trình biên dịch vì vậy nó được bỏ qua khi biên dịch chương trình. Nó được sử dụng bởi người lập trình để đọc hiểu lại code dễ dàng hơn quá trình hiệu chỉnh và nâng cấp.


12. Kiểu Dữ Liệu là gì?

- Cái này thật ra rất đơn giản, nhưng rất khó mô tả để những bạn mới hiểu được, cho nên các bạn thử trả lời các câu hỏi đơn giản sau sẽ dễ hiểu hơn:

  1. Các số: 1 ; 2 ; 3 ;... ; 2745 ;... gọi là số gì?
    =>Số Nguyên Dương
  2. Các số: -1 ; -2 ; -3 ;... ; -29525 ;... gọi là số gì?
    =>Số Âm
  3. Các số: -2.72 ; -0.515 ; 3.62 ; 7.5252 ;.... ; 15.2958275 ;... gọi là số gì?
    =>Số hữu tỉ
- Trong toán học Số Nguyên Dương, Số Nguyên Âm, Số hữu tỉ được gọi là Tập Hợp. Kiểu Dữ Liệu của Lập Trình cũng tương tự, nó là một tập hợp các con số, các ký tự hay 1 kiểu giá trị nào đó và cũng được đặt cho một cái tên để phân biệt với kiểu dữ liệu khác. Ví dụ:

  1. Các số từ -215 cho đến các số nhỏ hơn 215 được nhóm lại với nhau thành một tập hợp và được đặt cho 1 cái tên: Kiểu Dữ Liệu Integer (gọi tắt là Integer)
  2. Tất cả các chữ cái (a-z,A-Z), các con số đơn lẽ từ 0 đến 9 và các ký tự đặt biệt (? ~ [ : "...)được gọi là: Kiểu Dữ Liệu Char (gọi tắt là char).
  3. ...
- Ngoài ra còn khá nhiều kiểu dữ liệu khác, nhưng tạm thời tụi mình chỉ cần hiểu Kiểu Dữ Liệu là gì thôi, khi đi vào Lập Trình tụi mình sẽ được gặp và làm quen với từng kiểu 1, kiểu nào không gặp có thể bỏ qua không nhất thiết phải học và hiểu hết.

- Và tùy mỗi ngôn ngữ số lượng Kiểu Dữ Liệu cũng khác nhau, ví dụ như Pascal có kiểu Char, nhưng AutoIT đã bỏ kiểu Char đi, hay nói đúng hơn là AutoIT đã gộp Kiểu Dữ Liệu Char vào chung với 1 kiểu khác được gọi là kiểu String (Chuỗi).


13. Toán tử là gì?

- Toán Tử còn gọi là Phép Toán. Những phép toán cần kể đến trước tiên là các phép toán mà tụi mình đã học từ lớp 1:

Cộng [ + ] , Trừ [ - ], Nhân [ * ], Chia [ / ]
- Ngoài ra, xuất phát từ mong muốn có được một Mã Nguồn ngắn gọn dễ hiểu người ta đã chế thêm một số phép toán khác.

Ví dụ: Trong lập trình, việc tăng giá trị của một số lên 1 đơn vị thường xuyên được thực hiện, cho nên người ta đã tạo ra phép toán Tăng Dần ký hiệu là: x++ trong đó x mang giá trị của số cần cộng thêm 1, còn ++ là phép toán. Trong toán học người ta gọi đây là phép toán 1 ngôi.

- Cho đến nay đã có nhiều phép toán mới được chế ra phục vụ cho công việc Lập Trình:

x++ : Tăng giá trị của x lên 1 đơn vị
x-- : Giảm giá trị của x xuống 1 đơn vị
x+=y : Tăng giá trị của x lên y đơn vị
x-=y : Giảm giá trị của x xuống y đơn v
x*=n : Tăng giá trị của x lên n lần
x/=n : Giả giá trị của x xuống n lần


Xem thêm: https://vi.wikipedia.org/wiki/Toán_tử

14. True và False là gì?

- True và False dịch ra có nghĩa là Đúng và Sai, đây là kiểu dữ liệu đặc biệt trong lập trình, được sử dụng rất nhiều có thể nói là không thể thiếu. Với các ngôn ngữ lập trình hiện nay, kiểu dữ liệu này thường gồm có 4 giá trị: True, False, 1, 0 trong đó 1 và 0 là cách viết rút gọn, tức là True=1, Flase=0.

- Vậy kiểu dữ liệu này sử dụng như thế nào? Chúng đơn giản chỉ là những công tắc cho các dòng lệnh. Ví dụ như ta tạo ra 1 chương trình kiểm tra 1 số đã cho có phải là số âm hay không, nếu nó đúng là số âm thì xuất ra một dòng thông báo gì đó, còn nếu không thì thoát chương trình mà không làm gì cả.

- Kiểu dữ liệu này khá trừu tượng vì nó không đơn thuần nằm trong 1 biến như các con số, mà có thể tồn tại trong 1 toán tử so sánh ví dụ như: Lớn hơn [>], nhỏ hơn [<], nhỏ hơn hoặc bằng [<=], lớn hơn hoặc bằng [>=],... Xét 1 số ví dụ cụ thể:

  1. - 2<0 sẽ tồn tại giá trị True, vì -2 là số âm mà số âm nào cũng nhỏ hơn 0
  2. 7>2 sẽ tồn tại giá trị True bên trong
  3. 9<2 sẽ tồn tại giá trị False bên trong
- Chính vì sự đặc biệt của kiểu dữ liệu này mà hầu hết các ngôn ngữ lập trình đã đưa True và False vào danh sách những Từ Khóa của mình.

15. Giải thuật là gì?

- Còn gọi là: Thuật Toán. Nó gần giống như một công thức toán học hay hóa học, trong đó mỗi con số trong công thức tương ứng với một dòng lệnh. Khi bạn sắp xếp các con số theo 1 thứ tự nào đó, nó sẽ cho ra một kết quả tương ứng và giải thuật cũng vậy, nếu bạn xếp các dòng lệnh theo một thứ tự nhất định nó sẽ thực hiện được một công việc nào đó.

- Ví dụ giải thuật kiểm tra xem 1 số có phải là số lẽ hay không, hay giải thuật để tìm xem trong 10 số cho trước số nào lớn nhất. Nếu hiểu đúng bạn sẽ thấy rằng sẽ có giải thuật chỉ gồm 1 đến 2 dòng lệnh, nhưng sẽ có giải thuật gồm rất nhiều dòng lệnh, tùy theo độ phức tạp của công việc cần thực hiện.


Xem thêm: https://vi.wikipedia.org/wiki/Thuật_toán

Nguồn bài viết: LeeSai - hocautoit.com
Khái niệm cơ bản của Lập Trình Khái niệm cơ bản của Lập Trình Reviewed by DOAN TRI on tháng 9 17, 2017 Rating: 5

Không có nhận xét nào:

Được tạo bởi Blogger.