Chủ Nhật , Tháng Chín 24 2017
Trang chủ / Chuyên đề lập trình / Chia sẻ kinh nghiệm học lập trình – Định hướng học lập trình

Chia sẻ kinh nghiệm học lập trình – Định hướng học lập trình

Chào các bạn,

Có rất nhiều tìm đến trang myclass.vn để nhờ tư vấn về cách học lập trình. Trong số đó cũng có rất nhiều anh chị lớn tuổi cũng muốn học lập trình. Do một số không có điều kiện để học khi còn học đại học, hoặc cũng có nhiều anh chị muốn chuyển ngành học học thêm để biết nó là gì. Qua nhiều lời đề nghị, mình có nhờ thầy Lê Quang Song, sáng lập hệ thống myclass.vn và hệ thống itclass.vn chia sẻ những kinh nghiệm của thầy cũng như các cách để học lập trình tốt. Sau đây là các chia sẻ của thầy:

” Chào các bạn,

Đây là một bài viết chia sẻ của riêng cá nhân tôi, theo kinh nghiệm của tôi, nếu các bạn có những góp ý cho bài viết, tôi cũng hoan nghênh để tôi hoàn thiện thêm bài viết của mình.

Để học được lập trình, thậm chí để thành công một lĩnh vực nào đó, cái tôi nghĩ quan trọng nhất đó chính là ĐAM MÊ”. Chính ĐAM MÊ sẽ giúp chúng ta phấn đấu, khát vọng thực hiện ước mơ của chính mình một cách cháy bỏng nhất.

Chính ĐAM MÊ mới mang lại thành công cho mỗi chúng ta. Nếu không có được điều này, chúng ta sẽ cảm thấy làm việc một cách không thoải mái, gò bó và nó sẽ trở thành lực cản lớn nhất cho chúng ta.

Cho nên điều đầu tiên, tôi nghĩ để các bạn học lập trình thành công, các bạn cần phải có ĐAM MÊ.

Một số anh chị và một số bạn cho rằng mình mất căn bản, cho mình quá già để tiếp thu thêm kiến thức hoặc học lập trình, vậy học lập trình có khó không?

Đối với tôi, không bao giờ là quá trễ, không bao giờ là quá muộn, mọi thứ chúng ta đều có thể bắt đầu lại, miễn sao chúng ta còn động lực, còn ĐAM MÊ, còn niềm tin, chúng ta hoàn toàn có thể. Một video khá hay mà tôi thường nghe đi, nghe lại nhiều lần khi tôi mất niềm tin đó là của diễn giả Dina Nyad chia sẻ trên Ted Talk ” Never, ever give up”, tôi thấy bài chia sẻ này rất hay.

Học lập trình, theo tôi không những dành riêng cho những bạn theo nghề lập trình mà tôi nghĩ nó sẽ tốt cho tất cả mọi người. Học lập trình giúp tất cả chúng ta xử lý một vấn đề rất logic, tư duy logic. Ngày nay mọi thứ đều phát triển dựa vào công nghệ, dựa vào máy tính. Nếu chúng ta nắm rõ qui tắc của nó, nắm rõ cách thức hoạt động, chúng ta sẽ vận hành hệ thống tốt hơn, chúng ta sẽ xử lý công việc tốt hơn. Học lập trình giúp chúng ta tiếp cận được nhiều công nghệ hơn, vì công nghệ luôn luôn thay đổi và thay đổi rất nhanh, học lập trình và các kỹ năng của nó giúp chúng ta bắt kịp được những thay đổi đó.

Trong những ngày đầu học lập trình, tôi may mắn được đậu vào trường đại học Khoa Học Tự Nhiên – TP. HCM. Tại đây, tôi được tiếp cận, được giảng dạy bởi những giảng viên rất trẻ, rất giỏi. Họ chia sẻ rất nhiệt tình, hướng dẫn tận tình, và cho chúng tôi tiếp cận được với nhiều thứ mới và cập nhật. Chúng tôi luôn được học tập trong tinh thần phấn khởi nhất, năng động nhất.

Chúng tôi được giao rất nhiều bài tập, nhiều đồ án. Thông thường giảng viên sẽ định hướng và chúng tôi tự mày mò, tự học hỏi lẫn nhau để giải quyết các yêu cầu. Chúng tôi tự tìm hiểu và thắc mắc thì nhờ các giảng viên giúp đỡ mình, chính vì điều đó, chúng tôi tiến bộ rất nhanh.

Qua kinh nghiệm của mình, tôi thấy những môn học sau đây giúp tôi rất nhiều thứ trong việc phát triển tư duy và lập trình tốt như:

1) Nhập môn lập trình / Lập trình C căn bản: trong môn học này, tôi nghĩ các bạn cần nắm rõ các ý nghĩa về Thuật toán, Thuật giải, cách giải quyết bài toàn, một số khái niệm về vòng lặp, xử lý biểu thức điều kiện, danh sách….Những kiến thức này được sử dụng rất nhiều và hầu như gặp phải trong mọi chương trình, mọi phần mềm hay ứng dụng nào.

2) Khoá học : Lập trình Hướng đối tượng, đây cũng là một trong những khoá học tôi rất thích và tôi nghĩ nó cũng rất quan trọng trong lập trình hiện nay. Những nội dung trong khoá học này giúp các bạn cách tổ chức chương trình, cách phân rã chương trình thành những đối tượng như bên ngoài thực tế, để các bạn có thể thiết kế các chương trình theo đúng những nghiệp vụ mà thực tế bên ngoài cần. Tôi hy vọng thời gian tới tôi sẽ có thời gian để trình bày khoá học này một cách chi tiết nhất đến với các bạn.

3) Khoá học Cấu trúc dữ liệu: Khoá học này giúp các bạn biết cách giải quyết các thuật toán như tìm kiếm, so sánh, sắp xếp. Bên cạnh đó cũng nêu rõ cách thức tổ chức các loại đối tượng nhưng mảng, danh sách…Qua đó các bạn nắm được các thuật toán cần thiết khi xử lý và những khái niệm cốt lỗi về cách tổ chức các loại đối tượng.

4) Khoá học Cơ sở dữ liệu: Khoá học này tôi nghĩ cũng quan trọng không kém, toàn bộ chương trình của chúng ta không chỉ chạy xong rồi không lưu trữ gì cả. Phần mềm hay ứng dụng, tất cả chúng ta đều muốn thao tác và sau đó sẽ lưu trữ các nội dung mà chúng ta đã thao tác. Để lưu trữ, truy vấn dữ liệu cho phần mêm và ứng dụng, chúng ta cần phải có kiến thức về dữ liệu. Khoá học này sẽ giúp ích các bạn rong việc đó.

Bên cạnh những khoá học cốt lõi này, có những khoá học liên quan đến từng ngành mà các bạn thích, chúng ta còn thêm nhiều khác học khác nữa. Tuỳ theo ngành nào chúng ta có thể chọn cho phù hợp với ngành đó, như lập trình Java để làm các ứng dụng java, lập trình Android. Học ngôn ngữ C# để làm phần mềm C#, hoặc làm lập trình web asp.net, mvc hoặc game Unity, học Trí tuệ nhân tạo để xử lý cho game,….Rất nhiều khoá học tuỳ theo từng ngành, các bạn sẽ chọn và học tương ứng. Trong các bài viết tiếp theo, tôi sẽ nêu rõ các khoá học tưng ứng với từng ngành học là gì.

Trong lúc tôi học, chúng tôi thường có những đồ án, các đồ án cũng mang tính thực tế rất nhiều. Mỗi đồ án chúng tôi được mô tả rất kỹ lưỡng các yêu cầu. Đặc biệt, trong các đồ án, chúng tôi thường có những điểm cộng cho các tính năng nâng cao. Tôi rất thích các tính năng này, và thường chúng tôi tìm hiểu những tính năng này nhé. Thời tôi, trang codeproject.com rất mạnh. Tôi thường search và tham khảo rất nhiều mã nguồn tương tự với cái tôi cần, sau đó tôi tìm hiểu nó, sau đó phát triển nó lớn hơn và áp dụng và đồ án của tôi. Chính vì vậy, tôi thường được điểm rất cao từ các tính năng này trong các bài thực hành. Và qua đó tôi học được rất nhiều.

Ngoài việc học ở trường, vào kì hè, tôi thường nghĩ ra cho mình một ứng dụng và từ đó tôi tìm hiểu bằng mọi cách để xây dựng được ứng dụng đó. Hè năm 1 đại học, tôi tự mày mò và làm được một phần mềm nghe nhạc giống hệt Winamp thời đó. Lúc đó tôi chỉ mới học một số môn căn bản thôi và tôi tự mày mò, tìm hiểu và cuối cùng cũng viết được một ứng dụng nghe nhạc ưng ý. Tôi chia sẻ với cậu tôi và một số bạn bè tôi, họ thích và cũng xài thử của tôi. Điều đó làm tôi vui và tôi muốn làm thêm những cái khác nữa.

Tôi nghĩ tự làm, tự mày mò, theo định hướng để làm ra các phần mềm, các sản phẩm cho riêng mình và có thê chia sẻ cho người khác để nhờ góp ý hoặc xài thử sẽ là một động lực rất lớn cho bạn để bạn có thêm nhiều đam mê cho mình.

Cũng như vậy, vào thời gian tôi mới học C# và học qua Cơ sở dữ liệu, tôi có làm một đồ án giống hệt một từ điển của Lạc Việt vào thời đó. Tôi tự nghiên cứu cách đọc, cách phát âm cho từ điển…Qua những gì tôi bỏ công ra, tôi đạt 13/10 điểm của môn học đó. Vui lắm các bạn à !

Chính những niềm vui này nó giúp tôi càng thích thú hơn, sáng tạo hơn và mong muốn làm được nhiều thứ hơn nữa.

Trong cuộc sống, cái gì mang lại cho bạn niềm vui, bạn có đam mê, bạn sẽ ngày càng được kích thích bởi nó nhiều hơn, bạn sẽ cố gắng và nổ lực nhiều hơn. Học lập trình cũng vậy, bạn cố gắng tạo ra cho mình nhiều đam mê, nhiều kích thích, bạn sẽ cảm thấy rất phấn chấn và có khát khao để mong đến ngày thành công.

Qua đây, tôi muốn nhấn mạng rằng, học lập trình các bạn cần luyện tập thật nhiều, bên cạnh những kiến thức từ các khóa học, từ các giảng viên cung cấp, như là định hướng, các bạn cần phải cần cù, phải viết code thật nhiều và đừng bao giờ bỏ code cho dù chức danh (PM, Team Leader…) bạn là gì đi nữa!

Hãy nghĩ ra thật nhiều phần mềm, hãy xem các phần mềm khác có bất tiện hay rắc rối không, các bạn viết lại nhưng đơn giản hơn, dễ xài hơn, các bạn có thể chia sẻ miễn phí để nhân góp ý, để mời bạn bè hay người thân mình xài. Chính những lời góp ý đó sẽ giúp bạn ngày càng hoàn thiện hơn và sẽ biết được đâu là những tính năng cần thiết và khi xây dựng phần mềm hay ứng dụng thì những gì là quyết định sự thành công.

Cuối cùng tôi vấn nhấn mạnh rằng, để đạt được thành công trong tất cả lĩnh vực cuộc sống nói chung và học lập trình nói riêng, tôi nghĩ điều quan trọng là các bạn cần có ĐAM MÊ, có KHÁT VỌNG và sự CẦN CÙ. Chính những điều đó sẽ mang lại thành công cho bạn, sẽ giúp bạn làm việc không mệt mỏi và luôn phát đấu cho ước mơ của mình.

Chúc các bạn thành công trong việc học lập trình và đạt được ước mơ của mình.

THEO ĐUỔI ĐAM MÊ

THÀNH CÔNG SẼ THEO ĐUỔI BẠN!

Nếu có thời gian, tôi sẽ viết tặng các bài viết khác về cách thức tạo ra phần mềm, cách thức tạo ra game để mang lại lợi nhuận cho mình từ những phần mềm hay game có sẵn! “

Thạc sỹ Lê Quang Song

 

Nhận xét của bạn

nhận xét

Tác giả songle

songle

Xem thêm

Những kinh nghiệm “vượt rào” khi học lập trình

Khi bạn đang đọc những dòng này, đồng nghĩa với bạn đã, đang hoặc sẽ …