Điều mà bạn nói đúng là quan điểm phổ biến trong ngành công nghệ thông tin hiện nay. Vậy nên mình mới thấy bài viết này rất có ý nghĩa, vì nó giúp thể hiện rằng vai trò của Tester cũng rất quan trọng không kém Developer.
Mặc dù một Developer có thể có kiến thức về testing và thực hiện một số công việc testing, nhưng vai trò của Tester không chỉ đơn giản là kiểm tra chức năng. Tester đóng vai trò quan trọng trong việc tìm ra lỗi, xác định tính năng không phù hợp và đảm bảo chất lượng của sản phẩm. Công việc của Tester yêu cầu một tư duy khác biệt và một góc nhìn độc lập, giúp phát hiện các vấn đề mà Developer có thể đã bỏ qua. Giống như việc một người sẽ rất khó nhìn thấy lưng của mình nhưng lại dễ dàng thấy lưng của người khác vậy. Mỗi người chuyên về một lĩnh vực riêng, tạo nên sự đa dạng và cân bằng trong quá trình phát triển phần mềm.
Việc một Tester có nguy cơ lay off cao hơn không phải là do khả năng của Developer có thể thay thế được công việc của Tester, mà là do nhiều yếu tố khác như yêu cầu tài chính, áp lực kinh doanh, hay thậm chí sự thay đổi trong chiến lược công ty.
Tóm lại, Tester và Developer đều đóng vai trò quan trọng và không thể hoàn toàn thay thế lẫn nhau. Sự đa dạng và cân bằng giữa hai vai trò này là yếu tố quan trọng trong quá trình phát triển phần mềm. Giống như việc trong một gia đình, một người bố tốt hoàn toàn cũng có khả năng cho con một cuộc sống đầy đủ, nhưng thiếu bàn tay chăm sóc và tình cảm của mẹ thì đứa bé vẫn luôn cảm thấy thiếu thốn, không trọn vẹn, vậy nên dù người bố con tốt, hoàn hảo và yêu con, chăm sóc con cỡ nào cũng không hoàn toàn thay thế được người mẹ.
@trungdn0401 sorry bạn, mình miss thông báo đến giờ mới để ý. Ở câu hỏi của bạn thì "function(var_1)" cho biết rằng sẽ có 1 tham số được truyền vào hàm được hook (ở đây là hàm getProperty). Mình viết là var_1, var_2,... là để dễ hình dung hơn. Trên thực tế thì bạn có thể để nó là a b c x y z tuỳ ý, miễn là thể hiện đủ số lượng tham số truyền vào hàm. VD:
chào bạn, mình thấy ở đây bạn nói hơi mâu thuẫn, nên mình không hiểu:
"Như nhiều bài viết khác đã đề cập, NodeJS hoạt động với MainThread (Event Loop), Ngoài MainThread, LibUV còn cung cấp thêm 1 loại Thread khác giúp việc xử lý các tác vụ I/O tốt hơn, đó là ThreadPool, để giúp NodeJS có thể xử lý các tác vụ I/O hiệu quả. Ngày nay các hệ điều hành đã cung cấp các Asynchronous Interface giúp NodeJS có thể tương tác với OS(Hệ Điều Hành) và gắng cờ để đẩy sang OS xử lý, ví dụ: AIO của Linux, epool(linux), kqueue (OSX),… Nói tóm lại, Ngoài các tác vụ Async I/O mà có khả năng được xử lý bởi OS, thì ThreadPool xử lý."
ở đoạn đầu bạn nói rằng "LibUV còn cung cấp thêm 1 loại Thread khác giúp việc xử lý các tác vụ I/O tốt hơn, đó là ThreadPool", nhưng đoạn cuối bạn lại nói rằng "Ngoài các tác vụ Async I/O mà có khả năng được xử lý bởi OS, thì ThreadPool xử lý.", 2 cái này mâu thuẫn nhau,
vậy thread pool nó xử lý các tác vụ asynIO hay nó xử lý tác task mà worker_thread cần tính toán?
còn hệ điều hành là như thế nào nhỉ, nó đóng vai trò gì ở đây ạ?
mk cảm ơn bạn
@hoangkim1982 nó là phần cấu hình thôi, như đã nói đó, khi cấu hình bằng Swarm các Network Contrller của bạn sẽ hoạt động theo chế độ gọi tên của swarm, khi bạn out ra mà không cài lại các phần đó thì nó sẽ vẫn bị định danh theo swarm.
THẢO LUẬN
Bài viết hay b 😁
đúng là không biết phân biệt modal vs dialog như thế nào luôn. đang dùng MUI đến đoạn chọn dùng cái nào cũng thấy phân vân
Tại sao vậy ạ
Điều mà bạn nói đúng là quan điểm phổ biến trong ngành công nghệ thông tin hiện nay. Vậy nên mình mới thấy bài viết này rất có ý nghĩa, vì nó giúp thể hiện rằng vai trò của Tester cũng rất quan trọng không kém Developer.
Mặc dù một Developer có thể có kiến thức về testing và thực hiện một số công việc testing, nhưng vai trò của Tester không chỉ đơn giản là kiểm tra chức năng. Tester đóng vai trò quan trọng trong việc tìm ra lỗi, xác định tính năng không phù hợp và đảm bảo chất lượng của sản phẩm. Công việc của Tester yêu cầu một tư duy khác biệt và một góc nhìn độc lập, giúp phát hiện các vấn đề mà Developer có thể đã bỏ qua. Giống như việc một người sẽ rất khó nhìn thấy lưng của mình nhưng lại dễ dàng thấy lưng của người khác vậy. Mỗi người chuyên về một lĩnh vực riêng, tạo nên sự đa dạng và cân bằng trong quá trình phát triển phần mềm.
Việc một Tester có nguy cơ lay off cao hơn không phải là do khả năng của Developer có thể thay thế được công việc của Tester, mà là do nhiều yếu tố khác như yêu cầu tài chính, áp lực kinh doanh, hay thậm chí sự thay đổi trong chiến lược công ty.
Tóm lại, Tester và Developer đều đóng vai trò quan trọng và không thể hoàn toàn thay thế lẫn nhau. Sự đa dạng và cân bằng giữa hai vai trò này là yếu tố quan trọng trong quá trình phát triển phần mềm. Giống như việc trong một gia đình, một người bố tốt hoàn toàn cũng có khả năng cho con một cuộc sống đầy đủ, nhưng thiếu bàn tay chăm sóc và tình cảm của mẹ thì đứa bé vẫn luôn cảm thấy thiếu thốn, không trọn vẹn, vậy nên dù người bố con tốt, hoàn hảo và yêu con, chăm sóc con cỡ nào cũng không hoàn toàn thay thế được người mẹ.
Cám ơn bạn đã để lại quan điểm ❤️
xử lý đc chưa bạn ơi? tôi cugnx bị lỗi giống bạn
Dev có thể làm công việc của Tester, còn ngược lại thì không. Chắc vì vậy nên Tester sẽ thuộc diện nguy cơ lay off cao hơn
Bài viết đáng đọc
DB_HOST= DB_USERNAME= DB_PASSWORD= DB_NAME=
Mình bị lỗi "message":"sender not found" làm sao để khắc phục ạ...?
hữu ích quá bác ơi
form label gồm text và có cái dấu * thể hiện có required hay không thì atom hay molecule nhỉ?
Bỏ đâu cũng đc nha ko cần trong htdocs
nhỏ hơn Organism là đường kẻ xanh da trời là sao ta, vậy cái màu xanh da trời là gì vậy
cho mình hỏi snackbar và spiner thì cho vào atom hay molecule vậy?
Khái niệm tập hợp (Set) là tập hợp các phần tử không trùng lặp rồi đó ông.
được, dùng "uuid" hoặc số cực lớn - số vượt khả năng biễu diễn của integer, hai cái cũng là cũng biểu diễn trên string.
hay quá sếp ơi, bài viết thật sự bổ ích ạ 🤑🤑🤑
@trungdn0401 sorry bạn, mình miss thông báo đến giờ mới để ý. Ở câu hỏi của bạn thì "function(var_1)" cho biết rằng sẽ có 1 tham số được truyền vào hàm được hook (ở đây là hàm getProperty). Mình viết là var_1, var_2,... là để dễ hình dung hơn. Trên thực tế thì bạn có thể để nó là a b c x y z tuỳ ý, miễn là thể hiện đủ số lượng tham số truyền vào hàm. VD:
chào bạn, mình thấy ở đây bạn nói hơi mâu thuẫn, nên mình không hiểu: "Như nhiều bài viết khác đã đề cập, NodeJS hoạt động với MainThread (Event Loop), Ngoài MainThread, LibUV còn cung cấp thêm 1 loại Thread khác giúp việc xử lý các tác vụ I/O tốt hơn, đó là ThreadPool, để giúp NodeJS có thể xử lý các tác vụ I/O hiệu quả. Ngày nay các hệ điều hành đã cung cấp các Asynchronous Interface giúp NodeJS có thể tương tác với OS(Hệ Điều Hành) và gắng cờ để đẩy sang OS xử lý, ví dụ: AIO của Linux, epool(linux), kqueue (OSX),… Nói tóm lại, Ngoài các tác vụ Async I/O mà có khả năng được xử lý bởi OS, thì ThreadPool xử lý." ở đoạn đầu bạn nói rằng "LibUV còn cung cấp thêm 1 loại Thread khác giúp việc xử lý các tác vụ I/O tốt hơn, đó là ThreadPool", nhưng đoạn cuối bạn lại nói rằng "Ngoài các tác vụ Async I/O mà có khả năng được xử lý bởi OS, thì ThreadPool xử lý.", 2 cái này mâu thuẫn nhau, vậy thread pool nó xử lý các tác vụ asynIO hay nó xử lý tác task mà worker_thread cần tính toán? còn hệ điều hành là như thế nào nhỉ, nó đóng vai trò gì ở đây ạ? mk cảm ơn bạn
@hoangkim1982 nó là phần cấu hình thôi, như đã nói đó, khi cấu hình bằng Swarm các Network Contrller của bạn sẽ hoạt động theo chế độ gọi tên của swarm, khi bạn out ra mà không cài lại các phần đó thì nó sẽ vẫn bị định danh theo swarm.