This year a huge amount of material has been published in the Russian-speaking Delphi community. You could easily miss something interesting. I tried to collect in one publication links to the most interesting publications of 2009. All publications are directly related to Delphi. It turned out quite a lot. Many thanks to the kind authors!
Mikhail Mokhov :
Aspect-oriented programming and Delphi - a note on AOP and Delphi, + links to frameworks.
')
Dmitry Larionov : We
turn the main hidden program window into a truly main program window - how to get rid of the lack of an invisible TApplication window in programs written in Delphi version <= 2006.
Alexander Sharakhov :
Why I don't like TDateTime - the advantages and disadvantages of the TDateTime data type in Delphi.
Alexey Legkunets :
What a programmer and user needs to know when working with programs that build function graphsPackaging complex data types in DelphiDescription of work with Vista UAC in Delphi from
Alexander Bozhko- Part 1. Introduction.
- Part 2. Use cases.
- Part 3. Elevation of rights upon request using COM Elevation Moniker .
Intellectual editing technologies in D2009 (refactoring) -
Part 1 .
Part 2 .
Part 3 - A description of working with built-in tools for Delphi refactoring.
A detailed description of Ribbon Controls, which appeared in Delphi 2009 from Vlad (webdelphi.ru)
- Ribbon Controls step by step. Step 1 - visual interface development.
- Ribbon Controls step by step. Step 2 - additional interface elements
Alexey Timokhin :
On the translation of a large project in Delphi 2009 - translation of the article: “
Upgrading a major project to Delphi 2009 ”, Lars B. Dybdahl.
Alexey Kazantsev :
Extended Interface Support for Delphi - sample code that allows you to add support for custom interfaces for any class in Delphi (including basic VCL classes).
Alexey Timokhin :
Comparison table of Delphi-components for working with Oracle DBMS.Generics
Alexey Timokhin :
Generalized programming (generics) in Delphi 2009 for Win32. Translation of the article by
Sébastien Doeraene “
Generics with Delphi 2009 Win32 (With, as a bonus, anonymous routines and routine references) ”
Alexei Timokhin :
Comparing generics in C #, C ++ and Delphi (Win32) - Translation of the article:
Comparing C #, C ++, and Delphi (Win32) Generics . By: Craig Stuntz
Delphi 2010
A brief listing of new Delphi 2010 from Alexei Timokhin.Skiminok :
Weaver - first impressionsOverview of the natural input mechanism in RAD Studio 2010 from
Skiminok .
Description of the code formatter in Delphi 2010
- Delphi 2010 Formatter. Illustrated reference book. Indentation section
- Delphi 2010 Formatter. Illustrated reference book. Spaces section
The review of novelties in Delphi 2010 from
Alexander Bozhko- Delphi 2010. What's new? #one
- Delphi 2010. What's new? # 2
- Delphi 2010. What's new? # 3
- Delphi 2010. What's new? # 4 ": Compiler Changes
- Delphi 2010. What's new? # 5 : Debugger changes.
- Delphi 2010. What's new? # 6: VCL changes.
RTTI in Delphi 2010:
- Delphi 2010 RTTI Basics.
- Delphi 2010. RTTI and Attributes
- Use of attributes and successors of TCustomAttribute
- In-depth study of TRTTIType
- In-depth study of the heirs of TRttiMember (part I), properties and fields
- In-depth study of the heirs of TRttiMember (part II) Methods
- Why do I call TRttiContext.Create () and TRttiContext.Free ()
- TValue introduction
Description of JCL and JVCL :
General description of the library Jedi Code Library. JCL 3.35.A series of posts describing some of the components from the Jedi Visual Control Library .
A series of publications from Alexander Alekseev.
Error handling in Delphi programs:
- Error handling is a fundamental study of error handling in Delphi. Different approaches are compared (error codes and exceptions), the mechanism for the occurrence and handling of exceptions, the exception diagnosis tools ( Jcl , FastMM, EurekaLog, Windows Error Reporting) are considered, and tips are given on how to handle errors correctly. Describes in detail the work with the debugger and much more. Due to the enormous size of the article, an option in PDF is available.
- Access Violation in detail - a detailed analysis of the most common mistakes in Delphi-programs. What it is, where it comes from, possible reasons, how to diagnose, how to correct.
- We look for memory leaks - an article about how to find memory leaks in Delphi programs using EurekaLog, FastMM, MemProof / AQTime.
- Settings for projects in Delphi in terms of finding errors - how to set up a project in order to get maximum information in the error report.
- How to read log files of error reports EurekaLog, FastMM, JCL - how to analyze the call stack and find the location of the error. Common mistakes beginners.
- EurekaLog from the point of view of ShareWare-developer - review of EurekaLog from the standpoint of the developer of ShareWare-programs (code protection issues).
- Anti-freeze in EurekaLog - tracking program freezes with EurekaLog.
Memory managers in programs - a description of the device memory manager in Delphi. Why do we need, as used, intermodular interaction?
Creating applications for Windows Vista in Delphi (before 2007)- Part 1 - Translation Creating Windows Vista Ready Applications with Delphi . Author: Nathanial Woolls.
- Part 2 - Translation Creating Windows Vista Ready Applications with Delphi. Update - January 2007 . Author: Nathanial Woolls.
Work with pointers in Delphi for Win32. - translation
Addressing pointers . Posted by: Rudy Velthuis
Open array parameters and "array of const" - translate
Open array parameters and array of const . Posted by: Rudy Velthuis.
PChars: the lines themselves are not included - translation
PChars: no strings attached . Posted by: Rudy Velthuis
BOOL, Boolean and Integer -
BOOL, Boolean and Integer . Posted by: Christian Wimmer.
What people like to do wrong in IUnknown.QueryInterface - translated by
IUnknown :: QueryInterface . Posted by: Raymond Chen.
Features of working with DllMain with examples in Delphi:
Translation of Raymond Chen's series of articles - “How to manage IContextMenu” with examples in Delphi.
- How to manage IContextMenu, part 1 - opening remarks
- How to manage IContextMenu, part 2 - showing the context menu
- How to manage IContextMenu, part 3 - place call
- How to manage IContextMenu, part 4 - context keys
- How to manage IContextMenu, part 5 - processing messages from the menu
- How to manage IContextMenu, part 6 - display menu tips
- How to manage IContextMenu, part 7 - call the default menu item
- How to manage IContextMenu, part 8 - optimize the default command invocation
- How to manage IContextMenu, part 9 - add your own commands
- How to manage IContextMenu, part 10 - menu extenders layout - basics
- How to manage IContextMenu, part 11 - menu extenders layout - layout
- Dragging a Shell Object, Part 1: Getting an IDataObject
- Dragging a Shell Object, Part 2: Adding Move
- Dragging a Shell Object, Part 3: Defining an “Optimized” Move
- Dragging a shell object, part 4: add a beautiful icon
- Dragging a shell object, part 5: forcing someone to do the work for us
A series of notes from Alexander Alexeev about creating a system of plug-ins for Delphi:
- Part 1. Implementation options (DLL, COM, packages, use of interfaces)
- Part 2. Creating an entry point.
- Part 3. Implementation of the plugin in the package, in the form of a DLL.
- Part 4. Explanation of the package as a DLL.
- Part 5. Loading packages in the form of DLL.
- Part 6. Interface IInit.
- Part 7. Error handling in plugins.
- Part 8. Declaring additional interfaces and passing strings.
- Part 9. Compatibility with other languages. Data exchange of variable size.
- Part 10. Example of implementation.
- Part 11. Source codes.