Minimalist Forum Reader
Em thấy lạ là Java với C# na ná nhau, thế mà ở Việt Nam thì Java có vẻ "thịnh" hơn, được nhiều người biết hơn là C#. Đi đâu cũng hỏi "mày code Java hay Javascript", or "Java hay Python ngon hơn mày?"...Ngôn ngữ họ C thì chỉ có C vs C++ là đem lên bàn cân so sánh, C# vs .NET khá hiếm trừ mấy người làm dev game Unity

Phải chăng là do C# khó đọc hơn Java, hay nó từng gắn liền với Winform - một công nghệ lỗi thời và rẻ tiền ko còn được ưu ái, hay do nó mang tiếng là kẻ "chạy sau Java", bị Java đi trước dành hết thị phần nên nó gần như ko xuất hiện trong các bank lớn hay hạ tầng enterprise vậy các bác?

Chứ em nghĩ thằng Mic với hệ sinh thái khủng như Window, Office, VS + VS Code support C# tận răng thì đáng lẽ phải hơn ông Java có mỗi SpringBoot đi kèm chứ nhỉ?
em vẫn đóng họ cho bác đều mỗi tháng :D rất mong bác ra nhiều video hơn <3
mấy video hội viên đóng gói 30k xem đc k bác? e đang muốn xem oauth2
Em thấy lạ là Java với C# na ná nhau, thế mà ở Việt Nam thì Java có vẻ "thịnh" hơn, được nhiều người biết hơn là C#. Đi đâu cũng hỏi "mày code Java hay Javascript", or "Java hay Python ngon hơn mày?"...Ngôn ngữ họ C thì chỉ có C vs C++ là đem lên bàn cân so sánh, C# vs .NET khá hiếm trừ mấy người làm dev game Unity

Phải chăng là do C# khó đọc hơn Java, hay nó từng gắn liền với Winform - một công nghệ lỗi thời và rẻ tiền ko còn được ưu ái, hay do nó mang tiếng là kẻ "chạy sau Java", bị Java đi trước dành hết thị phần nên nó gần như ko xuất hiện trong các bank lớn hay hạ tầng enterprise vậy các bác?

Chứ em nghĩ thằng Mic với hệ sinh thái khủng như Window, Office, VS + VS Code support C# tận răng thì đáng lẽ phải hơn ông Java có mỗi SpringBoot đi kèm chứ nhỉ?
Là do sai lầm của MS không open source C# sớm nên Java vào được hết đám enterprise. Ecosystem của Java nhờ vậy đông đảo hơn C# nhiều (chất lượng hàng top chưa bàn tới) nên người ta sẽ dễ chọn hơn. Windows, Office, VS ngon thật nhưng với điều kiện phải dùng Windows chứ sang *ix vẫn èo uột lắm.

Thêm nữa bà con vẫn rén sợ anh MS úp bô, dùng C# xong bị vendor lockin thì khổ nên thôi chơi Java cho lành.
Reactions: tenoroboebaroque and Ngày ấy tôi quên
Em thấy lạ là Java với C# na ná nhau, thế mà ở Việt Nam thì Java có vẻ "thịnh" hơn, được nhiều người biết hơn là C#. Đi đâu cũng hỏi "mày code Java hay Javascript", or "Java hay Python ngon hơn mày?"...Ngôn ngữ họ C thì chỉ có C vs C++ là đem lên bàn cân so sánh, C# vs .NET khá hiếm trừ mấy người làm dev game Unity

Phải chăng là do C# khó đọc hơn Java, hay nó từng gắn liền với Winform - một công nghệ lỗi thời và rẻ tiền ko còn được ưu ái, hay do nó mang tiếng là kẻ "chạy sau Java", bị Java đi trước dành hết thị phần nên nó gần như ko xuất hiện trong các bank lớn hay hạ tầng enterprise vậy các bác?

Chứ em nghĩ thằng Mic với hệ sinh thái khủng như Window, Office, VS + VS Code support C# tận răng thì đáng lẽ phải hơn ông Java có mỗi SpringBoot đi kèm chứ nhỉ?
côg nhận job java hơb hẳn .net
e mới mua tk udemy business nên mấy tiền bối cho e hỏi nên học khóa Java nào với ạ.
Reactions: hhh26xx
Em mới từ c# nhảy qua học java.
Em tra thì có annotation async giống với async await bên c#, nhưng khi tham khảo các project khác nhau trên mạng sao em thấy bên java ít khi dùng async hoặc mấy thứ liên quan đến async kể cả việc gọi db, call api...
Các bác giải thích giúp em lý do với được ko ạ? :oops:
Em mới từ c# nhảy qua học java.
Em tra thì có annotation async giống với async await bên c#, nhưng khi tham khảo các project khác nhau trên mạng sao em thấy bên java ít khi dùng async hoặc mấy thứ liên quan đến async kể cả việc gọi db, call api...
Các bác giải thích giúp em lý do với được ko ạ? :oops:
cùng thắc mắc
xưa học .NET thấy async async nên bỏ học lun :)
Em mới từ c# nhảy qua học java.
Em tra thì có annotation async giống với async await bên c#, nhưng khi tham khảo các project khác nhau trên mạng sao em thấy bên java ít khi dùng async hoặc mấy thứ liên quan đến async kể cả việc gọi db, call api...
Các bác giải thích giúp em lý do với được ko ạ? :oops:
@async chắc là bạn đang đề cập tới trong spring framework?
về ý tưởng nó giống task queue, hiện thực task 1 cách async bằng cách submit nó vào 1 cái queue để các worker xử lý, bạn vẫn là người viết code để consume cái queue đó, còn thread chính tiếp tục xử lý các công việc khác, nói đến ý tưởng cách xử lý công việc ở tầng ứng dụng, còn mình xem chatgpt thì thấy async await bên c# nói về việc C# xử lý cho bạn tác vụ async bằng cách sử dụng non-blocking I/O (có thể thuật ngữ không chính xác ở OS, tại thấy nó đề cập cả I/O Completion Ports, Epoll), đọc xong thì mình thấy giống giống nodejs event loop.

Bên Java vẫn sử dụng: CompletableFuture, thư viện netty, hoặc reactive stack webflux, giao tiếp với databse thì có R2DBC.
Reactions: boy điềm đạm
Em mới từ c# nhảy qua học java.
Em tra thì có annotation async giống với async await bên c#, nhưng khi tham khảo các project khác nhau trên mạng sao em thấy bên java ít khi dùng async hoặc mấy thứ liên quan đến async kể cả việc gọi db, call api...
Các bác giải thích giúp em lý do với được ko ạ? :oops:
Mình chưa dùng C# bao giờ nhưng có mấy bạn từ js sang cũng có cùng thắc mắc như thế này khi sang java.
Java nó dùng future, nhưng bản chất nó hơi khác với async hay promise trong js (maybe c#).
Bên js gọi db hay http vì nó là non blocking io, internally thread scheduling gặp io thì push vào event loop rồi đi làm việc khác.
Với java thì khác, dưới java 17 thì việc thực hiện io vẫn bị pinning thead. Bản chất tạo ra 1 future nhưng vẫn phải ném nó vào trong thread pool để xử lý, nó chưa chắc đã hiệu quả mà lại còn tốn thread nữa, nói chung không được perfomance lắm.
Việc này thì có thể được khăc phục qua việc apply một reactive programming như kiểu reactor hoặc rxJava. Ngoài ra các drive cũng phải support việc non blocking io.
Sau java 21 thì có virtual thread, giờ vThread do jvm quản lý, không bị pinning OS thread nữa. Core Libraries (https://docs.oracle.com/en/java/javase/21/core/virtual-threads.html)
Mà thật ra nó cũng có 1 số issue về pinning không biết fix hết được chưa, pinning tức 1 vThread bị stick with carrier thread. Bình thuờng gặp IO thì carrier thread free còn vThread bị suspend, pinning thread là cả 2 thằng đều suspend luôn, carrier thread không đi perform cho vThread khác được nữa.
Reactions: tenoroboebaroque, cục xà phòng and boy điềm đạm
Anh em dùng IntellJ thì có dùng AI assistant nào không? Recommend cho mình với

via theNEXTvoz for iPhone
có bác nào kiếm đc job khác tech stack mình đang có ko, em tính nhảy từ c# qua java :beated:
Anh em dùng IntellJ thì có dùng AI assistant nào không? Recommend cho mình với

via theNEXTvoz for iPhone
bọn jetBrain có cái AI assistant tích hợp đấy thím
meoqQpA.png
(e chưa dùng nhưng khả năng cũng ko ngon lắm)
bọn jetBrain có cái AI assistant tích hợp đấy thím
meoqQpA.png
(e chưa dùng nhưng khả năng cũng ko ngon lắm)
Anh em dùng IntellJ thì có dùng AI assistant nào không? Recommend cho mình với

via theNEXTvoz for iPhone
AI assistant của Intellj ngon nha, trước mình dùng bản 20$ khá ngon, và đủ credit cho 1 tháng, mặc dù review nó hơi dỏm nhưng với mình rất xịn, mình code lại cả 1 cái fw như express từ con số 0 bằng nó ấy.
Reactions: bkhoang
AI assistant của Intellj ngon nha, trước mình dùng bản 20$ khá ngon, và đủ credit cho 1 tháng, mặc dù review nó hơi dỏm nhưng với mình rất xịn, mình code lại cả 1 cái fw như express từ con số 0 bằng nó ấy.
so sánh với Cursor thì sao thím
so sánh với Cursor thì sao thím
  • Hiện tại thì mình không dùng AI assistant nữa vì nó khá bất tiện khi code thêm ngôn ngữ khác ngoài Java, cũng có thử IDE khác của nó để tận dụng AI nhưng nó không xịn(Go, Js), nó chỉ xịn với mỗi Java thôi.
  • Cursor code Java thì tù lắm, đánh giá để code java, và luôn cả js tiện thì ae dùng Copilot là xịn nhất, Copilot về phần promt mơ hồ nó xử lý tốt hơn với thằng Cursor, mình đã dùng cursor code js và java được 3 ngày mình đã hủy yêu cầu refund (được 7 ngày dùng thử, mà vô tình nhất enable pro cái nó tự trừ 20$)
1764998416011.png
AI assistant của Intellj ngon nha, trước mình dùng bản 20$ khá ngon, và đủ credit cho 1 tháng, mặc dù review nó hơi dỏm nhưng với mình rất xịn, mình code lại cả 1 cái fw như express từ con số 0 bằng nó ấy.
là con Jetbrains AI hay là con Junie vậy bác? E thấy nó mới giới thiệu con Junie
là con Jetbrains AI hay là con Junie vậy bác? E thấy nó mới giới thiệu con Junie
Trước mình xài Jetbrains AI
Các bác cho em hỏi này với. Hiện tại em đang làm 1 API search nhưng vướng mắc chỗ sau: Cần đưa ra pageNo, pageSize, totalPage và totalElements. Hiện tại em đang làm theo phương án: Mỗi khi call API thì sẽ call DB 2 lần, 1 lần select paging, 1 lần select count. Em thấy làm như vậy chưa được tối ưu lắm, mong các bác chỉ dẫn thêm ạ (e đang dùng JPA Criteria, Native Query với EntityManager, procedure oracle ạ).
Reactions: Kowalski31
Các bác cho em hỏi này với. Hiện tại em đang làm 1 API search nhưng vướng mắc chỗ sau: Cần đưa ra pageNo, pageSize, totalPage và totalElements. Hiện tại em đang làm theo phương án: Mỗi khi call API thì sẽ call DB 2 lần, 1 lần select paging, 1 lần select count. Em thấy làm như vậy chưa được tối ưu lắm, mong các bác chỉ dẫn thêm ạ (e đang dùng JPA Criteria, Native Query với EntityManager, procedure oracle ạ).
dùng cursor paging thôi
Reactions: serene_
Các bác cho em hỏi này với. Hiện tại em đang làm 1 API search nhưng vướng mắc chỗ sau: Cần đưa ra pageNo, pageSize, totalPage và totalElements. Hiện tại em đang làm theo phương án: Mỗi khi call API thì sẽ call DB 2 lần, 1 lần select paging, 1 lần select count. Em thấy làm như vậy chưa được tối ưu lắm, mong các bác chỉ dẫn thêm ạ (e đang dùng JPA Criteria, Native Query với EntityManager, procedure oracle ạ).
thường thì như vậy là tối ưu rồi fen, kiểu thì cũng dính count() để tìm tổng thôi. Thực ra bên dưới con JPA cũng vậy th
Reactions: serene_ and Kowalski31