2010-04-11 41 views
11

Tôi có hơn 6 năm kinh nghiệm về C/C++. Ngày mai bắt đầu một trường đại học, nơi tôi sẽ phải sử dụng C#. Vì vậy, tôi muốn có một danh sách các liên kết/tài nguyên mà bạn nghĩ quan trọng hoặc một hướng dẫn mở rộng - trong tất cả mọi thứ ngắn bạn nghĩ xứng đáng.Giới thiệu về C# cho người dùng C/C++

Mã hóa phong cách, thực hành tốt nhất, ...

(Tôi không biết bất kỳ chi tiết cụ thể về môi trường C# Tôi sẽ sử dụng (IDE, hệ điều hành, w/e), cuộc họp đầu tiên là tối mai) .

(Tôi chưa bao giờ mã C# trước)

Một điều nữa: Tôi muốn làm việc bằng Linux (kubuntu 10.4). IDE/môi trường/hướng dẫn đề xuất về Linux đặc biệt là rất hoan nghênh.

Cảm ơn sự giúp đỡ của bạn!

+7

Thành thật mà nói, tôi sẽ không lo lắng quá nhiều về điều đó. Bạn sẽ phải quên hầu hết những gì bạn biết về quản lý bộ nhớ, nhưng nó sẽ thực sự dễ dàng để nhận. C# không đặc biệt khó học, đặc biệt nếu bạn đã có kinh nghiệm lập trình. Generics có thể mất một hoặc hai, nhưng thậm chí chúng khá đơn giản. Bộ sưu tập chung sắp trở thành người bạn thân nhất của bạn. –

+0

thích hợp để nghe. :) cảm ơn –

+0

(Tôi chưa bao giờ mã hóa C# trước đây) -> thực sự là một tuyên bố mạnh mẽ. Bản thân tôi cũng có cùng nỗi sợ trước khi chuyển từ nhúng sang C#. Tôi đã sử dụng một C# cho cuốn sách núm vú giả thời gian đó. Đơn giản như các tiểu bang sách. : D – Hanseh

Trả lời

1

Có về cơ bản là một biên tập viên cho C# được sử dụng bởi tôi đoán 80% C# nhà phát triển, Visual Studio.

Bắt đầu tải xuống mua/tải xuống. Bạn có ấn bản nhanh, miễn phí và có nghĩa là để sử dụng cá nhân. Nó chỉ là một IDE đơn giản không có gì lạ mắt. Nếu bạn có một số tiền để chi tiêu (hoặc có thể nhận được thông qua các trường đại học) đi cho một phiên bản cao cấp hơn của VS, như hệ thống chuyên nghiệp hoặc đội. Cả hai đều bao gồm các nhà thiết kế biểu mẫu và nhiều khả năng nâng cao hơn.

Rất nhiều cho IDE.

Tôi đoán nếu bạn đi từ C++ đến C# "vấn đề" lớn nhất sẽ là sử dụng chức năng hiện có trong khuôn khổ .NET thay vì tự làm nó. Đây là những gì tôi thấy thường xuyên khi mọi người đi từ C + + (ngay cả với tăng) để. Khuôn khổ quá lớn và chứa hầu như tất cả mọi thứ, vì vậy mỗi khi bạn thấy mình viết một số aux. lớp mà không phải là tên miền cụ thể, tra cứu trong hướng dẫn nếu một cái gì đó như thế không tồn tại. Tỷ lệ cược là họ đang trong khuôn khổ.

Và cuối cùng, học cách sử dụng lambda's, bạn sẽ tận hưởng chúng rất nhiều !! Đó là điều duy nhất mà C++ không hỗ trợ bởi chính nó. Tất cả các phần mở rộng như tăng cường thêm lambda's soo phức tạp và xa thanh lịch mà nó thường không có giá trị để sử dụng nó.

+0

Tôi nghĩ 80% là quá thấp. ':)' Tôi thứ hai tuyên bố về việc đầu tiên nhìn vào khuôn khổ. (Lambdas, BTW, sẽ là một phần của C++ 11.) – sbi

1

tôi sẽ bắt đầu với hai cuốn sách:

  1. "C# Trong một Nutshell", O'Reilly (phiên bản mới nhất bao gồm C# 4).
  2. "Khung Thiết kế Hướng dẫn: ước, thành ngữ, và Patterns cho Reusable NET Libraries, Second Edition", AW

Một đường mòn 30 ngày của Safari Books Online sẽ cung cấp cho bạn truy cập vào tất cả cho đến khi bạn quyết định xem họ bộ bạn).

Với tất cả sự tập trung vào số 1 ban đầu.

Khi tôi đã học C# 1 (trong khi .NET 1.0 trong một vài giờ với "C# Essentials" Tôi chỉ cần một cái gì đó để hiển thị được cú pháp và ngữ nghĩa như tôi đã biết làm thế nào để chương trình.

+0

Bạn là một nhà tư tưởng âm thanh như tôi eh :) "như tôi đã mới làm thế nào để chương trình". Cảm ơn gợi ý. Đáng buồn là những cuốn sách này khá đắt tiền. Gợi ý là để có được chúng rẻ hơn (Ngoại trừ thư viện). –

+1

@Ronny: "C# Essentials", một đồng nghiệp có kiến ​​thức, và SO là tất cả những gì tôi từng đến từ (gần 20 năm) C++ đến C#. Điều đó là đủ. Xem tại đây: http://books.google.de/books?id=pbzW8VGuqrIC&printsec=frontcover&hl=vi&source=gbs_v2_summary_r&cad=0. – sbi

+0

@Ronny: nhiều trường hợp nhập nhanh hơn. – Richard

0

Nếu bạn có thể viết C++, bạn có thể viết C# với rất ít nỗ lực. Nhưng ngôn ngữ C# là một phần rất nhỏ để trở thành một nhà phát triển .NET, đó là trải nghiệm với .NET Framework mà bạn sẽ bỏ lỡ trong một thời gian tới. Và thư viện lớp cơ sở có một lõi chung nhỏ và một số bộ công cụ gần như hoàn toàn khác nhau (WinForms, ASP.NET, WPF, WSDL + WCF, Workflow Foundation), có thể cho một nhà phát triển C# rất kinh nghiệm biết hầu như không có gì trong số các đặc sản này .

Cho đến khi bạn tìm hiểu nhiệm vụ của mình là gì, chúng tôi sẽ không biết bạn cần làm quen với những lĩnh vực nào trong số này và không thể đưa ra nhiều con trỏ.

Có thể bạn sẽ thấy hữu ích khi tham khảo "API được quản lý thay thế" trên pinvoke.net cho tất cả các loại chức năng gốc của Windows.

+0

lý do cho downvote? –

+0

Tôi không bỏ phiếu. đoạn trên là tổng số bla. Tôi không biết pinvoke, vì vậy tôi không có bình luận về điều đó. –

+0

Viết lại đoạn đầu tiên vì nó không hề gọn gàng. Cảm ơn vì bạn đã phản hồi. Pinvoke.net hữu ích nhất khi bạn biết các API cũ, cho dù bạn đang tìm cách sử dụng chúng từ bên trong .NET (P/Invoke) hoặc tìm cách thay thế .NET theo kiểu kinh điển. hầu hết các chức năng. –

Các vấn đề liên quan