Bạn có bao giờ tự hỏi mình rằng: Sau này mình sẽ làm gì? Làm web? Làm Front hay Back ? Và đã chọn rồi thì con đường nào để đạt được mục tiêu đó dễ dàng nhanh chóng và hiệu quả nhất? Nếu bạn có câu hỏi như vậy, thì bạn có thể tham khảo bài viết này của tôi.
Vậy tại sao cần phân biệt giữa Front hay Back, bởi vì lựa chọn khác nhau thì sẽ tới việc những thứ CẦN HỌC nó sẽ khác nhau, do đó chúng ta sẽ quyết định ngoài những thứ nhà trường dạy thì chúng ta sẽ học thêm cái gì, để có thể đi làm được. Để trả lời cho câu hỏi, ta chọn gì thì trước tiên ta cần hiểu về những options này đã. Bây giờ chúng ta cần đi tìm hiểu những khái niệm.
Front End Developer là người tập trung phát triển phía Client Side, nói một cách đơn giản dễ hiểu là tập trung vào mảng phát triển xây dựng giao diện và trải nghiệm cho người dùng. Để dễ hình dung thì ta vào trang facebook thần thánh, nếu ta là Front End Developer cho trang này thì ta là người xác định: logo đặt ở đâu, màu chủ đạo là màu gì, font chữ to hay nhỏ, ảnh này để kích cỡ thế nào, trái tim bay lên ra sao, nút Like đặt ở đâu….Tức là, người phụ trách phát triển HIỂN THỊ và TRẢI NGHIỆM người dùng cho ứng dụng web. Bạn 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.
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ư:
Front End Developer là một nghề rất kiếm ra tiền, nhưng với điều kiện bạn phải làm tốt. Tốt tới đâu thì tiền về tới đó. Nếu bạn thực sự chỉ đam mê và chỉ thích thú với việc tạo ra các website đẹp, thì bạn hãy chăm chút cho nghề nghiệp của mình nhé và có thể học thêm cả photoshop nữa.
Nếu Front End Developer có quyền lực kiến tạo nên vẻ đẹp của các trang web, thì Back End developer là người xử lý mọi logic nghiệp vụ phức tạp ở ẩn ở phía sau, giúp cho hệ thống hoạt động trơn tru. Dữ liệu của người dùng, thuật toán phân tích … đều nằm ở back-end. Lấy ví dụ: trên trang face, khi bạn post 1 status, để status ấy được lưu trữ thì cần backend, để status ấy hiển thị cho bạn bè của bạn xem thì cũng cần backend, để status ấy lưu những react (love, phẫn nộ, woo...haha) cũng cần backend …
Back End Developer là người quyết định cách thức website được vận hành. Người vô cùng quan trọng.
Để trở thành Back end developer thì bạn 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:
Kiến thức phần back-end rất nhiều và phức tạp, do đó một back-end developer chỉ nên tập trung vào 2-3 ngôn ngữ chính, đừng ráng ôm hết kẻo "tấu hỏa nhập ma". Code phần back-end thường rất nhiều và "khủng", do đó cần có cấu trúc tốt, dễ cải tiến và mở rộng (bằng cách áp dụng SOLID). Back-end developer có thể trau dồi kiến thức để leo lên vị trí System Analyst hoặc Software Architecture.
Full Stack là làm đủ cả Front End lẫn Back End Lập trình viên vừa có tư duy logic lại có óc thẩm mĩ tinh tế. Vừa code server giỏi lại biết linh hoạt biến hoá với css.
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.
Để trở thành 1 lập trình viên full stack thì bạn cần có những skill sau:
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.
Vậy tại sao cần phân biệt giữa Front hay Back, bởi vì lựa chọn khác nhau thì sẽ tới việc những thứ CẦN HỌC nó sẽ khác nhau, do đó chúng ta sẽ quyết định ngoài những thứ nhà trường dạy thì chúng ta sẽ học thêm cái gì, để có thể đi làm được. Để trả lời cho câu hỏi, ta chọn gì thì trước tiên ta cần hiểu về những options này đã. Bây giờ chúng ta cần đi tìm hiểu những khái niệm.
1. Front End Development
Front End Developer là ai ?
Front End Developer là người tập trung phát triển phía Client Side, nói một cách đơn giản dễ hiểu là tập trung vào mảng phát triển xây dựng giao diện và trải nghiệm cho người dùng. Để dễ hình dung thì ta vào trang facebook thần thánh, nếu ta là Front End Developer cho trang này thì ta là người xác định: logo đặt ở đâu, màu chủ đạo là màu gì, font chữ to hay nhỏ, ảnh này để kích cỡ thế nào, trái tim bay lên ra sao, nút Like đặt ở đâu….Tức là, người phụ trách phát triển HIỂN THỊ và TRẢI NGHIỆM người dùng cho ứng dụng web. Bạn 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.
Kỹ năng Front End
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 …..
Front End Developer là một nghề rất kiếm ra tiền, nhưng với điều kiện bạn phải làm tốt. Tốt tới đâu thì tiền về tới đó. Nếu bạn thực sự chỉ đam mê và chỉ thích thú với việc tạo ra các website đẹp, thì bạn hãy chăm chút cho nghề nghiệp của mình nhé và có thể học thêm cả photoshop nữa.
2. Back End Development
Back End Developer là ai ?
Back End Developer là người quyết định cách thức website được vận hành. Người vô cùng quan trọng.
Kỹ năng Back End
- 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, ….
3. Full Stack Development
Full Stack Developer là ai ?
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.
Kỹ năng Full Stack
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.
anh qua click quảng cáo nè :D
Trả lờiXóalác em qua tiếp :D
Xóaem click nà
Xóahứng hứng :D lác anh qua
Xóahay
Trả lờiXóachớ sao :D
XóaTemplate đẹp đó ông
Trả lờiXóacảm ơn ông nha :P
Xóatrở thành front end là dễ nhất
Trả lờiXóađúng rồi :V thấy mấy ông ai cũng là FE cmnr
XóaAi bảo là thành FE là dễ đấy :)) Cho a hỏi là e đã học đc gì hay tìm hiểu đc bao nhiêu % của FE rồi? HTML và CSS trong FE chiếm 10-20% trong lượng công việc cần làm khi đi làm ở công ty nha. Ngoài ra, đòi hỏi FE Dev phải biết và nắm chắc ít nhất 1 framework về CSS, 1 framework về JS, đào sâu JS cơ bản đến nâng cao, làm việc với API, SVG, Canvas.... Không phải tự nhiên họ chia ra FE Dev và BE Dev đâu nhé. 1 cái là bề nổi, 1 cái là phần chìm và tương đương nhau về độ khó. Nào đi phỏng vấn r đi làm thì mới biết đc.
Xóagiờ lục lại mới thấy cmt của anh cường -.-
Xóalà cái gì :V
Trả lờiXóa@@ nói về lập trình viên web
XóaHELLO :V
Trả lờiXóayoloooooo
Xóaclick QC nè kaka
Trả lờiXóalác click lại nè
Xóamấy pạn cờ ních quảng cáo làm gì zợ ?
Trả lờiXóadạ cờ ních để kiếm tiền nâng cấp blog
Xóablog qá lag :v
Trả lờiXóatính ra là anh dô mượt bt luôn á -_-
Xóa