我们在微软怎样开发软件(英文版)
0推荐 收藏
3.0K阅读
图灵程序设计丛书

我们在微软怎样开发软件(英文版)

Donis Marshall , John Bruno (作者)
终止销售
本书探讨了编写高质量代码的最佳实践,涉及软件开发的各个方面。书中的实用建议来自经验丰富的工程开发人员,这些建议可以应用于设计、原型化、实现、调试和测试等产品开发生命周期的各阶段。同时,本书也提供了微软公司Windows Live Hotmail 和Live Search 等团队的真实开发案例。
本书适合各层次软件开发人员阅读。
纸质书
¥69.00

其他购买方式?

出版信息

  • 书  名我们在微软怎样开发软件(英文版)
  • 系列书名图灵程序设计丛书
  • 执行编辑关于本书的内容有任何问题,请联系 傅志红
  • 出版日期2009-05-30
  • 书  号978-7-115-20679-4
  • 定  价69.00 元
  • 页  数336
  • 开  本16开
  • 出版状态终止销售
  • 原书名Solid Code
  • 原书号978-0-7356-2592-1

同系列书

  • JavaScript高级程序设计(第4版)

    [美]马特·弗里斯比(Matt Frisbie)   李松峰   译

    本书是JavaScript经典图书的新版。第4版涵盖ECMAScript 2019,全面、深入地介绍了Java...

  • HTTP权威指南

    David Gourley   Brian Totty   Marjorie Sayer   Sailu Reddy   Anshu Aggarwal   陈涓   赵振平   译

    本书是HTTP及其相关核心Web技术方面的权威著作,主要介绍了Web应用程序是如何工作的,核心的因特网协议如何...

  • JavaScript高级程序设计(第3版)

    Nicholas C.Zakas   李松峰   曹力   译

    本书是JavaScript超级畅销书的新版。ECMAScript 5 和HTML5在标准之争中双双胜出,使大量...

  • 计算机科学的基础

    Al Aho   Jeff Ullman   傅尔也   译

    本书全面而详细地阐述了计算机科学的理论基础,从抽象概念的机械化到各种数据模型的建立,用算法、数据抽象等核心思想...

  • Python编程:从入门到实践(第2版)

    埃里克·马瑟斯(Eric Matthes)   袁国忠   译

    本书是针对所有层次Python读者而作的Python入门书。全书分两部分:第一部分介绍用Python编程所必须...

目录

Table of Contents

Introduction xxi
Who Is This Book For? xxi
Organization of This Book xxi
System Requirements xxii
The Companion Web Site xxii
Find Additional Content Online xxiii
Support for This Book xxiii
1 Code Quality in an Agile World 1
Traditional Methods of Software Development 2
Agile Methods of Software Development 3
Scrum 4
eXtreme Programming 5
Test-Driven Development 6
Moving Quality Upstream 8
Inside Microsoft: Windows Live Hotmail Engineering 10
Engineering Principles 10 Key Success Factors 11
Tactics for Writing Solid Code 13
Focus on Design 14
Defend and Debug 15
Analyze and Test 16
Improve Processes and Attitudes 16
Summary 17
Key Points 18
2 Class Design and Prototyping 19
Collaboration in Visual Studio 20
Think First, Code Later 21
Table of Contents Software Modeling 23
Unified Modeling Language 24
Prototyping 37
Summary 47
Key Points 47
3 Metaprogramming 49
What Is Metadata? 49
Metadata in Managed Applications 51
Application Configuration Files 52
Metadata in Your Applications 65
Inside Microsoft: Configuration Management in Windows Live Spaces 66
Summary 69
Key Points 69
4 Performance Is a Feature 71
Common Performance Challenges 72
Network Latency 72
Payload Size and Network Round Trips 74
Limited TCP Connections 75
Poorly Optimized Code 76
Analyzing Application Performance 78
Analyzing the Performance of Live Search 79
Tactics for Improving Web Application Performance 81
Reduce Payload Size 82
Cache Effectively 83 Optimize Network Traffic 84
Organize and Write Code for Better Performance 89
Incorporating Performance Best Practices 90
Establish a Performance Excellence Program 90
Inside Microsoft: Tackling Live Search Performance 92
Web Performance Principles 92
Key Success Factors 93
Summary 94
Key Points 95
5 Designing for Scale 97
Understanding Application Scalability 98
Approaches to Scalability 99
Database Scalability 102
Tactics for Scaling Web Applications 104
Inside Microsoft: Managing the Windows Live Messenger Service Infrastructure 115
Engineering Principles 115
Summary 118
Key Points 118
6 Security Design and Implementation 121
Common Application Security Threats 121
Principles for Designing Secure Applications 123
Security Design Principles 124
SD3+C Strategy and Practices for Secure Applications 125
Secure by Design 126
Secure by Default 130
Secure in Deployment and Communication 131
Understanding NET Framework Security Principles 133
Additional Security Best Practices 139
Summary 141
Key Points 141
7 Managed Memory Model 143
Managed Heap 144
Garbage Collection 145
Managed Wrappers for Native Objects 146
GC Class 147
Large Object Heap 148
Finalization 151
Non-Deterministic Garbage Collection 151
Disposable Objects 154
Dispose Pattern 155
Weak References 158
Pinning 160
Tips for the Managed Heap 162
CLR Profiler 163
CLR Profiler Walkthrough 164
Summary 168
Key Points 169
8 Defensive Programming 171
Defensive Programming and C# 172
Warnings 173
Code Review 174
Software Testing 175
Test-Driven Development 177
Code Coverage 180
Self-Documenting Code 181
Naming Conventions 182
Pseudo Code 183
Comments 185
Defensive Programming with Classes 188
Modifiers 189
Interfaces 189
Defensive Programming Without Examples 190
Defensive Programming with Examples 192
Design Patterns 196
Summary 198
Key Points 199
9 Debugging 201
Overflow Bug 205
Pentium FDIV Bug 205
Symbols 205
Symbol Server 208
Source Servers 209
Preemptive Debugging 210
Proactive Debugging 212
Managed Debugging Assistants 213
MDA Example 214
Code Analysis 215
Performance Monitoring 215
Debugging 218
Debugging Tools 220
Visual Studio 220
NET Framework Tools 222
Debugging Tools for Windows 223
CLR Profiler 224
Sysinternals 224
Tracing 225
Web Application Tracing 225
Exception Handling 227
Production Debugging 230
ADPlus 231
Summary 236
Key Points 237
10 Code Analysis 239
Invest in the Test Process 240
Define a Test Rhythm 241
Establish Test Work Item Tracking 243
Incorporate Automated Code Analysis 245
Use Static Code Analysis Tools 245
Write Application Test Code 248
Testing with Visual Studio 253
Use Metrics to Understand Quality 254
Measuring Complexity and Maintainability of Code 255
Using Perspectives to Understand Quality 256
Inside Microsoft: Managing Quality for the Microsoft com Web Analytics Platform

258
The Importance of Code Quality 258
The Test Investment 258
Managing Quality 260
Summary 261
Key Points 261
11 Improving Engineering Processes 263
Tactics for Engineering Process Improvement 264
Establish a Quality-Focused Project Rhythm 264
Implement Source Control and Check-in Processes 266
Release and Test Code Daily 274
Automate Daily Builds 277
Using MSBuild 278
Create and Enforce Quality Criteria 282
Summary 284
Key Points 285
12 Attitude Is Everything 287
Passion 287
Linear versus Iterative 288
Sales Are Good 289
Features 290
Flexibility 292
Solve Real Problems 293
You Are Responsible 294
Port Code as New Code 295
Refactoring 295
Priorities 296
Be Realistic 297
Paradigm Shift 298
Expand Your Perspective 299
A Agile Development Resources 301
B Web Performance Resources 303
Index 305

暂无评论!