:: MVP ::
|
|
:: RSS ::
|
|
|
|
Оно на памятном листке
Оставит мертвый след, подобный
Узору надписи надгробной
На непонятном языке.
А. С. Пушкин
|
Все мы хорошо знакомы с правилами формирования имен в Delphi, среди которых есть и такое – имя пишется в одно слово,
если пробел все же необходим, он заменяется символом нижнего подчеркивания “_”.
Типичный пример объявления переменной выглядит следующим образом:
var
s: string;
i: integer;
b: boolean;
|
А теперь представьте, как было бы здорово давать переменным такие имена:
var
My str: string;
My int: integer;
My bool: boolean;
|
Кто-то возможно скажет: “Какой абсурд, это невозможно, да и такие имена могут запутать разработчика”. Что касается второго
утверждения, то это дело вкуса, о которых, как известно, не спорят, а вот верно ли первое утверждение?
Тут надо вспомнить, что у нас есть 2 типа пробелов – обычный (с кодом 32) и неразрывный (с кодом 160, для ввода символа нужно
нажать клавишу Alt, и не отпуская ее нажать на NUM-паде последовательность цифр 0 + 1 +
6 + 0). Однако старые версии компилятора, работающие с ANSI, не делают между ними различий, считая и тот
и другой пробел обычным. Но все изменилось с пришествием Unicode! Теперь эти пробелы не отождествляются (я проверил это в Delphi XE),
и неразрывный пробел может являться частью имени. А если вспомнить, что в Unicode мы можем давать переменным имена на любом языке
(включая русский), перед нами открываются новые горизонты в оформлении исходного кода!
Вот пример, который замечательно компилируется в Delphi XE.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
Вопрос = string;
Ответ на вопрос = string;
Сообщение = procedure( const Msg: string );
var
Form1: TForm1;
Не плохо бы увидеть сообщение: Сообщение;
implementation
{$R *.dfm}
function Сколько сейчас времени: Ответ на вопрос;
begin
Result := TimeToStr( Time );
end;
function Какое сегодня число: Ответ на вопрос;
begin
Result := FormatDateTime( 'dd mmmm yyyy', Date );
end;
procedure Скажите пожалуйста( Вопрос: Вопрос );
begin
Не плохо бы увидеть сообщение( Вопрос );
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
// @Не плохо бы увидеть сообщение := @ShowMessage;
Не плохо бы увидеть сообщение := ShowMessage;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Скажите пожалуйста( Сколько сейчас времени );
Скажите пожалуйста( Какое сегодня число );
end;
end.
|
Пользоваться этим или нет, каждый решит для себя сам, я же желаю вам не скучного программирования!
.: Пример к данной заметке :.
|
При использовании материала - ссылка на сайт обязательна
|
|