Học js để làm BE node, có nên học html css trước khi học js không?

e chào các anh đang làm Backend node, js ngày nó sinh ra là để tương tác với UI phía client, đến ngày 2008 nó mới có thể chạy phía server, e thì ko thích code UI lắm, cho nên e muốn theo BE node, vậy e có thể học tốt và hiểu rõ js mà ko cần biết html css không? liệu học js mà ko biết DOM có trục trặc gì trong quá trình học không ạ?

em xác định theo be node, vấn đề là đương nhiên phải học js rồi, nhưng con đường học js lại hình như dính dáng đến dom, nó lại nằm ở html css, chẳng nhẽ theo be node lại đi đường vòng qua html css ạ?
e có thể ôm thêm html css, nhưng vấn đề đi làm e làm be mà lâu ko động html css kiểu gì cũng quên sạch ngay.
mấy bạn em có code be JAVA họ học java thì đi làm thôi :frowning:
e cảm ơn mn đã tư vấn ạ

Bạn không cần biết HTML và CSS để làm được một trang web đẹp nhưng bạn phải tìm hiểu qua bởi vì back-end luôn làm việc cùng front-end. Việc này giống bạn BE là ông đầu bếp nấu món, còn front-end giống như thằng phục vụ bàn. Bạn không thèm/ không cần biết/ chơi/ hiểu với thằng phục vụ là tuỳ tính nết bạn thôi, nhưng có ngày nó sẽ cho bạn ăn đấm nếu nó bị khách chửi. Còn bạn có sự hiểu biết chút ít về nỗi khổ của nó, nó sẽ chia tiền boa cho bạn.

1 Like

Bạn học ở đâu, đã đi làm chưa hay còn đang học? Bạn có phải dân trái ngành không?

lý do gì khiến bạn đặt câu hỏi như vậy?

Backend node với html css có liên quan gì với nhau?
hay bạn chỉ hỏi vu vơ?

Câu trả lời là có nhé,

Trong trường hợp bạn làm project dạng server-side render, hoặc trả về view content-type là html thay vì json. bạn buộc phải biết cấu trúc html, css framework đang dùng để thêm class, attribute cho đúng.

Backend node với html css có liên quan gì với nhau

Backend trong khái niệm của 1 số người chỉ là get data từ SQL trả về JSON, nên mới kết luận không liên quan.

Bạn nên định hướng lâu dài. Làm web hiểu vận hành của web, cơ bản về html, form submit, ajax, cors

2 Likes

e ko hỏi, backend có cần học/ biết html css không, e hỏi backend node có cần biết html css trước khi học ko, như e đã đề cập ở phần bài post, vì học be node thì phải học js mà js dính dáng đến DOM, DOM là 1 khái niệm liên quan đến html css, cho nên e mới hỏi có cần học HTML css trước khi học js không, e đi làm BE thì 90% chắc là code API nên thằng html css mà lâu ko động kiểu gì cũng bị quên.

e hiểu backend nó là gì, nó làm việc với db và đảm bảo phục vụ dữ liệu cho bên client.

e ko hỏi, backend có cần học/ biết html css không, e hỏi backend node có cần biết html css trước khi học ko, như e đã đề cập ở phần bài post, vì học be node thì phải học js mà js dính dáng đến DOM, DOM là 1 khái niệm liên quan đến html css, cho nên e mới hỏi có cần học HTML css trước khi học js không.

định hướng lâu dài thì đúng nên biết html css, nhưng vì cần kiếm cơm nuôi thân nên e phải tìm con đường nhanh ạ, mà e ko hỏi, backend có cần học/ biết html css không, e hỏi backend node có cần biết html css trước khi học ko, như e đã đề cập ở phần bài post, vì học be node thì phải học js mà js dính dáng đến DOM, DOM là 1 khái niệm liên quan đến html css, cho nên e mới hỏi có cần học HTML css trước khi học js không.

mk học youtube, việc mk học ở đâu hay đang làm gì, trái ngành hay chính quy là thuộc về thông tin cá nhân ko liên quan gì đến bài post ạ, bài post mk ko rõ ở đâu, bạn có thể hỏi lại.

bài post e ko rõ chỗ nào, a có thể correct /report lại, sao a lại bảo hỏi vu vơ?

js là js, liên quan gì đến dom
bạn đã học nodejs ngày nào chưa, bạn thấy có liên quan gì dom?

bạn nói là bạn định hướng theo backend node, vậy node là gì? node/js/html/css/dom liên quan gì nhau?

1 Like

nói theo kiểu này thì hầu như ngôn ngữ gì cũng sẽ liên quan với html css

nếu bạn ấy nói là theo web thì mình đã không hỏi lại kiểu đó
còn backend là backend, trường hợp làm web ssr, handle luôn cả UI, thì nó không còn đơn thuần là backend nữa rồi
không thể lấy trường hợp cá biệt (làm web ssr) để đánh đồng chung chung như vậy được (làm backend node)

1 Like

theo hiểu biết yếu nhỏ nhoi của em, thì DOM là 1 API của phía trình duyệt cung cấp cho js runtime, node là 1 runtime js gồm V8 và nhiều API hệ thống khác chạy phía server .
e muốn hiểu rõ js cho nên sẵn sàng đầu tư thời gian đi đường vòng để học html css mặc dù e ko hề yêu thích html css và muốn làm việc với nó lắm, js ngày nó sinh ra là để tương tác với UI phía client, đến ngày 2008 nó mới có thể chạy phía server, e thì ko thích code UI lắm, cho nên e muốn theo BE node, vậy e có thể học tốt và hiểu rõ js mà ko cần biết html css không? liệu học js mà ko biết DOM có trục trặc gì trong quá trình học không ạ?
e thì thấy rằng code js mà ko biết HTML CSS thì sẽ mất 1 thứ, ví dụ MDN hay đưa ra nhiều khái niệm khi js chạy ở trình duyệt, kiểu khi đọc tài liệu JS cũng bắt gặp vào mắt mấy cái dính dáng với DOM, cho nên e ko thoải mái lắm.

đúng

câu từ học thuật chưa chuẩn nhưng đại ý là đúng

mình đoán 2 câu ở trên chắc cũng là đọc đâu đó và ghi nhớ như một con vẹt phải không
2 câu bên trên đã rất rõ ràng, node không liên quan gì html/css hay DOM
làm node thì không có cái gì dính tới đám kia cả, không có dấu hiệu về sự liên quan luôn mà bạn vẫn cố suy diễn

bạn định viết code node rồi mang lên trình duyệt chạy?
hay bạn nghĩ code backend node sẽ chạy trên trình duyệt

2 câu trên anh bảo “nói như 1 con vẹt là câu nào vậy”?
con vẹt là thường chỉ nói lại cái người ta ghi mà ko hiểu gì về nó, e hơi khác 1 tý, e cũng nói lại cái người ta viết, vì e đâu có phát minh ra node mà hiểu dc đâu, nhưng ít e nhất e cũng biết API là cái người cung cấp cho user và người ta hướng dẫn đầu vào đầu ra là gì, e chỉ đọc thôi, cái khó khăn đã ẩn đi rồi.
nếu như này vẫn là 1 con vẹt, nếu a biết rõ hơn có thể nói ở đây dc ko, mới cả e đang xin tư vấn để học mà, chưa học thì làm sao e có trình độ như ô senior dc :frowning:

a vẫn ko hiểu e hỏi gì ạ, vậy thôi vậy, mà e nói lại e ko suy diễn gì hết, mà do anh ko hiểu e hỏi gì mà thôi, post e đã nói 1 cách chi tiết vấn đề e thắc mắc và xin tư vấn rồi mà. :frowning:

Uhm, để tránh việc cuộc tranh luận dài hơn cần thiết, để tớ đi thẳng vào point nhé!
Node JS và CSS/HTML/DOM không liên quan tới nhau. Nếu cậu chỉ làm backend, cậu không cần quan tâm tới CSS/HTML/DOM.
Đó thực ra là main point mà @kisuluoibieng đã chỉ ra.

Cơ mà, có một vấn đề nhỏ, là cậu đang muốn làm việc với JS, đây là ngôn ngữ có thể làm ở cả 2 bên BE và FE. Thường những ai làm BE node JS sẽ có xu hướng trở thành fullstack, nên nếu cậu có định hướng đó, cậu sẽ cần quan tâm tới DOM/CSS/HTML.
Cho tới lúc đó thì cậu không cần quan tâm lắm tới bộ 3 đó đâu :slight_smile:

Hope it helps!

4 Likes

Trc mình học NodeJS thì thấy nó không liên quan đến HTML hay CSS . …
Mình ví dụ bạn nhé !
Nếu bạn code một đoạn code sau :slight_smile:

def something()
return  json(a=12,b=15)

Hoặc một đoạn code sau :

def something()
return  send_file('path/to/file/sample.mp4', attachment_filename='sample.mp4')

Đoạn code trên cơ bản sẽ k liên quan tới HTML và CSS

Cơ mà nếu bạn code như này :

def something()
return  """
<html lang="en-US" class="desktop-view not-mobile-device text-size-normal">
  <head>
</head>
<body>
<a>Something to print </a>"
</body>
</html>"""

Hoặc như vầy :

def something()
return  render_template(sample.html,value_a=15,value_b=21)

Thì nó sẽ liên quan đến HTML và CSS
Ví dụ trên đối với Python, nhưng thực ra ngôn ngữ nào mà viết BE cũng vậy từ C++ đến NodeJS !
Hi vọng nó sẽ thông suốt cho bạn …

đoạn code này bên server sẽ trả về client, tại sao bên phía client ko tự động tạo ra dc template đó để phía server chỉ việc gửi thông tin để fill vào ô trống thôi, mà phía server cần phải trả về client template làm gì ạ?

Nếu phía client là một trình duyệt web thì làm gì có gì mà fill .Nên bạn cần trả về mã HTML để trình duyệt render ra UI cho người dùng chứ.Còn trong trường hợp client là một Ứng dụng hay một trang web sử dụng XMLHttpRequest hoặc tương tự thì nó lại khác

Nếu bạn theo mảng IoT, bạn cần build server để xử lý data từ sensor thì có thể không cần code GUI. Hoặc dùng nodeJS để làm những task như crawl data, làm mini tool support cho kế toán như chuyển excel thành mail, đổi tên hàng loạt file trong máy tính, auto gửi thiệp mời, … thì không cần xử lý HTML, CSS nhưng biết vẫn không thừa.

  • “Node backend” ý muốn nói là dùng expressJS, nextJS, nestJS, … hoặc các web framework sử dụng node làm web server. Job thường là làm web API cho team làm frontend, ngoài biết JS còn phải có các kỹ năng khác liên quan đến DB ví dụ xử lý transaction, biết cách xử lý concurrency, …
  • Node dùng local như những task làm mini tool như mình kể trên, VD reveal.js là một framework làm silde như powerpoint, node build code JS thành file png, ppt thì node hết nhiệm vụ, lúc này còn frontend với backend gì nữa.

Một số framework dùng node làm runtime ngoài những lý do mà bạn có thể search trên google thì node có thể tương tác với OS như chạy command, lưu file, xóa file system, …

Vấn đề này bạn search google “what difference between SSR and CSR”

Một số bạn cứ mãi học node mà vẫn không phân biệt được node chạy ở đâu và khi nào.

  • Node chạy ở đâu là cần phân biệt node cung cấp runtime ở phía server trong mô hình client-server chứ trình duyệt sao mà chạy node được.
  • Cần node khi nào là node sẽ dùng trong giai đoạn nào trong quá trình development.
    – reactJS, react native cũng cần node nhưng node sử dụng làm môi trường trong giai đoạn dev, sau khi reactjs đã build xong thì lúc deploy không cần node nữa, hoặc file apk xuất ra từ react native cũng không cần node để chạy.
    – Cũng có rất nhiều tool để test web VD: playwright cũng cần node để chạy nhưng test xong, pass hết test case thì cũng dẹp node.

Không phân biệt rõ thì khi thấy ai đó bàn luận về một framework mới trên facebook, tiktok, youtube lại vào khen/chê, chém gió mà không biết nó dùng cho mục đích gì, có cần thiết cho mình không.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?