This question has already been answered:

Hello to all.

Tell me, please, a good book on programming c # programs. I do not mean to study c #, but the complete guide to the implementation of a full-fledged program, the structure of the program is the design sequence. The fact is that I have an idea for the project. That is why I started studying Sharpe C, of ​​course, and besides the project I like this hobby, one might say, a hobby.

Together with learning a language, I try to apply everything new in my project, since it is meaningless to learn a language, not knowing how, what and where to use. I read about interfaces, delegates and events a hundred times. I did not understand where and how to apply. And all the time I come to the fact that I simply make references to classes and call methods through a variable. Of course, in this way I would have finished my project a long time ago, without any problems. But I would still like to approach this issue more professionally. I have already rewrote my project five times and come to one — all to complete confusion, one hundred forms, 1000 classes and a full House.

PS The book is preferably in Russian, since my English is not at that level, in order to understand what I do not always understand in Russian.

Reported as a duplicate by ixSci , fori1ton , null , ReinRaus , Arkady on May 14 '15 at 7:28 .

A similar question was asked earlier and an answer has already been received. If the answers provided are not exhaustive, please ask a new question .

  • This is no longer taught books on C #, but books on software design. All methodologies (ascending and descending design, modular systems, case, uml), patterns and anti-patterns, data structures. Grady Booch - object-oriented design, the book of four, Cormen - algorithms, gamma - Object-oriented design techniques, etc. etc. But I can’t tell you a good overview book, I haven’t met it. -------- And of course it is useful to look into someone else’s code how big systems are made by people with experience. - Alex Krass
  • Well and after: Classical books on C # , but, most likely, they will not cover many questions. - Alex Krass
  • @Alex Krass is certainly a wonderful list, but most of these TSU books still grow and grow, and they are also abstracted from specific technologies - DreamChild

2 answers 2

Since the language is one, but the applications on it can create the most different - and desktop, and web applications, and services, even under androids-macs, and indeed many different things, it is logical that for each appropriate platform there are specific application development guides. Therefore, I will also recommend a book on a specific platform.

A very good book by Adam Freeman " Pro ASP.NET MVC " will fit your criteria. It is in Russian translation and is regularly reissued when new versions of ASP.NET MVC are released (although Russian translation is delayed by 1-2 versions). And it is organized in such a way that phased writing of a web application is taken as a basis with consideration of most important aspects of application development - the MVC pattern, unit testing, dependency inversion, and many other interesting and necessary things. In addition, the book reviews some useful aspects of the language itself (such as Linq) and, of course, describes many aspects of web development. Despite the fact that the book is tied specifically to web programming, most of the techniques described in it are well suited for developing any type of applications (in particular, the same unit tests are used everywhere, regardless of the types of applications)

  • Yes, sorry, I forgot to specify: I am writing a program for windows with forms in general. - Gennady Pisarev
  • I won’t say about WinForms, but in general this technology is pretty lousy and not very promising, but in this book I’ve applied many techniques not only to web applications, but also to any other - DreamChild
  • that's not a bad guide for my question. If it will be interesting to beginners. youtube.com/watch?v=N6RNy3rPZpg at least I did a project from a lesson, but, to be aware, I am still weak in programming to realize and really understand what is happening there, or rather, I understand, but how to apply it in my task, Alas: (. Then I will continue my project in such a way as I did initially - Gennady Pisarev

First of all, I suggest reading the Andrew Troelsen book C # 5.0 programming language and platform. NET 4.5. There is both about language and about libraries and about project structure. Very friendly presentation.

For more in-depth study of the C # language itself, I recommend the "C # 5.0 Handbook Full Language Description" by Joseph Albahari and Ben Albahari. The authors are very deep in the nuances of the language and give many useful examples.

For a program with Forms, that is, a desktop application, the recommended WPF technology. On it there is a good book Windows Presentation Foundation in NET 4.5 with examples in C # 5.0 for professionals Matthew McDonald.

Windows Forms technology is considered obsolete. Its detailed description can be found in older editions of books on the .Net platform. In the new books it is presented briefly in the appendix.

There is detailed information on this subject here. Books on C # and other literature.