Đào tạo Tin học Trực tuyến

Để học lập trình bạn nên lựa chọn ngôn ngữ lập trình nào?


Cập nhật: 3 tháng trước
Bài viết ngẫu nhiên:

   Hướng dẫn cài đặt Wamp Server, cấu hình chạy PHP và MySql

   Màu nền và màu chữ trong Bootstrap 4 CSS Framework

   Tìm hiểu về Cơ sở dữ liệu Migrations trong Laravel

   Lấy ảnh đầu tiên trong bản tin làm ảnh đại diện với PHP

   Bài 2. Thiết kế giao diện Website bằng HTML và CSS trên Visual Studio 2015

   Quản trị Website, đăng tải bài viết lên Website như thế nào?


Thời gian qua, có rất nhiều bạn hỏi về nội dung lập trình... có lẽ lập trình là một trong những chuyên ngành được các bạn trẻ chọn để theo đuổi. Bản thân tôi từ khi bắt đầu chuyển sang học Tin học thì lập trình là một chuyên ngành tôi rất hứng thú, đơn giản là bản thân thích tạo ra những sản phẩm của Tin học... Trên cơ sở những kinh nghiệm về lập trình của mình, tôi xin chia sẻ trong bài viết này.

Để bắt đầu với lập trình, trước hết bản thân bạn cần phải thích đã, từ ý thích tạo ra các sản phẩm của Tin học sẽ giúp cho bạn có hứng thú và niềm đam mê với lập trình. Lập trình - hiểu một cách đơn giản là biến các bài toán thực tế thành ngôn ngữ máy tính, giúp máy tính hiểu và thực hiện giải quyết các vấn đề thực tế mà thôi.

Nói về ngôn ngữ lập trình thì rất nhiều ngôn ngữ, ở Việt Nam thì phổ biến nhất là C#, PHP, Java,... 

Bạn cần phải học lập trình như thế nào?

Nếu bạn là người bắt đầu với lập trình, bạn cần phải hiểu rõ về ngôn ngữ lập trình. Ngôn ngữ mà tôi nói đến ở đây là ngôn ngữ chung, bạn có thể học C, C++, Pascal, php, java,... để bắt đầu đều được vì điều quan trọng không phải bạn cố gắng có kỹ năng tốt về code, mà quan trọng là bạn cần phải hiểu được bản chất của ngôn ngữ lập trình.

Dù bạn dùng ngôn ngữ lập trình nào, thì ở đây chúng ta đều tìm thấy tiếng nói chung của tất cả các ngôn ngữ. Chẳng hạn, khi học một ngôn ngữ lập trình công việc đầu tiên là phải viết được chương trình "Hello world". Ý nghĩa của chương trình này đơn giản chỉ là để giải quyết một vấn đề duy nhất: Làm thế nào dể nó có thể chạy được trên máy tính, chỉ có vậy thôi. Tiếp đó, bạn bắt đầu đi sâu vào các khía cạnh của nó như khai báo biến thì như thế nào, lấy nó ra để sử dụng ra làm sao, rồi đến các câu lệnh điều kiện, các vòng lặp,... 

Theo quan điểm của tôi, để bắt đầu bạn cần phải thật sự thành thạo một ngôn ngữ đã, thành thạo rồi thì mọi vấn đề sẽ được giải quyết. Tất nhiên, bạn cần phải hiểu bản chất của vấn đề lập trình là gì?

Bản thân tôi xuất phát từ ngôn ngữ lập trình Pascal, vì hồi đó khi học đại học các ngôn ngữ C hay C# chưa phổ biến lắm. Tiếp đó, tôi học VB 6.0 (Visual Studio 6.0) và xây dựng xong phần mềm quản lý điểm bậc THCS hồi bấy giờ (năm 2006). Thời đó, cũng ít thông tin lắm, đặc biệt là mạng rất chậm vì sử dụng qua điện thoại bằng cách gọi 1269, Download khoảng 1MB thôi mà có thể mất hàng tiếng đồng hồ.

Qua đó, bạn có thể thấy rằng cần thành thạo ngôn ngữ lập trình là vấn đề đầu tiên. Và để thành thạo không có gì tốt hơn là bạn cần phải tạo ra một sản phẩm Tin học. Khi làm ra hoàn chỉnh một phần mềm rồi thì có thể khẳng định bạn đã nắm chắc được bản chất của vấn đề lập trình.

Vậy bạn nên chọn ngôn ngữ lập trình nào?

Nhiều bạn chưa thành thạo về lập trình cứ loay hoay trong việc tìm hướng đi cho mình khi học lập trình. Điều đó không hề sai. Tôi đã học khá nhiều ngôn ngữ lập trình, từ Pascal đến C++ rồi C#, Ja va và bây giờ là PHP, mỗi ngôn ngữ đều có những có cái hay của nó và cũng không ít cái dở. Đơn giản là vì chả có cái gì là hoàn hảo cả.

Nếu bạn muốn theo chuyên ngành lập trình web thì bạn nên học C#, PHP hay Java đều được. Vì 3 ngôn ngữ này đều có thể phát triển được website. Nhưng phổ biến nhất là PHP, dù ngôn ngữ này có thể nói là rất "rối rắm" nhưng trên 80% các website trên thế giới sử dụng ngôn ngữ này. Đơn giản là vì PHP hoàn toàn miễn phí và có cả một cộng đồng tham gia nên bạn có thể học ngôn ngữ này là hay nhất nếu lựa chọn chuyên ngành lập trình web.

Nói đến lập trình web, người ta lại chia ra thành 2 lĩnh vực: front end và back end. Front End là chuyên ngành về thiết kế web, để theo học bạn phải có óc sáng tạo trong thiết kế, thành thạo các phần mềm photoshop, Illustrator,.. sử dụng tốt các ngôn ngữ Javascript, HTML, CSS, jquery,... khá phức tạp. Còn Back End là chuyên ngành lập trình cơ sở dữ liệu, bạn cần phải thành thạo PHP, C# hay Java (do bạn lựa chọn). Nhưng dù bạn chọn Front End hay Back End thì trước khi chuyên sâu về một trong hai lĩnh vực này bạn phải thành thạo cả hai. Nó giống như ngành y tế, trước khi trở thành bác sĩ chuyên khoa bạn phải học để trở thành bác sĩ đa khoa cái đã smiley

Nếu bạn yêu thích xây dựng phần mềm bạn có thể chọn C# hoặc Java. Mỗi ngôn ngữ đều có những ưu điểm và nhược điểm riêng của nó, học C# là dễ nhất vì nó được Microsoft hỗ trợ từ A-Z, nhưng tệ hại là các phần mềm chỉ chạy được trên hệ điều hành windows, tất nhiên cũng sẽ có cách để bạn có thể phát triển trên các hệ điều hành khác, nhưng nó khá phức tạp. Còn Java thì có nhược điểm là không được hỗ trợ nhiều, nhưng Java lại có lợi thế hơn C# ở chỗ là phần mềm của bạn phát triển có thể chạy được trên tất cả các hệ điều hành một cách dễ dàng.

Nếu bạn muốn lập trình để xây dựng các phần mềm hay Game chạy trên nền tảng di động - đây là một lĩnh vực đang rất hot. Bạn có thể lựa chọn một số ngôn ngữ như Objective-C hoặc Java (cho Android). HTML/CSS cho các website mobile. Có thể cần thêm một số kiến thức về Server-side. Hoặc lập trình Game thì là C/C++, OpenGL, Animation. Thật ra bản thân tôi cũng chưa nghiên cứu về lĩnh vực này nên cũng không dám đưa ra nhận định nào ở đây nhé.

Trên cơ sở bài viết này, chúng tôi hi vọng bạn có thể lựa chọn cho mình một con đường đi đúng hướng với lý tưởng của mình.

Chúc các bạn sẽ thành công trên con đường mà mình đã lựa chọn.

Trân trọng.

Xem thêm

   GIS là gì? Thành phần, chức năng, nhiệm vụ và ứng dụng của công nghệ GIS

   Bạn sẽ chọn ngành nào phù hợp với lĩnh vực Công nghệ Thông tin?

   Bạn hiểu thế nào là nghề lập trình? để bước vào nghề lập trình thì phải học những gì?

   Lập trình máy tính là gì? Các ngôn ngữ lập trình, phát triển phần mềm

   Tại sao bạn phải hiểu và có kỹ năng về lập trình hướng đối tượng?

   Xử lý hình ảnh (images) với Bootstrap CSS FrameWork phiên bản 4.x

   Top 25 bài giảng có số lượt xem cao nhất thời điểm hiện tại

   Có gì khác biệt giữa HTML và HTML5?

   5 yếu tố quan trọng của định hướng thị giác trong thiết kế web

   Một số thẻ và Type quan trọng với HTML5 cần chú ý trong quá trình thiết kế website

   Xử lý text với Typography trong Bootstrap 4 CSS FrameWork

   Bootstrap 4.0: Bài 2. Thiết lập hệ thống lưới Grid System

   Bootstrap 4.0: Bài 1. Giới thiệu và các thiết lập cơ bản về công cụ, css, javascript

Xem nhiều nhất

   Giáo trình hướng dẫn Microsoft PowerPoint 2016 từ cơ bản đến nâng cao

   Hệ thống bài giảng e-Learning lớp Ứng dụng CNTT và các phần mềm vào đổi mới phương pháp dạy và học

   Thực hành biên tập, thiết kế, chỉnh sửa Videos bằng Adobe Premiere

   Thiết kế trò chơi ô chữ trong powerpoint (download miễn phí)

   Thiết lập hiệu ứng trống đồng quay trong Microsoft PowerPoint

   Hướng dẫn sử dụng phần mềm bảng tương tác thông minh ActivInspire

   Xây dựng Website tin tức bằng PHP và MySql theo phương pháp lập trình hướng đối tượng (mysqli Object Oriented)

   Trọn bộ Giáo trình Microsoft Word 2016 từ cơ bản đến nâng cao

   Thực hành sử dụng phần mềm thiết kế đồ họa Adobe Illustrator

   Cài đặt và sử dụng tính năng mới của Office 365 trên Office 2016

   Tạo câu hỏi trắc nghiệm với siêu liên kết (hyperlink) và Trigger với PowerPoint 2016

   Hướng dẫn thu âm, chỉnh sửa âm thanh, tăng giảm tone nhạc bằng phần mềm Adobe Audition CC

   Bài giảng Microsoft PowerPoint 2013 và 2016 từ cơ bản đến nâng cao

   Dòng chữ chạy liên tục từ trái qua phải và đồng hồ đếm ngược trong PowerPoint

   Thực hành sử dụng phần mềm thiết kế đồ họa Corel Draw

   Full Download phần mềm biên soạn bài giảng e-Learning iSpring Sute phiên bản 8.1