2008-11-16 31 views
6

Đây là một số câu hỏi dành cho bất kỳ nhà phát triển nào đã thực hiện chuyển từ Java sang .Net:Từ Java tới .Net

Nếu bạn có thể quay trở lại khi bắt đầu, bạn sẽ làm gì để chuyển tiếp dễ dàng hơn ?

Bất kỳ sách nào bạn muốn giới thiệu?

. Net so với Java EE như thế nào? Bất cứ điều gì mà hoàn toàn lỗi bạn?

Và điều quan trọng nhất, bạn có hối tiếc khi thực hiện bước nhảy không?

Trả lời

3

Tôi đã làm vài năm phát triển C/C++ ở giữa Java và .NET, vì vậy trải nghiệm của tôi có thể khác đôi chút.

Tôi thấy di chuyển từ Java sang C# rất dễ dàng. Các ngôn ngữ rất giống nhau và nhiều khuôn khổ hoạt động theo những cách tương tự. Tôi yêu Java, nhưng tôi không nghĩ mình sẽ quay trở lại. Tôi nghĩ sự khác biệt lớn nhất đối với tôi là những công cụ. Visual Studio là một sản phẩm tuyệt vời trên làm cho mã hóa một niềm vui. Thêm vào một addon refactoring cho VS như Resharper và bạn có thể sẽ không nhìn lại.

Tùy thuộc vào loại phát triển bạn làm, tôi sẽ tránh WPF lúc đầu và dính vào WinForms (hoặc WebForms vs Silverlight) vì bạn sẽ có nhiều hơn ở nhà có từ Java. Chuyển sang WPF hoặc Silverlight khi bạn bắt đầu cảm thấy thoải mái vì có rất nhiều thứ để học với các khung công tác này.

Bạn cũng sẽ thấy rằng nhiều thư viện OpenSource mà bạn có thể đã sử dụng trong quá khứ đã được chuyển sang .NET, do đó có thể giúp bạn chạy nền tảng.

Cuốn sách hay nhất theo ý kiến ​​của tôi là Professional C# 2008 bởi Wrox Press. Là một lập trình viên Java, bạn sẽ không có quá nhiều vấn đề với ngôn ngữ, bạn sẽ cần sự trợ giúp nhiều nhất với khung công tác. Cuốn sách này sẽ rất hữu ích ở đó.

+0

Khi nào bạn di chuyển, không quan tâm? Tôi đã làm khi Java là 1,4 và C# là 1,0 - tại thời điểm đó các ngôn ngữ đã thực sự rất giống nhau. Họ đã phân kỳ đáng kể kể từ đó ... –

1

Đừng nghĩ nó như một công tắc. Nếu bạn học một ngôn ngữ mới như C#, bạn không giao dịch trong tất cả các kiến ​​thức bạn có trong Java. Phải mất vài tháng cho đến khi bạn bắt đầu suy giảm kỹ năng ngôn ngữ khác. Hãy dùng thử và xem nó có phù hợp với bạn hay không. Java sẽ ở đó thêm vài năm nữa nếu bạn thay đổi ý định. :)

Tôi khuyên bạn nên (và nhiều lần đã đề xuất) Head First C# làm sách .NET đầu tiên của bạn. Toàn bộ series thực sự vượt trội so với IMHO.

+0

Tôi không phải là một fan hâm mộ lớn của HFC# với lý do đó là tất cả dựa trên GUI - có nghĩa là bạn luôn làm việc với một cơ sở mã lớn mà bạn hầu như không hiểu. Tuy nhiên, đó là một điều ưu tiên phong cách. Nhưng bạn * phải * nhận phiên bản mới nhất. Các phiên bản trước đó có vô số lỗi, hầu hết đã được sửa đổi –

+0

"Bạn" là người mới bắt đầu, tất nhiên. Bất kỳ ai có trải nghiệm .NET sẽ không tìm thấy các ví dụ quá khó hiểu. –

+0

Có, chắc chắn có phiên bản mới nhất. –

3

Nhận plugin tái cấu trúc hợp lý cho VS, vì bạn sẽ bỏ lỡ tất cả các cấu trúc lại tốt đẹp của Java-IDE của bạn.

1

Là nhà phát triển Java-C#, tôi không chắc chắn có bất kỳ điều gì tôi muốn làm khác.

Đối với sách để đọc, tôi đã sử dụng số C# Pocket Reference từ O'Reilly. Tôi thực sự thích những cuốn sách này vì chúng nhỏ nên bạn có thể có chúng ở bên cạnh bạn và dễ dàng lướt qua chúng khi bạn gặp vấn đề.

Tham chiếu khác tôi khuyên bạn không nên là một cuốn sách, đó là .NET Framework Class Library trên MSDN. MSDN là hữu ích nhất cho việc học khuôn khổ, chứ không phải là ngôn ngữ.

1

Tôi lưu ý rằng bạn đã nói. Net thay vì bất kỳ ngôn ngữ Net cụ thể nào. Tôi chuyển đổi qua lại giữa Java và VB.Net, C#. Net và một smattering của C + +.

Điều chính cần lưu ý là hầu hết các ngôn ngữ đều có chung nguồn gốc và tương tự với mức độ nào đó, do đó điều đầu tiên cần làm là xác định sự khác biệt. Hãy ghi nhớ và bạn sẽ có một khởi đầu tốt trong việc có thể chuyển những kiến ​​thức hiện có của bạn sang môi trường mới. Điều tiếp theo cần làm là kiểm tra kiến ​​thức hiện tại của bạn không bị bỏ qua bởi một số tính năng ngôn ngữ mà bạn chưa từng gặp trước đây. đóng cửa, đặc biệt được xây dựng trong lớp học/chức năng vv

tôi cũng cố gắng để đảm bảo rằng các IDE Tôi đang sử dụng có:

  • Common/phím tắt cấu hình.
  • công cụ tái cấu trúc (được xây dựng hoặc bên thứ ba).
  • Plugin thích hợp cho bộ công cụ tôi đang sử dụng.

Điều này chủ yếu là để giảm thời gian tôi bỏ "IDE" vì tôi sử dụng nhiều phím tắt và tôi không muốn để IDE chạy những thứ như Maven chẳng hạn.

Tôi muốn giới thiệu cuốn sách về các API spefic bạn sẽ được sử dụng, và chắc chắn rằng bạn có một kết nối internet tốt như Google là bạn của bạn :-)

Luôn luôn có một vài điều mà lỗi tôi về nhất ngôn ngữ (không ai trong số họ là hoàn hảo) nhưng không ai là kẻ giết người. Những điều nhỏ nhặt bao gồm các khai báo VB đối lập với hầu hết các ngôn ngữ khác mà tôi thường sử dụng ngày nay, mặc dù đã nói rằng 15 năm trước khi tôi sử dụng PL-1/PL-X rất nhiều, tôi đã rất bực mình về Java/C *. phong cách thông thường của tôi.

Tôi nhảy qua lại và thường tôi cố gắng sử dụng (các) công cụ thích hợp nhất cho công việc. Sự thất vọng duy nhất tôi có là nếu tôi sử dụng công cụ sai.