- Delphi High Performance
- Primo? Gabrijelcic
- 435字
- 2021-06-24 19:22:57
Preface
Performance matters!
I started programming on 8-bit micros, and boy, was that an interesting time! Memory was typically not a problem as we didn't write big programs, but they certainly weren't running fast, especially if you run them with a built-in BASIC interpreter. It is not surprising that I quickly learned assembler and spent lots of early years shifting bits and registers around. So did almost everybody else who wanted to release a commercial application written for one of those computers. There were, more or less, no games and applications written in BASIC simply because they would run too slow and nobody would use them.
Time has changed; computers are now fast—incredibly fast! If you don't believe me, check the code examples for this book. A lot of times, I had to write loops that spin over many million iterations so that the result of changing the code would be noticed at all. The raw speed of processors has also changed the software development world. Low-level languages such as assembler and C mostly gave way to more abstract approaches—C#, C++, Delphi, F#, Java, Python, Ruby, JavaScript, Go, and so on. The choice is yours. Almost anything you write in these languages runs fast or at least fast enough.
Computers are so fast that we sometimes forget the basic rule—performance matters. Customers like programs that operate so fast that they don't have to think about it. If they have to wait 10 seconds for a form to appear after clicking on a button, they won't be very happy. They'll probably still use the software, though, provided that it works for them and doesn't crash. On the other hand, if you write a data processing application that needs 26 hours for a job that executes daily, you'll certainly lose them.
I'm not saying that you should switch to assembler. Low-level languages are fast, but coding in them is too slow for modern times, and the probability of introducing bugs is just too high. High-level languages are just fine, but you have to know how to use them. You have to know what is fast and what not and—preferably—you should take this into account when designing the code.
This book will walk you through the different approaches that will help you write better code. Writing fast code is not the same as optimizing a few lines of your program to the extreme. Most of the time, that is in fact the completely wrong approach! However, I'm getting ahead of myself. Let the book speak for itself.
- 數(shù)據(jù)要素安全流通
- 工業(yè)大數(shù)據(jù)分析算法實戰(zhàn)
- 商業(yè)分析思維與實踐:用數(shù)據(jù)分析解決商業(yè)問題
- 數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用教程(第4版)
- Remote Usability Testing
- Hadoop 3.x大數(shù)據(jù)開發(fā)實戰(zhàn)
- Power BI商業(yè)數(shù)據(jù)分析完全自學(xué)教程
- 數(shù)據(jù)庫設(shè)計與應(yīng)用(SQL Server 2014)(第二版)
- 大數(shù)據(jù)治理與安全:從理論到開源實踐
- 活用數(shù)據(jù):驅(qū)動業(yè)務(wù)的數(shù)據(jù)分析實戰(zhàn)
- 區(qū)塊鏈+:落地場景與應(yīng)用實戰(zhàn)
- Filecoin原理與實現(xiàn)
- Visual Studio 2012 and .NET 4.5 Expert Development Cookbook
- 領(lǐng)域驅(qū)動設(shè)計精粹
- MySQL 8.0從入門到實戰(zhàn)