Tôi là một nhà phát triển Java, phát triển các ứng dụng web cho thương mại điện tử và xuất bản và đã độc quyền sử dụng máy Mac trong nhiều năm.
Là dựa trên Unix (một dạng BSD miễn phí, chính xác là vậy), MacOS có mọi thứ bạn đã quen thuộc để phát triển Java trên các nền tảng giống như Unix khác.
Nó có bash và tất cả các công cụ Unix dòng lệnh. Nó có hỗ trợ lật đổ được tích hợp sẵn và Apache được cài đặt theo mặc định. Apple xây dựng và phân phối một ngăn xếp JRE và JDK đầy đủ dành riêng cho MacOS. Bạn có thể tải xuống và cài đặt mọi thứ khác bạn cần trên đó.
Cá nhân tôi sử dụng Eclipse, JBoss và Tomcat, ANT và Maven và MySQL - với nhiều plugin và thư viện bên thứ ba khác nhau và không gặp vấn đề gì.
Tuy nhiên, những lợi thế lớn nhất để sử dụng máy Mac để phát triển là
bạn có thể chạy "hai lớn" - Microsoft Office và Adobe Photoshop. Tôi không chắc cảm giác của bạn về điều này là gì, nhưng đôi khi điều quan trọng là sử dụng các ứng dụng thực tế thay vì hành xử giống nhau để bạn có được sự trung thực và tương thích hoàn toàn với những gì mọi người khác trong tổ chức của bạn có thể đang sử dụng.
có rất nhiều ứng dụng và tiện ích được thiết kế đẹp mắt và được thiết kế đẹp mắt giúp tăng năng suất của bạn. (sau tất cả, lập trình chỉ là một phần trong ngày chuyên nghiệp của tôi)
Điều tiêu cực duy nhất tôi có thể nghĩ đến là nhiều sản phẩm "doanh nghiệp" là một phần của ngăn xếp của nhà phát triển ứng dụng Java, thường có một thành phần riêng mặc dù hầu hết sản phẩm là Java. Thông thường, thành phần gốc chỉ chạy trên Linux và Windows. Tuy nhiên, cách xung quanh đây là chạy các máy ảo. Tôi thường chạy các thành phần lõi không có nguồn gốc Mac trong máy ảo Linux bằng VMWare Fusion.
Ngoài ra, Java không phải là công dân hạng nhất trên Mac. Khi Apple lần đầu tiên ra mắt với Xcode và Ca cao, họ đã bắt đầu với việc hỗ trợ Objective-C và Java như các ngôn ngữ ngang bằng nhau, nhưng theo thời gian họ đã loại bỏ hoặc giảm bớt sự hỗ trợ cho Java. Đối với tôi, điều này hơi thất vọng, nhưng thực tế không khác gì Windows hay Linux (bạn không thể viết các ứng dụng gốc hạng nhất trên cả hai bằng ngôn ngữ Java). Chỉ là tôi đã quá già và quá thiết lập theo cách của mình để có Objective-C!
or is there
...? Có vẻ như câu của bạn chưa kết thúc!