Front-end & Back-end và Full-stack

Làm thế nào để phân biệt giữa Front-End, Back-End và Full Stack?

Front end developer sử dụng HTML, CSS và JavaScript để code cho web, còn những thiết kế ứng dụng web là do người thiết kế web làm. Các code mà front-end developer viết chạy bên trong trình duyệt của người dùng (trái ngược với back-end developer mà các mã chạy trên backend servers).

Hay nói một cách khác, Front-end chính là người quyết định CÁI NHÌN ĐẦU TIÊN của người dùng về trang web. Web đẹp hay xấu, tinh tế hay thô lỗ là do bạn. Vì thế bạn cần có khả năng look & feel và trình thiết kế tuyệt đỉnh.

vậy kỹ năng của một Front-end cần gì??? bạn có bao giờ suy nghĩ về cái này. mà thường thì kỹ năng Front End cần có là :

Các ngôn ngữ để phát triển Front End bao gồm 3 ngôn ngữ chủ đạo đó là: HTML, CSS và Javascript. Tuy nhiên, để code nhanh gọn lẹ thì ta có thể sử dụng thêm các framework hay thư viện khác như:

  • Một số thư viện/framework nổi tiếng: Bootstrap, jQuery, AngularJS, React JS, Vue JS, EmberJS…
  • Kĩ năng thiết kế, sử dụngPhotoshop. Kiến thức và kinh nghiệm về UI/UX.
  • LESS, SASS (stylesheet language).
  • Sử dụng npm, grunt, … để optimize, minimize HTML/CSS/JS.
  • Kiến thức về Ajax, cách thiết kế giao diện responsive …..

Nhưng đó là lý thuyết, chứ một Dev Front kiếm ra tiền (bản thân Dev Front-end là nghề lụm tiền, quan trọng khả năng bạn tới đâu) cũng cày cuốc dữ dội lắm.

Bây giờ Dev-Front cần tới kinh nghiệm với RESTful Services và APIs nữa, cái đó giờ cũng quan trọng. anh em tìm hiểu sẽ tốt cho dev-front

Back-end thì lại khác, Dev-back cần biết ngôn ngữ phía Server cũng như biết thao tác với cơ sở dữ liệu:

  • Ngôn ngữ server-side để viết back-end: C#, Java, Python, Ruby, …. Dĩ nhiên là phải bao gồm kiến thức về những web framework đi kèm các ngôn ngữ này: ASP.NET MVC, Spring, Django, Rails …
  • Kiến thức về database SQL: MS SQL Server, MySQL, … Gần đây một số database NoSQL đang khá thịnh hành: Neo4j, MongoDB, …
  • Kiến thức về web nói chung, cách viết Web Service, cách đăng nhập và phân quyền.
  • Kiến thức về 1 số CMS: WordPress, Joomla, Umbraco, ….

Hơi rắc rối với Dev-back, nhưng một anh chàng Dev mà mình biết, anh ta là một pro C++, bạn biết vì sao không, C mà sau này là C++ là cái ngôn ngữ mà hiện tại bây giờ được gọi là nhập môn lập trình. anh chàng đó phải nói là một Pro C++. nên các phần của Dev-end sau này, anh ta không ngán, nền nhà chắc thì cái nhà vững, cái nhà vững thì bạn trang trì gì cũng ok hết.

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”. bạn biết vì sao không?? lý do chính là kinh tế.

Những kỹ năng/kiến thức gì mà bạn cần biết để trở thành một back-end web developer?

Những hiểu biết và kỹ năng mình chia sẻ sau đây dựa trên những kinh nghiệm của bản thân trong quá trình học tập, tìm hiểu, và làm việc tại BSS. Tuy vậy, mình nghĩ những kỹ năng và kiến thức này đều là những hành trang mà một back-end web developer cần và nên biết:

Kỹ năng đọc, hiểu: Rõ ràng, không ai muốn đi ra ngoài đường mà không biết mình phải đi đâu cả. Hãy luôn tìm hiểu kỹ trước khi bắt tay vào lập trình, viết code.
Bạn cần phải biết bạn làm việc với những thứ gì, và sau đó dành thời gian tìm hiểu kỹ hơn về những việc bạn sẽ phải làm. Ví dụ như ngôn ngữ lập trình (PHP, Ruby …), framework, nền tảng mà bạn sẽ làm việc (Laravel, Magento, Ruby on Rails …). Việc này không chỉ cho bạn có một cái nhìn cụ thể về việc bạn sẽ phải làm, mà còn giúp bạn có một sơ đồ khái quát rằng bạn sẽ phải làm gì và đích đến của bạn là ở đâu, từ đó tiết kiệm thời gian khi làm việc.

Hiểu biết cả front-end: Xin nhớ rằng back-end web developer sẽ làm việc với tất cả mọi người để cùng làm ra một sản phẩm hoàn chỉnh.

Bởi thế, bạn cũng cần phải biết front-end làm được những gì. Hãy giao tiếp và tìm hiểu cả những việc mà lập trình viên front-end làm để có những hiểu biết cơ bản về những công nghệ và khái niệm của front-end như HTML, CSS, hay JavaScript.

Môi trường hệ điều hành, hosting và csdl: Đây là những yếu tố rất quan trọng trong công việc của một lập trình viên back-end. Bạn thường biết đến Window vì tính phổ biến và dễ sử dụng của nó. Nhưng bạn cũng nên biết rằng 30% môi trường host trên Internet là Linux, đứng sau đó mới là Window với 26%. Bản thân mình cũng chưa có cơ hội làm việc với môi trường Window server.

Đơn giản là vì nó sẽ tốn tiền hơn còn Linux miễn phí mà. Điều mình muốn nói là việc tìm hiểu về hệ điều hành đó và cách thức nó hoạt động ra sao là hiểu biết mà back-end web developer cần phải có.

Kiến thức về csdl cũng rất quan trọng. Nó có ảnh hưởng nhất định tới chất lượng của một trang web. Kỹ năng viết câu truy vấn (SQL Querry) hay hiểu biết về mỗi hệ quản trị csdl là nội dung mà bạn cần phải tìm hiểu càng nhiều càng tốt.

Khả năng truy cập và tính bảo mật: Bản thân mình cũng đang trong quá trình tìm hiểu và trau dồi thêm về khía cạnh này. Tin mình đi, đây là là một kiến thức vô cùng quan trọng đối với một lập trình viên back-end.

Kinh nghiệm sử dụng các công cụ kiểm soát phiên bản như GIT: Lỗi trong quá trình lập trình là điều không thể tránh khỏi. Xử lý ra sao khi gặp trường hợp này?

Công cụ kiểm soát phiên bản sẽ rất hữu ích trong việc lưu trữ và kiểm soát những thay đổi với code, giúp bạn theo dõi được lộ trình phát triển của mình để nhanh chóng tìm ra những dòng code nào gây ra lỗi, back-up được code tránh mất mát, hay update các phiên bản mà không phải lo lắng về việc mất đi các phiên bản cũ.


xưởng may KN – mẫu áo thun gia đìnhcác mẫu áo lớp đẹp nhấtáo đồng phục nhóm giá rẻ

Zalo
0938.078.960