<< Chapter < Page Chapter >> Page >

Tổng quan

Mục tiêu

Sau khi học xong chương này, sinh viên cần phải nắm:

  • Khái niệm về trừu tượng hóa, kiểu dữ liệu do người lập trình định nghĩa.
  • Mục đích của việc định nghĩa kiểu dữ liệu.
  • Phân biệt các hình thức xác định sự tương đương giữa các kiểu dữ liệu

Nội dung cốt lõi

  • Trừu tượng hoá
  • Kiểu dữ liệu do người dùng định nghĩa.
  • Xác định sự tương đương giữa các kiểu dữ liệu

Kiến thức cơ bản cần thiết

Kiến thức và kĩ năng lập trình căn bản

Sự phát triển của khái niệm kiểu dữ liệu

Sự phát triển của khái niệm kiểu dữ liệu là sự phát triển chủ yếu của ngôn ngữ lập trình trong những năm 70. Trong những ngôn ngữ cũ như FORTRAN và COBOL đã bắt đầu có khái niệm về kiểu.

Ý niệm đầu tiên về sự định nghĩa kiểu là một tập hợp các giá trị mà một biến có thể nhận. Kiểu dữ liệu trong các ngôn ngữ cũ này luôn luôn gắn liền với các biến riêng lẻ, do đó mỗi một phép khai báo biến phải đặt tên cho một biến và định nghĩa kiểu của nó. Do đó nếu một chương trình sử dụng nhiều biến có kiểu giống nhau thì mỗi một biến phải được khai báo riêng.

Bước tiếp theo của sự phát triển khái niệm kiểu được nghiên cứu trong Pascal. Trong đó cho phép đặt tên cho một kiểu, tức là một tập giá trị nào đó. Phép khai báo biến chỉ cần tên biến và tên kiểu đã định nghĩa chứ không cần định nghĩa lại kiểu.

Bước cuối cùng của sự phát triển khái niệm kiểu là: Kiểu không chỉ là một tập hợp các đối tượng dữ liệu mà còn là một tập hợp các phép toán có thể thao tác trên các đối tượng dữ liệu này.

Trừu tượng hóa

Khái niệm trừu tượng hóa

Trừu tượng hóa là một phương pháp giúp người lập trình biết cách tập trung vào những vấn đề, những thuộc tính bản chất của chương trình mà bỏ qua các thuộc tính không cần thiết. Nó là một vũ khí chống lại độ phức tạp của chương trình, mục đích của nó là đơn giản hóa quá trình lập trình.

Có hai loại trừu tượng hóa cơ bản trong ngôn ngữ lập trình là trừu tượng hóa quá trình và trừu tượng hóa dữ liệu.

Trừu tượng hóa quá trình

Trừu tượng hóa quá trình là việc phân chia chương trình thành những chương trình con. Mỗi chương trình con đảm nhiệm một tác vụ nào đó và được đặc trưng bởi một cái tên.

Ở cấp độ chương trình chính chúng ta chỉ gọi thực hiện các chương trình con, thông qua các tên chương trình con, để thực hiện các tác vụ mà chương trình con đó đảm trách. Như vậy, ở chương trình chính, chúng ta chỉ quan tâm đến kết quả của chương trình con mang lại mà không cần biết chi tiết cài đặt bên trong chương trình con đó.

Ví dụ để viết một chương trình quản lý, ta có thể viết theo hai cách, cách thứ nhất không phân chia thành các chương trình con và cách thứ hai có sử dụng chương trình con.

Đối với phương pháp thứ nhất, ta thấy toàn bộ chương trình được viết trong chương trình chính, điều này làm cho chương trình chính rất rườm rà, khó đọc hiểu, khó kiểm soát, khó sửa lỗi,...

Đối với phương pháp thứ hai, trong chương trình chính ta chỉ thấy tên các chương trình con (nhap_du_lieu, xu_ly_du_lieu, xuat_du_lieu) và thông qua các tên này ta biết rõ chương trình chính làm những việc gì còn bản thân các việc ấy được làm như thế nào thì ta không cần biết.

Questions & Answers

memory of development brain of the human psychologist
Haw are you?
Haw are you?
Aha ok
Haw are you
im ok you
Me to
What's going?
how did psychology begin?
Valerie Reply
of psychologys commencement, the traces can be seen in the work of Aristotle, where he talk about soul and body, likewise work in durrant, de anima, all these were somewhere supporting dualism, in which soul could exist separately from body
but if you talk about the moder psychology, Gustav fechner, is credited with performing scientific experiments, basis of his experiments in psychology with his studies perception.
does psychology deal with love?
Mohammed Reply
Maybe, i think
I definitely would say yes
how so
there are so many different reasons why you can fall in love with someone, many of them develope subconsciously -> psychology
love messes with the brain, a lot, ergo I believe that Psychology does indeed deal with love
what is synapse
Katie Reply
In the central nervous system, a synapse is a small gap at the end of a neuron that allows a signal to pass from one neuron to the next. synapse are found where nerve cells connect with other nerve cells
can you do auto book auto
Mariah Reply
WHT u mean?
heyy, may i join the conversation please?
edem Reply
who is the father of psychology
Richy Reply
and please, how would you guys, describe the study of psychology at college ?
psychologist student?
i mean not yet but am about to start college so wanna know how is it(college in general and psychology course) please
Psychology is the study of mind and behaviour. So if you will take psychology as a subject so you will get to know how your everything (physical, mental, social, spiritual aspects) effects your behaviour
With this brief knowledge you can help people to cope up with their problems and only you can guide them correctly
And if you go for further specialisations you can study hypnosis, face reading, body language etc
Thanks a lot🙏🏾 And ik some of the stuffs u said but i am also going to write thesis, right ?
ok no prob, thanks a lot🙏🏾✨
hae everyone, hope you are well this evning my question is what is the difference between drive and motivation
good question
drive is more like an impulse or urge and i think they both go together (drive and motivation) even if there is a slight difference
@ Michael Drive is delivered to be innate without the use of an external stimuli, motivation normally evolves an outside stimuli which may include praise, appreciate, or reward.
*believed...sorry for typo
@Reginald, can't the motivation come from the inner self?
Good question, please give an example.
can we say desire of success for example
Wilhelm Wundt is the father of psychology
Wilhem Wundt thank you for the road that you opened.
You mean who is the father of having a great educated argumentative guess? nothing is more wrong than this question. The question is you should ask yourselfs is, how sure are you abour their scientific studying? one's percieved assimilated approach to judging another person and saying they are
the biggest problem with scientific research and data is that ya you could get the same result 1000 times then it could go the other way 1000 times, but we would never know that and we did, we would still say ya but the proof is there. The only thing science proves is that humanity has
no facts about human behavior in the scientific context, but more in the trial and error.. sorry to tell you, but so far no one has proven Father of anything, thats up to you and i, judgement is bias, science is good enough lazy
cognitive development is the growing and development of the brain.
Jessy Reply
Anyone knows about Techno-fascism?
Hussein Reply
Ecofascism is a theoretical political model in which an authoritarian government would require individuals to sacrifice their own interests to the "organic whole of nature". The term is also used as a rhetorical pejorative to undermine the environmental movement.
what's the big difference between prejudice and discrimination?
Danice Reply
A prejudiced person may not act on their attitude.  Therefore, someone can be prejudiced towards a certain group but not discriminate against them.  Also, prejudice includes all three components of an attitude (affective, behavioral and cognitive), whereas discrimination just involves behavior
Nancy Lee
what is all about cognitive development?
cognitive development is the growing and development of the brain
how do you control a variable when using spss whilst running a pearsons correlation analysis?
Jessie Reply
it dependa on your study. according to what you want to say and explain your result
why does it say her and she
Jayla Reply
stages of cognitive development
brivia Reply
sensory preoperatinal concrete formal
what is psychology
Chethani Reply
the study of insecurities and the effect on the host .
Psychology is the scientific study of behavior & mental processes
psychology is science about learning human behaviour
In thinking about the case of Candace described earlier, do you think that Candace benefitted or suffered as a result of consistently being passed on to the next grade?
Nene Reply
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get the best Algebra and trigonometry course in your pocket!

Source:  OpenStax, Ngôn ngữ lập trình. OpenStax CNX. Jul 29, 2009 Download for free at http://cnx.org/content/col10783/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Ngôn ngữ lập trình' conversation and receive update notifications?