Hmm ! Đã từng có lúc tôi nghĩ mình sẽ theo web, mặc dù nó chỉ là nghề thêm thôi ! Nhưng mà nghĩ lại thì như các thầy của tôi vẫn hay nói: " Bách Khoa thì đừng làm web !?! " Thế là cũng hiểu rồi nhỉ ?!? Dù sao thì học Bách Khoa thì cũng nên biết làm web chứ ! Sau đây là lộ trình học web theo trang nguyenvanhieu.vn, xin trích dẫn cho mọi người.

Thực ra có thể đơn giản hơn về việc làm web, như trang blog này thôi chẳng hạn, dưới đây là lộ trình cho ai muốn thực sự học từ đầu.



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,…


3 Nhận xét

  1. wow, kỳ này học nm cnpm trúng bài rồi, sắp tới giúp đỡ tôi mảng Web này được không ông?

    Trả lờiXóa
    Trả lời
    1. chà, lâu rồi không vào kiểm tra blog, thế giờ ông theo mảng gì ?

      Xóa

Đăng nhận xét

Mới hơn Cũ hơn