30/09/2018, 22:17

Tại sao trong các ngôn ngữ làm server side thì java lại xử lí tốt và thường được dùng ở những dự án phức tạp?

Tại sao trong các ngôn ngữ java,PHP,nodejs,ruby làm server side thì java lại xử lí tốt hơn và thường được dùng ở những dự án phức tạp

Nguyen Ca viết 00:25 ngày 01/10/2018

Trong các ngôn ngữ em nói chỉ có java support Multi-threaded và Multi-threadedthường dùng cho những dự án phức tạp :)).

Khoa Nguyen viết 00:19 ngày 01/10/2018

@nguyenhuuca quá chính xác .

Reoteu Ray viết 00:33 ngày 01/10/2018

ngoài ra ngôn ngữ java chính là ngôn ngữ đi đầu cho việc phát triển ứng dụng trên nên web , cái ý tưởng máy ảo để chạy đa nền tảng là chính do James Gosling đưa ra đầu tiên , vì thế nên bề dày kinh nghiệm của công nghệ java hỗ trợ các ứng dụng web sẽ đầy đủ và tốt hơn các ngôn ngữ khác cùng thời , tuy giờ đây có nhiều ngôn ngữ cũng cung cấp các dịch vụ giống và có thể tốt hơn java nhưng mình nghĩ thằng java nó đi trước cả chục năm nên kinh nghiệm nó rất nhiều >>> độ tin tưởng của người dùng cao hơn , và các doanh nghiệp lớn thì họ rất quan tâm đến tính bảo mật , ổn định , an toàn nên họ thường sẽ chon java làm nền tảng chính , chứ multi-thread thì mình nghĩ các ngôn ngữ server giờ đều hỗ trợ hết rồi

Khoa Nguyen viết 00:27 ngày 01/10/2018

Nodejs thì chưa
PHP7 cũng chưa
Ruby không biết gần đây có không chứ lúc trước vẫn chưa.

Theo mình ngôn ngữ nên dùng để viết sẻver bây giờ, ngoài Java thì là Golang để có multithread hỗ trợ từ ngôn ngữ

Thái viết 00:33 ngày 01/10/2018

Một vài lý do:

  • Java là ngôn ngữ strong và static typing. Nhờ đó, lập trình viên có thể phát hiện lỗi trong chương trình ngay từ lúc biên dịch. Điều này giúp tiết kiệm rất nhiều thời gian gỡ rối tìm lỗi, nhất là khi làm việc trên một code base lớn, với nhiều lập trình viên cùng một lúc.

  • Java quản lý bộ nhớ thay cho lập trình viên, làm cho chương trình ổn định hơn, không bị rò rỉ bộ nhớ. Lập trình viên có thể tập trung hoàn toàn vào vấn đề cần phải giải quyết, không cần quan tâm đến chuyện cấp phát và thu hồi bộ nhớ nữa.

  • Java là ngôn ngữ hướng đối tượng, cung cấp nhiều công cụ cho lập trình viên phân chia chương trình ra thành những phần nhỏ, tách biệt, độc lập. Phần A không cần biết phần B được hiện thực ra sao, mà chỉ cần sử dụng interface mà B cung cấp. Các thành phần do đó có thể được phát triển song song với nhau, sau khi làm xong có thể sử dụng nhiều lần, giúp giảm thời gian triển khai dự án.

Nguyen Ca viết 00:24 ngày 01/10/2018

Theo wiki thì những ngôn ngữ dưới có hỗ trợ muti theard:

  • C=
  • Cilk
  • Cilk Plus
  • C#
  • Clojure
  • Fork - Programming language for the PRAM model.
  • Java
  • ParaSail
  • SequenceL
en.wikipedia.org

List of concurrent and parallel programming languages

This article lists concurrent and parallel programming languages, categorizing them by a defining paradigm. A concurrent programming language is defined as one which uses the concept of simultaneously executing processes or threads of execution as a means of structuring a program. A parallel language is able to express programs that are executable on more than one processor. Both types are listed as concurrency is a useful tool in expressing parallelism, but it is not necessary. In both cases, th...

Luong Nguyen viết 00:21 ngày 01/10/2018

php ra bắt đầu được phát triển năm 1994, publish 1995, java là 1996, sao java lại ra đời trước php được? hay là mình nhờ nhầm nhỉ

Itachi Citus viết 00:23 ngày 01/10/2018

Ủa ai nói ruby không có multithread vậy http://www.tutorialspoint.com/ruby/ruby_multithreading.htm. Multithread và concurrent/parallel là hai cái khác nhau nha.

Vấn đề là các ngôn ngữ php, ruby, javascript là các ngôn ngữ dynamic typing và interpreter language, nó khó kiểm soát lỗi hơn so với java là static typing và compiled language. Nhưng lý do chính là do nó là một ngôn ngữ trưởng thành, có cộng đồng đủ mạnh và có kinh nghiệm, framework có ông lớn đứng sau (Oracle - JavaEE) -> mức rủi ro thấp hơn so với việc sử dụng ngôn ngữ khác.

Bài liên quan
0