Thứ Ba, 8 tháng 1, 2013

Lời mở đầu

Chào mừng các bạn đến với Blog OOP Design Pattern!

Đây là trang blog chia sẻ những hiểu biết của tôi về lập trình hướng đối tượng và design pattern. Trong các bài viết của tôi có tổng hợp các kiến thức từ việc sưu tầm, có một số từ quan điểm cũng như kinh nghiệm làm việc của bản thân tôi. Do đó, nội dung trong blog ít nhiều cũng có những khiếm khuyết và những chỗ mang tính chủ quan của tác giả. Rất mong các bạn góp ý thẳng thắn để bài viết ngày càng chất lượng hơn.

Tại sao tên blog lại là OOP Desgin Pattern?

Thật sự ban đầu, tôi dự định tên blog là Blog Tin học, sau đó lại nghĩ từ Tin học có vẻ rộng quá, trong khi sức mình lại có giới hạn, sau đó là Blog Lập trình, nhưng lập trình thì lại cũng quá rộng, và cuối cùng là OOP Design Pattern. Các bạn vui lòng cho phép tôi không dịch cụm từ Design Pattern vì theo tôi đây gần như là một thuật ngữ chuyên ngành, nếu dịch ra nhiều lúc không thể hiện hết được ý nghĩa của nó, nên chúng ta cứ chấp nhận từ nguyên gốc của nó là Design Pattern, bạn nào nếu mới làm quen thì có thể hiểu Design Pattern như sau:

Design Pattern là những giải pháp phổ biến dùng trong lĩnh vực thiết kế phần mềm.


Việc nghiên cứu design pattern giúp chúng ta tiết kiệm được rất nhiều thời gian cho việc xử lý các tình huống thường gặp mà các chuyên gia thiết kế phần mềm đã từng gặp và áp dụng. Desgin Pattern đúc kết những kinh nghiệm xương máu mà các chuyên gia đã trải qua, giúp chúng ta tránh được những sai sót dẫn đến những hệ quả xấu trong tương lai.

Đối tượng nghiên cứu desgin pattern?

Việc nghiên cứu design pattern thật sự không đơn giản. Nói một cách thẳng thắn, nó không dành cho các bạn mới tập làm quen trong lĩnh vực lập trình. Các bạn cần có kinh nghiệm trong lĩnh vực lập trình hướng đối tượng một thời gian (khoảng 1 năm trở lên) thì có thể bắt điều tiếp cận và nghiên cứu design pattern.

Chúng ta sẽ bắt đầu nghiên cứu như thế nào?

Các bước nghiên cứu như sau:
- Tìm hiểu lập trình hướng đối tượng
- Tìm hiểu nguyên lý lập trình hướng đối tượng
- Tìm hiểu design pattern

Trong mỗi bước, các bạn cần nắm vững các khái niệm, cũng như hiểu một cách tường tận về định nghĩa của như cách ứng dụng nó trong thực tế. Khi đó, các bạn mới có thể chuyển qua bước tiếp theo. Đây là một trong những kinh nghiệm của tôi khi nghiên cứu về lĩnh vực này. Design Pattern không phải là lập trình, do đó, những dòng code sample gần như vô nghĩa. Nếu các bạn nhìn code để hiểu về design pattern thì thật sự các bạn cần phải tìm hiểu thêm về lý thuyết cũng như các định nghĩa. Vì theo nguyên lý nghịch đảo phụ thuộc  trong thiết kế hướng đối tượng thì cái trừu tượng sẽ không phụ thuộc chi tiết mà chi tiết sẽ phụ thuộc cái trừu tượng. Khi bạn dùng sample code để giải thích cho một khái niệm của design pattern, khi đó chứng tỏ bạn chưa thật sự hiểu về design pattern đó, bạn phải hiểu tường tận khái niệm trừu tượng của design pattern thì bạn mới có thể vận dụng nó vào thực tế được.

Chúng ta sẽ nghiên cứu design pattern trong bao lâu?

Tôi sẽ không thể trả lời câu hỏi này cho bạn được. Nhưng tôi biết rằng, bạn phải tập trung nghiên cứu một cách nghiêm túc và thành thật với chính bản thân. Khi bạn cảm thấy khó hiểu một vấn đề gì đó, bạn cần tìm thêm tư liệu để đọc và so sánh, đối chiếu, tìm ra những điểm mấu chốt và ý nghĩa sâu xa của nó. Và việc này cũng sẽ tiêu tốn rất nhiều thời gian và công sức của bạn. Nhưng biết làm sao được, bạn phải cố gắng thôi. Cái gì cũng có giá của nó bạn ạ!

Tôi sẽ làm được gì khi nghiên cứu design pattern?

Lại một câu hỏi rất khó trả lời. Tất nhiên, khi bạn đã nắm vững các khái niệm và nguyên tắc triển khai desgin pattern thì việc kiến trúc phần mềm của bạn sẽ trở nên dễ dàng, linh hoạt và có khả năng mở rộng cực kỳ tốt. Còn việc thành công trong nghề nghiệp hay không thì xin nói thẳng là desgin pattern không giải quyết được vấn đề này vì nó phụ thuộc quá nhiều yếu tố như trình độ, cách ứng xử, quan hệ xã hội, hiệu quả công việc, thái độ, sức khỏe....

và sẽ còn, còn rất nhiều câu hỏi nữa, tôi xin để lại để các bạn khám phá khi nghiên cứu nhé!

Chúc các bạn thành công trong sự nghiệp và hạnh phúc trong gia đình.

Chào thân ái!

--
Lương Đăng Dũng
luongdangdung@misamap.com

1 nhận xét:

  1. Play Free Demo Slots & Casino Web Slots | DCCASINO
    Play free demo gioco digitale slots & casino games at the planet win 365 best online casinos! Our games store, best bonuses, and freespins are waiting for 카지노사이트 you!

    Trả lờiXóa