ITDevCon 2014, Call4Papers

Dear potential ITDevCon speaker, As every year, I’m building the agenda for next ITDevCon that will be held next october 23th, 24th in Milan (Italy), in a new location. This will be the 6th edition ( we’re getting conference experts J ) The call for papers are officially open right now, so if you want to propose some speeches, I’ll be glad to see it. As usual, for the Call4Paper I need: Title (for every talk) Abstract (for every talk) Difficulty level (for every talk. Difficulty level is a scale from 1 to 3 with the following mean: introduction, intermediate,…
Continua a leggere →

DelphiMVCFramework is now Open Source!

Yes, just after 1 year of development, and a couple of big projects developed with it, the DelphiMVCFramework has been published as OpenSource. The project is on google code svn https://code.google.com/p/delphimvcframework/ I’ll talk about it at ITDevCon2013 (http://www.itdevcon.it) In the trunk there are many samples and I’m planning to put many others. Main DMVCFramework features RESTful (RMM Level 3) compliant Server side generated pages using eLua (Embedded Lua) Messaging extension using STOMP (tested with Apache Apollo and Apache ActiveMQ) Can be used in load balanced environment using memcached (memcached.org) Fancy URL with parameter mappings Integrated RESTClient Works with XE4 and XE5…
Continua a leggere →

How to serialize a TList of objects with Delphi

Some weeks ago a customer asked to me if it is possibile serialize a TList of objects. “Hey, you should use a TObjectList for this”, I said, but he absolutely needs (I dont know why) of a TList. This is the (simple) sample code tested with Delphi XE2 Update4. Enjoy. unit Unit4; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls; type TForm4 = class(TForm) Button1: TButton; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; TPerson = class private FName: String; procedure SetName(const Value: String); published property Name: String…
Continua a leggere →

Delphi MVC Web Framework – “Hello World”

This is the first “Hello World” for my Delphi MVC Web Framework. program DelphiMVCWebFramework; {$APPTYPE CONSOLE} uses System.SysUtils, MVCEngine in 'MVCEngine.pas', BaseController in 'BaseController.pas'; var mvc: TWebMVCEngine; begin mvc := TWebMVCEngine.Create; mvc.AddRoute('/', procedure(Context: TWebContext) begin Context.Write('Hello World'); end).Start(8080); ReadLn; mvc.Free; end. Features list (some of them are in the internal roadmap) Completely MVC Addressable with servername/controllername/actionname?par1&par2 Addressable with servername/controllername/actionname/par1/par2 Can also use anonymous methods as actions for very simple app (in the sample) Really RESTful (Level 3 of the Richardson Maturity Model) Fully integrable into WebBroker and DataSnap Supports multiple resource rapresentations Completely customizable routing using internal formatting or regex…
Continua a leggere →

Sneak preview about DORM, The Delphi ORM

My yesterday post about this busy time, have raised some interest about DORM, the Delphi ORM. So, also if I still haven’t released any files, wish to expose some internals about DORM. DORM is an implementation of the DataMapper design pattern written having Hibernate in mind. It’s completely unit tested and have the following features: External file mapping. (JSON format) Persistence ignorance (every TObject can be persisted) Support for One-One and One-Many relations (still no many-many) Support for LazyLoading (you can enable§/disable lazyloading by file or by code by per-basis needs) Support for IdentityMap Support for custom “finder” (you can…
Continua a leggere →

Custom Marshalling/UnMarshalling in Delphi 2010

Introduction Some days ago, Embarcadero has presented the new version of RAD Studio, 2010. The are many new features, but you can find in a lot places around the web, so I won’t repeat them here. One of the things widely requested from all Delphi programmers all over the world over the past few years, including myself, is certainly a new and more powerful RTTI. The new system of RTTI has finally arrived, and pave the way for a large number of applications. One area that has benefited from the new RTTI is for sure the marshaled objects. Marshaling is…
Continua a leggere →