Hệ hình lập trình
Khái niệm::
Programming paradigm - Wikipedia
-
-:
-
Lập trình hàm:
-
Lập trình hướng vật thể:
- 4 đặc điểm của lập trình hướng vật thể
- Hoạt động trung tâm của lập trình hướng vật thể là phân loại
- Callback là những hàm được dùng như đối số của hàm khác và đã xác định sẵn đối số truyền vào cho nó rồi
- Giao diện là cái khuôn của phương thức
- Hàm cũng là vật thể
- Hàm vô danh, hàm mũi tên, lambda là những cái tên khác nhau cho cùng một thứ
- f(a)(b) để gọi hàm f(a) có chứa hàm con f1(b)
- Việc tách một khối code thành một hàm khiến cho việc đọc từng dòng trở thành đọc từng bước
- Ý tưởng của lập trình hướng vật thể là gom nhiều hàm và dữ liệu vào trong một đơn vị gọi là vật thể
- Để tránh phụ thuộc lòng vòng (circular dependency) có thể dùng hàm
- Hệ thống kiểu chỉ giúp đảm bảo có sự nhất quán, chứ không đảm bảo là ra đúng ý
- Kiểu động là kiểu được kiểm tra vào lúc chạy. Kiểu tĩnh là kiểu được kiểm tra lúc biên dịch (trước lúc chạy)
- Kiểu động làm cho việc học lập trình dễ hơn. Kiểu yếu giúp ngôn ngữ được tự do ép kiểu để đoán ý người dùng dễ hơn
- Sự xuất hiện của language server giúp ta có thể bắt kiểu trước cả lúc biên dịch cho những ngôn ngữ chỉ bắt kiểu lúc chạy
- Thời điểm xét kiểu quyết định độ động tĩnh của nó. Cách kiểu được xét quyết định độ mạnh yếu của nó
- Nên để dư một dấu phẩy ở phần tử cuối cùng khi tạo vật thể hoặc mảng
- Không cần biết vật thể chứa dữ liệu gì, chỉ cần quan tâm nó làm được gì
- Lớp là một cái khuôn để tạo các vật thể cho nhanh
- Mảng giống vật thể nhưng tất cả các thuộc tính đều là số. Từ điển giống vật thể nhưng tất cả các thuộc tính đều là chuỗi
- Những vật thể đơn giản dùng để tra cứu dữ liệu theo từ khoá gọi là từ điển
- Từ điển là vật thể được dùng để tra cứu dữ liệu theo từ khoá chứ không phải là để thao tác và thay đổi thuộc tính bằng phương thức
- Dùng lớp khi ta có logic nghiệp vụ thực sự cần được thực thi. Dùng giao diện để tạo ràng buộc kiểu cho biến
- Các vật thể tương tác với nhau qua phương thức và không trực tiếp làm thay đổi giá trị của nhau
- Phương thức cho ta biết mình có thể làm gì với vật thể
- Phương thức là một thuộc tính của vật thể
- Phương thức phải gắn lên một vật thể cụ thể nào đó để có tác dụng
- this, self là cách để nói rằng hành động mà phương thức sẽ làm sẽ phải gắn lên một vật thể cụ thể của lớp, thứ mà bây giờ chưa được tạo ra
- Thuộc tính nguyên thủy là những thuộc tính có sẵn mình không cần tạo
- Việc đóng gói (encapsulation) giúp ta không cần quan tâm vật thể lưu dữ liệu thế nào, mà chỉ cần quan tâm tới thuộc tính và phương thức của nó
- Thay vì ta thao túng trực tiếp dữ liệu, ta điều khiển vật thể qua phần giao tiếp của nó với bên ngoài
- Vật thể là dạng dữ liệu có những thuộc tính thành phần
- Vật thể ngoài tự nhiên không chứa hướng dẫn để sử dụng nó. Vật thể trong máy tính có hướng dẫn sử dụng nó
- Đặc điểm cơ bản của lập trình hướng vật thể là truyền tin