Frontend Developer là gì? Backend Developer là gì?

Frontend Developer và Backend Developer nhìn chung đề là những lập trình viên và có nhiệm vụ lập trình ra những website, tuy nhiên xét về mặt nhiệm vụ thì hai đối tượng này được chia ra làm hai nhiệm vụ khác nhau. Nếu dịch theo tiếng Anh thì backend có nghĩa là phía đằng sau, nằm ở phía sau còn frontend thì nằm ở phía trước, đương nhiên những gì ở đằng sau thì ta sẽ không thấy mà chỉ thấy ở đằng trước mà thôi =))

Ok bây giờ mình sẽ bắt đầu giải thích hai đối tượng này nhé.

# Frontend Developer là gì?

Một website chúng ta sẽ chia làm hai phần, phần thứ nhất là phần giao diện hiển thị bên ngoài cho người dùng sử dụng và phần thứ hai là phần quản trị admin, trong hai phần này thì backend developer sẽ có nhiệm vụ chính là xây dựng trang admin và frontend developer sẽ có nhiệm vụ xây dựng phần website bên ngoài.

Tuy nhiên không hẳn là vậy, mình sẽ phân tích chút xíu về các ngôn ngữ lập trình website nhé. Để xây dựng thành một website thì chúng ta phải sử dụng hai nhóm ngôn ngữ, nhóm thứ nhất là ngôn ngữ phía server và nhóm thứ hai là ngôn ngữ phía client. Ngôn ngữ phía server có thể sử dụng PHP, ASP hoặc JSP và ngôn ngữ phía client như HTML, CSS, Javascript, và một frontend developer sẽ nắm vững các ngôn ngữ phía client đó. 

Vậy nhiệm vụ của Frontend Developer là dựa vào file giao diện để cắt thành các file HTML với bổ cục màu sắc phải giống như file PSD. Đây là công đoạn tạo thành một website tĩnh.

Sau đây là một số đặc điểm của frontend developer.

  • Phải sử dụng thành thạo HTML, HTMl5, CSS, CSS3, Javascript
  • Có thể sẽ phải học thêm các framework JS, CSS thiên về frontend Bootstrap 3, AngularJS, ...
  • Phải có kinh nghiệm chuyển đổi từ file PSD sang file HTML và chuẩn responsie.

# Backend Developer là gì?

Ngược lại với frontend developer, backend developer sẽ rất thành thạo ngôn ngữ server để có thể xây dựng các đoạn mã code bên trong mang tính quan trọng và bảo mật. Ví dụ như mình là một backend developer và mình sử dụng ngôn ngữ PHP để lập trình, chính vì vậy kiến thức về HTML, CSS của mình sẽ tệ hơn những bạn chuyên làm frontend.

Vậy nhiệm vụ của backend developer là dựa vào giao diện website và yêu cầu chức năng của khách hàng để lập trình thành một website động, sử dụng hệ quản trị cơ sở dữ liệu để chạy.

Sau đây là một số tính chất của backend developer.

  • Có kinh nghiệm trong việc phân tích hệ thống cơ sở dữ liệu
  • Sử dụng thành thạo ngôn ngữ lập trình web phía server như PHP hoặc ASP hoặc JSP
  • Dựa vào file HTML mà frontend đã làm để xây dụng hệ thống quản lý website.
  • Họ sẽ biết về HTML và CSS, tuy nhiên về chuyên sâu họ sẽ thua frontend developer.

# Mối liên hệ giữa Frontend và Backend

Hai đối tượng này sẽ có mối liên hệ chặt chẽ với nhau. Ví dụ khi xây dụng một website sử dụng AngularJS thì phía backend developer sẽ xây dựng những web service đáp ứng cho các request của frontend, lúc này phía frontend sẽ tiếp nhận các web service đó và lập trình thành chức năng chạy thực. Chẳng hạn như chức năng hiển thị danh sách tin tức thì phía backend sẽ viết một service trả về danh sách tin tức ở dạng JSON, còn phía frontend sẽ lấy URL của web service đó để sử dụng và lập trình hiển thị ra website.

Xét về phía cạnh người dùng thì phía Frontend sẽ quyết định đến vẻ đẹp của website bởi khách hàng sẽ nhìn giao diện của website đẹp thì họ sẽ nói đẹp, còn để xây dựng được chức năng này như thế nào thì khách hàng không biết và họ không quan tâm.

Nguồn: freetuts.net