kbmmw 5.10.00 发布
We are happy to announce v5.10.00 of the most complete development add on for Delphi and C++Builder for building native modular and fast multi-tier solutions.
The release includes:
- NEW! SmartBind now fully supports VCL, FMX, including image/graphics and TListView
- NEW! SmartBind data generators and data proxies for easy separation of data sharing concerns in modular applications
- NEW! SmartEvent for easy separation of event and execution workflow based concerns for the ultimate in modular application design
- NEW! Native highly scalable TCP server transport now also supports REST
- Significant improvements and fixes in many areas including
- RTTI
- Scheduler
- LINQ
- Object Notation
- ORM
New stuff
=========
- Huge amount of improvements to kbmMW SmartBind including
See features explained in blog posts at components4developers.blog
Data generators
Listview VCL and FMX support
Binding used string based settings.
AutoBind which locates properties or methods which has the attribute kbmMW_AutoBind. The attribute can be either a string based binding or
refer to a method which will be called during autobinding to setup all the required bindings for that particular instance.
Binding to data proxies for clear model/view separation.
Binding images/graphics
Break values (grouping header) support (currently ListView)
Binding kbmMWDateTime and kbmMWNullable
Saving and loading binding definitions to/from object notation formats like XML, YAML, JSON etc.
Horizontalscroll, verticalscroll and cell based grid binding.
- Added kbmMWSmartEvent.pas. kbmMW SmartEvent is an advanced pub/sub based event mechanism to replace regular Onxxxx event handlers,
making it much easier to separate concerns in an application. See videos and blogposts.
- Added new TkbmMWConcatStream in kbmMWGlobal.pas. It allows multiple streams to seem as one when reading,
without reallocating memory.
- Added TkbmMWBoyerMoore class, containing multiple ways to search for sub data in data very quickly to kbmMWGlobal.
- Added kbmMWSockClient.pas for a skeleton for an easy to use async client request/response setup. Currently in experimental phase.
- Added support for REST to native TCP Transport.
Changes/minor additions
=======================
- Updated look of wizards.
- Added support in kbmMWScheduler for scheduled events indicating ownership to other scheduled events.
Purpose is establishing termination ownership and more in nested scheduled events.
- Improved TkbmMWScheduledEvent.WaitRuns to allow for external anonymous function to determine is wait is to be extended.
- Updated kbmMW LINQ to support using TStrings instances for input and output with optional autoconversion of numeric data.
- Updated streamformat controllers with new GetTotalSize class function.
- Updated TkbmMWSortedList to support Unique constraint.
- Updated TkbmMWThreadList, TkbmMWThreadDictionary<TKey,TValue> and TkbmMWThreadObjectDictionary<TKey,TValue> to support providing a comparer.
- Added IkbmMWThreadAutoValue and TkbmMWThreadAutoValue for scope based reference oounted thread safe value variables.
- Added CardinalToText, CardinalToHexText, HexTextToCardinal, AddChars to TkbmMWTextPChar.
- Added CardinalToText, CardinalToHexText, HexTextToCardinal, AddBytes, ExpectOneOfBytes to TkbmMWTextPByte.
- Improved TkbmMWPrettyBinary to include pretty versions of relevant 8 bit characters.
- Moved TkbmMWSubscriptionHash to kbmMWGlobal.pas
- Added global functions kbmMWVariantToByteArray and kbmMWByteArrayToVariant to kbmMWGlobal.pas.
- Added PrettyOptions:TkbmMWPrettyHexOptions and UseStackMap:boolean to IkbmMWLogFormatter in kbmMWLog.pas.
Controls how pretty data and stackdumps are produced when logging.
- Made minor improvements to kbmMWNullable
- Updated kbmMWWinsock.pas
- Added ASkipCache:boolean option to TkbmMWCustomPooledDataSet.PopulateData
- Added InheritsFromTControl, InheritsFromTComponent, GetInstanceUnit, GetMethods to TkbmMWRTTI
- Added String2DateTimeStyle and DateTimeStyle2String to TkbmMWDateTime.
- Updated kbmMWObjectNotation with various minor features.
Fixes
=====
- Fixes and minor improvements to kbmMW ORM
- Fixed minor issues in kbmMWDebugStackTrace
- Fixed format issues with TkbmMWScheduledEvent.Cron
- Fixed bugs in TkbmMWSceduler
- Fixed various bugs in kbmMWGlobal.pas
- Fixed kbmMWFindReplace in kbmMWHTTLUtils.pas
- Fixed bugs in TkbmMWPooledDatasetRefreshSchedulerThread.RefreshDataset
- Fixed TkbmMWCustomPooledDataSet.MasterChanged issues.
- Fixed TkbmMWRTTI.CompareValue
- Minor fixes and improvements in kbmMWYAML, kbmMWSQLite, kbmMWBinaryParser, kbmMWSecurity
- Fixed timezone parsing in TkbmMWDateTime.ParseRFC1123DateTime
- Fixed bug in TkbmMWInterbaseSQLRewriter.RewriteDescribeTable
- Fixed procedure TkbmMWLockFreeHashArray.GC
kbmmw 5.10.00 发布的更多相关文章
- KBMMW 4.92.00 发布
We are happy to announce the release of kbmMW Professional and Enterprise Edition. Yet again kbmMW c ...
- KBMMW 4.90.00 发布
kbmMW is a portable, highly scalable, high end application server andenterprise architecture integra ...
- kbmmw 5.05.00 发布
新年前最后几天,kbmmw 发布了新版本,增加一大波功能.we are happy to announce v5.05.50 of our popular middleware for Delphi ...
- KBMMW 4.84.00 发布
kbmMW is a portable, highly scalable, high end application server and enterprise architecture integr ...
- KBMMW 4.82.00 发布
作者最近加紧了更新进度,赞一个. 时间都去哪儿了? 还没好好看4.81, 新版就来了. 这个版本主要是增强日志管理,已经强大到替换delphi 本身的异常处理了. We are happy to an ...
- KbmMW 4.30.00 发布
今天早上,KbmMW发布了4.30.00 版,这个版本开始支持XE4 的WIN/WIN64/OSX. 暂时不支持ios开发,同时加强了通过JSON 的对象序列化.还有就是解决了我提交的几个有关 汉字处 ...
- KBMMW 4.93.00 发布
可喜可敬,作者非常勤奋,跟上了delphi 10.1 的步伐. 4.93.00 April 26 2016 Important notes (changes that may break existi ...
- KBMMW 4.83.00 发布
新版本又来了,端午节都不让大家过好:) 这次终于支持ios 64了,不用我再手工改了. Components4Developers is a company established in 1999 w ...
- KBMMW 4.80.00 发布
一大波更新来了. 4.80.00 March 30 2015 Important notes (changes that may break existing code) ======= ...
随机推荐
- vue文件夹上传组件选哪个好?
一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传:支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传.刷新页面后继续传输. ...
- Windbg Processes and Threads(进程和线程)窗口的使用
在 WinDbg 中,进程和线程窗口中显示有关系统. 进程和线程正在调试的信息. 此窗口还可选择新的系统. 进程和线程处于活动状态. 如何打开进程和线程窗口 通过菜单View--->Proces ...
- 用js写个原生的ajax过程
var xhr=new XMLHttpRequset(); xhr.addEventListener("load",loadHandler); xhr.open("GET ...
- 洛谷P2504 [HAOI2006]聪明的猴子题解
题目 记录悲伤 已知猴子的数量以及猴子跳的最大距离 已知数的数量以及树的坐标 最小生成树 每两棵树之间的距离需要枚举来计算 算出最大值之后再与n只猴子进行比较记录答案 需要注意 在使用最小生成树的时候 ...
- 【DP】【P5615】 [MtOI2019] 时间跳跃
Description 给定 \(n\) 条边,第 \(i\) 条边的长度为 \(i\),每条边都有 \(50\%\) 的概率被选择,求如果选出的边能组成一个平面凸多边形,则方案的权值是方案中边的数量 ...
- 窗体的keyPreview属性
如果把窗体的keyPreview属性设置为true,那么窗体将比其内的控件优先获得键盘事件的激活权.比如Form1和其内的文本框Text1都准备响应keyPress事件,那么以下代码将首先激活窗体的k ...
- libevent笔记5:水位watermarks
bufferevent中提供了对读写回调的触发条件及最大缓存长度的设置,即低高水位: 低水位:是读写回调函数的最低触发数据长度,当输入/输出缓存区中的数据长度小于低水位时,读/写回调函数不会被触发: ...
- libevent笔记3:evbuffer
evbuffer 之前提到bufferevent结构体提供两个缓存区用来为读写提供缓存,并自动进行IO操作.这两个缓存区是使用Libevent中的evbuffer实现的,同样,Libevent中也提供 ...
- Spring boot配置文件application.properties和bootstrap.properties的区别
spring boot 有两种配置文件 (1)application.properties(application.yml) 系统级别的一些参数配置,这些参数一般是不会变动的 (2)bootstrap ...
- 解决ios环境下点击输入框页面被顶起不能自动回弹到底部问题
第一步:在标签的输入框中添加获取焦点事件 代码写法: @focus="getFocus" (vue代码) 可直接拷贝拿去放在自己页面元素中,如下: <div class= ...