5. Глава III. ЗЗЗ++
ЗЗЗ++ е допълнителна функционалност, която позволява работа с класове и обекти, които живеят в мрежата от ЗЗЗ сървъри и ЗЗЗ бази. Това е изключително мощна функционалност, която дава нов поглед върху разработката на приложения. Те не са ограничени от размера на оперативната или дискова памет на един компютър, а могат да работят едновременно на множество компютри свързани в мрежа.
5.1 Команди за управление на класове
Примери за използването на следващите команди има в папката “libs/src” от демонстрационния пакет описан в раздела “Какво ни е необходимо преди да продължим?”.
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyClass]
#[ remove class ]
#[ add class ]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyClass]
#[ remove class ]
#[ add class ]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[::+#;##[_class_base_];##[_class_];Copyright;##[COPYRIGHT_ZZZ]]
#[::+#;##[_class_base_];##[_class_];history/2016-08-07;създаване]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyClass]
#[ remove class ]
#[ add class ]
#[ add comment ;;Copyright;##[COPYRIGHT_ZZZ]]
#[ add comment ;;history/2016-08-07;създаване]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyParentClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[.=;_class_;/MyClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[::+^;##[_class_base_];##[_class_];##[_class_base_];/MyParentClass]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyParentClass]
#[ remove class ]
#[ add class ]
#[ class ;/MyClass]
#[ remove class ]
#[ add class ]
#[ add parent ;##[_class_base_];/MyParentClass]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyParentClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[.=;_class_;/MyClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[::+^;##[_class_base_];##[_class_];##[_class_base_];/MyParentClass]
#[::-^;##[_class_base_];##[_class_];##[_class_base_];/MyParentClass]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyParentClass]
#[ remove class ]
#[ add class ]
#[ class ;/MyClass]
#[ remove class ]
#[ add class ]
#[ add parent ;##[_class_base_];/MyParentClass]
#[ remove parent ;##[_class_base_];/MyParentClass]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyClass]
#[::-;##[_class_base_];##[_class_]]
#[::+;##[_class_base_];##[_class_]]
#[::+#;##[_class_base_];##[_class_];Copyright;##[COPYRIGHT_ZZZ]]
#[::+#;##[_class_base_];##[_class_];history/2016-08-07;създаване]
#[::+.;##[_class_base_];##[_class_];constructors/public/constructor;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}];
[
#[cout;
object base: {OBJECTBASE}##[chr;10]
object name: {OBJECTNAME}##[chr;10]
method: constructor
]
];
]
#[::+#;##[_class_base_];##[_class_]/constructors/public/constructor;history/\
2016-08-07;[created default constructor]]
#[::+.;##[_class_base_];##[_class_];destructors/public/destructor;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}];
[
#[cout;
object base: {OBJECTBASE}##[chr;10]
object name: {OBJECTNAME}##[chr;10]
method: destructor
]
];
]
#[::+#;##[_class_base_];##[_class_]/destructors/public/destructor;history/20\
16-08-07;[created default destructor]]
#[::+.;##[_class_base_];##[_class_];methods/public/test;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}];
[
#[cout;
object base: {OBJECTBASE}##[chr;10]
object name: {OBJECTNAME}##[chr;10]
method: test
]
];
]
#[::+#;##[_class_base_];##[_class_]/methods/public/test;history/2016-09-04;[\
created method test]]
#[::+;##[_class_base_];##[_class_]]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyClass]
#[ remove class ]
#[ add class ]
#[ add comment ;;Copyright;##[COPYRIGHT_ZZZ]]
#[ add comment ;;history/2016-08-07;създаване]
#[ add method ;constructors/public/constructor;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}];
[
#[cout;
object base: {OBJECTBASE}#[ new line ]
object name: {OBJECTNAME}#[ new line ]
method: constructor
]
];
]
#[ add comment ;/constructors/public/constructor;
history/2016-08-07;
[created default constructor]]
#[ add method ;destructors/public/destructor;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}];
[
#[cout;
object base: {OBJECTBASE}#[ new line ]
object name: {OBJECTNAME}#[ new line ]
method: destructor
]
];
]
#[ add comment ;/destructors/public/destructor;
history/2016-08-07;
[created default destructor]]
#[ add method ;methods/public/test;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}];
[
#[cout;
object base: {OBJECTBASE}#[ new line ]
object name: {OBJECTNAME}#[ new line ]
method: test
]
];
]
#[ add comment ;/methods/public/test;
history/2016-09-04;
[created method test]]
#[ add class ]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_class_;/MyClass]
#[::-.;##[_class_base_];##[_class_];constructors/public/constructor;]
#[::-.;##[_class_base_];##[_class_];destructors/public/destructor;]
#[cout;
#[ZZZ2SimpleTXTFromDividerPath;##[_class_base_];;/]
]
#[ class base ;docbases/classes.zzz]
#[ class ;/MyClass]
#[ remove method ;constructors/public/constructor;]
#[ remove method ;destructors/public/destructor;]
#[ base ;##[_class_base_]]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_object_base_;docbases/objects.zzz]
#[::>.;
##[_class_base_];/MyClass;methods/public/test;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}]
]
5.2 Команди за управление на обекти
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_object_base_;docbases/objects.zzz]
#[new-object;
##[_class_base_];/MyClass;
##[_object_base_];/MyObject;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}]
]
#[ class base ;docbases/classes.zzz]
#[ object base ;docbases/objects.zzz]
#[new-object;
#[ class base ];/MyClass;
#[ object base ];/MyObject;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}]
]
#[ base ;docbases/classes.zzz]
#[ get the base as a simple text ]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_object_base_;docbases/objects.zzz]
#[:>.;
##[_object_base_];/MyObject;methods/public/test;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}]
]
#[.=;_class_base_;docbases/classes.zzz]
#[.=;_object_base_;docbases/objects.zzz]
#[delete-object;
##[_object_base_];/MyObject;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}]
]
#[ class base ;docbases/classes.zzz]
#[ object base ;docbases/objects.zzz]
#[delete-object;
#[ object base ];/MyObject;
[{OBJECTBASE};{OBJECTNAME};{CLASSBASE};{CLASSNAME}]
]
#[ base ;docbases/classes.zzz]
#[ get the base as a simple text ]
5.3 Команди за деклариране на ЗЗЗ++ програма
#[actualize-libs]