Học lập trình web thì phải bắt đầu từ đâu? Học php hay asp.net?

0
1802

Lộ trình học lập trình web cho người mới bắt đầu như thế nào?

Dạo trên các diễn đàn lập trình và các group về lập trình trên facebook, mình thấy rất nhiều bạn có những thắc mắc về chủ đề này. Có 2 câu hỏi tiêu biểu như sau:

  • Em muốn làm lập trình web thì phải bắt đầu từ đâu?
  • Nên học php hay asp.net?
  • Học web liệu có xin được việc không?
  • Các câu hỏi về xin tài liệu học lập trình web

Nếu như bạn cũng đang có các thắc mắc không biết lộ trình học lập trình web như thế nào thì bài viết này là dành cho bạn. Hãy đọc nó cẩn thận và bạn sẽ có được câu trả lời mà bạn đang mong muốn.

Lưu ý: Bài viết chỉ tập trung cho các đối tượng muốn trở thành lập trình viên web thực sự. Còn nếu bạn chỉ đơn giản muốn tạo ra một website, bạn có thể học cách sử dụng các CMS opensource như: WordPress, Joomla, Drupal,…

Cụ thể, trong bài viết này, tôi sẽ giúp các bạn làm rõ một số vấn đề như sau:

  1. Làm rõ lộ trình bạn cần phải đi?
  2. Cần phải học những gì?
  3. Phải học cái gì trước, cái gì sau?
  4. Tài liệu lấy ở đâu? học ở đâu?

Bây giờ thì hãy cùng Nguyễn Văn Hiếu Blog đi tìm câu trả lời cho từng vấn đề nhé.

Lộ trình học lập trình web

Đây là những cái bạn cần phải học và bạn cần phải học theo đúng thứ tự nhé.

  1. HTML
  2. CSS
  3. Javascript
  4. Cơ sở dữ liệu
  5. 1 ngôn ngữ back-end bất kỳ, có thể là php, java, asp.net, python, javascript(Nodejs Framework), Ruby, …
  6. Các framework và các kiến thức bổ sung có liên quan.

Bây giờ chúng ta đi vào từng mục cụ thể nhé.

HTML (Hyper Text Markup Language)

HTML là một ngôn ngữ đánh dấu siêu văn bản(dịch từ hyper text markup language). Nó khá là đơn giản và dễ học và là thành phần không thể thiếu của mọi website. HTML là cái giúp chúng ta xây dựng nên bố cục của trang web, xây các khối liên kết với nhau tạo nên bộ khung của một website. Hãy tưởng tượng HTML giúp ta dựng lên một bộ khung xương của con người hoặc là cấu trúc của một ngôi nhà.

Ví dụ: HTML giúp chúng ta tạo ra các đoạn văn, khối, tiêu đề, các thành phần html có thể lồng vào nhau.

Học lập trình web thì nên bắt đầu từ đâu

Việc học html khá đơn giản và bạn chỉ mất khoảng vài ngày là làm chủ được nó rồi.

Một số tài liệu liệu tham khảo học HTML:

  1. https://www.w3schools.com/html/
  2. https://www.codecademy.com/learn/learn-html
  3. Nếu bạn cần tài liệu tiếng việt. Hãy tìm trên google với từ khóa: “học html”

CSS (Cascading style sheets)

Đơn giản mà nói, CSS là cái ở bên ngoài giúp làm đẹp cho khung xương html của bạn. Nếu bạn chỉ sử dụng mỗi CSS thì bạn chẳng tạo ra được cái gì hết. CSS luôn phải đi kèm với HTML. Nếu bạn vẫn đang tưởng tượng HTML là khung của một ngôi nhà thì CSS sẽ là các bước tường, sơn giúp ngôi nhà của bạn đẹp hơn. CSS làm cho trang web của bạn trông đẹp và chuyên nghiệp hơn, css cũng cho phép thay đổi bố cục của 1 website.

Một số ví dụ đơn giản: CSS giúp điều chỉnh kích thước chữ, màu nền, vị trí của các khối, …

Học lập trình web thì nên bắt đầu từ đâu

Tài liệu học CSS các bạn có thể tham khảo tại đây:

  1. https://www.w3schools.com/css/
  2. https://www.codecademy.com/learn/learn-css
  3. Nếu bạn cần tài liệu tiếng việt. Hãy tìm trên google với từ khóa: “học css”

Lưu ý: CSS luôn phải có HTML, trong quá trình học CSS bạn cũng sẽ học được nhiều kiến thức về HTML đó.

Kết hợp của HTML và CSS
Kết hợp của HTML và CSS

Javascript

Không giống như HTML và CSS, Javascript là một ngôn ngữ lập trình. Và nó hiện là ngôn ngữ lập trình duy nhất có thể chạy trên trình duyệt web. Do đó, nó đang là 1 ngôn ngữ lập trình phổ biến hàng đầu hiện nay. Javascript có thể làm rất nhiều điều thậm chí cả back-end, rất nhiều framework sử dụng javascript. Tuy nhiên, ở đây chúng ta chỉ bàn về khía cạnh lập trình web nhé.

Javascript(hoặc JQuery – một thư viện xây dựng bằng javascript) có thể giúp website bạn trở nên hoàn thiện. Với javascript, bạn có thể thêm các hiệu ứng như di chuyển đối tượng, đổi màu text, hiển thị popup, …; chuyển động như slideshow, hiệu ứng cuộn trang,…; hay tạo nên các thay đổi dựa trên hành động(click button, nhập liệu, …) kiểm tra input hợp lệ hay không; hay gửi dữ liệu, load dữ liệu không cần load lại trang với Ajax.

HTML và CSS không phải là các ngôn ngữ lập trình, chúng chỉ là các cấu trúc dựa trên các ngôn ngữ đánh dấu, sẽ không có sự tương quan giữa javascript với html, css. Nói cách khác, javascript là một ngôn ngữ lập trình và cách dùng sẽ khác với html, css. Bạn sẽ cần học cách kết hợp và sử dụng javascript cho website của bạn.

Hãy nghĩ Javascript sẽ giúp cho ngôi nhà của bạn có đèn, quạt điện,.. Đây là các chức năng cụ thể của một ngôi nhà chứ không chỉ đơn giản là trang trí như CSS nữa, tất nhiên javascript vẫn sẽ làm website của bạn trở nên đẹp hơn.
Học lập trình web thì nên bắt đầu từ đâu

Tài liệu học lập trình Javascript:

  1. https://www.w3schools.com/jS/default.asp
  2. https://developer.mozilla.org/vi/docs/Learn/JavaScript
  3. https://www.codecademy.com/learn/introduction-to-javascript

Một sự lựa chọn hoàn hảo để học kết hợp cả HTML, CSS và JS qua dự án thực tế thì bạn nên tham khảo khóa học online này.

Hầu hết các website đều cung cấp tài liệu học từ HTML -> CSS, Bootstrap -> Javascript, JQuery. Bạn có thể chọn 1 website và học theo website đó cả 1 lộ trình. Nhưng vẫn cần biết tham khảo nhiều nguồn tài liệu khác nhau sẽ giúp bạn có cái nhìn tổng quan về vấn đề.

Tôi khuyến khích các bạn học với tài liệu Tiếng Anh. Nếu Tiếng Anh của bạn kém, bạn càng nên đọc vì phần kiến thức này cực kỳ đơn giản và dễ hiểu sẽ giúp bạn dễ học hơn.

Tới đây thì bạn đã có thể tạo ra các landing page, các website tĩnh: nếu thay đổi nội dung bạn sẽ cần sửa code. Các website này thường là các web giới thiệu công ty, sản phẩm, web cá nhân, …

Học cơ sở dữ liệu

Cơ sở dữ liệu (viết tắt CSDL; tiếng Anh là database) là một tập hợp thông tin có cấu trúc. [1] Tuy nhiên, thuật ngữ này thường dùng trong công nghệ thông tin và nó thường được hiểu rõ hơn dưới dạng một tập hợp liên kết các dữ liệu, thường đủ lớn để lưu trên một thiết bị lưu trữ như đĩa hay băng. Dữ liệu này được duy trì dưới dạng một tập hợp các tập tin trong hệ điều hành hay được lưu trữ trong các hệ quản trị cơ sở dữ liệu.

Hiểu đơn giản nhất thì đây sẽ là nơi lưu trữ mọi thông tin, tài nguyên của website. Và để website giao tiếp được với CSDL, chúng ta cần một ngôn ngữ lập trình phía back-end.

Hiện nay có 2 loại hệ quản trị cơ sở dữ liệu: sử dụng T-SQL và NoSQL. Tôi sẽ chỉ trình bày về T-SQL(MSSQL, MySQL,…)

Nếu bạn là người mới, hãy bắt đầu với việc học các hệ quản trị cơ sở dữ liệu T-SQL: MSSQL, MySQL. Điểm chung của chúng là cùng sử dụng cấu trúc transation SQL(T-SQL) sử dụng các query để thao tác với cơ sở dữ liệu.

Tất nhiên, sau này tùy theo công việc mà bạn sẽ sử dụng loại cơ sở dữ liệu nào. Tuy nhiên, nếu đã biết 1 loại thì học loại mới tương tự rất là nhanh.

Lựa chọn 1 ngôn ngữ Back-end để học

Ngôn ngữ phía back-end sẽ giúp website của bạn có thể truy cập, đọc và ghi dữ liệu thông qua cơ sở dữ liệu. Điều này luôn cần thiết cho hầu hết mọi website và bạn cần nó nếu theo nghiệp lập trình web.

Bây giờ nên học ngôn ngữ nào đây? Ở trên tôi đã kể ra một loạt, nào là php, java, asp.net, ruby, python,… Câu trả lời là bạn có thể học bất kỳ trong số chúng. Tại sao ư?

  • Học 1 ngôn ngữ lập trình mà làm khó bạn thì bạn không làm lập trình viên được đâu. Bạn chắc chắn sẽ cần biết sử dụng nhiều hơn 1 ngôn ngữ trong số trên, chỉ là bạn tập trung làm việc ở ngôn ngữ nào mà thôi.
  • Các công việc ở các ngôn ngữ này hiện nay đều đang rất cạnh tranh cả về số lượng và mức lương. Bạn có thể lên các trang tuyển dụng: itviec, topdev, vietnamworks,… để xem các job được đăng, thông tin job và yêu cầu của nhà tuyển dụng với các lập trình viên.
  • Mức lương của bạn phụ thuộc lớn vào trình độ của bạn chứ không phải là ngôn ngữ bạn dùng đâu. Trình độ của bạn cũng có thể thể hiện qua thời gian để bạn có thể sử dụng 1 ngôn ngữ mới đấy ^^.
  • Mỗi ngôn ngữ sẽ có những ưu điểm nhược điểm riêng. Do vậy mà sẽ có công ty dùng ngôn ngữ này, có công ty dùng ngôn ngữ kia. Bạn không cần lo khó tìm việc.
  • Nếu bạn vẫn không biết học ngôn ngữ nào trước tiên, hãy chọn bừa 1 ngôn ngữ để bắt đầu. Bạn có thể tham khảo các ngôn ngữ lập trình phổ biến tại đây.

Để tìm kiếm tài liệu cho ngôn ngữ bạn sẽ học, hãy thử tìm kiếm với các từ khóa(tôi giả sử bạn học php nhé): php tutorial, learn php, php course.

Học cách sử dụng Framework

Hiện nay, hầu hết mọi ngôn ngữ lập trình Back-end đều có các framework giúp cho bạn tạo ra các website nhanh nhất có thể. Việc có thể nắm bắt và làm chủ các framework này sẽ giúp ích bạn rất nhiều trong quá trình làm việc và phỏng vấn. Tuy nhiên, mỗi ngôn ngữ back-end lại có những framework riêng biệt. Ở đây, tôi xin kể ra các framework phổ biến ở mỗi ngôn ngữ để các bạn tham khảo.

  • PHP: Laravel, Symfony, Phalcon, FuelPHP, Zend, PHPixie, CakePHP, Yii, …
  • ASP.NET: Vốn dĩ nền tảng .NET đã là 1 framework rồi ạ. Gần đây, MS mới công bố thêm .NET Core nữa cho phép chạy đa nền tảng rồi.
  • Java: Spring, Struts, Hiberate, JSF, Vaadin,…
  • Python: Django, Pyramid, TurboGears, Web2py, Flask,…
  • Ruby: Ruby on rails, Sinatra, Padrino,…

Nếu bạn muốn tìm khóa học online PHP sử dụng Laravel để có thể đi làm tại các công ty lớn luôn thì khóa học Laravel của giảng viên tại FPT Aptech là dành cho bạn.

Cách tốt nhất để biết mình cần học gì là xem thông tin job description, job requirements trên các trang tuyển dụng.

Đọc yêu cầu của nhà tuyển dụng
Đọc yêu cầu của nhà tuyển dụng

Bằng cách xem yêu cầu của nhà tuyển dụng, bạn sẽ biết bạn đang thiếu gì? Cần bổ sung gì để có thể tự tin nộp hồ sơ đi xin việc.

Hi vọng bài viết hữu ích với bạn và đã giúp cho bạn tìm được lộ trình học lập trình web bài bản nhất. Chúc các bạn học tập tốt!

avatar
  Subscribe  
Notify of