Napačna izbira? Nič za to! Izdelke lahko vrnete do 30 dni
Z darilnim bonom ne morete zgrešiti. Obdarovanec lahko v zameno za darilni bon izbere karkoli iz naše ponudbe.
Do 30 dni za vračilo
Untangle monolithic Delphi applications, eliminate technical debt, and upgrade legacy Object Pascal codebases without breaking production.
Maintaining a long-lived Delphi application often feels like navigating a minefield. Whether your system originated in Delphi 5, Delphi 7, or Delphi 2007, the challenges remain the same: massive VCL forms containing thousands of lines of procedural event handlers, circular unit references, global mutable state, and business rules tightly coupled to obsolete database engines. When every minor bug fix risks a cascading regression, engineering teams often consider a ground-up rewrite. Yet complete rewrites of proven enterprise systems almost always fail.
Modernizing Legacy Object Pascal provides a pragmatic, step-by-step roadmap for transforming fragile monoliths into clean, testable, and maintainable architectures. Rather than halting feature delivery for a risky rewrite, you will learn how to apply incremental, verifiable refactoring techniques that protect existing business logic while steadily modernizing your software from the inside out.
What You Will Learn:
Codebase Forensics and Debt Quantification: Assess structural health using static analysis metrics, map hidden coupling in uses clauses, and combine cyclomatic complexity with version control churn to target high-value hotspots.
Reproducible Builds and Toolchain Upgrades: Convert binary DFM files to text, automate command-line compilation with MSBuild, and step safely through Unicode string migrations and 64-bit pointer transitions using conditional compilation.
Characterization Testing and Safety Nets: Capture undocumented runtime behavior using DUnit and DUnitX, apply the Extract and Override pattern to isolate untestable code, and implement Golden-Master testing.
Language Hygiene and Resource Management: Eradicate dangerous with statements, modernize string and file handling, design custom domain exception hierarchies, and detect memory leaks using FastMM4 and FastMM5.
Taming Oversized Forms and Global State: Extract domain logic from UI event handlers, apply the Model-View-Presenter (MVP) pattern with passive views, modularize screens with frames, and replace global variables with constructor dependency injection.
Database and Component Modernization: Migrate incrementally from the Borland Database Engine (BDE), ADO, or dbExpress to FireDAC, eliminate SQL injection vulnerabilities with parameterized queries, implement Repository and Unit-of-Work patterns, and wrap abandoned third-party components behind clean adapters.
Modern Capabilities and Release Engineering: Leverage Generics, Anonymous Methods, and the Parallel Programming Library (TTask) to eliminate UI freezes, and enforce architectural boundaries with automated Continuous Integration (CI) quality gates.
Who This Book Is For:
Written for working Delphi developers, software engineers, and technical leads, this guide bridges the gap between classic Rapid Application Development (RAD) habits and modern software engineering discipline. Every chapter features realistic before-and-after Object Pascal code examples designed for real-world production constraints.
Protect the business value of your software and build a codebase your team can maintain with confidence.
Pozdravljeni! Sem Libroamiko, vaš knjižni svetovalec.
Kako vam lahko pomagam?