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

Hiện nay, ứng dụng Web chiếm trên 50% khối lượng ứng dụng trên thế giới. Ngoài các ứng dụng Web thông thường thì ứng dụng di động cũng tương tác với ứng dụng Web, ứng dụng Desktop cũng tương tác với ứng dụng Web. Có thể nói ứng dụng Web có mặt ở khắp nơi và ngày càng phát triển. Hầu hết các ngôn ngữ lập trình phổ biến đều hỗ trợ ứng dụng Web như Java, C#, PHP, Python, Ruby …

Có nhiều cách để bắt đầu học lập trình, ví dụ như ở các trường thường dạy Pascal hoặc C trước, có nơi dạy Python trước v.v.. Tất nhiên, với cách nào mà bạn nỗ lực và theo đuổi đến cùng thì đều đi đến thành công. Trong bài viết này, chúng tôi trình bày một cách tiếp cận sát với thực tế hơn nhằm giúp các bạn sinh viên CNTT hay các bạn mới bắt đầu học lập trình yêu thích lập trình Web có thể dễ dàng nắm bắt và cách học vừa học vừa hành cũng thú vị hơn.

Quan sát kiến trúc ứng dụng để đề ra nội dung cần học

Trước tiên, chúng ta nhìn cái đích mà chúng ta muốn nhắm tới để từ đó hình dung ra cách học. Chúng ta quan sát kiến trúc ứng dụng Web động phổ biến hiện nay như sau:

Kien truc ung dung Web

 

Hình 1. Kiến trúc ứng dụng Web

Theo kiến trúc này và theo góc nhìn của người lập trình thì kiến trúc ứng dụng trên sẽ chia làm 3 phần Front End, Back End – App và Back End – Database.

1. Front End

Front End(Mặt trước) là phần giao diện giao tiếp với người sử dụng, nó sẽ hiển thị lên trình duyệt của người dùng. Để xây dựng tốt phần này bạn phải nắm vững các kiến thức kỹ năng xây dựng liên quan đến giao diện. Cụ thể ở đây bạn cần nắm:

  • HTML(Hyper Text Markup Language): Ngôn ngữ đánh dấu siêu văn bản để tạo ra trang Web.
  • CSS (Cascading Style Sheets): là ngôn ngữ dùng để định dạng các thành phần của trang Web.
  • JavaScript: Ngôn ngữ lập trình xử lý trên giao diện nhằm tạo ra sự tương tác tốt hơn trên giao diện Web.

2. Back End – App

Back End (mặt sau) là phần xử lý nghiệp vụ (Business Logic), nó thường được đảm nhận bởi các ngôn ngữ lập trình như Java, C#, PHP, Python, Ruby…. Việc chọn sử dụng ngôn ngữ nào phụ thuộc vào sở thích và đặc thù của ứng dụng mà bạn sẽ xây dựng.

PHP, Python, Ruby: có đặc thù gọn nhẹ, dễ học, dễ sử dụng, chạy nhanh hơn. Nhưng không phù hợp với các ứng dụng có qui mô lớn, mức độ bảo mật phức tạp.

Java, C#: Nặng hơn, phù hợp với các ứng dụng lớn, có độ phức tạp cao.

3. Back End – Database

Database có thể được xem là phần Back End nhưng ở đây chúng tôi phân ra để dễ phân biệt. Database chịu trách nhiệm lưu trữ và truy xuất dữ liệu phát sinh từ ứng dụng. Để học về Database (chỉ xét CSDL quan hệ) bạn có thể chia làm 2 phần:

  • Ngôn ngữ truy vấn dữ liệu: SQL (Structured Query Language)
  • Hệ quản trị CSDL: MySQL, SQL Server, DB2, Oracle …

 

Kết luận

Tóm lại, để trở thành một lập trình viên trên các ứng dụng Web bạn cần có kỹ năng ở 3 phần Front End, Back End, Database. Cụ thể khuyến cáo thứ tự nghiên cứu như sau:

  • – HTML, CSS
  • – JavaScript
  • – Database: MySQL, SQL Server, DB2, Oracle (nếu mới bắt đầu bạn nên chọn MySQL hoặc SQL Server để dễ tiếp cận hơn)
  • – Back End: Bạn nên chọn một trong các ngôn ngữ Java, C#, PHP, Python, Ruby để trang bị kỹ năng này.

Trước tiên bạn cần nắm được các kiến thức và kỹ năng của các phần trên và kết hợp chúng để xây dựng ứng dụng và từ đó dần dần chuyên sâu chúng để trở thành một lập trình viên chuyên nghiệp.

Ngoài ra, những kiến thức chuyên sâu như thiết kế phần mềm, Application Framework.. cũng rất cần thiết cho các lập trình viên chuyên nghiệp.

Trong các bài tiếp theo chúng tôi sẽ tiếp tục đề cập cách tiếp cận các thành phần ở trên với hy vọng giúp các bạn có cái nhìn rõ hơn về lập trình ứng dụng Web.

Các bài liên quan:

 Làm quen với HTML

Làm quen với CSS