Synopse

To content | To menu | To search

Tag - Delphi

Entries feed - Comments feed

2011, Sunday May 1

Synopse

About the Synopse Informatique company and our Open Source approach.

If your project needs Delphi software development, it's the right place to search.

Continue reading...

2010, Tuesday August 24

Synopse SQLite3 Framework 1.9.1

The Synopse SQLite3 Database Framework was just released under version 1.9.1:
- internal SQLite3 database engine is updated to version 3.7.2;
- new TSQLRecordFTS3 record, for using FTS3 virtual tables, i.e. implementing full-text search;
- new SQLite3UIEdit unit, to edit table content with a dialog created from RTTI;
- new dedicated BLOB methods and JSON array serialization;
- a lot of fixes and speed enhancements (including our HTTP/1.1 RESTful server now using Thread Pool).

The new 3.7.2 version of the SQLite3 engine, which is mandatory according to SQLite3's authors, is included.

Continue reading...

2010, Thursday August 19

How to implement multi-tier architecture in our SQLite3 Framework

In software engineering, multi-tier architecture (often referred to as n-tier architecture) is a client–server architecture in which the presentation, the application processing, and the data management are logically separate processes. For example, an application that uses middleware to service data requests between a user and a database employs multi-tier architecture. The most widespread use of multi-tier architecture is the three-tier architecture.

Both ORM and RESTful aspects of our framework makes it easy to develop using such a three-tier architecture.

Continue reading...

2010, Saturday August 14

FPC and Delphi: toward a "fratricidal war"?

Speaking about [upcoming] 64 bit Delphi compiler, I did forecast they will surely release their compiler 5 years later than FPC's... hoping they will follow the FPC way, just as Intel did about 64 bits instructions, against AMD.

What I was referring to is that AMD was the first to publish a 64 bit x86 CPU, with a new instruction set. Intel released somewhat later their own 64 bit x86 CPU, following the same instruction set.
There are some variants between AMD and Intel CPU, some dedicated instructions or implementations.
But most instruction set is perfectly compatible.

And I suspect the more it gets, the less compatible FPC and Delphi will be.

The main difference between Delphi and FPC is that the first is a business company project (Embarcadero), the second an Open Source solution. They are not two billions dollars companies fighting each other, with some state-level institutions watching about any unfair competition or monopoly... FPC compiler is technically a great and robust project, but EMB follows business rules. I don't think anyone will play "Anti-monopoly" in favor of FPC.

Continue reading...

2010, Tuesday August 10

Writing Delphi code for 64 bits compiler

There will be an upcoming 64 bits Delphi compiler. Embarcadero promised it.

Florian (the architect of FPC) showed a first "Hello world" program for Win64 in March 2006.
This was remarkable since GCC and the binutils don't even support this target at this time.
In fact, FPC used its Internal linker on Win32 and Win64 platforms, just like Delphi does.

Here are some points on how you could make your code ready to compile under FPC 64 bits, therefore (I hope) under future Delphi 64 bits compiler.

Continue reading...

2010, Friday August 6

Save object, stop class hegemony!

In a recent thread in the Embarcadero Discussion Forums, Vedran Vuk posted some questions about object keyword.
His purpose was to use object instead of class to improve speed and memory consumption: 

I do use classes. I just want to use objects on smaller classes that don't really need initialization or RTTI. Plus, I can directly operate on it like a record with no need for constructors and it can be sealed and has inheritance. Every byte matters in this case.

Rudy posted on the EMB forum that

The "object" type is deprecated. As was said, it mainly exists for compatibility with old Turbo Pascal. That is why it is not documented very well. It's use is not promoted.

I have the same requirement sometimes, for example for our framework or for low-level units.
I do like such plain-old object type, and don't want to see this object feature marked as deprecated in future EMB versions.

Continue reading...

2010, Wednesday August 4

Synopse SQLite3 Framework Main Demo - draft

The SQLite3 MainDemo source code has just been uploaded to the repository.

This application is just a database tool which stores text content and files into the database, in both clear and "safe" manner. Safe records are stored using AES-256/SHA-256 encryption. There is an Audit Trail table for tracking the changes.

Continue reading...

2010, Friday July 30

Compiler enhancement proposal: threadlocalvar

As I wrote in a previous post, Delphi string, dynamic array and memory manager don't like multi-core CPU.

My proposal is to add a threadlocalvar keyword, to be used instead of var in your code, to mark some variables to be used in only the current thread. Then the compiler and RTL won't have to use the LOCK instruction, and the application will be MUCH faster in multi-thread environment.

Continue reading...

2010, Tuesday July 27

Hyphenation in Delphi

We made some years ago a Delphi unit for hyphenation of text.

Such an unit, together with our SynPdf library for example, could be useful in your application. So we released the source!

Continue reading...

2010, Saturday July 24

Damnatio Memoriae

You sure heard about the "CrossKylixGate"... A Great tool I used for years (CrossKylix) has just been updated. Its author (named Simon) posted an announcement in the Embarcadero forums. Then the post has been deleted by "Team B" members, because of some old story.

But not only Simon has been censured. Since I like and use this free tool, I posted a very "soft" post just with the announcement of the CrossKylix update, with some explanations and precisions. No debate. Just a link to the download page. Then my whole thread was deleted.

It just sounds like a "damnatio memoriae" to me.

Continue reading...

2010, Friday July 23

Unit Testing light in Delphi

Automated Unit Testing is a great improvement in coding safe applications.

If you don't know about it, visit http://xprogramming.com/index.php then come back here, and you'll discover how we implement unit testing in a KISS way, in pure Delphi code.

Continue reading...

2010, Thursday July 22

Synopse SQLite3 Framework 1.8

The Synopse SQLite3 Database Framework was just released under Version 1.8.

SQLite3 just officially reached version 3.7.0, so it's time to commit our changes from our source code repository to the main "stable" zip.

Continue reading...

2010, Thursday July 15

Delphi doesn't like multi-core CPUs (or the contrary)

If you're like me, you are proud of the new CPU your computer runs on - in my case a i7-720Q with 8 embedded cores...

But Delphi is not very multi-thread or multi-core friendly... guess why....

Continue reading...

2010, Wednesday July 14

htm2pdf free tool

Using our SynPDF library and a public domain THtmlView component, and discussion with some of our users, we were able to make a html to pdf conversion tool.

Continue reading...

2010, Monday July 12

Draft Documentation of the Synopse SQLite3 Framework

As a tutorial about SynProject, the documentation for the SQLite3 framework itself has been generated for the first time.

Continue reading...

2010, Sunday July 11

How to unzip or zip files content

Didn't you ever wanted to unzip some archive content, or embed a zip file into your exe?

Didn't you ever wanted to create a zip archive file, from some data in memory, in pure Delphi code, without using any external dll?

One of the open source unit we use allow you to do these tasks in a easy way.

Continue reading...

2010, Saturday July 10

SynProject screen shots available

On the wiki of the Source Code repository, I've added some screen shots of our SynProject tool.

Continue reading...

2010, Wednesday June 30

Why do I stay on Delphi 7?

I'm still using Delphi 7 as my favorite IDE.

Continue reading...

SynProject

SynProject is an open source application for code source versioning and automated documentation of Delphi projects.

Continue reading...

Synopse PDF libray 1.8.1

Our PDF engine has been updated, it's now on version 1.8.1.

Continue reading...

- page 1 of 3