Lập trình viên hoàn hảo

Ngày nay, lập trình viên đã được chính thức xem là một nghề kỹ thuật cao. Những lập trình viên là những người có thể tạo ra các phần mềm giúp rút ngắn thời gian làm việc của mọi người xuống và có tính chính xác cao hơn.

Tuy nhiên, câu hỏi đặt ra là thế nào là một lập trình viên hoàn hảo?

Lập trình viên hoàn hảo là lập trình viên đạt được các yếu tố sau:

1. Chuyên về ít nhất một ngôn ngữ lập trình:

– Các ngôn ngữ lập trình hiện nay có rất nhiều, mỗi ngôn ngữ lại có những ứng dụng riêng cho từng lĩnh vực khác nhau. Tuy nhiên, chúng ta phải hiểu rằng, một ngôn ngữ cũng có thể làm được tất cả những chức năng mà ngôn ngữ khác có thể đem lại chỉ khác là khó khăn hơn hoặc chậm chạp hơn một chút mà thôi.

– Nắm vững trong tay một ngôn ngữ lập trình là bạn đã có thể làm được mọi việc.

– Ngoài ra, một ngôn ngữ sẽ có điểm giống 80 % với các ngôn ngữ lập trình khác về cấu trúc, design pattern và cách sử dụng IDE để phát triển nó. Tuy nó vẫn có một số những điểm khác nhau nhưng vẫn có thể học và sử dụng một cách nhanh chóng những ngôn ngữ khác.

2. Kỹ năng phát triển phần mềm cá nhân:

– Một phần mềm được phát triển không chỉ có phần viết code mà còn cần rất nhiều những kỹ thuật khác:

+ Kỹ năng phân tích, nhận xét vấn đề

+ Kỹ năng thiết kế phần mềm.

+ Quản lý cơ sở dữ liệu

– Những kỹ năng này khi phát triển cao nhất sẽ tạo thành những ngành khác chứ không còn là một lập trình viên nữa. Điển hình như khâu thiết kế phần mềm, khi học chuyên sâu sẽ trở thành những nhà thiết kế chứ không phải là đơn thuần là một lập trình viên.

3. Bạn cần nắm vững một mô hình phát triển phần mềm:

– Mô hình phát triển phần mềm chính là quy trình để bạn có thể phát triển và bảo trì phần mềm đó. Hiện tại có rất nhiều mô hình phát triển phần mềm, trong đó mô hình thác nước (Waterfall) đang từ từ lộ ra các nhược điểm trong khi mô hình lập trình linh hoạt lại chứng tỏ được sự hữu dụng và tiếp tục phát triển.

– Chọn lựa một mô hình phát triển phần mềm sẽ giúp cho bạn có khả năng phát triển phần mềm nhanh chóng và ít lỗi hơn nhiều. Mô hình gần đây đang được phát triển khá là tốt đó là lập trình linh hoạt (Agile Programming). Mô hình này đang được hỗ trợ bởi rất nhiều quy trình nằm trong nó đế bảo đảm rằng mô hình này hoạt động tốt, đây là những thứ mà lập trình viên cần phải nắm rõ để tuân theo quy trình.

4. Sự đam mê với lập trình:

– Cái này có thể nhiều người không xem trong nhưng sự đam mê chính là một trong những nhân tố giúp cho bạn có thể tiếp thu những kỹ thuật mới, những phương pháp mới làm cho chương trình chạy nhanh hơn nhiều chức năng hơn.

– Bạn nên nhớ rằng sau khi bạn lập trình 3-5 năm mọi thứ về lập trình bạn có thể làm được mọi thứ nếu bạn thực sự làm việc và lúc đó những thứ bạn đơn thuần chỉ lặp lại những quá trình mà bạn đã làm thành một thói quen.

– Ngoài ra, nếu không có sự đam mê với lập trình bạn sẽ rất mau nản, không có hứng thú với những công nghệ mới và không tự hoàn chỉnh chính mình. Bạn sẽ chỉ hoàn tất những công nghệ cách đây 10 năm với WinXP trong khi mọi người đang sử dụng Window 7 thế thì bạn sẽ chẳng thể viết một chương trình hữu ích thật sự cho thế giới.

– Trên các diễn đàn, có rất nhiều những lập trình viên rên rĩ về việc lập trình quá nhàm chán và không có sự đổi mới. Đó là sai lầm của những thợ lập trình. Một chương trình mà chỉ lập trình đi lập trình lại thì một lập trình viên giỏi có thể để cho code hoàn toàn xử lý việc đó. Như vậy việc bạn viết code lâu chỉ là do bạn quá lười để làm thêm những kỹ thuật giúp cho việc code nhanh mà thôi.

– Ở đây chúng ta có thể kể đến những phương pháp lập trình mới như:

+ Lập trình động (Dynamic programming)

+ Ánh xạ (Reflection)

+ Entity Framework Code First

Tagged: , , , ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: