ORPP logo
Image from Google Jackets

Mastering Delphi Programming : Learn All about Building Fast, Scalable, and High Performing Applications with Delphi.

By: Material type: TextTextPublisher: Birmingham : Packt Publishing, Limited, 2019Copyright date: ©2019Edition: 1st edDescription: 1 online resource (667 pages)Content type:
  • text
Media type:
  • computer
Carrier type:
  • online resource
ISBN:
  • 9781838983918
Subject(s): Genre/Form: Additional physical formats: Print version:: Mastering Delphi Programming: a Complete Reference GuideDDC classification:
  • 005.265
LOC classification:
  • QA76.76.D47 .G337 2019
Online resources:
Contents:
Cover -- Title Page -- Copyright and Credits -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: About Performance -- What is performance? -- Different types of speed -- Algorithm complexity -- Big O and Delphi data structures -- Data structures in practice -- Mr. Smith's first program -- Looking at code through the Big O eyes -- Don't guess, measure! -- Profiling with TStopwatch -- Profilers -- AsmProfiler -- Sampling Profiler -- AQTime -- Nexus Quality Suite -- Summary -- Chapter 2: Fixing the Algorithm -- Responsive user interfaces -- Updating a progress bar -- Bulk updates -- Virtual display -- Caching -- Dynamic cache -- Speeding up SlowCode -- Summary -- Chapter 3: Fine-Tuning the Code -- Delphi compiler settings -- Code inlining control -- Optimization -- Record field alignment -- Assertions -- Overflow checking -- Range checking -- Extracting common expressions -- The helpful CPU window -- Behind the scenes -- A plethora of types -- Simple types -- Strings -- Arrays -- Records -- Classes -- Interfaces -- Optimizing method calls -- Parameter passing -- Method inlining -- The magic of pointers -- Going the assembler way -- Returning to SlowCode -- Summary -- Chapter 4: Memory Management -- Optimizing strings and array allocations -- Memory management functions -- Dynamic record allocation -- FastMM internals -- Memory allocation in a parallel world -- Replacing the default memory manager -- ScaleMM -- TBBMalloc -- Fine-tuning SlowCode -- Summary -- Chapter 5: Getting Started with the Parallel World -- Processes and threads -- When to parallelize the code? -- Most common problems -- Never access UI from a background thread -- Simultaneous reading and writing -- Sharing a variable -- Synchronization -- Critical sections -- Other locking mechanisms -- A short note on coding style -- Shared data with built-in locking.
Interlocked operations -- Object life cycle -- Communication -- Windows messages -- Synchronize and Queue -- Polling -- Performance -- Third-party libraries -- Summary -- Chapter 6: Working with Parallel Tools -- TThread -- Advanced TThread -- Setting up a communication channel -- Sending messages from a thread -- Implementing a timer -- Summary -- Chapter 7: Exploring Parallel Practices -- Tasks and patterns -- Variable capturing -- Tasks -- Exceptions in tasks -- Parallelizing a loop -- Thread pooling -- Async/Await -- Join -- Join/Await -- Future -- Parallel for -- Pipelines -- Creating the pipeline -- Stages -- Displaying the result and shutting down -- Summary -- Chapter 8: Using External Libraries -- Using object files -- Object file formats -- Object file linking in practice -- Using C++ libraries -- Using a proxy DLL in Delphi -- Summary -- Chapter 9: Introduction to Patterns -- Patterns in programming -- Patterns are useful -- Delphi idioms - Creating and destroying an object -- Gang of Four started it all -- Don't inherit - compose! -- Pattern taxonomy -- Creational patterns -- Structural patterns -- Behavioral patterns -- Concurrency patterns -- Criticism -- Anti-patterns -- Design principles -- SOLID -- Don't repeat yourself -- KISS and YAGNI -- Summary -- Chapter 10: Singleton, Dependency Injection, Lazy Initialization, and Object Pool -- Singleton -- NewInstance -- Lateral thinking -- Dependency injection -- From classes to interfaces -- Using a factory method -- Wrapping up -- Lazy initialization -- Using Spring -- Object pool -- Stock quote connection pool -- Summary -- Chapter 11: Factory Method, Abstract Factory, Prototype, and Builder -- Factory method -- Painter -- Modernizing the factory method pattern -- Abstract factory -- Prototype -- Cloning records -- Cloning objects -- Delphi idioms - Assign and AssignTo -- Serialization.
Builder -- Idioms - Fluent interfaces -- Summary -- Chapter 12: Composite, Flyweight, Marker Interface, and Bridge -- Composite -- Child management -- Flyweight -- String interning -- A practical example -- Delphi idioms - comparers and hashers -- Marker interface -- Delphi idioms - attributes -- Markers and attributes -- Bridge -- Bridged painting -- Summary -- Chapter 13: Adapter, Proxy, Decorator, and Facade -- Selecting an appropriate structural pattern -- Adapter -- Wrapping a class -- Wrapping an interface -- Implementing a queue with a list -- Proxy -- Delphi idioms - replacing components in runtime -- Smart pointers -- Unit testing with mock objects -- Decorator -- Decorating streams -- Delphi idioms - helpers -- Facade -- Summary -- Chapter 14: Nullable Value, Template Method, Command, and State -- Null object -- Template method -- Calculating the average value -- Inversion of control -- Command -- Command-based editor -- Creating commands -- Commands -- Invoker -- Client -- Macros -- Cloning -- State -- Unquoting a string -- Summary -- Chapter 15: Iterator, Visitor, Observer, and Memento -- Iterator -- Delphi idioms - iterating with for..in -- Implementing custom enumerators -- Using an iterator interface -- Visitor -- Observer -- Observing with Spring -- Memento -- Summary -- Chapter 16: Locking Patterns -- Delphi idioms - parallel programming -- Lock -- Custom locking mechanism -- Lock striping -- Single bit locks -- Delphi idioms - bitwise operators -- Double-checked locking -- Optimistic locking -- Readers-writer lock -- Comparing reader-writer implementations -- Summary -- Chapter 17: Thread pool, Messaging, Future and Pipeline -- Thread pool -- Idiosyncrasies of Delphi's TThreadPool -- Messaging -- Windows messages -- Queue and Synchronize -- Polling -- Future -- Pipeline -- Web spider -- Filter stage -- Downloader stage.
Parser stage -- Summary -- Other Books You May Enjoy -- Index.
Summary: This Learning Path is your comprehensive guide to learn all about Delphi programming. You'll begin with the basics, before going on to study various advanced concepts and techniques to build efficient, concurrent applications in Delphi.
Tags from this library: No tags from this library for this title. Log in to add tags.
Star ratings
    Average rating: 0.0 (0 votes)
No physical items for this record

Cover -- Title Page -- Copyright and Credits -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: About Performance -- What is performance? -- Different types of speed -- Algorithm complexity -- Big O and Delphi data structures -- Data structures in practice -- Mr. Smith's first program -- Looking at code through the Big O eyes -- Don't guess, measure! -- Profiling with TStopwatch -- Profilers -- AsmProfiler -- Sampling Profiler -- AQTime -- Nexus Quality Suite -- Summary -- Chapter 2: Fixing the Algorithm -- Responsive user interfaces -- Updating a progress bar -- Bulk updates -- Virtual display -- Caching -- Dynamic cache -- Speeding up SlowCode -- Summary -- Chapter 3: Fine-Tuning the Code -- Delphi compiler settings -- Code inlining control -- Optimization -- Record field alignment -- Assertions -- Overflow checking -- Range checking -- Extracting common expressions -- The helpful CPU window -- Behind the scenes -- A plethora of types -- Simple types -- Strings -- Arrays -- Records -- Classes -- Interfaces -- Optimizing method calls -- Parameter passing -- Method inlining -- The magic of pointers -- Going the assembler way -- Returning to SlowCode -- Summary -- Chapter 4: Memory Management -- Optimizing strings and array allocations -- Memory management functions -- Dynamic record allocation -- FastMM internals -- Memory allocation in a parallel world -- Replacing the default memory manager -- ScaleMM -- TBBMalloc -- Fine-tuning SlowCode -- Summary -- Chapter 5: Getting Started with the Parallel World -- Processes and threads -- When to parallelize the code? -- Most common problems -- Never access UI from a background thread -- Simultaneous reading and writing -- Sharing a variable -- Synchronization -- Critical sections -- Other locking mechanisms -- A short note on coding style -- Shared data with built-in locking.

Interlocked operations -- Object life cycle -- Communication -- Windows messages -- Synchronize and Queue -- Polling -- Performance -- Third-party libraries -- Summary -- Chapter 6: Working with Parallel Tools -- TThread -- Advanced TThread -- Setting up a communication channel -- Sending messages from a thread -- Implementing a timer -- Summary -- Chapter 7: Exploring Parallel Practices -- Tasks and patterns -- Variable capturing -- Tasks -- Exceptions in tasks -- Parallelizing a loop -- Thread pooling -- Async/Await -- Join -- Join/Await -- Future -- Parallel for -- Pipelines -- Creating the pipeline -- Stages -- Displaying the result and shutting down -- Summary -- Chapter 8: Using External Libraries -- Using object files -- Object file formats -- Object file linking in practice -- Using C++ libraries -- Using a proxy DLL in Delphi -- Summary -- Chapter 9: Introduction to Patterns -- Patterns in programming -- Patterns are useful -- Delphi idioms - Creating and destroying an object -- Gang of Four started it all -- Don't inherit - compose! -- Pattern taxonomy -- Creational patterns -- Structural patterns -- Behavioral patterns -- Concurrency patterns -- Criticism -- Anti-patterns -- Design principles -- SOLID -- Don't repeat yourself -- KISS and YAGNI -- Summary -- Chapter 10: Singleton, Dependency Injection, Lazy Initialization, and Object Pool -- Singleton -- NewInstance -- Lateral thinking -- Dependency injection -- From classes to interfaces -- Using a factory method -- Wrapping up -- Lazy initialization -- Using Spring -- Object pool -- Stock quote connection pool -- Summary -- Chapter 11: Factory Method, Abstract Factory, Prototype, and Builder -- Factory method -- Painter -- Modernizing the factory method pattern -- Abstract factory -- Prototype -- Cloning records -- Cloning objects -- Delphi idioms - Assign and AssignTo -- Serialization.

Builder -- Idioms - Fluent interfaces -- Summary -- Chapter 12: Composite, Flyweight, Marker Interface, and Bridge -- Composite -- Child management -- Flyweight -- String interning -- A practical example -- Delphi idioms - comparers and hashers -- Marker interface -- Delphi idioms - attributes -- Markers and attributes -- Bridge -- Bridged painting -- Summary -- Chapter 13: Adapter, Proxy, Decorator, and Facade -- Selecting an appropriate structural pattern -- Adapter -- Wrapping a class -- Wrapping an interface -- Implementing a queue with a list -- Proxy -- Delphi idioms - replacing components in runtime -- Smart pointers -- Unit testing with mock objects -- Decorator -- Decorating streams -- Delphi idioms - helpers -- Facade -- Summary -- Chapter 14: Nullable Value, Template Method, Command, and State -- Null object -- Template method -- Calculating the average value -- Inversion of control -- Command -- Command-based editor -- Creating commands -- Commands -- Invoker -- Client -- Macros -- Cloning -- State -- Unquoting a string -- Summary -- Chapter 15: Iterator, Visitor, Observer, and Memento -- Iterator -- Delphi idioms - iterating with for..in -- Implementing custom enumerators -- Using an iterator interface -- Visitor -- Observer -- Observing with Spring -- Memento -- Summary -- Chapter 16: Locking Patterns -- Delphi idioms - parallel programming -- Lock -- Custom locking mechanism -- Lock striping -- Single bit locks -- Delphi idioms - bitwise operators -- Double-checked locking -- Optimistic locking -- Readers-writer lock -- Comparing reader-writer implementations -- Summary -- Chapter 17: Thread pool, Messaging, Future and Pipeline -- Thread pool -- Idiosyncrasies of Delphi's TThreadPool -- Messaging -- Windows messages -- Queue and Synchronize -- Polling -- Future -- Pipeline -- Web spider -- Filter stage -- Downloader stage.

Parser stage -- Summary -- Other Books You May Enjoy -- Index.

This Learning Path is your comprehensive guide to learn all about Delphi programming. You'll begin with the basics, before going on to study various advanced concepts and techniques to build efficient, concurrent applications in Delphi.

Description based on publisher supplied metadata and other sources.

Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.

There are no comments on this title.

to post a comment.

© 2024 Resource Centre. All rights reserved.