Installing igraph (0.7.1) in Visual Studio 2013

I have installed igraph (0.7.1) in Visual Studio 2013. The following are some errors during the installation and how to fix it.

– Error C2065: ‘prpack_igraph_graph’ : undeclared identifier.

Solution: Adding a compiler option. Open Project menu -> Properties -> C/C++ -> Command Line. In Additional options, add the following option: /DPRPACK_IGRAPH_SUPPORT=1

When compiling igraphtest:

– Error LNK1181: cannot open input file ‘igraph.lib’. Solution: Adding a path to the directory containing ‘igraph.lib’. Open Project -> Properties -> VC++ Directory -> Library Directory -> Edit. Add new path which points to the Release directory in the igraph directory.

– error LNK2005: _free already defined in LIBCMTD.lib(dbgfree.obj)
 Project -> Properties -> Configuration Properties -> C/C++ -> Code generation.
Set Runtime Library = Multi-threaded (/MT)

Làm thế nào để chọn được một đề tài tốt cho luận văn thạc sỹ

Bài viết sau đưa ra một số gợi ý để giúp bạn quyết định chọn đề tài cho mình.

Tài liệu tham khảo:

How to Choose Successful Research for your PhD or Master’s Degree

Bản quyền:  88x31

Nguồn: Lê Bá Dũng’s Blog

——————————————————————

Lựa chọn được một đề tài tốt cho luận văn của bạn có thể là một trong những áp lực lớn nhất bạn gặp phải trong cả khoá học thạc sỹ. Bạn sẽ phải dành nhiều tháng và cũng có thể cả năm cho đề tài này. Và công việc tương lai của bạn cũng có thể phụ thuộc vào đề tài của bạn có ý nghĩa như thế nào đối với nhà tuyển dụng.

Những gợi ý sau đây có thể giúp bạn tìm ra một đề tài có ý nghĩa và như bạn mong muốn.

  • Chọn đề tài mà bạn yêu thích: Đây không hẳn là một yếu tố quan trọng nhất, nhưng chắc chắn bạn sẽ làm một công việc tốt hơn nếu bạn yêu thích nó. Đừng để một ai đó tạo áp lực lên bạn khi bạn làm về đề tài này.
  • Chọn đề tài mà người hướng dẫn của bạn cảm thấy thú vị và có kiến thức về lĩnh vực của đề tài đó: Hãy tìm hiểu trước, nếu thấy không thích hợp, bạn có thể chọn một người hướng dẫn khác. Kiến thức của người hướng dẫn và những lời gợi ý của họ sẽ giúp cho công việc của bạn dễ hàng hơn nhiều.
  • Chọn đề tài có ích cho nghề nghiệp bạn sẽ làm: Nếu bạn đi theo hướng nghiên cứu, hãy chọn một đề tài mà sau này bạn có thể phát triển thành những bài báo khoa học hoặc một cuốn sách. Nếu bạn muốn làm trong lĩnh vực giáo dục, hãy nghĩ đến một đề tài mà sau này bạn có thể giảng dạy ở trong các lớp học. Nếu bạn muốn đi làm trong các doanh nghiệp, hãy chọn một đề tài có tính ứng dụng và có thể mang lại nhiều lợi ích kinh tế.
  • Chọn một đề tài mới chưa có người làm trước đó: hãy tìm hiểu thật kỹ để chắc chắn rằng đề tài này chưa từng được làm trước đó, nếu không mọi công việc bạn làm chỉ là phát minh lại cái bánh xe. Hãy nghĩ ra những ý tưởng sáng tạo hay là những cải tiến từ những cái đã có.
  • Chọn đề tài thuộc lĩnh vực mà bạn thành thạo nhất: điều này sẽ giúp bạn có sự chắc chắn và hoàn thành công việc một cách nhanh chóng. Nhớ là lúc này chưa phải là lúc để đi vào một lĩnh vực mới mà bạn chưa hề biết.
  • Chọn đề tài có phạm vi vừa phải có thể quản lý được: Mức độ của đề tài quyết định đến sự đánh giá kết quả làm việc của bạn sau này. Nhưng nó cũng không phải là một đề tài để làm cả cuộc đời. Vì vậy, bạn nên làm hẹp phạm vi của đề tài đến mức vừa đủ để bạn có thể kết thúc khoá học đúng thời hạn.

Chúc bạn thành công.

Kỹ năng viết tiếng Anh học thuật (Writing Academic English) (tiếp)

Bài viết này là một phần trong chuỗi các bài viết về kỹ năng viết tiếng  Anh học thuật (Writing Academic English).  Hy vọng nó có thể giúp các bạn đang học tiếng  Anh có thể cũng cố được kỹ năng viết tiếng  Anh của mình.

Tài liệu tham khảo:

Alice Oshima, Ann Hogue, “Writing Academic English” 3rd edition.

Bản quyền:  88x31

Nguồn: Lê Bá Dũng’s Blog

———————————————————————————-

(tiếp theo)

Giai đoạn lập dàn ý:
Trong giai đoạn này, bạn sắp xếp các ý tưởng được sinh ra trong giai đoạn trước thành các dàn ý.
Bước đầu tiên, bạn chia các ý tưởng theo các chủ đề con và gạch bỏ những ý tưởng mà không thuộc một chủ đề con nào hoặc sẽ không sử dụng đến. Tiếp tục việc chia các ý tưởng trong các chủ đề con theo các chủ đề hẹp hơn.
Cuối cùng, bạn sẽ viết các câu văn theo chủ đề. Một dàn ý có các ý chính và ý hỗ trợ theo thứ tự mà bạn dự định viết về chúng.
Giai đoạn viết và sửa bản nháp:
Ở giai đoạn này, bạn sẽ viết và sửa bản nháp một vài lần cho đến khi có được bản hoàn chỉnh.
Bước đầu tiên bạn viết một bản nháp thô từ các dàn ý. Hãy viết ra ý tưởng chính của chủ đề và gạch chân nó. Viết tiếp các câu khác trong dàn ý một cách đều đặn để thành đoạn văn. Hãy mạnh dạn thêm vào những ý tưởng khác liên quan đến chủ đề đang viết cho dù chúng không có trong dàn ý. Đừng lo lắng về ngữ pháp, ngắt câu hoặc chính tả. Bản nháp đầu tiên này không cần phải hoàn hảo. Mục đích của nó là để bạn viết ra càng nhiều thông tin càng tốt theo chủ điểm cụ thể đã nêu ra trong dàn ý.
Bước tiếp theo là sửa và sắp xếp lại nội dung. Bạn sẽ sửa lại những gì đã viết cho tốt hơn. Đọc kỹ nội dung và thứ tự đã viết để kiểm tra sự thống nhất, sự kết dính và cả tính logic. Trong lần sửa thứ nhất, bạn không cần phải sửa ngữ pháp, cấu trúc câu, chính tả hay sự ngắt câu. Bạn chỉ cần quan tâm chủ yếu đến nội dung và thứ tự tổ chức câu văn trong đó.
Thực hiện các công việc sau:
Đọc toàn bộ đoạn văn một cách cẩn thận để có cái nhìn tổng quan.

  • Kiểm tra xem đã diễn đạt được ý chính chưa.
  • Kiểm tra tính logic và kết dính toàn bộ.
  • Kiểm tra để chắc chắn rằng đoạn văn của bạn có câu diễn đạt ý chính.
  • Kiểm tra tính thống nhất và có thể bỏ những câu không có chức năng hỗ trợ cho ý nghĩa của đoạn đấy.
  • Kiểm tra xem mỗi đoạn đã có đủ các ý hỗ trợ giải thích cho chủ đề chính của đoạn hay chưa. Nếu chưa thì viết lưu ý vào là cần thêm chi tiết hoặc cần ví dụ minh họa.
  • Kiểm tra các từ hoặc câu chuyển tiếp.
  • Cuối cùng, xem thử đoạn văn của bạn có cần câu kết luận hay không.

Bây giờ là lúc bạn viết lại đoạn văn với những thông tin cần sửa để có bản nháp lần hai. Ở lần sửa này, bạn kiểm tra ngữ pháp, chính tả, dấu ngắt câu và cấu trúc câu.

  • Kiểm tra tính đúng đắn và đầy đủ của mỗi câu.
  • Kiểm tra cách dùng danh từ, động từ, thì của động từ trong mỗi câu.
  • Kiểm tra sự ngắt câu, chính tả, viết hoa, lỗi soạn thảo.
  • Sử dụng từ vựng thích hợp.

Giai đoạn viết hoàn chỉnh:
Cuối cùng, bạn sẽ viết bản hoàn chỉnh. Nó nên được viết một cách rõ ràng dễ hiểu. Hãy chắc chắn là bạn đã sửa các lỗi đã lưu ý ở trên. Sau đó bạn đọc lại và đừng ngạc nhiên nếu bạn vẫn tiếp tục sửa một vài chỗ nữa. Hãy nhớ rằng viết là một quá trình tiếp tục cho đến khi nào bạn cảm thấy hài lòng với bản hoàn chỉnh cuối cùng.

Kỹ năng viết tiếng Anh học thuật (Writing Academic English)

Bài viết này là một phần trong chuỗi các bài viết về kỹ năng viết tiếng  Anh học thuật (Writing Academic English).  Hy vọng nó có thể giúp các bạn đang học tiếng  Anh có thể cũng cố được kỹ năng viết tiếng  Anh của mình.

Tài liệu tham khảo:

Alice Oshima, Ann Hogue, “Writing Academic English” 3rd edition.

Bản quyền:  88x31

Nguồn: Lê Bá Dũng’s Blog

———————————————————————————-

Phần I: Quá trình viết học thuật

Giới thiệu
Viết học thuật là một hình thức viết thường được sử dụng trong các trường đại học. Phương pháp này khác với các phương pháp khác như: viết riêng tư, viết văn học, viết báo chí, viết thương mại. Khi viết, bạn cần chú ý đến đối tượng độc giả, những người sẽ đọc những gì bạn viết. Đối với viết học thuật, độc giả chính thường là các giáo viên hoặc giáo sư hướng dẫn của bạn.
Ngoài ra, bạn cũng nên chú ý đến giọng văn, kiểu cách mà bạn diễn giải nội dung viết. Giọng văn phụ thuộc vào cách chọn từ ngữ, cấu trúc ngữ pháp và thậm chí là độ dài câu văn mà bạn viết.
Quá trình viết học thuật gồm 4 giai đoạn chính:

  • Chuẩn bị
  • Lập dàn ý
  • Viết và sửa bản nháp
  • Viết hoàn chỉnh

Giai đoạn chuẩn bị:
Bước 1: Chọn và làm hẹp chủ đề
Giả sử bạn muốn viết về chủ đề môi trường. Đó là một chủ đề rộng mà bạn khó có thể diễn giải trong một đoạn văn. Bạn có thể là hẹp chủ để bằng cách viết về vấn đề ô nhiễm môi trường nếu bạn muốn. Tuy nhiên, chủ đề như thế vẫn còn quá rộng đối với một đoạn văn. Bạn có thể làm hẹp nó về một hình thức ô nhiễm môi trường cụ thể, ví dụ như ô nhiễm đối với đại dương. Chủ đề này có thể gồm vấn đề ô nhiễm bởi dầu, bởi chất hóa học, bởi chất thải, bởi rác. Do vậy, bạn có thể quyết định viết về ô nhiễm do tràn dầu đối với đại dương. Điểm lưu ý ở đây là, bạn phải làm hẹp chủ đề của đoạn văn vào một nội dung cụ thể và bạn có thể viết về nó một cách rõ ràng và tương đối đầy đủ.
Xem sơ đồ về quá trình làm hẹp chủ đề:

writingenglish

Làm hẹp chủ đề

Sau khi bạn đã chọn được một chủ đề và làm hẹp nó vào trong một vấn đề cụ thể, bước tiếp theo là viết ra các ý tưởng. Bước này được thực hiện bởi một quá trình được gọi là Tập kích não (Brain Storming). Bước này có thể giúp bạn viết nhanh hơn và tiết kiệm thời gian trong các giai đoạn tiếp theo của quá trình viết.
Bước 2: Tập kích não
Có ba kỹ thuật Tập kích não: Liệt kê theo danh sách, Viết tự do, và Liệt kê theo nhóm.
•    Kỹ thuật liệt kê theo danh sách
Sử dụng kỹ thuật này bạn sẽ nghĩ về chủ đề đang viết và nhanh chóng lập một danh sách các từ hoặc cụm từ bất kỳ nảy sinh trong suy nghĩ của bạn. Mục đích là viết ra càng nhiều ý tưởng càng tốt trong thời gian ngắn để có thể tìm ra một chủ điểm cụ thể cho chủ đề của bạn.
Thực hiện các công việc sau:
o    Viết ra chủ đề chung nhất lên đầu trang giấy của bạn.
o    Sau đó liệt kê ra tất cả những ý tưởng mà bạn có thể nghĩ ra trong đầu về chủ đề này.
o    Sử dụng bất kỳ từ ngữ hoặc câu nào bạn có thể nghĩ ra để diễn đạt, không cần lo lắng về ngữ pháp hay chính tả.
•    Kỹ thuật viết tự do
Viết tự do là một hoạt động tập kích não mà bạn sẽ viết một cách tự do về một chủ đề với chủ điểm cụ thể. Trong lúc bạn viết, có thể một ý tưởng này sẽ sinh ra một ý tưởng khác. Cũng giống như kỹ thuật liệt kê, kỹ thuật viết tự do được sử dụng để sinh ra càng nhiều ý tưởng càng tốt và viết chúng ra giấy mà không cần quan tâm đến ngữ pháp, chính tả, tính lôgic hay trật tự. Vì thế, bạn viết càng nhiều thì càng có nhiều ý tưởng. Đừng thất vọng nếu bạn cảm thấy không có ý tưởng nào nữa. Cứ viết những gì bạn có thể viết.
Thực hiện các công việc sau:
o    Viết chủ đề lên đầu trang giấy của bạn.
o    Viết càng nhiều càng tốt về chủ đề cho đến khi không còn ý tưởng nào nữa. Bao gồm ý tưởng về thực tế, chi tiết và các ví dụ có thể nghĩ ra trong đầu bạn về chủ đề đó.
o    Sau khi bạn viết hết các ý tưởng có thể nghĩ ra, đọc lại những gì đã viết và khoanh tròn vào những ý tưởng chính mà ta có thể phát triển thêm.
o    Chọn ý tưởng chính đó và lặp lại viết tự do với nó.
•    Kỹ thuật liệt kê theo nhóm
Liệt kê theo nhóm là một hoạt động tập kích não khác có thể được sử dụng để sinh ra các ý tưởng. Thực hiện các công việc sau:
o    Viết chủ đề vào giữa trang giấy của bạn và khoanh tròn nó lại.
o    Sau đó viết bất kỳ ý tưởng gì bạn có thể nghĩ ra vào xung quanh vòng tròn ở giữa và cũng khoanh tròn lại.
o    Suy nghĩ về những ý tưởng mới thêm vào này và viết tiếp những ý tưởng liên quan đến nó vào vị trí xung quanh và khoanh tròn lại.
Đến đây, bạn đã hoàn thành giai đoạn chuẩn bị. Bây giờ hãy chuyển sang giai đoạn lập dàn ý.

(còn tiếp)

Chủ đề hẹp:

MÔI TRƯỜNG

Ô NHIỄM MÔI TRƯỜNG

Ô NHIỄM ĐẠI DƯƠNG

TRÀN DẦU TRÊN ĐẠI DƯƠNG

ẢNH HƯỞNG ĐẾN CUỘC SỐNG SINH VẬT BIỂN

Chủ đề rộng:

Một Số Gợi Ý Để Làm Luận Văn Tốt Nghiệp

Bài viết này đưa ra một số gợi ý để làm luận văn tốt nghiệp đại học.

Tài liệu tham khảo:

How To Write an Undergraduate Thesis

Bản quyền:  88x31

Nguồn: Lê Bá Dũng’s Blog

———————————————————–

Hãy nhớ rằng luận văn tốt nghiệp là một điểm rất quan trọng khi bạn viết lý lịch xin việc. Người ta nhìn vào đó để có thể thấy lĩnh vực nào mà bạn ưa thích hoặc có kiến thức sâu. Luận văn tốt nghiệp cũng là một phần quan trọng trong toàn bộ quá trình học tập của bạn. Có một số gợi ý sau có thể giúp bạn hoàn thành luận văn tốt nghiệp.

1. Lựa chọn đề tài

Nếu bạn đang băn khoăn về việc nên chọn ý tưởng nào cho luận văn tốt nghiệp, hãy nghĩ về các câu hỏi sau:

Bạn quan tâm đến lĩnh vực nào?

Môn học nào là môn học ưa thích của bạn?

Nếu thời gian và tiền bạc không thành vấn đề thì bạn sẽ nghĩ đến chủ đề nào đầu tiên?

2. Hãy cụ thể

Chủ đề của luận văn rất quan trọng và nên được xem xét cẩn thận. Bạn nên cụ thể hóa vấn đề cần làm trong chủ đề đã lựa chọn. Càng cụ thể hóa thì bạn càng dễ hình dung những công việc cần thực hiện trong luận văn của mình.

Nếu bạn là sinh viên ngành sinh học và quan tâm đến ứng xử của loài chim, một luận văn về xu hướng di trú của chim sẽ rất phù hợp. Đối với ví dụ này, bạn nên hạn chế nó vào một loài chim cụ thể ở tại một địa điểm nào đó. Nếu bạn là sinh viên ngành kỹ sư máy tính và quan tâm đến vấn đề nén dữ liệu, bạn có thể làm một luận văn về việc cài đặt một ứng dụng nén cho dữ liệu dạng văn bản (text compression) với một vài thuật toán cụ thể như Huffman và LZW, sau đó bạn so sánh hiệu quả của từng thuật toán. Nếu bạn là sinh viên ngành khoa học máy tính và quan tâm đến mã hóa dữ liệu, bạn có thể làm một luận văn về việc nâng cao tính an toàn của việc mã hóa dữ liệu bằng thuật toán DES. Bạn sẽ chứng minh nó bằng các công thức toán học và cài đặt thử.

3. Tìm một người hướng dẫn

Thông thường bạn sẽ được yêu cầu tìm một giáo viên hướng dẫn để hỗ trợ cho công việc của bạn. Các gợi ý bạn có thể nhận được từ người hướng dẫn là rất có giá trị. Sẽ tốt hơn nếu người hướng dẫn của bạn có cùng hướng nghiên cứu, nhưng thậm chí nếu người hướng dẫn không có nhiều quan tâm đến chủ đề của bạn thì họ cũng có thể chia sẻ với bạn về phương thức nghiên cứu và cách hoàn thiện sản phẩm cuối cùng.

4. Tham gia một khóa học ngắn

Luận văn của bạn yêu cầu thực hiện rất nhiều công việc. Tại sao bạn không tham gia vào một khóa học ngắn nào đó. Tùy thuộc vào điều kiện mà bạn có thể chọn một khóa học ngắn phù hợp. Nếu bạn làm luận văn về thiết kế một website bán hàng qua mạng, một khóa học về thiết kế giao diện web hoặc sử dụng một ngôn ngữ lập trình web có thể thích hợp. Điều này sẽ giúp bạn hoàn thành công việc tốt hơn trong khoảng thời gian ngắn hơn.

5. Tạo một kế hoạch làm việc

Bạn sẽ thực hiện luận văn của bạn như thế nào? Những tài nguyên nào bạn cần có? Bạn sẽ yêu cầu sử dụng thiết bị ở phòng thực hành hay sự giúp đỡ của ai đó? Bạn có thể thực hiện toàn bộ luận văn trong thư viện trường, hay bạn cần sử dụng các tài liệu đặc biệt khác? Công việc này chiếm thời gian bao lâu? Hãy trả lời cho những câu hỏi này để lập một kết hoạch hành động chi tiết cho toàn bộ luận văn.

6. Dành thời gian để làm luận văn

Hãy tập trung vào mục tiêu của luận văn khi bạn đối mặt với sự căng thẳng của cuộc sống hằng ngày. Bạn có thể dễ dàng trì hoãn công việc đang làm sang một ngày khác. Sẽ là rất tốt nếu bạn xếp độ ưu tiên cho công việc trong thời gian biểu của bạn. Thay vì phải làm luận văn vào những ngày có công việc cần thiết, bạn có thể dành thời gian khác để thực hiện nó. Nhưng bạn nên hạn chế sử dụng sự linh hoạt này.

7. Hãy lưu giữ những việc đã làm cẩn thận

Luận văn tốt nghiệp của có tốt hay không tùy thuộc vào thông tin mà bạn tìm được. Khi nào bạn phải lưu ý một điều gì đấy hoặc thu thập dữ liệu ở phòng thực hành, hãy làm điều đó cẩn thận. Bằng cách lưu trữ một bản dự phòng và kiểm tra chắc chắn dữ liệu đã được thu thập.

8. Trau chuốt công việc của bạn

Bạn luôn muốn luận văn của bạn sẽ được trình bày với kết quả tốt nhất. Vì vậy một vài lỗi in ấn đơn giản cũng làm giảm giá trị của luận văn. Nếu bạn không hài lòng với kỹ năng viết của bạn, hãy tìm ai đó giúp đỡ công việc này.

9. Trình bày kết quả làm việc của mình

Một khi bạn đã hoàn thành luận văn, đừng giữ khư khư nó cho bản thân mình. Hãy chia sẻ nó với mọi người. Bạn có thể học thêm nhiều điều mà bạn chưa đề cập tới trong luận văn. Điều này tăng thêm giá trị cho lý lịch xin việc của bạn.

Nếu bạn thực hiện theo những gợi ý này, bạn sẽ nhanh chóng hoàn thành luận văn một cách tốt nhất. Chúc bạn thành công.

John và David

(Một câu chuyện hài hước được lấy từ website Funny Jokes)

John và David đều là những bệnh nhân của một bệnh viện tâm thần. Một ngày nọ, bỗng nhiên John nhảy lao đầu xuống bể bơi và bị ngộp nước. David đã nhảy xuống và cứu anh ấy lên. Sau đó bác sỹ quản lý đến để khen ngợi hành động dũng cảm đó…

Ông ta lập tức cho phép David được xuất viện vì nghĩ rằng anh ấy đã hoàn toàn bình phục.

Bác sỹ: Chúng tôi có một tin tốt lành và một tin xấu dành cho anh đấy David. Tin tốt là anh sẽ được đồng ý xuất viện vì anh đã lấy lại được trạng thái tỉnh táo, anh đã nhảy xuống bể bơi và cứu một bệnh nhân khác khỏi chết đuối, điều đó chứng tỏ bây giờ anh là một người hoàn toàn bình thường. Còn tin xấu đó là John, người được anh cứu, đã tự treo cổ ở trong nhà tắm và đã chết.

David: Ồ không phải anh ta tự treo cổ đâu thưa bác sỹ. Tôi đã treo anh ấy lên đấy cho khô đấy.

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

Bài viết này giới thiệu tổng quan về đặc điểm hướng đối tượng trong ngôn ngữ lập trình Java.
Tài liệu tham khảo:
Chapter 2, Patrick Naughton and Herbertz Schidt, “Java –2 The Complete Reference” , Fifth edition, Tata McGraw-Hill Publishing Company Limited.

Bản quyền:  88x31

Nguồn: Lê Bá Dũng’s Blog

———————————————————

Lập trình hướng đối tượng là cốt lõi của Java. Trên thực tế tất cả các chương trình viết bằng Java đều là hướng đối tượng chứ không phải là một tùy chọn như trong C++.

Hai mô hình lập trình
Tất cả các chương trình máy tính đều bao gồm hai thành phần: mã lệnhdữ liệu. Một vài chương trình được viết theo hướng quan tâm đến mã lệnh, nghĩa là quan tâm đến “Cái gì đang xảy ra”, và các chương trình khác có thể được viết theo hướng quan tâm đến dữ liệu, nghĩa là quan tâm đến “Cái gì đang bị tác động đến”. Hai mô hình này ảnh hưởng đến cách xây dựng chương trình. Cách đầu tiên gọi là mô hình hướng thủ tục. Theo cách tiếp cận này một chương trình được xem như là một dãy là bước tuần tự. Các ngôn ngữ lập trình cấu trúc như C sử dụng mô hình này. Tuy nhiên, vấn đề đối với cách tiếp cận này là kích thước lớn và tính phức tạp của chương trình. Cách tiếp cận thứ hai được gọi là lập trình hướng đối tượng. Lập trình hướng đối tượng tổ chức một chương trình theo xoay quanh dữ liệu của nó và một tập các giao tiếp được định nghĩa tác động đến dữ liệu đó.

Sự trừu tượng hóa
Một thành phần cơ bản của lập trình hướng đối tượng là sự trừu tượng hóa. Con người quản lý tính phức tạp thông qua sự trừu tượng hóa. Ví dụ, ta không nghĩ về chiếc xe hơi như là một tập gồm hàng ngàn chi tiết riêng biệt. Ta xem nó là một đối tượng cụ thể với các đặc điểm riêng của nó. Sự trừu tượng hóa này cho phép ta sử dụng chiếc xe hơi mà không bị rối rắm bởi sự phức tạp của các phần tạo nên chiếc xe.
Một cách hữu hiệu để quản lý sự trừu tượng hóa là sử dụng sự phân lớp. Điều này cho phép ta phân tầng sự phức tạp của hệ thống, chia nhỏ thành các phần có thể quản lý được. Ví dụ, xe hơi được xem là một đối tượng. Chi tiết hơn, xe hơi bao gồm nhiều hệ thống con như: tay lái, ghế ngồi, dàn âm thanh. Giàn âm thanh bao gồm máy nghe CD, băng đĩa …

Ba yếu tố cơ bản của lập trình hướng đối tượng
Tất cả các ngôn ngữ lập trình hướng đối tượng đều cung cấp các cơ chế cho phép bạn cài đặt mô hình hướng đối tượng. Đó là tính đóng gói, tính kế thừatính đa hình.

Tính đóng gói
Đây là cơ chế kết hợp giữa mã lệnh với dữ liệu mà nó xử lý, và tránh bị ảnh hưởng bởi sự can thiệp từ bên ngoài. Tính đóng gói được xem như là một lớp vỏ bọc bảo vệ mã lệnh và dữ liệu tránh khỏi sự truy cập tùy tiện từ các mã lệnh khác. Việc truy cập được điều khiển một cách chặt chẽ thông các các thủ tục đã được định nghĩa.

Tính kế thừa
Tính kế thừa là quá trình mà một đối tượng nhận được các tính chất từ một đối tượng khác. Thông thường, mỗi đối tượng cần được định nghĩa tất cả các tính chất của nó. Tuy nhiên, bằng cách sử dụng sự kế thừa, mỗi đối tượng chỉ cần được định nghĩa các tính chất riêng biệt của nó, các tính chất chung được định nghĩa ở trong đối tượng mà nó kế thừa.

Tính đa hình
Đây là đặc điểm cho phép một hình thức giao tiếp có thể được sử dụng cho nhiều hành động có tính chất giống nhau. Việc thực thi hành động cụ thể nào đó tùy thuộc vào tình huống xảy ra. Điều này làm giảm tính phức tạp của chương trình.

Kết hợp tính đóng gói, tính kế thừa và tính đa hình
Sự kết hợp các yếu tố này tạo ra một môi trường lập trình tốt hơn so với mô hình lập trình hướng thủ tục. Tính kế thừa giúp cho việc sử dụng lại mã lệnh đã được cài đặt và kiểm tra trước đó. Tính đóng gói cho phép bạn thay đổi sự cài đặt mà không phải quan tâm nhiều đến mã lệnh, bạn chỉ cần quan tâm đến sự giao tiếp với các lớp đã có. Tính đa hình cho phép bạn viết các chương trình rõ ràng, hợp lý, và linh hoạt.