Tìm hiểu Front End, Back End, Full Stack là gì?

Nếu các bạn mới bắt đầu tìm hiểu về công việc lập trình nói chung và lập trình thiết kế website nói riêng thì sẽ có 3 hướng đi để các bạn lựa chọn. Bạn có thể lựa chọn làm một lập trình viên FrontEnd, BackEnd hoặc là Fullstack. Để hiểu một cách cụ thể về FrontEnd, BackEnd, Fullstack là gì? sau đó hoạch định cho mình một lựa chọn trong lộ trình trở thành coder thì đừng bỏ qua bài viết này của NguyenGiaTech nhé!

FrontEnd là gì?

Để trả lời về FrontEnd, Back End, Fullstack là gì? Trước hết chúng ta đến với FrontEnd. Trong một trang web, phần FrontEnd của nó chính là nơi dùng để tương tác với người dùng. Tất cả những gì mà bạn nhìn thấy khi thực hiện các điều hướng trên Internet như: màu sắc, font chữ và cả những thanh trượt, thanh menu đổ xuống đều được tạo thành từ sự kết hợp giữa JavaScript, CSS và HTML. Tất cả chúng đều được điều khiển bởi trình duyệt máy tính của người dùng. 

Bằng việc sử dụng những công cụ này, các lập trình viên của front – end sẽ kết hợp cùng các nhà phân tích trải nghiệm, người dùng hoặc các designer để biến các wireframe các mockup thành các sản phẩm thực tế. 

Những lập trình viên front – end xuất sắc đều có thể xác định đúng các vấn đề tồn tại trong trải nghiệm của người dùng.  Từ đó đưa ra những gợi ý và giải pháp cụ thể để thiết kế đó được hoàn thiện. Quan trọng hơn hết là họ phải có khả năng hợp tác với những phòng, ban khác trong công ty để nắm được mục đích, nhu cầu cụ thể và cơ hội để theo đó mà thực hiện. Công việc này đòi hỏi người làm phải có tinh thần trách nhiệm cao. 

fontend-la-gi
Kỹ năng cần có của người làm FrontEnd

BackEnd là gì?

Các lập trình viên BackEnd sẽ sử dụng các ngôn ngữ server – side như: PHP, Python, Ruby hay Java để các bộ phận như máy chủ, cơ sở dữ liệu và ứng dụng có thể giao tiếp được với nhau. Sử dụng Net để xây dựng một ứng dụng. Ngoài ra, các lập trình viên còn sử dụng một số công cụ như: Oracle, SQL hoặc MySQL để có thể lưu trữ, tìm kiếm và thay đổi dữ liệu, đưa chúng trở lại cho người dùng ở phần front – end. 

Khi tuyển dụng các lập trình viên backend vào công ty, người ta thường yêu cầu ứng viên phải có kinh nghiệm trong việc sử dụng các phần mềm quản lý như: SVN, Git hoặc CVS, kinh nghiệm làm việc với hệ điều hành Linux để triển khai và phát triển hệ thống. Hơn thế nữa ứng viên còn phải có kinh nghiệm về framework PHP như: Symfony, Cake PHP hoặc Zend…

Các lập trình viên về Backend sẽ sử dụng những công cụ này một cách thường xuyên để tạo thành những ứng dụng web được viết tài liệu chu đáo, portable với code sạch. Trước khi bắt tay vào viết code, họ cần thảo luận và phối hợp với các bộ phận có liên quan đến nghiệp vụ của mình để nắm rõ những nhu cầu cụ thể, biến những yêu cầu đó thành kỹ thuật và sau đó đưa ra những giải pháp tối ưu vào việc kiến trúc công nghệ. 

back-end-la-gi
Kỹ năng của một Backend

Sự khác biệt giữa Back End và Front End

Mặc dù Back End và Front End hoạt động song song để cùng đảm bảo cho một trang web hay ứng dụng được hoạt động bình thường. Sự khác biệt chính giữa Back End và Front End là ở chỗ người dùng. Nếu Front End là những gì hiện hữu trước mắt người dùng thì Backend lại hỗ trợ cho Front End, nó giúp cho Front End trở nên khả thi.  

Khác biệt giữa Front End và Back End

Full Stack là gì?

Phần cuối cùng khi tìm hiểu Front End, Back End, Full Stack là gì? chính là tìm hiểu về Fullstack. Khái niệm này được mọi người biết đến rộng rãi cách đây khoảng 4 năm, nó được xuất phát từ bộ phận kỹ thuật Facebook. Một lập trình viên full stack có thể đảm đương một lúc hai công việc là front end và back end. 

Cũng giống như các lập trình viên Backend, lập trình viên Full stack cũng phải thành thạo các ngôn ngữ front – end để có thể điều khiển nội dung xuất hiện trên giao diện của trang web. Lập trình viên Full Stack được đánh giá là những người đa năng. 

Cho dù có sử dụng bất cứ công cụ nào, tùy theo dự án và yêu cầu từ phía khách hàng mà người lập trình viên Full Stack cần trang bị cho mình những kiến thức ở mọi cấp độ. Đó là kiến thức về cách thức hoạt động của trang web như: viết các API server – side, cách nhảy vào phần Javascript, cài đặt cấu hình cho các máy chủ Linux và họ cũng cần có tính thẩm mỹ với CSS. 

ky-nang-full-stack
Kỹ năng của Full Stack

Khi sử dụng các công cụ này, người lập trình viên full stack phải ngay lập tức xác định được trách nhiệm của server side và client side để nắm được những ưu nhược điểm của nó rồi sau đó đưa ra những giải pháp cụ thể.

Bài liên quan