- vừa được xem lúc

SOLID - Tổng kết

0 0 3

Người đăng: refacore

Theo Viblo Asia

Nếu các bạn đã đọc đến đây thì tôi xin gửi lời cảm ơn trước tiên. Những gì tôi viết ra, có những thứ nằm trong kế hoạch, nhưng cũng có những thứ ngẫu hứng. Nhiều chỗ còn khá lộn xộn và cần bạn phải tự sắp xếp để mạch lạc hơn. Có lẽ tôi sẽ cố gắng biên soạn lại một lần, bổ sung những góp ý của mọi người để nó hoàn thiện hơn. Nhưng cũng như tôi nói từ bài mở đầu, những thảo luận trong series này không toàn diện và phản biện là điều cần thiết và đáng quý.

Dưới góc độ của một senior dev, tôi hi vọng các nội dung này tới được với các bạn trẻ, vì nó phần lớn đến từ kinh nghiệm thực tiễn của tôi, và vì thế, nó có những góc nhìn chủ quan chứ không phải một nội dung giáo khoa và bạn có quyền đánh giá, nhận xét, chiêm nghiệm.

Một lời khuyên cũ rích mà tôi vẫn muốn nhắn gửi, để nằm bắt được những kiến thức này, điều bạn cần làm là code nhiều lên. Những dự án phụ - side project rất có ý nghĩa. Các dự án phụ này chứa đựng nhiều tình cảm của các bạn hơn, và có thể, nó sẽ nhận được nhiều tâm huyết hơn, sẽ thúc đẩy bạn tìm kiếm giải pháp nhiều hơn. Không được thuận lợi cho lắm, OOP hiện tại không phải là xu hướng yêu thích. Ngay cả cá nhân tôi cũng không hoàn toàn muốn chọn OOP trong nhiều trường hợp vì có nhiều lựa chọn khác hiệu quả hơn. Nhưng các mô hình lập trình chia sẻ với nhau nhiều nguyên tắc chung và tài liệu về OOP lại phong phú và có chiều sâu hơn cả. Việc nghiên cứu về OOP sẽ không thừa với mọi người.

Một vài kĩ năng mặc dù không liên quan đến code nhưng lại hữu ích, không chỉ cho lập trình viên mà có lẽ cho mọi nghề nghiệp, đó là khả năng phân tích nghiệp vụ và tư duy sản phẩm. Đừng phụ thuộc vào BA về nghiệp vụ. Tư duy logic của lập trình viên là vũ khí lợi hại trong phân tích nghiệp vụ. Còn về tư duy sản phẩm, suy diễn ra là khả năng đặt mình vào vị trí của khách hàng, người bán hàng và đối thủ cạnh tranh. Dưới những góc nhìn và suy luận đó, bạn mới có thể tưởng tượng ra hệ thống mà mình xây dựng sẽ như thế nào, nó sẽ biến đổi ra sao để đáp ứng với hiện thực, từ đó mới bắt đầu suy nghĩ về thiết kế.

Điều may mắn và tuyệt với nhất là nếu các bạn có thể tìm thấy một người hướng dẫn về kĩ thuật giỏi (bạn sẽ cần nhiều người dẫn hướng cho mình, có người giúp bạn thăng tiến, có người giúp bạn nâng cao kĩ năng chuyên môn). Tôi chỉ có được một nửa may mắn này vì tôi đã có những sếp giỏi, còn tôi tự dõi theo mà học từ các anh ấy. Tình huống của tôi có lẽ là phổ biến và nó cũng phù hợp với câu trích dẫn của các youtuber: "Không có ai rảnh mà dạy bạn đâu".

Cuối cùng, mong các bạn sẽ có được kiến thức từ những bài viết này.

Bình luận

Bài viết tương tự

- vừa được xem lúc

SOLID trong lập trình hướng đối tượng (P2)

Chào mọi người, trong bài viết trước mình đã giới thiệu 2/5 tính chất của SOLID, ở bài viết này mình sẽ giới thiệu 3 tính chất còn lại. Mọi người hãy chuẩn bị 1 tách cafe, 1 tâm hồn đẹp để đọc và thấm nhuần bài viết này nhé .

0 0 38

- vừa được xem lúc

SOLID trong lập trình hướng đối tượng (P1)

SOLID là tập hợp những nguyên tắc mà mỗi lập trình viên cần tuân theo khi thiết kế cấu trúc 1 class trong lập trình hướng đối tượng. SOLID bao gồm 5 tính chất, 5 tính chất này giúp chúng ta phần nào hiểu được sự cần thiết nhất định của design patterns và software architecture trong lập trình nói chu

0 0 35

- vừa được xem lúc

Nguyên lý S.O.L.I.D trong JavaScript (P3)

Ở bài này chúng ta cùng tìm hiểu về nguyên lý thứ 4 của SOLID, đó là Interface Segregation principle thông qua 2 mục:. . Nguyên lý Interface Segregation là gì . .

0 0 58

- vừa được xem lúc

Áp Dụng Nguyên Tắc SOLID Trong Lập Trình

Giới Thiệu. 1. SOLID là gì. SOLID là viết tắt của 5 chữ cái đầu trong 5 nguyên tắc:.

0 0 37

- vừa được xem lúc

Nguyên lý S.O.L.I.D. trong JavaScript (P4)

Hi mọi người, trong các bài viết trước chúng ta đã tìm hiểu về 4 nguyên lý đầu tiên của SOLID, trong bài viết này, chúng ta cùng tìm hiểu về chữ cái cuối cùng nhé. 1.

0 0 33

- vừa được xem lúc

Áp dụng SOLID trong Android

1. SOLID là gì. Thử tưởng tượng bạn đang ở trong một thư viện sách. Bạn muốn tìm một cuốn sách nào đó.

0 0 85