Page 51 - Ký sự code dạo
P. 51

LẬP	TRÌNH	VIÊN	ĐÂU	PHẢI	CHỈ	BIẾT	CODE



                                  SOLID	LÀ	GÌ	–	ÁP	DỤNG	CÁC	NGUYÊN	LÝ	SOLID	ĐỂ	TRỞ
                                          THÀNH	LẬP	TRÌNH	VIÊN	CODE	“CỨNG”

                             Trong	quá	trình	học,	hầu	như	các	bạn	sinh	viên	đều	được	học	một	số
                             khái	niệm	OOP	cơ	bản	như	sau:

                                 •  Abstraction	(Tính	trừu	tượng)
                                 •  Encapsulation	(Tính	bao	đóng)
                                 •  Inheritance	(Tính	kế	thừa)
                                 •  Polymophirsm	(Tính	đa	hình)

                             Những	 khái	 niệm	 này	đã	được	 dạy	 khá	 rõ	 ràng	 và	 hầu	 như	 những
                             buổi	phỏng	vấn	nào	cũng	có	những	câu	hỏi	liên	quan	đến	chúng.	Vì	4
                             khái	niệm	này	khá	cơ	bản,	bạn	nào	chưa	vũng	có	thể	Google	để	ôn	lại
                             thêm.

                             Giới	thiệu	chung
                             Trái	ngược	với	4	khái	niệm	nói	trên,	những	nguyên	lý	được	giới	thiệu
                             trong	bài	viết	này	là	những	nguyên	lý	thiết	kế	trong	OOP.	Đây	là	những
                             nguyên	lý	được	đúc	kết	bởi	máu	xương	vô	số	developer,	rút	ra	từ	hàng
                             ngàn	dự	án	thành	công	và	thất	bại.	Một	project	áp	dụng	những	nguyên
                             lý	này	sẽ	có	code	dễ	đọc,	dễ	test,	rõ	ràng	hơn.

                             Chúng	còn	giúp	việc	bảo	trì	code	và	sửa	chữa	dễ	hơn	rất	nhiều	(Ai
                             có	kinh	nghiệm	trong	ngành	IT	đều	biết	thời	gian	code	chỉ	chiếm	20-
                             40%,	 còn	 lại	 là	 thời	 gian	 để	 bảo	 trì:	 thêm	 bớt	 chức	 năng	 và	 sửa
                             lỗi).		Nắm	vững	những	nguyên	lý	này,	đồng	thời	áp	dụng	chúng	trong
                             việc	thiết	kế	và	viết	code	sẽ	giúp	bạn	tiến	thêm	một	bước	trên	con
                             đường	thành	senior	(Một	anh	senior	bên	FPT	Software	từng	dạy	mình
                             thế).

                             Ok,	10	phút	quảng	cáo	đã	qua,	bây	giờ	đến	phần	giới	thiệu.	SOLID	tức
                             là	“cứng”,	áp	dụng	nhiều	thì	bạn	sẽ	code	“cứng”.	Đùa	thôi,	nó	là	tập	hợp
                             5	nguyên	tắc	sau	đây:

                                 •  Single	responsibility	principle
                                 •  Open/closed	principle
                                 •  Liskov	substitution	principle
                                 •  Interface	segregation	principle





                                                                49
   46   47   48   49   50   51   52   53   54   55   56