Học C # và bị mắc kẹt trong một lối mòn [đóng]


12

Tôi đã học C # /. NET 4.0 được khoảng 2/3 tháng, đây là ngôn ngữ lập trình nghiêm túc đầu tiên của tôi (tôi đã xem PHP, HTML, CSS, JavaScript và VBA trước đây nhưng chưa bao giờ tìm hiểu sâu) bắt đầu trở nên hơi bế tắc:

  • Tôi đã tăng trần với việc học của mình do thiếu một dự án 'lớn' ...
  • Thiếu làm việc trong các dự án phức tạp đang khiến tôi nghi ngờ về khả năng của mình ...

2 tuần trước tôi đã có một cuộc phỏng vấn cho một công việc Lập trình viên Junior và đã trả lời được hầu hết các câu hỏi đã được trả lời cho tôi, nhưng tôi vẫn không nhận được công việc do thiếu kinh nghiệm thực tế, tôi không biết phải làm gì làm đi

Như tôi đã nói trước đây, tôi sẽ không đóng góp cho dự án Nguồn mở, nhưng tôi không biết bắt đầu từ đâu, tôi cho rằng các dự án 'lớn' chỉ muốn các lập trình viên giỏi :(

Có bất kỳ hình thức kiểm tra lập trình trực tuyến nào sẽ cho tôi thấy tôi 'tốt' (hoặc 'xấu') như thế nào không? :)

Cảm ơn vì bất kì sự giúp đỡ.

Câu trả lời:


8

Tôi sẽ hỏi bạn những gì bạn quan tâm (sở thích, v.v.) và sau đó xem những dự án lớn hơn bạn có thể đưa ra có liên quan đến điều đó. Ngoài ra, bạn có thể kiểm tra Project Euler nếu bạn chỉ tìm kiếm các bài tập, nhưng tôi nghĩ rằng các dự án mà cá nhân bạn quan tâm là tốt hơn.


Đây là vấn đề, tôi nghĩ tôi không hoàn toàn chắc chắn khu vực ưa thích của mình nằm ở đâu trong lĩnh vực mã hóa. Nói chung, tôi thích xe hơi / xe đạp và chương trình truyền hình / Phim nhưng rất nhiều dự án xoay quanh chúng đã được thực hiện. Tôi cũng sợ thử một thứ gì đó phức tạp ồ ạt, Điều phức tạp nhất tôi đã làm là một thứ Người / Quái vật trong XNA nơi Con người chạy trốn và Quái vật chạy về phía đó, nhưng đó là về nó!
JuniorDeveloper1208

4
Ai quan tâm nếu nó đã được thực hiện? Khi bạn đang học, hoàn toàn ổn khi phát minh lại bánh xe. Tôi đã dần dần xây dựng một chương trình thư viện ảnh với cơ sở dữ liệu để lưu trữ các thẻ và tất cả các loại siêu dữ liệu khác về ảnh. Chắc chắn nó đã được thực hiện nhưng tôi muốn tiếp tục với C # của mình và nó có vẻ như là một dự án thú vị. Nó không được thực hiện (có thể không bao giờ) và bây giờ tôi đang nghĩ đến việc xây dựng lại UI để tự dạy WPF. Đây hoàn toàn là một dự án học tập và nếu tôi hoàn thành và phát hành thứ gì đó tôi sẽ ngạc nhiên! Nhưng tôi đã học được rất nhiều !!
Thất vọngWithFormsDesigner

1
@toleero: Con người / quái vật trong XNA nghe có vẻ vui. Điều tiếp theo, thêm vũ khí? Nó sẽ đòi hỏi phải làm việc lại lớn nhưng nó sẽ có giá trị nó. Hoặc có thể bắt đầu với các loại quái vật khác nhau như nhanh / chậm, yếu / mạnh, to / nhỏ ...
Thất vọngWithFormsDesigner

1
@toleero: Đây thực sự là một dự án khởi đầu rất tốt, có rất nhiều, rất nhiều hướng bạn có thể đi vào .;)
Thất vọngWithFormsDesigner

1
@Frustrated, @toleero: Chính xác. Tôi có một vài dự án mà tôi luôn nghĩ về các tính năng mới để thêm vào. Điều gì xảy ra là: Bạn thêm một tính năng nhỏ, và nghĩ thêm 5 tính năng nữa. Khi bạn tiếp tục thêm chúng, ý tưởng của bạn sẽ tốt hơn, bởi vì kỹ năng của bạn trong việc thực hiện chúng trở nên tốt hơn và bạn đang nghĩ xa hơn cách thực hiện chúng. Trong một hoặc hai năm, bạn sẽ nhìn lại và nghĩ rằng các dự án đầu tiên của bạn đơn giản như thế nào! Hãy nhớ rằng bạn chỉ có thể thấy bạn đã đi bao xa khi đến đó.
Michael K

2

Toàn bộ điểm của nguồn mở là nguồn mở và bạn có thể tự do làm hầu hết mọi thứ bạn muốn với nó, ngoài việc yêu cầu nguồn của riêng bạn và phân phối mà không cần nguồn.

Tìm một dự án mà bạn thích và sử dụng, nhưng bạn nghĩ rằng có thể có một số cải tiến cho nó.

Lấy chi nhánh ổn định mới nhất, tải về.

Thực hiện các thay đổi mà bạn nghĩ sẽ tốt cho dự án.

Cho mọi người thấy trong cộng đồng sự tiến bộ và những cải tiến của bạn.

Nếu họ thích nó, họ có thể bao gồm nó trong nhánh chính.

Nếu họ không thích nó, nhưng bạn nghĩ nó thực sự tốt. Ngã ba dự án, thiết lập trang của riêng bạn với nguồn của bạn, đảm bảo đọc giấy phép của họ để bạn có được mọi thứ chính xác.


1

Thử nghiệm duy nhất có giá trị là vận chuyển một phần mềm hữu ích, có thể sử dụng và mạnh mẽ. Bất cứ điều gì khác là chuyện vặt.

Tôi sẽ đề nghị bạn truy cập CodePlex để xem khá nhiều dự án nguồn mở sử dụng C # và .NET. Một cái gì đó sẽ thu hút sự quan tâm của bạn như một chương trình hoặc thư viện mà bạn thực sự sẽ sử dụng. Hãy dùng thử và lưu ý những điều bạn sẽ thay đổi để làm cho nó tốt hơn.

Bạn thực sự không phải lo lắng về việc được chấp nhận vào nhóm phát triển, vì bạn chỉ cần kéo codebase và thực hiện các thay đổi của riêng mình cho nó. Nếu bạn nghĩ rằng bạn đã nghĩ ra thứ gì đó thực sự có giá trị, thì hãy tiếp cận nhóm dev.


Thủ tướng của tôi sẽ lập luận rằng thời hạn sẽ thay thế tính hữu dụng / độ bền bất kỳ ngày nào trong tuần, heh.
Brad Christie

@Brad - Tôi nghe điều tương tự vào mỗi thứ ba lúc 2 giờ chiều
Adam Crossland

1

Có bất kỳ hình thức kiểm tra lập trình trực tuyến nào sẽ cho tôi thấy tôi 'tốt' (hoặc 'xấu') như thế nào không?

Kết quả của các xét nghiệm như vậy phần lớn không liên quan. Điều quan trọng là bạn có thể hoàn thành mọi thứ bằng ngôn ngữ được đề cập. Mà bạn rõ ràng là không thể.

Đây là gợi ý của tôi. Bạn chắc chắn đang đọc một cuốn sách về C #. Hầu hết các cuốn sách hay đều có một ví dụ thực tế mà bạn đang thực hiện thông qua cuốn sách được xây dựng trên đó và làm cho nó phức tạp hơn với chương trước. Hiểu ví dụ đó sau đó lập trình một điều đơn giản nhỏ cho bản thân bạn chú ý đến các thực tiễn tốt nhất được đề xuất. Sau khi hoàn thành, bạn có một chút tự tin về khả năng của mình và cũng sẽ có thứ để thể hiện.

Bắt đầu với việc làm .


Cảm ơn, tôi đã thực hiện một số điều (Một số ứng dụng WinForms, trò chơi hộp cát XNA và tôi đang viết Google Stock Tracker trong WPF) nhưng tôi cảm thấy khó khăn khi gắn bó với một dự án ...
JuniorDeveloper1208

1

Có bất kỳ hình thức kiểm tra lập trình trực tuyến nào sẽ cho tôi thấy tôi 'tốt' (hoặc 'xấu') như thế nào không? :)

Không có bài kiểm tra nào có thể cho bạn thấy điều đó (ngay cả khi có người quản lý / nhân sự nhân sự tin tưởng hoàn toàn ngược lại ;-). Nó chỉ hiển thị trong cuộc sống thực, làm việc trên các dự án thực tế, trong một khoảng thời gian dài hơn.

Như tôi đã nói trước đây, tôi sẽ không đóng góp cho dự án Nguồn mở, nhưng tôi không biết bắt đầu từ đâu, tôi cho rằng các dự án 'lớn' chỉ muốn các lập trình viên giỏi :(

Tôi tin rằng bạn có thể bắt đầu đóng góp nhỏ cho nhiều dự án nguồn mở. Ít nhất tôi tin rằng việc kiểm tra, báo cáo lỗi, đóng góp tài liệu chắc chắn được hoan nghênh vì nhiều nhà phát triển không thích những điều này :-) Và bằng cách này, dần dần bạn có thể xây dựng danh tiếng và bắt đầu đóng góp mã: sửa lỗi đầu tiên, sau đó thay đổi lớn hơn.

2 tuần trước tôi đã có một cuộc phỏng vấn cho một công việc Lập trình viên trẻ và đã trả lời hầu hết các câu hỏi đã được trả lời cho tôi, nhưng tôi vẫn không nhận được công việc do thiếu kinh nghiệm thực tế

Đừng bỏ cuộc, điều này đã xảy ra với hầu hết chúng ta tại một số điểm. Tiếp tục học tập, thực hành và áp dụng cho các công việc cơ sở và sớm hay muộn bạn sẽ có được một. Một điều bạn có thể và IMHO nên làm sau khi phỏng vấn là thu thập phản hồi. Nếu bạn điền vào một bài kiểm tra viết, đừng chỉ hỏi điểm của bạn mà còn hỏi bảng kết quả thực tế để xem các lỗi bạn đã mắc phải và học hỏi từ chúng. Phân tích quá trình phỏng vấn quá và tìm nơi bạn đưa ra câu trả lời dưới mức tối ưu, bỏ lỡ một nhịp, vv Lần tới, bạn có thể làm cho nó tốt hơn với sự chuẩn bị bổ sung.


Cảm ơn, tôi sẽ xem xét, tôi thấy rất khó để tìm một dự án để cam kết!
JuniorDeveloper1208

0

Đừng bao giờ sợ lập trình, những lập trình viên giỏi nhất là những người đã tạo ra những sai lầm lớn nhất. Những sai lầm ngu ngốc, những lỗi phức tạp, tất cả đều góp phần làm cho bạn trở thành một lập trình viên giỏi hơn.

Chúc may mắn !!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.