Giới thiệu về lập trình web: Front-End và Back-End

0

Một website hoàn chỉnh cần rất nhiều yếu tố. Mình đã từng giới thiệu qua cấu trúc vận hành một website trong series bài về WordPress, trong bài mở đầu Tổng quan về website. Như đã trình bày, website là một căn nhà gồm rất nhiều thành phần. Mỗi phần đều có những cách thức và yêu cầu khác nhau, bao gồm từ vận hành máy chủ, lập trình front-end, back-end, SEO … Trong nội dung bài này, chúng ta sẽ tìm hiểu về mảng lập trình web: Front-End và Back-End.

Trong lập trình web có 3 loại lập trình web: Front-End vs Back-End vs Full Stack

Lập trình Front-End

Phần front-end của một trang web là phần tương tác với người dùng. Tất cả mọi thứ bạn nhìn thấy khi điều hướng trên Internet, từ các font chữ, màu sắc cho tới các menu xổ xuống và các thanh trượt, là một sự kết hợp của HTML, CSS, và JavaScript được điều khiển bởi trình duyệt máy tính của bạn.

Các kỹ năng và công cụ

Nhiệm vụ của Front-End là tạo ra giao diện của một trang web và kiến trúc những trải nghiệm của người dùng.

Các công cụ chính để thực hiện mục tiêu đó là

  • HTML, CSS, và ngôn ngữ lập trình JavaScript. Có thể nói đây làm bộ ba không thể tách rời ở giao diện một website.
  • Các framwork hỗ trợ như ReactJS, AngularJS, VueJS hay các thư viện Jquery, Bootstrap …
HTML, CSS, và ngôn ngữ lập trình JavaScript.
HTML, CSS, và ngôn ngữ lập trình JavaScript.

Đôi lúc biết về lập trình là chưa đủ, sức sáng tạo và khiếu thẩm mỹ của một designer cũng rất quan trọng. Khi mọi tính năng không chỉ đủ mà phải đẹp và thuận tiện cho người dùng.

Lập trình Back-End

Phần back end của một trang web bao gồm một máy chủ, một ứng dụng, và một cơ sở dữ liệu. Một lập trình viên back-end xây dựng và duy trì công nghệ mà sức mạnh của những thành phần đó, cho phép phần giao diện người dùng của trang web có thể tồn tại được.

 lập trình web: Front-End và Back-End
Lập trình web: Front-End và Back-End

Nhiệm vụ chính của Back-end là kết nối người dùng với máy chủ, kết nối giao diện website với cơ sở dữ liệu, xử lý thông tin.

Các công cụ lập trình back-end:

  • Ngôn ngữ lập trình bakc-end: PHP, JAVA, C#, Ruby …
  • Hệ quản trị cô sở dữ liệu: MySQL, SQL server, Oracle …

Lập trình viên Full Stack

Thường thì không có một sự phân biệt rõ ràng trắng đen giữa phát triển front-end và back-end. “Các lập trình viên front-end thường cần phải tìm hiểu thêm những kỹ năng back-end, và ngược lại, đặc biệt là trong giai đoạn kinh tế hiện nay,” Matranga nói. “Các lập trình viên cần phải có nhiều kỹ năng khác nhau và có kiến thức tổng hợp.”

Lập trình viên full stack là những người đa năng.

Khái niệm lập trình viên full stack là vai trò đã được phổ biến cách đây 4 năm bởi bộ phận kỹ thuật của Facebook. Ý tưởng là một lập trình viên full stack có thể làm việc liên chức năng trên “stack” công nghệ, tức là cả front end lẫn back end.

“Làm việc chuyên nghiệp trên cả server side và client side mở ra nhiều cơ hội,” Federico Ulfo, một lập trình viên full stack tại công ty Grovo nói. Nhưng, dĩ nhiên, phát triển full stack không phải là không có những thách thức của nó. “Để làm ra một món ăn ngon, bạn có thể giỏi nấu hoặc giỏi nướng, nhưng để làm chủ cả hai kỹ năng này thì cần có thời gian và kinh nghiệm. Và tôi không nói về việc cứ làm theo một công thức nào đó, vì bất kỳ ai cũng có thể làm như vậy. Tôi đang nói về việc có các thành phần nguyên liệu để chuẩn bị cho một cái gì đó thực sự tốt.”

Các kỹ năng và công cụ

Các lập trình viên full stack làm việc giống như các lập trình viên back-end ở phía máy chủ của lập trình web, nhưng họ có thể cũng thành thạo các ngôn ngữ front-end để điều khiển nội dung trông như thế nào ở phía giao diện của trang web. Họ là những người đa năng.

Để minh họa sự phức tạp ngày càng tăng của phát triển full stack, sau đây là một ví dụ về những yêu cầu mà một full stack phải có trong vài năm về trước, và so sánh với yêu cầu hiện nay:

lập trình web: Front-End và Back-End Full stack
Yêu cầu của lập trình viên full stack là am hiểu tất cả

Bất kể là sử dụng công cụ xác định nào, tùy thuộc vào dự án và khách hàng, các lập trình viên full stack nên có kiến thức ở mọi cấp độ về cách web hoạt động: cài đặt và cấu hình các máy chủ Linux, viết các API server-side, nhảy vào phần JavaScript client-side của một ứng dụng, và cũng cần có “con mắt thẩm mỹ” với CSS.

Sử dụng những công cụ này, các lập trình viên full stack cần có khả năng ngay lập tức xác định trách nhiệm của client-side hay server-side, và trình bày rõ ràng về mặt ưu nhược điểm của các giải pháp khác nhau.

Nếu có thắc mắc, đặt câu hỏi bằng cách comment bên dưới, qua email, hoặc nhắn tin qua Fanpage Góc làm web.

Đừng quên LikeShare nếu thấy bài viết thú vị.

Liên hệ

Để lại một trả lời

Địa chỉ email của bạn sẽ không được công bố.