دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: John Dooley
سری:
ISBN (شابک) : 9781430238010
ناشر: Apress
سال نشر: 2011
تعداد صفحات: 255
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 6 مگابایت
در صورت تبدیل فایل کتاب Software Development and Professional Practice به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب توسعه نرم افزار و تمرین حرفه ای نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
توسعه نرم افزار و تمرین حرفه ای نحوه طراحی و کدنویسی نرم افزار عالی را نشان می دهد. چه عواملی را در نظر می گیرید؟ چه چیزی یک طراحی خوب را ایجاد می کند؟ چه روش ها و فرآیندهایی برای طراحی نرم افزار وجود دارد؟ آیا طراحی برنامه های کوچک با طراحی برنامه های بزرگ متفاوت است؟ چگونه می توان یک طرح خوب را از یک طرح بد تشخیص داد؟ شما اصول طراحی نرم افزار خوب و نحوه تبدیل آن اصول به کد عالی را خواهید آموخت. این کتاب شما را با مهندسی نرم افزار - کاربرد اصول مهندسی در توسعه نرم افزار آشنا می کند. این اصول مهندسی چیست؟ اول، تمام تلاش های مهندسی از یک فرآیند تعریف شده پیروی می کنند. بنابراین، شما مدتی را صرف صحبت در مورد نحوه اجرای یک پروژه توسعه نرم افزار و مراحل مختلف یک پروژه خواهید کرد. ثانیاً، تمام کارهای مهندسی مبنایی در کاربرد علوم و ریاضیات در مسائل دنیای واقعی دارند. و همینطور توسعه نرم افزار! بنابراین برای بررسی نحوه طراحی و اجرای برنامه هایی که مشکلات خاص را حل می کنند، وقت بگذارید.
Software Development and Professional Practice reveals how to design and code great software. What factors do you take into account? What makes a good design? What methods and processes are out there for designing software? Is designing small programs different than designing large ones? How can you tell a good design from a bad one? You'll learn the principles of good software design, and how to turn those principles back into great code. This book introduces you to software engineering-the application of engineering principles to the development of software. What are these engineering principles? First, all engineering efforts follow a defined process. So, you'll be spending a bit of time talking about how you run a software development project and the different phases of a project. Secondly, all engineering work has a basis in the application of science and mathematics to real-world problems. And so does software development! You'll therefore take the time to examine how to design and implement programs that solve specific problems.
Cover......Page 1
Contents at a Glance......Page 6
Contents......Page 7
About the Author......Page 16
About the Technical Reviewer......Page 17
Acknowledgments......Page 18
Preface......Page 19
Introduction to Software Development......Page 21
So, How to Develop Software?......Page 22
Conclusion......Page 24
References......Page 25
Process Life Cycle Models......Page 26
A Model That’s not a Model At All: Code and Fix......Page 27
Cruising over the Waterfall......Page 28
Backing Up the Waterfall......Page 30
Loops Are Your Friend......Page 31
Evolving the Incremental Model......Page 32
Agile Is as Agile Does......Page 33
XP Overview......Page 34
The Four Variables......Page 35
The 15 Principles......Page 36
The Four Basic Activities......Page 38
Implementing XP: The 12 Practices......Page 39
The XP Life Cycle......Page 41
Scrum, mate......Page 42
References......Page 44
Project Planning......Page 45
Risk Analysis......Page 46
Resource Requirements......Page 48
Project Schedule......Page 49
Status Reviews and Presentations......Page 52
The Post-Mortem......Page 53
References......Page 54
What Types of Requirements Are We Talking About Here?......Page 55
That Natural Language Thing......Page 56
Author’s Name......Page 57
Non-requirements......Page 58
Backlog......Page 59
Domain Requirements......Page 60
Requirements Digging......Page 61
Why Requirements Digging Is Hard......Page 62
Analyzing the Requirements......Page 63
References......Page 64
Software Architecture......Page 65
Pipe-and-filter Architecture......Page 66
An Object-Oriented Architectural Pattern......Page 67
The Problem......Page 69
View......Page 70
The Client-Server Architectural Pattern......Page 71
The Layered Approach......Page 72
The Main Program: Subroutine Architectural Pattern......Page 74
Conclusion......Page 75
References......Page 76
Design Principles......Page 77
The Design Process......Page 80
Desirable Design Characteristics (Things Your Design Should Favor)......Page 81
Design Heuristics......Page 82
Designers and Creativity......Page 84
Conclusion......Page 85
References......Page 86
Structured Programming......Page 88
Stepwise Refinement......Page 89
Modular Decomposition......Page 96
Top-Down Decomposition......Page 98
References......Page 100
Appendix: The Complete Non-Recursive Eight-Queens Program......Page 101
Object-Oriented Analysis and Design - An Overview......Page 104
An Object-Oriented Analysis and Design Process......Page 105
Doing the Process......Page 107
References......Page 114
Object-Oriented Analysis and Design......Page 116
ACT ONE, Scene 1: In Which We Enquire into Analysis......Page 117
ACT ONE, Scene 2: In Which We Deign to Design......Page 120
ACT TWO, Scene 1: Change in the Right Direction......Page 122
ACT TWO, Scene 2: In Which the Design Will also Change, for the Better......Page 124
ACT THREE, Scene 1: In Which We Do Design......Page 125
ACT FOUR, Scene 1: In Which We Philosophize on Abstraction......Page 127
Conclusion......Page 129
References......Page 130
Object-Oriented Design Principles......Page 131
Our List of Fundamental Object-Oriented Design Principles......Page 132
Encapsulate Things in Your Design That Are Likely to Change......Page 133
Code to an Interface Rather Than to an Implementation......Page 134
The Open-Closed Principle (OCP)......Page 136
Don’t Repeat Yourself Principle (DRY)......Page 137
The Single Responsibility Principle (SRP)......Page 139
Liskov Substitution Principle (LSP)......Page 140
The Dependency Inversion Principle (DIP)......Page 147
The Interface Segregation Principle (ISP)......Page 149
The Principle of Least Knowledge (PLK)......Page 150
Class Design Guidelines for Fun and Enjoyment......Page 151
References......Page 152
Design Patterns......Page 153
Design Patterns and the Gang of Four......Page 154
Patterns We Can Use......Page 156
References......Page 173
Code Construction......Page 174
A coding example......Page 176
Functions and Methods and Size, Oh My!......Page 177
General Layout Issues and Techniques......Page 178
White Space......Page 180
Block and Statement Style Guidelines......Page 181
Declaration Style Guidelines......Page 182
Commenting Style Guidelines......Page 183
Identifier Naming Conventions......Page 185
Defensive Programming......Page 187
Assertions Can Be Your Friend......Page 188
Exceptions and Error Handling......Page 189
The Last Word on Coding......Page 193
References......Page 194
Debugging......Page 195
What’s an Error, Anyway?......Page 196
What Not To Do......Page 197
An Approach to Debugging......Page 198
Source Code Control......Page 203
Conclusion......Page 205
References......Page 206
Unit Testing......Page 207
The Problem with Testing......Page 208
When to Test?......Page 209
What to Test?......Page 210
Characteristics of Tests......Page 212
How to Write a Test......Page 213
JUnit: A Testing Framework......Page 218
References......Page 222
Walkthroughs, Code Reviews, and Inspections......Page 223
Code Reviews......Page 225
Code Inspections......Page 226
Summary of Review Methodologies......Page 231
Defect Tracking Systems......Page 232
References......Page 233
Wrapping It all Up......Page 235
What Have You Learned?......Page 236
What to Do Next?......Page 237
References......Page 239
B......Page 240
C......Page 241
D......Page 243
E......Page 244
F......Page 245
I......Page 246
L......Page 247
O......Page 248
P, Q......Page 250
S......Page 251
T......Page 253
W......Page 254
X, Y, Z......Page 255