6 Thói Quen Xấu Mà Lập Trình Viên Nên Tránh

6 Thói Quen Xấu Mà Lập Trình Viên Nên Tránh

Những năm tháng học đai học mình hầu như cắm mặt vào code là chính. Mình biết là ai cũng có những thói quen xấu khi làm lập trình, chỉ là bạn đã nhận ra và thay đổi hay chưa. Những thói xấu luôn rất khó để sửa, đặc biệt là khi ngay chính bản thân bạn cũng không hề nhận ra chúng.

Những gì mình sắp nói tiếp theo hoàn toàn dựa trên quan điểm và kinh nghiệm lập trình của mình. Tuy nhiên, một số điều thật sự được coi là bad- practice (thói quen xấu) trong giới lập trình viên.

1. Không nghỉ và ngủ đủ

Cái này có lẽ hầu như chúng ta mắc phải, và mình cũng không phải điều gì ngoại lệ. Khi mà deadline quá nhiều, một đống bug chưa fix, áp lực trong công việc mọi thứ đổ dồn về phía bạn thì làm sao mà chúng ta có thể nghỉ ngơi được. Đúng là vậy, nhưng cũng đừng để bản thân bị mắc ở trong cái vòng xoáy thức đêm dậy sớm đó quá lâu. Điều đầu tiên là hãy ngủ đủ, ít nhất là 5-6 tiếng vào buổi tối. Và đôi lúc hãy cho bản thân mình nghỉ ngơi một chút, để bộ óc của chúng ta có thể được thư giãn. Hãy dành cho mình những giờ nghỉ giải lao bằng cách vận động thể dục nhẹ.

2. Ngại hỏi người khác

Điều này có thể thấy được ở cả công ty hay trường học. Rất nhiều người trong chúng ta ngại việc hỏi nhưng gì mình đang thắc mắc. Tất nhiên ở đây tôi không nói bản hãy hỏi bất cứ khi nào gặp điều mình không biết. Đầu tiên hãy dành ra thời gian để nghiên cứu vấn đề, google về nó, nhưng hãy đặt cho mình khoảng thời gian nhất định thôi nhé, chứ đừng lãng phí cả 1 ngày dài để tìm hiểu vấn đề mà có thể được xử lý vô cùng đơn giản. Vấn đề ngại hỏi này có thể đến từ nhiều lí do khác nhau, có thể do chúng ta e ngại sợ mọi người hấy chúng ta kém cỏi, hoặc chúng ta sợ mình trở thành điều gì đó phiền phức. Nhưng cái việc mà cứ nghĩ một vấn đề theo một lối mòn và không có giải pháp cho nó thì thật sự làm tốn thời gian và giảm hiệu năng công việc đi đáng kể. Vì thế, nếu vượt quá thời gian cho phép mà chưa tìm được giải pháp thì hãy mạnh dạn hỏi những người xung quanh.

3. Ngưng học hỏi

Việc bạn là một người mới bắt đầu dấn thân vào nghề hay bạn là một người đã có kinh nghiệm thì việc học hỏi hết sức quan trọng.

Công nghệ quanh ta ngày càng phát triển và thay đổi từng ngày, không một dev nào là biết hết mọi thứ. Nếu bạn không chạy theo công nghệ, không học hỏi những cái mới lạ thì bạn sẽ tụt về phía sau. Có thể bạn biết cái đó là đủ để làm được nhưng khi công nghệ mới ra có những bước tiến hơn và khi bạn không biết thì bạn sẽ chẳng thể ứng dụng được nó vào sản phẩm của mình.

4. Không chịu tổ chức chương trình gọn gàng

Đây là vấn nạ mà nhiều người mắc phải khi lập trình. Việc bạn viết những đoạn code không theo convention, tên class, tên biến đặt không mục đích rõ ràng. Rồi sau khi mở project lên để nâng cấp thêm cho chương trình vủa mình thì chắc sẽ phát điên vì nhìn chẳng đâu vào đâu, chưa kể việc fix bug sẽ lại càng vô cùng khó khăn. Do đó, chúng ta không chỉ code cho nó chạy đúng mà còn phải code một cách clean.

Đây là một ví dụ được lấy ra trong đồ án game của nhóm mình. Ở dưới là những gì bọn mình viết trong hàm main của chương trình.

int main(int argc, char* argv[]) {
	Init();
	Intro();


	while ( Menu() ) {


		ResetGame();
		auto t1 = std::chrono::system_clock::now();
		auto t2 = t1;
		while (!gameOver) {
			t2 = std::chrono::system_clock::now();
			std::chrono::duration<float> elapsedTime = t2 - t1;
			t1 = t2;
			float fElapsedTime = elapsedTime.count();
			onGameUpdate(fElapsedTime);
			ScreenBuffer::drawToConsole();
		}
		AudioPlayer::PlayEffect("Bound-Console-Game/GameData/Music/Die.wav");
		GameOver();
	}
	Depose();
	return 0;
}

Bạn có thể thấy nó rất cụ thể và không quá khó hiểu.
Mục tiêu chính của tổ chức chương trình chính là đóng gói chúng thành các nhóm trừu tượng phụ trách một nhiệm vụ cụ thể. Điều này khiến code không phụ thuộc vào nhau dẫn đến các lỗi logic. Đồng thời, một ưu điểm trong tổ chức chương trình chính là dễ đọc, hình dung và debug.

5. Không rút ra kinh nghiệm sau những thất bại :

Cuộc sống không tránh khỏi được những vấp ngã, biết đứng lên từ vấp ngã và lấy nó làm kinh nghiệm sống là một điều tuyệt vời hơn bao giờ hết. Làm gì có ai viết code mà không có bug đúng không? Nhưng nếu bạn cứ lặp đi lặp lại một sai lầm thì điều đó lại khác. Khi bạn gặp một lỗi gì đó, hãy tìm ra nguyên nhân của nó và xem liệu có giải pháp cụ thể nào có thể ngăn chặn nó không.

6. Bỏ cuộc quá sớm

Nhiều khi gặp một task mà bạn nhận ra nó rất khó, điều đó làm bạn cảm thấy mệt mỏi và chán nản khi nghĩ về nó. Chúng ta có thể bắt đầu nghĩ tới việc không làm được hoặc dùng những biện pháp giải quyết cực kì rủi ro và có lẽ sẽ gây bug nghiêm trọng về sau. Mọi bài toàn đều có lời giải. Khi bạn đang quá mặc kẹt trong cái mê cung với mớ lập luận không đi tới kết quả của mình, hãy ngưng lại, hãy cho chúng ta thời gian nghỉ ngơi một chút để có thể reset lại tất cả và biết đâu sẽ có một giải pháp ập tới. Đôi lúc thành công đã ở ngay cạnh nhưng bạn lại gục ngã quá sớm.

Tổng kết 

Mình mong rằng các bạn có thể rút ra được điều gì đó sau khi đọc bài này và nếu không may bạn là một trong những người có những thói quen trên. Sửa chữa chẳng bao giờ là muộn cả.

Cảm ơn các bạn đã đọc.