Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 months ago.
Improve this question
What books would you guys recommend if one has been a java developer for years and is now trying to take the c#/asp.net route?
First read this whitepaper:
C# From a Java Developers Perspective
Then, you can move onto books that cover the .NET framework, as you'll see the langauges differences are very quick to learn.
CLR Via C# is a great book for C# for people with experience programming. Especially experience in other managed languages
I have recently done exactly this and found the two most valuable books to be:
CLR via C# by Jeffrey Richter. Very well written and gives a great insight into the .net runtime - lots on the concepts you will already know from java such as garbage collection, threading, generics, etc. Plus really good in depth coverage of c# constructs like delegates and events that don't come with java (yet).
and
Pro C# and the .net 3.5 Platform by Andrew Troelsen. This is much more of a general text on the .net ecosystem. It has an excellent core language section, but then also gives a really good overview of the major libraries and apis - WPF, WCF, ASP.net, etc.
Those should provide you a solid foundation and are both pitched perfectly for the experienced programmer. After that, you'll probably end up looking for something more specific to the technology you are working in - a detailed ASP.net book in your case - but I constantly refer to both of these, so it is money well spent imho.
I find
Pro C# with .NET 3.0, Special Edition
by Andrew Troelsen
Apress © 2007 (1238 pages)
ISBN:9781590598238
to be an excellent book.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I want to start reading about multithreading and parallel computing in C# / .Net 4.0.
I understand the basics of multithreading so I'm looking for something that is going to provide more than just the basics. I'm also looking for something that is up to date with the changes in .Net 4.0.
Can you recommend a book?
Many thanks.
I suppose when it comes to anything in C#, I would recommend CLR via C#. It has got two chapters on threading-parallelprocessing which is a must read.
I would recommend Patterns for Parallel Programming: Understanding and Applying Parallel Patterns with the .NET Framework 4, which cover different senarios and implementation:
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=86b3d32b-ad26-4bb8-a3ae-c1637026c3ee&displaylang=en
I'm making my way through http://www.albahari.com/threading/ which I find to be a very useful resource. It's been updated to cover the new parallel options in c# 4.0.
I would recommend this chapter from C# in nutshell 4.0, It's really a greate resource.
Good luck!
Concurrent Programming on Windows by Joe Duffy. It has everything you need to know about concurrency multi-threading including PLINQ.
This will be a good start: Parallel Computing Developer Center
A Tour Through the Parallel Programming Samples for .NET 4
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I've decided to start learning C#, but all the tutorials I can find are very dry and speak to the reader as if the reader is a machine.
How about some tutorials that talk to me like I'm a human?
This is about as friendly an introduction as I could find
I'd also have a look over Head First C# if I were you
When I went to a training course by Microsoft to learn C#, I received a complimentary copy of Microsoft Visual C# 2008 Express Edition: Build a Program Now! by Microsoft Press, and actually found it a pretty pleasant read.
I agree with the rest that you're more likely to find 'humanized' tutorials in books than online. I've read so many tutorials myself and know what you mean when you say they're dry.
I would recommend the books of wrox and O'reilly. They are very reader friendly, ands very good.
They explaina large scala of c# in a very understandable manner. I believe a book is better then a tutorial, because the concepts are linked together so it is easier to understand.
One of the best books for beginners I know is head first
In that case probably the best tutorial source would be a book. The tutorials you will find online are very generalized and usually intend to teach the reader how to accomplish a specific task. The worst thing about online tutorials is the fact that those are not structured. Therefore, as you go, you can get confused on what to learn next.
I would recommend starting with Pro C# 2010 and the .NET 4 Platform, Fifth Edition by Andrew Troelsen. It starts with the basics and goes on to more complex elements in a very structured way, so you learn step-by-step. You can also try tackling C# in Depth by Jon Skeet - it is one of the best books you can currently find on C#.
One more thing - the best way to learn a language in my opinion is not by tutorials but by having small tasks and trying to accomplish them. For example, you want to learn how to write to a text file. You research this topic and eventually you find out more about the whole process and why it works the way it does. The syntax understanding comes with this as well.
I found this Book a very good and gentle introduction to C#.
C# Yellow Book
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
Firstly, I realise that this is a very similar question to this one: Which are the good open source libraries for Collective Intelligence in .net/java?
... but all the answers to that one were Java centric so I am asking again, this time looking more for .Net (idealy C#) ideas.
A little background; I recently read Toby Segran's excellent book on CI, and I just got hold of Satnam Alag's book (which I am sure is also excellent, but I have only just opened it). These are Python and Java centric, I don't have any trouble reading the code samples, but as I am a C# developer it would be fun to play with some of these ideas in my native language. I've had a search of the web and SO and not come up with too much. In a way this is great news, maybe I could port something to .Net (suggestions welcome), but I'd also really like to take a look at any existing projects before I do this.
So, are there an CI fans out there working in .Net with OS projects, have I missed some glaringly obvious and interesting books/sites/blogs?
I realise CI is a pretty broad field, so to narrow it down a little I am primarily interested in the clustering / prediction /recommendations areas, but am open to other ideas.
Edit: Just spotted this book about to be published by Manning which may interest CI fans: Algorithms of the Intelligent Web.
Edit Clarification in response to comment by Moose; what I am looking for really is libraries, frameworks or larger-scale projects (idealy OS) that use CI techniques with .Net. Code samples are great, but as Moose said in his comment it is easy enough to take Java examples and port them. For example, there is an interesting looking project written in Java called WEKA, there is no reason I can't use this and experiment with it, I was just curious to know if there were similar things going on in .Net. I have just been browsing info on Lucene and I see that there is a C# port of that, so that's a start... are there any more out there?
Edit This is not C#, but it is .Net; Robert Pickering has started collection F# CI resources here. Looks interesting, but I'm still looking for C# info too.
Here's a link for a slope one predictor for rating-based collaborative filtering:
C# Implementation of Slope One
Microsoft Research ( full disclosure: I work at Microsoft, though not in the group that released this tool ) has just released a machine learning library in .NET called Infer.NET.
link text
You might want to check it out.
This library has:
Supervised
Perceptron
Kernel Perceptron
KNN
Decision Trees
Unsupervised
Hierarchical Clustering
KMeans
It is called Machine Learning for .NET.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
Can anyone direct me to a smallish C# application that would be symbolic of the "right way" to design a program? I'm looking for a relatively simple (potentially trivial) program from which to analyze and learn.
The application should have a relatively trivial problem to solve and should solve it in a rather straight-forward way while showing off best practices/good object oriented design.
I've been studying C# rather a lot of late, and while I'm becoming confident in my understanding of parts of the .Net framework and the C# syntax, I'm having difficulties with the general concept of design and how a project fits together.
Thanks for any sources you can provide!
There are plenty of projects on this site:
http://www.codeplex.com/
First, take a look at the previous question on this topic. It's at https://stackoverflow.com/questions/143088/open-source-c-projects-that-have-very-high-code-quality-to-learn-from.
To that list I would add:
ASP.NET MVC Storefront (MVC
reference)
SubSonic
Rawr (good Windows Forms app)
All of these are on Codeplex.
A great project that is object oriented and uses best practices is SharpDevelop. You can download the source here: http://www.icsharpcode.net/OpenSource/SD/Download/. It's actually an IDE, so you can use it to write your code too.
I downloaded the source, loaded it up in Visual Studio, compiled it, and ran it in Debug mode... all in about 5 minutes without doing any special setup!
The only catch is that the solution itself is not very small, but is broken into a lot of small projects, so that is why I am recommending it.
You can download something like BlogEngine. If you download the full source version you can set break points and walk thru the code and see how they implement things.
Otherwise there are a ton of projects on codeplex.
Microsoft has a great library of this stuff:
ASP.NET Quick Start Tutorials
ASP.NET Starter Kits and Community Projects
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Long ago I read a great book on C# and Visual Basic best practices:
Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers
by Francesco Balena, Giuseppe Dimauro
(source: dotnet2themax.com)
This book was very helpful to me in its time, which dates back to ASP.NET 1.1. Please list some current best practices for ASP.NET, C#, and Visual Basic. And if you've read the book, what are some best practices or guidelines within it that you feel have been outdated?
For C# and .Net in general I'd highly recommend picking up Krzysztof Cwalina and Brad Adams' book "Framework Design Guidelines". That book along with running my code against FxCop and the ReSharper Code Analysis has really helped me keep my code clean and lean
It is hard to list all good practices at once. But here is a starting list.
Always start developing your pages by disabling state management features like the view state and session. Enable them only if they are absolutely necessary.
Know the ASP.Net page life cycle.
Don't mix up html markup with code and javascript.
Embed web resources like images and java script files in a .Net assembly.
The Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries by Krzysztof Cwalina and Brad Adams is probably the best resource out there. While the book emphasizes of reusable libraries you can easily tailor the guidance to standards projects.
Brad Adams (one of the authors of the book), also blogs about many of the rules frequently.
C# and VB coding Standards Reference documents
For coding style, look at Clint Edmonson's C# and VB coding Standards Reference Documents.
Two good resoruces for ASP.NET specific guidance is the MSDN Security Guidelines: ASP.NET 2.0 and the ASP.NET Coding Standards published by the Victoria, Australia's Department of Eduction and Early Childhood Development.
Finally, SSW (another group in Australia) has a great section called SSW Rules to Better... which has all kinds of rules for different development activities.