Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 03/15/20 in all areas

  1. Angus Robertson

    Web sockets server and client

    There is nothing wrong with Delphi 7 for applications today, if anything they are less bloated than later compilers where EXEs just get bigger with no extra functionality, All my ICS development and commercial applications are Delphi 2007, but then tested and made compatible with the latest and greatest of the day. Obviously cross platform development is another matter, but I don't do that. And lots of new language features and library functions, which ICS seems to manage without, or has implemented it's own versions to be compatible across all compilers D7 up. For client/server, also look at the new ICS component TIcsIpStrmLog and sample OverbyteIcsIpStmLogTst, the component can be configured as TCP/UDP/Client/Server with SSL/TLS, and mainly just sends lines of text back and forward, with two methods to connect/listen and send and one event to receive, you can build client/server apps very quickly. Angus
  2. Angus Robertson

    Web sockets server and client

    When I get feedback from people actually testing this initial implementation, I'll look at it again. Angus
  3. I don't know if I qualify as an "expert", but I find that as my knowledge grows I also come up with new solutions that work much better for the intended (and sometimes changing!) goals. For example, recently, I have come up with a solution to reuse as much UI code as possible between FMX and VCL. While it still requires you to use different components (for the two libraries are much too different) there is still a lot you can do to minimise impact. Thus, I would say that as I gain experience, I find new ways to address new or existing problems which work much better for the goals at hand. This also means I find myself refactoring a lot more than I otherwise would.
  4. Uwe Raabe

    Interface Completion

    In case you give MMX Code Explorer a try: it has an Extract Interface refactoring. Given this class declaration type TMyClass = class private FNewProp: Integer; function GetNewProp: Integer; procedure SetNewProp(const Value: Integer); public procedure NewMethod; property NewProp: Integer read GetNewProp write SetNewProp; end; select the property and method in the members view of the MMX Code Explorer window and in the context menu select Refactorings - Extract Interface. In the following dialog enter the interface name, GUID etc. and you end up with this: IMyInterface = interface(IInterface) ['{8431B2B9-8D15-4308-BF08-26AB2BA4960F}'] function GetNewProp: Integer; procedure NewMethod; procedure SetNewProp(const Value: Integer); property NewProp: Integer read GetNewProp write SetNewProp; end;
×