DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: forget66
今日帖子: 64
在线用户: 10
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:37:09
标题:
DELPHI XE7,开发代号Carpathia,一些新语法和新特性! 浏览:9883
加入我的收藏
楼主: D7保守党和Delphi黑粉,非喜勿看,请勿喷。
XE7 增加很多功能,升级了语法。个人觉得很期待。

1.Showmessage/msessagedlg/raise Exception 终于切换不卡死,虽然来晚了。以前做安卓用安卓的JNI解决对话框,现在可以用FMX对话框解决,但那个raise异常对话框还是无法替换。跨平台对话框终究才是出路。

2.ListView支持下拉刷新。ListView+各种风格,玩爆Listbox, 遐想无限。

3.加入了TMultiView和TDetailPanel ,,可以为做不同的分辨率。这个很重要。

4.FireMonkey Advertising support.The FireMonkey TBannerAd component now uses the Google Mobile Ads API from Google Play Services.

5.每个窗体都有 FireMonkey OnSaveState。SaveState而已保存和映射任意数据到本地,可以在不创建窗体下获取窗体数据。

procedure TForm1.FormCreate(Sender: TObject);
var
  R: TBinaryReader;
begin
  if SaveState.Stream.Size > 0 then
  begin
    // Recover previously typed text in Edit1 control.
    R := TBinaryReader.Create(SaveState.Stream);
    try
      Edit1.Text := R.ReadString;
    finally
      R.Free;
    end;
  end;
end;
 
procedure TForm1.FormSaveState(Sender: TObject);
var
  W: TBinaryWriter;
begin
  SaveState.Stream.Clear;
  // Save typed text in Edit1 control.
  W := TBinaryWriter.Create(SaveState.Stream);
  try
    W.Write(Edit1.Text);
  finally
    W.Free;
  end;
end;

6.增强改善:FireMonkey TWebBrowser。
·         EnableCaching – when set to False, if the file is updated and you try to reload it, the page will be updated.
·         Stop – to cancel the loading of a web page.
·         CaptureBitmap – will capture the currently visible web page as a bitmap.  The purpose of this feature is to allow you to hide the WebBrowser control, display the bitmap and overlay other components (such as buttons or popups) on top of the bitmap.

7.FireDAC 的一些增强功能。FDAC终究替代DBX/UNIDAC(除了直连)/CDS。

· New IBLite Driver for desktop and mobile deployment
· Support for Blob real streaming, without buffering on client side.  This includes the ability 
for an application to get an internal stream reference.  For example:

FDQuery.SQL.Text := 'select :p = BLOBField from tab where id = :id';

FDQuery.Params[0].DataType := ftStream;

FDQuery.Params[0].StreamMode := smOpenRead;

FDQuery.Params[1].AsInteger := 123;

FDQuery.OpenOrExecute;

// TFDParam.AsStream returns reference to internal low-level stream

FDQuery.Params[0].AsStream.Read(Buffer, Length(Buffer));
·         Support for MSSQL file streams.
·         TFDSchemaAdapter has been extended to support advanced serialization and delta processing:
o   To serialize several datasets related to each other on the server side.
o   To send the delta for these datasets from client to server.
o   To load and store the delta on the server side inside of the datasets without opening / executing the queries.
o   To apply the delta on the server side in the chronological order of the changes.
·         Support for DBMS API command native timeouts.
·          FireDAC connection parameters are now displayed in the Object Inspector as a record.

8.Delphi RTL Enhancements。核心RTL一些增强,个人觉得面向移动/互联网的单元功能整合更强了,当然也是基于跨平台。

Added System.NetEncoding unit in RTL.  This unit provides a new TNetEncoding class to unify all internet encoding/decoding:

TNetEncoding.Base64.EncodeString(S);
TNetEncoding.Base64.DecodeString(S);
TNetEncoding.URL.EncodeString(S);
TNetEncoding.URL.DecodeString(S);
TNetEncoding.HTML.EncodeString(S);
TNetEncoding.HTML.DecodeString(S);

o   This replaces EncodeString, DecodeString, EncodeBase64, DecodeBase64, HTTPEncode, HTTPDecode, HTMLEncode, HTMLDecode...and the AnsiString versions which are now deprecated.
·         Updated Zlib library version to 1.2.8.
·         OmniXML is included as a new provider for the XML framework.

9.FireMonkey Support for Immersive Full-Screen Mode of KitKat。


10.动态数组新语法,可以不用Setlength,赋值时候有点类似动态语言。这是我最喜欢的语法。每次新语法都是为了提高生产率。另外,,再劝那些用户则XE系列写着D7的同学,学点新东西,学点新语法吧,否则还是面对陌生的IDE。
  
  String-like operations on Dynamic Arrays
o   B := [1, 2, 3, 4];
o   B := B + [5, 6, 7];
o   Insert([6, 7, 8], B, 5); // inserts array [6, 7, 8], into B at index 5
o   Delete(B, 1, 3); // deletes 3 elements starting at index 1
o   Concat([1,2,3,4],[5,6,7])
o   var B: TBytes = [1, 2, 3, 4];
·         Improved initialization for Dynamic Arrays
o   B := [1, 2, 3, 4];
o   B := B + [5, 6, 7];


type
  TBytes = array of Byte;
  TBytesArray = array of TBytes;
  TStrDA = array of string;
 
resourcestring
  Sabc = 'abc';
  Sdef = 'def';
 
var
  B: TBytes = [1, 2, 3, 4];
  C: TBytesArray = [[1, 2, 3], [4,5,6]];
  D: TStrDA = ['ABC', 'DEF'];
  E: TStrDA = [ Sabc, Sdef ];

12.FMX一些重构和优化。不再列举。
13.根据内幕,,beta2已经出来,xe7 理论上支持所有的ios 原生控件

14.还有其他,,关键还是beta1。
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 hellokino (hello,delphi) ▲▲▲▲▲ -
普通会员
2014/7/19 11:44:21
1楼: 顶起
----------------------------------------------
-
作者:
男 dinkysoft (天地弦) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:44:52
1楼: 我还在用2007....
----------------------------------------------
DIOCP官方社区|MyBean官方社区http://www.diocp.org/
作者:
男 wuxiangyang (wxy) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:45:14
1楼: 严重支持!
----------------------------------------------
-
作者:
男 dinkysoft (天地弦) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:46:04
2楼: XE7应该是不错的版本,准备从XE7开始
----------------------------------------------
DIOCP官方社区|MyBean官方社区http://www.diocp.org/
作者:
男 wuxiangyang (wxy) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:46:16
2楼: 打到一切保守派!:)
----------------------------------------------
-
作者:
男 zqznew1 (zqz123) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:46:59
2楼: 顶!!!
----------------------------------------------
-
作者:
男 jpweidmann (测试人员) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 11:58:13
3楼: 可以期待 数组那块 我爱。
----------------------------------------------
-
作者:
男 losdsu (losdsu) ★☆☆☆☆ -
普通会员
2014/7/19 12:01:34
4楼: 非常好!
D7开始正式再用Delphi
期待中..
----------------------------------------------
Eok xonik Fwnrmt!
作者:
男 chineseswish (swish) ★☆☆☆☆ -
普通会员
2014/7/19 12:14:25
5楼: 哎~~~~
如果写组件只需要支持一个版本好了
----------------------------------------------
QDAC 开源数据库访问组件欢迎大家关注讨论和使用 官网(博客):http://www.qdac.cc 讨论QQ群:250530692 QLang 多语言组件快速让你的程序走向海外
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 12:16:51
6楼: QDAC群主,你写的是SDK,诸如最快的QJSON,理论上 XE7兼容 XE6,不会差别太大。
至于QDB,,也是非UI,应该也差不多。
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 cuit_xiong (熊猫) ★☆☆☆☆ -
普通会员
2014/7/19 12:38:53
7楼:
哈哈哈哈

给力
----------------------------------------------
-
作者:
男 epzybook (epzybook) ★☆☆☆☆ -
普通会员
2014/7/19 12:42:17
7楼: 第13点很好
----------------------------------------------
-
作者:
男 xiucai88 (xiucai) ★☆☆☆☆ -
普通会员
2014/7/19 13:56:26
8楼: 我只希望XE7兼容更多的机型,修正更多的BUG,能够更方便的使用现有的so,其他象linux\WP等请缓一缓,功能花里胡哨却BUG满天飞,和豆腐渣工程有什么区别?
----------------------------------------------
-
作者:
男 cuit_xiong (熊猫) ★☆☆☆☆ -
普通会员
2014/7/19 14:10:30
9楼: 同意10楼观点,先完善好ios和安卓,也许这两个平台的问题 也会在其他平台存在,所以先完善这两个 就可以一定程度避免 其他平台存在相同问题
----------------------------------------------
-
作者:
男 ceteric (ceteric) ★☆☆☆☆ -
普通会员
2014/7/19 15:02:00
10楼: 喜闻乐见。
语法升级我喜欢,最好有一天能象Swift一样简化就NB了。

13.根据内幕,,beta2已经出来,xe7 理论上支持所有的ios 原生控件

这个是什么意思?是说FMX可以模拟全部原生控件?还是可以直接调用了,如果是后者,我表示有点小激动。
----------------------------------------------
-
作者:
男 hackle (hackle) ★☆☆☆☆ -
普通会员
2014/7/19 15:25:35
11楼: 顶一下,快点出来
----------------------------------------------
-
作者:
男 54993699 (54993699) ★☆☆☆☆ -
普通会员
2014/7/19 15:49:50
12楼: 动态数组这个好.这个好
----------------------------------------------
-
作者:
男 vclclx (vclclx) ★☆☆☆☆ -
普通会员
2014/7/19 15:57:35
13楼: 原生控件好,不用再造轮子了,希望尽快支持安卓原生控件。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/19 15:57:40
13楼: 越来越先进。越来越让人离不开。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 wzwcn (wzw) ★☆☆☆☆ -
普通会员
2014/7/19 16:04:59
14楼: 数组这个好。老早就郁闷没法直接初始化数组了
----------------------------------------------
-
作者:
男 bdl1 (bdl1) ▲▲▲▲▲ -
普通会员
2014/7/19 17:16:36
15楼: 期待中...
----------------------------------------------
-我的博客
作者:
男 sxtylhg (sxtylhg) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 17:28:40
16楼: 非常好,非常值得期待,非常。。。!
----------------------------------------------
-喜欢Delphi不以某个人或某件事而改变,这样,即使某一天真的走不下去了,留下的也将是我们美好的回忆,那里面有我们的青春和热血!
作者:
男 ying32 (唯有此生) ▲▲▲▲▲ -
普通会员
2014/7/19 17:45:33
17楼: 期待, 现在已经习惯了新的ide了, d7早已经不用了, 新的语法带来更多好处啊.
----------------------------------------------
一个热爱delphi的人,Golang GUI库。 --我的博客--
作者:
男 freecat (freecat) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 20:29:19
18楼: 得个讲字有hi用,系就扔个安装的setup.exe出黎。
----------------------------------------------
-
作者:
男 gong123456 (DELPHI先生) ★☆☆☆☆ -
普通会员
2014/7/19 21:05:34
19楼: D7已死,XE6是不是也该埋了,真它妈神速啊, 是不是可以直接在linux上做开发了
----------------------------------------------
-
作者:
男 dunken (dunken) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 21:07:50
20楼: 期待中...
----------------------------------------------
-
作者:
男 zhuzh_yuy (华) ★☆☆☆☆ -
普通会员
2014/7/19 21:27:58
21楼: 估计是个经典版,期待!
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 22:07:33
22楼: 数组那个我和去年封装的那个TArrayEx倒是相似,是从RTL级别加了对数组的扩展吧
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/7/19 22:11:01
23楼: 武大,,你那个ArrayEx不错,,我还在用!
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 ptdelphi (Delphi) ▲▲▲▲△ -
普通会员
2014/7/19 23:50:19
24楼: 顶啊,不顶不舒服
----------------------------------------------
还可以更好
作者:
男 wuxi15 (似水·流年) ▲▲▲▲▲ -
普通会员
2014/7/20 9:32:37
25楼: 作者:  cuit_xiong (熊猫) ▲▲△△△ -  
注册会员 
 2014-7-19 12:38:53 
7楼: 哈哈哈哈 

给力
---------- 
-  
作者:  epzybook (epzybook) ▲▲▲△△ -  
注册会员 
 2014-7-19 12:42:17 
7楼: 第13点很好
---------- 
-  
----------
为什么会有两上7楼呢,这是盒子的Bug吗
----------------------------------------------
-
作者:
男 doorkey (DoorKey) ★☆☆☆☆ -
盒子活跃会员
2014/7/20 16:07:37
26楼: 相当期待,希望D能再来一春啊。
----------------------------------------------
QQ: 9717005 我的Blog:http://www.cnblogs.com/anydelphi/
作者:
男 crystalmoon (crystalmoon) ★☆☆☆☆ -
盒子活跃会员
2014/7/20 16:53:36
27楼: 自从有武大TArrayEx,再也不想其他的了。
----------------------------------------------
-
作者:
男 sail2000 (小帆工作室) ★☆☆☆☆ -
盒子活跃会员
2014/7/20 19:34:20
28楼: 动态数组也原生了。。。
@武稀松
您怎么看?
----------------------------------------------
delphi 是兴趣,和工作无关,即使它倒闭。又不靠它 delphi 吃饭,怕甚?
作者:
男 hahahahaxiao (雪峰) ★☆☆☆☆ -
普通会员
2014/7/20 20:57:13
29楼: 热情的期待中。。。。。
----------------------------------------------
-
作者:
男 kingofsun (小矮人酋长) ★☆☆☆☆ -
普通会员
2014/7/21 9:13:52
30楼: delphi还有辉煌的时候,只要耐心的等一下
----------------------------------------------
-
作者:
男 sxqwhxq (步惊云) ★☆☆☆☆ -
普通会员
2014/7/21 11:18:54
31楼: 我吵,从d7到xe7,我还生活在民国时间。
----------------------------------------------
-
作者:
男 kenliaoliao (ben) ★☆☆☆☆ -
普通会员
2014/7/21 11:37:13
32楼: 我 现在全部都是用XE,是生活在解放前夕。
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/21 12:31:31
33楼: 回28楼,本来估计也不是编译器级别支持的,而是用Helper在RTL级别支持的.
var
  B: TBytes = [1, 2, 3, 4];
  C: TBytesArray = [[1, 2, 3], [4,5,6]];
  D: TStrDA = ['ABC', 'DEF'];
  E: TStrDA = [ Sabc, Sdef ];
但是见了这种语法,应该是编译器也做了调整.
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/7/21 14:06:02
34楼: 希望记录有一天也可以有初局部初始化,传参能够有默认参数
TRec = record
  Num1, Num2: Integer;
end;

procedre Test(const Rec: TRec = (Num1 : 1; Num2 : 2))
begin
  ..
end;
----------------------------------------------
-
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/7/21 14:45:26
35楼: 记录类型有constructor create构造函数的
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 tony_trh (tony_trh) ▲▲▲▲▲ -
普通会员
2014/7/21 15:38:30
36楼: 希望数组的处理,也能改进,

现在的数组处理,很蹩脚,数组作为参数传递,返回,或者互相赋值,比较麻烦。

常常需要声明一个自定义数组类型,才能解决。
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/21 17:10:47
37楼: 希望能学习Java和C++11的成员变量初始化,比如
TTest = class
  FField : integer = 1000;
end;
这样就不需要再构造里面做初始化了.
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/7/21 17:38:00
38楼: 这个好,但是函数参数的默认值(记录类型的参数)用这个无法解决。
----------------------------------------------
-
作者:
男 wiseinfo (wisienfo) ★☆☆☆☆ -
普通会员
2014/7/21 17:59:56
39楼: 太好, 继续等大大们科普新知识.
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/22 11:58:30
40楼: @zwjchinazwj (蒲石)
Delphi从加操作符重载第一天起我就在QC提了这个record加默认构造和析构,或者默认初始化/反初始化的操作符.
从Borland到易博龙都没人理我.
现在有个一样的需求在QC上还是置顶的,打开状态的.但好多年过去了也没加.
还有类似C++的拷贝构造函数或者重载:=操作符.如果能再重载.操作符就可以实现C++的智能指针操作了,C++是通过重载->来实现的.
加了这写结构体就完美多了.可以尽情的发挥想象力.现在的有限操作符重载,不能默认初始化反初始化就是个半吊子,做什么东西都缚手缚脚.做到一半发现做不了.
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2014/7/22 22:36:23
41楼: 楼上,不是一波龙不理你,而是Pascal作为一门严谨的语言,不应该提供这两个功能。别忘了,PASCAL的指针默认都是不兼容的,这点我觉得都过分了,但是这是这门语言的生存哲学。
----------------------------------------------
只有偏执狂才能生存!
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2014/7/22 22:37:38
42楼: 另外C++语言语法繁杂,生产力是不低,但是Bug率更是不低,所以C++其实还是误入歧途了,不希望Delphi也变成这样。
----------------------------------------------
只有偏执狂才能生存!
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/23 9:49:05
43楼: 支持 41 楼。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 fxliam (liam) ▲▲▲▲△ -
普通会员
2014/7/23 10:02:12
44楼: 尼玛这更新的也太快了,半年前用的还是4,这就有7了?
----------------------------------------------
-
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/7/23 10:02:16
43楼: @wr960204 (武稀松)
“:=” 按我的理解现在应该算有了,就是Implicit 和 Explicit 
唯一的问题是不能是同种记录类型

至于record加默认构造和析构,我有过这样的想法,但是另一方面,弊端也很明显
例如:
var
  RecArray: array[0..1023] of TSomeRecord;
begin
  ...
end;
这里,TSomeRecord的构造函数要调用1024次,出过程的时候,也要调用1024次。
这是很大的负担,如果TSomeRecord里面的成员还有其他的记录类型,这个调用时恐怖的。
其实,这种情况现在都存在,如果TSomeRecord包含有string interface等数据类型。会要调用rtl的记录的初始过程,函数的效率降低十分可怕。
比如:
  TRec1 = record
    s1: String;
  end;
  TSomeRecord
    smember: array[0..255] of TRec1;
  end;
如果你在某个过程这样写:
var
  Recs: array[0..1023] of TSomeRecord;
那简直就是恐怖。
----------------------------------------------
-
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/7/23 10:19:32
45楼: 目前,我最为担心的是ARC.现在ARC虽然只在移动开发中启用了。但是很难说不会在桌面开发中全部使用ARC.我对桌面开发中全部使用ARC在担忧甚至超过没有AnsiString.

我之所以有这种担忧是因为我曾经在Allen Bauer 的Blog上与Allen Bauer讨论过ARC与NO ARC并存的问题。他的意思是,如果没有ARC,那么class就没有运算符重载。
他这么说的确提醒了我,Delphi对象是在堆上建立的,没有自动回收机制,的确会给运算符重载带来困难。
比如:
  obj3 := obj1 + obj2;
如果obj1的+运算导致新对象产生,也就是obj3,那么obj3的释放就是问题。
如果有了ARC,这的确就不是问题了。

就这点来看,EMB在桌面全部使用ARC的可能性就非常高了。
----------------------------------------------
-
作者:
男 vmao (毛小毛) ★☆☆☆☆ -
盒子活跃会员
2014/7/23 10:29:23
46楼: 支持41楼。

能力所限,不理解楼上两位大神为啥对语法这么挑剔。我是做数据库的,喜欢Delphi就是因为它的语法严谨,一板一眼的,创建了对象就要释放。使用之前就要初始化。要真往C++方向发展了,那真让我伤心了。
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/23 16:16:42
47楼: @zwjchinazwj
ARC效率影响应该不太大.但是对程序员水平有考验.用移动版Delphi先要理解框架中ARC的原理,上一段时间写Delphi的Android代码的时候就是,有时候要歪着脑袋想一下,不像之前那样明确手工释放就行了.
这段时间在使用Cocos2D-x,框架上是使用C++模拟ObjectiveC,用引用计数管理的.刚开始也不习惯,但是用久了也就适应了.只是Cocos2D-x的回收是在每一帧刷新的时候,未必是用于FMX这种消息驱动的情况
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/7/23 19:15:19
48楼: 我到不是认为ARC就一定有效率问题,但是全盘使用ARC,而不能使用NO ARC,我认为是有问题的。使用ARC可能可以回避内存泄漏的问题,但不能明确的释放内存,也就意味着不能高效的进行内存管理,当然说不能有点绝对了,起码由自己来进行一些高效的处理,必然是会有很多障碍(我相信也是可以绕过去),所以我希望的是ARC与NO ARC并存,不是谁替代掉谁。其实我经常使用IIngerface,对于ARC的模式一点也不抵触,甚至喜欢ARC。但是在TObject中使用ARC,不可接受。
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/24 12:23:44
49楼: 这个倒是.
我觉得应该提供编译开关,是否打开ARC,供程序员选择.
不过这样的话Lib里面的DCU就太多了.各种组合,Win32,Win64,Android,iOS,Mac都要有ARC和非ARC两种,每两种还要有Release和Debug两种.
或者Delphi在安装的时候是没有DCU的,而第一次用到这些编译开关组合的时候就编译出来放到相应的Lib目录下.
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/24 12:44:10
50楼: arc 本来就有编译开关的。
如果你愿意,你现在就可以打开 VCL 的 ARC。

而且我写 安卓程序的时候,该释放的,我还是释放。
只是用 Freeandnil。
只要不出错,我就懒得管他。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2014/7/24 14:16:25
51楼: 你打开或者关闭没用的,lib目录中的DCU都是编译好的,除非你把RTL,FrameWork都重新编译一下
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 ceteric (ceteric) ★☆☆☆☆ -
普通会员
2014/7/24 16:34:32
52楼: 不太懂,
但看苹果也是从无ARC到现在全面使用ARC的,
完全不用考虑release,很方便啊?
实际编译出的iOS程序运行也很正常,从这个角度来看,用ARC应该是各门语言发展的大势所趋。程序员不用考虑释放,就避免了很多bug和内存泄漏啦。
----------------------------------------------
-
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/7/24 19:14:03
53楼: ARC不是什么新技术,10几年前就有的。一个ObjectC就能说明ARC是大势所趋?
呵呵。。。。。
----------------------------------------------
-
作者:
男 ceteric (ceteric) ★☆☆☆☆ -
普通会员
2014/7/25 10:49:48
54楼: zwjchinazwj (蒲石)

我理解ARC只是实现自动(或半自动吧)管理内存的一种实现。如果有更好的方法,也是可以得。我指的大势所趋,是这个意思。
但拒绝自动管理内存,绝对是错误的。
也许在实时或者专业领域让程序员手动管理效率更高,但对于通用开发,还要求程序员去负责管理内存绝对是属于历史遗留问题,必须解决。

你不要呵呵,上面的表达也许不太准确,但我坚信自动管理内存是大势所趋。ObjectiveC确实不能完全代表编程语言的发展方向,但作为用者众多的一门语言,其改变还是多少可以反映未来的一些趋势的。毕竟,所谓趋势也就是由各种优秀的开发语言所共同引领的,谁敢说OC不是其中一个重要组成?难道只有C/C++语言的发展才能代表所谓大势么?
----------------------------------------------
-
作者:
男 zmzj (zmzj) ★☆☆☆☆ -
盒子活跃会员
2014/7/25 15:39:26
55楼: Delphi XE7 beta2内容介绍

本文章介绍了Delphi XE7 beta2内容介绍,下面是具体的内容,xe7 beta2按时来了,在这个版本中,提供了以下几方面的功能增加与改进。
1.为了支持并发,提供了一个新的类单元:System.Threading,可以做以下几方面的实现
•  for循环的并发
•  任务定时调度
•  自我调整的线程池
•  循环定时的线程控制
•  产生多个任务并且等待这些任务的完成
只看这些功能描述,不禁让人想到,这个新的类库,好象就是OTL,其实emb早该把OTL的设 计思想拿过去或者买过去。与Delphi一直存在的Thread类相比,OTL无论在易用性,功能性等方面远远超过Thread.现在好了,emb终于要 在xe7中实现新的类,来取代Thread,可喜可贺。

2.为iOS设计了内置的TEdit
简要说,就是在原TEdit的基础上,增加了ControlType属性,如果设置为native,那么就直接使用iOS的Edit控件了!
看到这里,你会想到什么?emb难道要放弃fmx,事实上,不会的,只是让fmx更强大,为基于fmx来实现OS内置的控件提供明确的方法,这下好 了,tms肯定会快速跟进,基于这种方法来实现更好的os内置控件。或许你要问,为什么要内置控件呢?说明白了,对于一些os控件,fmx实现的效率还是 达不到原生的内置控件的,致使界面在用户体验上达不到原生的应用,而emb人手有限,无法快速跟进os的变化,(一年一个OS版本,真的要命!)提供了这 样的方法,就可以让第三方控件厂商跟进了。

3.PAServer Manager
改进了PAServer,在Mac安装后,增加了两个app应用,PaServer Manager来管理PAServer.
这个没有什么可说的了,更好的使用与管理PAServer.
个人感觉,意义不大,PAServer已经够我用了,有这精力还不如做做其他更重要的任务,那个style designer还是个半成品,还有很多的bug,fmx的效率等等

4.bug修正
本次修正了一个长长的列表,编译器、IDE、Demos、FMX、RTL五个方面,让人明显感觉更稳定完善的xe7正向我们走来.
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/25 15:42:03
56楼: 楼上的,我希望看到那个长长的 BUG 列表。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2014/7/25 15:56:27
57楼: 跟一波龙的神人们比起来,我觉得自己的工作就是零,一个简单软件的维护还要以星期来计算。。。
----------------------------------------------
只有偏执狂才能生存!
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/7/26 1:27:04
58楼: Beta2的OTL相当期待!
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 tony_trh (tony_trh) ▲▲▲▲▲ -
普通会员
2014/7/26 13:53:39
59楼: 希望增加一些处理操作系统SHELL的功能,像PYTHON有个OS库,跟操作系统的SHELL可以对接处理,很方便
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/27 14:51:11
60楼: ShellExec 还不够啊,你啥水平啊。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 lobtao (lob) ★☆☆☆☆ -
普通会员
2014/7/28 11:00:48
61楼: OTL线程库很牛逼,superobject集成进来就好了,都是很牛逼实用的工具库 。
----------------------------------------------
没有做不到,只有想不到。
bolg:http://hi.baidu.com/lobtao
Email:lobtao@qq.com
QQ:369687916
作者:
男 chineseswish (swish) ★☆☆☆☆ -
普通会员
2014/7/28 11:17:15
62楼: 1.为了支持并发,提供了一个新的类单元:System.Threading,可以做以下几方面的实现
•  for循环的并发
•  任务定时调度
•  自我调整的线程池
•  循环定时的线程控制
•  产生多个任务并且等待这些任务的完成
只看这些功能描述,不禁让人想到,这个新的类库,好象就是OTL,其实emb早该把OTL的设 计思想拿过去或者买过去。与Delphi一直存在的Thread类相比,OTL无论在易用性,功能性等方面远远超过Thread.现在好了,emb终于要 在xe7中实现新的类,来取代Thread,可喜可贺。
==========
这个和QWorker的功能很象:)
----------------------------------------------
QDAC 开源数据库访问组件欢迎大家关注讨论和使用 官网(博客):http://www.qdac.cc 讨论QQ群:250530692 QLang 多语言组件快速让你的程序走向海外
作者:
男 bamboocaep (bamboocaep) ★☆☆☆☆ -
普通会员
2014/7/28 21:07:13
63楼: 靠,我上个月才写的泛型版并发处理,看来会是我写的最短命的代码了。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/29 10:03:09
64楼: 至少您的技术更强了。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 tony_trh (tony_trh) ▲▲▲▲▲ -
普通会员
2014/7/30 15:45:06
65楼: ShellExec 还不够啊,你啥水平啊。
----------
shellexec功能太弱了吧,只是调用命令,没办法做更多的工作

比如:getopt函数,分析命令行的,很多语言都有,DELPHI没有,不方便
      getenv获得环境变量的主键和值
      putenv改写环境变量值 
      getusr获取用户ID信息
      类似的,跟OS交互函数很多没有。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/7/30 15:59:25
66楼: 除了 GETOPT ,都有 API。
GETOPT,我们DLEPHI 内置。
太容易了。

你水平低,不要找理由。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 jiucenglou (九层楼) ★☆☆☆☆ -
普通会员
2014/7/30 16:56:14
67楼: 关于GetOpt

http://stackoverflow.com/questions/835573
----------------------------------------------
-
作者:
男 tony_trh (tony_trh) ▲▲▲▲▲ -
普通会员
2014/8/1 9:36:38
68楼: 除了 GETOPT ,都有 API。
GETOPT,我们DLEPHI 内置。
太容易了。

你水平低,不要找理由。
----------
你水平高,那你说说,在DELPHI里,哪个函数类似GETENV,可以获得系统的环境变量主键和值?怎么用?

DELPHI内置的GETOPT在哪里?不要把FREEPASCAL哪个说是DELPHI的,并且哪个GETPOPT,相对C语言/PYTHON等语言里的功能,还有一定的差距,N年前,我就试用过。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/8/1 9:49:07
69楼: 你不知道 MSDN 吗?
如果连这种简单功能都没有,微软还能活下去吗?

对于 命令行参数分析 delphi 内置的,我们自己够用了,不够用的话,我们自己会 扩展,没本事的人,当然只能用人家提供的。

换句话说,你做不到,不表示我们做不到。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/8/1 9:54:59
70楼: Ex????EnvironmentStr????

给你制造点障碍。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 tony_trh (tony_trh) ▲▲▲▲▲ -
普通会员
2014/8/1 10:22:57
70楼: 你这不是废话?操作系统肯定有这些功能,我当然知道。
比如:GetEnvironmentVariable/SetEnvironmentVariable等函数就可以实现。

我是指DELPHI 没有封装这些功能,导致使用不方便,比如你WINDWOS下调用这些专用函数,而到MAC OS X,IOS,LINUX等其他操作系统下,又不一样了,是另外的函数名和格式。

需要一个统一的OS SHELL处理模块,就像PYTHON,PHP,C等语言那样,可以通用。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2014/8/1 10:54:12
71楼: 操作系统有,就等于是我们 DELPHI有。
API 已经可以使用了,我用得很好。

你到是很会跨平台嘛。

可惜我自有办法。不需要担心这些简单问题。

如果你非要说 封装了才行,那我就只能认输了。

因为,没有封装好的,我也能用。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 lobtao (lob) ★☆☆☆☆ -
普通会员
2014/8/3 10:03:56
72楼: 针对第一点,可以自己做个窗口来做消息提示框的。
http://pan.baidu.com/s/1kToQoj9
我简单封装了一个
此帖子包含附件:lobtao_20148310356.rar 大小:20.0K
----------------------------------------------
没有做不到,只有想不到。
bolg:http://hi.baidu.com/lobtao
Email:lobtao@qq.com
QQ:369687916
作者:
男 xeonfeng (风影) ★☆☆☆☆ -
普通会员
2014/8/6 14:45:36
73楼: 顶起。。。。。。。。。。
----------------------------------------------
-
作者:
男 ptdelphi (Delphi) ▲▲▲▲△ -
普通会员
2014/8/7 0:36:52
74楼: 是时候放弃XE了
----------------------------------------------
还可以更好
作者:
男 gong123456 (DELPHI先生) ★☆☆☆☆ -
普通会员
2014/8/7 8:53:04
75楼: 这样的更新速度是好的,可是不考虑兼容性就不好了
----------------------------------------------
-
作者:
男 bdl1 (bdl1) ▲▲▲▲▲ -
普通会员
2014/8/7 9:13:11
76楼: 楼上,不能说没考虑。跨平台的代码量太大了,总有考虑不周,来不及实现的地方。
----------------------------------------------
-我的博客
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2014/8/8 10:16:09
77楼: 最近QC上的BUG修正的量挺多,XE7或许值得期待。
----------------------------------------------
-
作者:
男 tiez (骑牛夜旅) ★☆☆☆☆ -
普通会员
2014/8/10 22:47:56
78楼: System.Threading!我晕,正在做一个软件新版本的重构,这下难道要我等?
----------------------------------------------
-
作者:
男 tiez (骑牛夜旅) ★☆☆☆☆ -
普通会员
2014/8/10 22:48:32
79楼: QWorker看来这下要挂了
----------------------------------------------
-
作者:
男 zuiaihh (zuiaihh) ▲▲▲▲▲ -
普通会员
2014/8/11 11:05:11
80楼: 动态数组不错
----------------------------------------------
-
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/8/14 14:18:05
81楼: 透露下,,,xe7 beta5 支持蓝牙 4.0

The RTL has a new unit, System.Bluetooth, which provides a multi-device API to access the Bluetooth features of the device that is running your application. The RTL provides classes to implement Bluetooth support in your applications. When your application is running on a Bluetooth-enabled device, your application can use the Bluetooth capabilities of the device to connect to applications in remote devices and exchange data with those remote applications.
 
Because the Bluetooth Core Specification defines since version 4.0 different types of "Bluetooth" protocols, such as Bluetooth Low Energy, the original Bluetooth protocol is now known as "Classic Bluetooth". Classic Bluetooth provides a much higher transfer rate than Bluetooth Low Energy, at the cost of a higher energy consumption.
 
The RTL API for Classic Bluetooth supports Windows, Mac OS X, and Android. However, iOS Device does not support Classic Bluetooth, it only supports Bluetooth Low Energy.
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/8/14 14:22:42
82楼: 自带的蓝牙管理器可以实现 发现设备功能,,匹配蓝牙等功能。
App Tethering 在XE6 实现 WIFI通讯,,XE7实现蓝牙通讯。
App Tethering是一个小巧实用的通讯技术。
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 fjqiang (fjqiang) ★☆☆☆☆ -
盒子活跃会员
2014/8/14 14:34:25
83楼: 数组的那个改进很是不错,我喜欢
----------------------------------------------
-
作者:
男 tree2005 (Hello) ★☆☆☆☆ -
普通会员
2014/8/14 14:34:36
83楼:     顶!!!!
----------------------------------------------
-
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/8/28 23:59:21
84楼: What's New in Carpathia Beta 8
看BUG,不出事,知历史,懂大势。历史照亮未来。
==========
beta8刚出来,,和beta7一样,都是为了修复bug而出的beta版本,并无新增功能。
在 Bugs Fixed in Beta 8 中,,比较醒目的是 更新DEMO。EMB算是厚道了,把几十个更新的DEMO当作Bugs Fixed放在里面。beta8修复demo,表明九月初很快就要发布XE7。Bugs Fixed修复中见到 Tethering的蓝牙功能修复,甚是欣慰。
此帖子包含附件:
PNG 图像
大小:29.5K
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 tintin1943 (零输好) ★☆☆☆☆ -
盒子活跃会员
2014/8/29 0:05:53
85楼: (*
 *          _oo0oo_
 *          o8888888o
 *          88" . "88
 *          (| -_- |)
 *          0\  =  /0
 *          ___/`---'\___
 *          .' \\|     |// '.
 *          / \\|||  :  |||// \
 *          / _||||| -:- |||||- \
 *          |   | \\\  -  /// |   |
 *          | \_|  ''\---/''  |_/ |
 *          \  .-\__  '-'  ___/-. /
 *          ___'. .'  /--.--\  `. .'___
 *          ."" '<  `.___\_<|>_/___.' >' "".
 *         | | :  `- \`.;`\ _ /`;.`/ - ` : | |
 *         \  \ `_.   \_ __\ /__ _/   .-` /  /
 *     =====`-.____`.___ \_____/___.-`___.-'=====
 *          `=---='
 *
 *
 *     ~~~~~~~~~~
 *
 *          佛祖保佑         永无BUG?
 *
 *)
----------------------------------------------
不喧哗 自有声 心静 思远 志行千里
作者:
男 tianpanhaha (tianpanhaha) ▲▲▲▲△ -
普通会员
2014/8/29 0:45:51
86楼: XE7真是万众瞩目,任何xe7的新闻,在论坛都会火啊!
----------------------------------------------
 QQ群:325010556 欢迎加入。
作者:
男 runzi_111 (xuelanghua) ★☆☆☆☆ -
普通会员
2014/8/29 11:23:22
87楼: 应该举办个delphi大party。
----------------------------------------------
将Delphi进行到底!
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行156.25毫秒 RSS