- 出版社: WROX PR/PEER INFORMATION INC; 1 (2010年4月5日)
- 外文书名: C#入门经典(第5版)
- 丛书名: Wrox Programmer to Programmer
- 平装: 1037页
- 语种： 英语
- ISBN: 0470502266
- 条形码: 9780470502266
- 商品尺寸: 18.9 x 5.1 x 23.5 cm
- 商品重量: 1.78 Kg
- 品牌: WROX PR/PEER INFORMATION INC
- ASIN: 0470502266
- 用户评分: 1 条商品评论
- 亚马逊热销商品排名: 图书商品里排第1,019,996名 (查看图书商品销售排行榜)
Beginning Visual C# 2010 (英语) 平装 – 2010年4月5日
KARLI WATSON is consultant at Infusion Development (www.infusion.com), a technology architect at Boost.net (www.boost.net), and a freelance IT specialist, author, and developer. For the most part, he immerses himself in .NET (in particular C# and lately WPF) and has written numerous books in the field for several publishers. He specializes in communicating complex ideas in a way that is accessible to anyone with a passion to learn, and spends much of his time playing with new technology to find new things to teach people about. During those (seemingly few) times where he isn’t doing the above, Karli will probably be wishing he was hurtling down a mountain on a snowboard. Or possibly trying to get his novel published. Either way, you’ll know him by his brightly colored clothes. You can also find him tweeting online at www.twitter.com/karlequin, and maybe one day he’ll get around to making himself a website. Karli authored chapters 1 through 14, 21, 25 and 26.
CHRISTIAN NAGEL is a Microsoft Regional Director and Microsoft MVP, an associate of Thinktecture, and owner of CN Innovation. He is a software architect and developer who offers training and consulting on how to developMicrosoft .NET solutions. He looks back on more than 25 years of software development experience. Christian started his computing career with PDP 11 and VAX/VMS systems, covering a variety of languages and platforms. Since 2000, when .NET was just a technology preview, he has been working with various .NET technologies to build numerous .NET solutions. With his profound knowledge of Microsoft technologies, he has written numerous .NET books, and is certified as a Microsoft Certified Trainer and Professional Developer. Christian speaks at international conferences such as TechEd and Tech Days, and started INETA Europe to support .NET user groups. You can contact Christian via his web sites, www.cninnovation.com and www.thinktecture.com and follow his tweets on www.twitter.com/christiannagel. Christian wrote chapters 17 through 20.
JACOB HAMMER PEDERSEN is a Senior Application Developer at Elbek& Vejrup. He just about started programming when he was able to spell the word ‘BASIC’, which, incidentally is the first programming language he ever used. He started programming the PC in the early ’90s, using Pascal but soon changed his focus to C++, which still holds his interest. In the mid ’90s his focus changed again, this time to Visual Basic. In the summer of 2000 he discovered C# and has been happily exploring it ever since. Primarily working on the Microsoft platforms, his other expertise includes MS Office development, SQL Server, COM and Visual Basic.Net.
A Danish citizen, Jacob works and lives in Aarhus, Denmark. He authored chapters 15, 16, and 22.
JON D. REID is a software engineering manager atMetrix LLC, an ISV of field service management software for the Microsoft environment. He has co-authored a variety .NET books, including Beginning Visual C# 2008, Beginning C# Databases: From Novice to Professional, Pro Visual Studio .NET, and many others. Jon wrote chapters 23 and 24.
MORGAN SKINNER began his computing career at a young age on the Sinclair ZX80 at school, where he was underwhelmed by some code a teacher had written and so began programming in assembly language. Since then he’s used all sorts of languages and platforms, including VAX Macro Assembler, Pascal, Modula2, Smalltalk, X86 assembly language, PowerBuilder, C/C++, VB, and currently C# (of course). He’s been programming in .NET since the PDC release in 2000, and liked it so much he joined Microsoft in 2001. He now works in premier support for developers and spends most of his time assisting customers with C#. Morgan wrapped up the book by authoring chapter 27. You can reach Morgan at www.morganskinner.com.
PART I: THE C# LANGUAGE
CHAPTER 1: INTRODUCING C# 3
CHAPTER 2: WRITING A C# PROGRAM 13
CHAPTER 3: VARIABLES AND EXPRESSIONS 31
CHAPTER 4: FLOW CONTROL 59
CHAPTER 5: MORE ABOUT VARIABLES 93
CHAPTER 6: FUNCTIONS 125
CHAPTER 7: DEBUGGING AND ERROR HANDLING 155
CHAPTER 8: INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING 185
CHAPTER 9: DEFINING CLASSES 209
CHAPTER 10: DEFINING CLASS MEMBERS 241
CHAPTER 11: COLLECTIONS, COMPARISONS, AND CONVERSIONS 277
CHAPTER 12: GENERICS 331
CHAPTER 13: ADDITIONAL OOP TECHNIQUES 373
CHAPTER 14: C# LANGUAGE ENHANCEMENTS 401
PART II: WINDOWS PROGRAMMING
CHAPTER 15: BASIC WINDOWS PROGRAMMING 447
CHAPTER 16: ADVANCED WINDOWS FORMS FEATURES 497
CHAPTER 17: DEPLOYING WINDOWS APPLICATIONS 533
PART III: WEB PROGRAMMING
CHAPTER 18: ASP.NET WEB PROGRAMMING 577
CHAPTER 19: WEB SERVICES 637
CHAPTER 20: DEPLOYING WEB APPLICATIONS 665
PART IV: DATA ACCESS
CHAPTER 21: FILE SYSTEM DATA 683
CHAPTER 22: XML 725
CHAPTER 23: INTRODUCTION TO LINQ 753
CHAPTER 24: APPLYING LINQ 795
PART V: ADDITIONAL TECHNIQUES
CHAPTER 25: WINDOWS PRESENTATION FOUNDATION 829
CHAPTER 26: WINDOWS COMMUNICATION FOUNDATION 899
CHAPTER 27: WINDOWS WORKFLOW FOUNDATION 935
APPENDIX A: EXERCISE SOLUTIONS 957
I already had the educational version of Visual Studio 2010, so I didn't have to buy the full up version. I've had two university level C++ courses, and even though I'm about halfway through the book, I've learned things from this book that weren't covered in the class.
I don't just read, I actually type the programs in. That helps with learning. Typos are easy to find and fix, as the IDE points them out. Sometimes I accidentally type in the wrong variable name, so I get a chance to practice my debugging skills, and keep them sharp. I maybe do one "let's try it" section per day. The first API section took me several days because I extended it beyond the minimal functionality he had in it.
I'm in chapter nine, now. It starts with basic classes, then talks about constructors, destructors, derived classes, abstract classes, and interfaces. I'm currently working on building a library using an interface class. After that are delegate functions.
I'm looking forward to dealing with parallel programming in a (much) later chapter. Visual Studio 2010 doesn't support C++ v 11.0; that starts with Visual Studio 2013. Mr. Horton has a Visual Studio 2013 C++ book available, and I plan on downloading the Express version of Visual Studio 2013 to work through the extended parallel programming sections. I can do any programming that depends on MFC in Visual Studio 2010. Anything I miss from a later version, I can get if I'm using Visual Studio on the job.
Visual C++ isn't as user friendly as Visual Basic, but you can do a lot more with it. I don't mind Horton doesn't cover much of the Visual Interface part; in my most recent job, I spent most of my programming time developing GUIs in Visual Basic. Also, I had some Murach books on Visual Studio programming, and they focused mostly on the GUI. I lost them when we moved to another building, so I had to replace them. I wouldn't have this book if I hadn't lost them, and this book is much better for actually learning the language.
Very thorough and detailed. I'm working through the actual C++ functionality. I'm very familiar with Visual Studio, as least as far as creating GUIs. For a work project, several years ago, I had to create a GUI that ran from the command line. I had a different C++ book then, and I managed to do it, but no thanks to the book. Horton's book showed me how to do that in just a couple of minutes.
Now by cutting all BS aside let me get to the point.
The book starts out good but then there are moments in the book where writer leaves me confused. The most problem I had was with Collections and Generics chapter. It turns out the collection itself are not that difficult as the examples make it so. The point I would like to make is not everyone in computer science or programming has a strong roots in mathematics so writer should avoid using Vectors or other mathematical examples to explain the concepts of programming. For example, in Generics chapter when writer was trying to explain the IComparable<T> and IComparer<T> along with 2 delegates, Comparing<T> and Predicate<T> he used the example of Vectors... which confused the heck out of me..
I understand delegates as they can store the reference to methods of matching signature and but when I was trying to look the .Net exposed generics delegates... it became so confusing... not because of delegates syntax but because of mathematical example that was picked to show that.
It rather should have been simple to say,
Comparing<T> sorter = new Comparing<T>(ClassExample.Compare);
Predicate<T> search = new Comparing<T>(ClassExample.Search)
instead of intimidating with lines like following...
Comparison<Vector> sorter = new Comparison<Vector>(VectorDelegates.Compare);
Vectors topRightQuadrantRoute = new Vectors(route.FindAll.(searcher));
seriously its get the reader focus on understanding the context of example instead of understanding the simple delegate syntax or purpose here. That is not the only thing.. it goes in defining logic for prime numbers and so on ... so too much focus on mathematical examples and algorithms takes you away from understanding the context..
I am learning C# because I want to learn ASP.Net ... my intention is no where to build mathematical, geometrical, algebra or calculus programs.... so I don't need all that ... I just need the writer to tell me the basic syntax in simple examples so I can apply it in my own code...
I am hoping this type of things will cut down in the future versions so the book can be equally helpful to everyone... instead of just for someone who is good at mathematics... it is a false concept that you have to be a good mathematician to be a programmer...
The second issue I have is that one can tell that this book is written by multiple authors. Some of the chapters and explanations are crystal clear, yet others are WORDY and the author's implementation of the english language makes difficult topics even more cloudy. You might have to ready certain sentences five or six times to make head or tails of the message he/she is trying to convey.
The book has overall solid chapters but the two previous issues are large enough to spoil it for me however.