DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: jsuguo
今日帖子: 32
在线用户: 16
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 18:17:35
标题:
拥抱开源,与Delphier共勉 浏览:3972
加入我的收藏
楼主: 我第一次接触Delphi大概在1995年,那时候是Delphi 3,尝试后非常惊讶,有如果高效好用的开发工具。封装性比VB好,面向对象方面的特性和VC++差不多。我喜欢严谨的东西,PASCAL的语法之严谨大家都有目共睹,很长时间里PASCAL都是学习计算机专业的必修课吧?!

1996年第一次去澳洲出差,是给中国银行悉尼分行实施一个项目。那时候在国内有听说过红帽子,就知道是个类似UNIX的操作系统,在悉尼街上看到有卖红帽子的正版光碟,就买了一套3张,35澳元。从那时起就朦朦胧胧种下了开源的情怀,虽然那时候还不知道开源这个概念。

我给自己开发的第一套MIS系统是在1997年夏天基于Delphi 3.0。那时候大家提到的C/S架构都是指客户端直接连数据库的那种模式。但是我觉得这个模式非常不适合管理,因此那时就自己尝试去做一个真正的应用服务器,中间通过TCP/IP链接。遇到需要访问数据库的时候,需要服务器端根据SQL访问数据库后的结果集进行打包,然后传递到客户端解包,在客户端写到BDE本地数据库里,再由客户端访问使用。虽然处理速度没有Delphi自己的ClientDataset快,但是用得还是比较顺利。

中间用Delphi 5.0把原MIS升级过一次。在IT业多年看到的事实:使用开源的公司发展越发展越好,在Windows底下的公司都是能生存就不错了。因此在去年,决心要把服务器移植到Linux下。应用服务器不去重新自己开发,而是选用nginx+PHP,这样的架构即可以做自己的WEB服务器,又可以做应用服务器。客户端的每一个请求都以HTTP的方式POST到服务器,服务器接收到数据后分派到不同的服务程序。
按此在新窗口浏览图片

在客户端通过indy的TIdHttp控件把请求内容POST到一个URL:
        fconn.post(client.apphost+'/ebrequest.php?appid='+inttostr(fappid),stream1,stream2);

服务器ebrequest.php,接收到客户端的请求后,分派给不同的服务程序。
按此在新窗口浏览图片

服务器端中转程序php extension用gcc开发,后面的服务器程序则用的lazarus。服务器端的服务程序进行编号,一个服务为一个函数。如:
按此在新窗口浏览图片

比如第六个服务 openquery_6是个专门接收客户端SQL语句,并返回数据集的服务。程序逻辑简单:
按此在新窗口浏览图片

1)接收客户端的请求SQL要素:FieldList, TableList, Condition, Order, Group,Having,Limit等
2)访问数据库并获得数据集
3)保存数据集到服务器端的临时文件filename中,并把filename返回客户端
4)客户端通过filename获取该数据集。

这样就把应用服务器建立在了WEB服务器上,既然本身就是WEB服务器,开发HTML5之类的应用就不在话下了。最近做的一个应用,就是两者的结合:1)提供给各围棋棋社一个客户端的EXE软件,用以记录到店棋友时间及消费情况;2)通过微信公众号围棋部落,棋友可以查看自己的消费情况和在店棋友情况。

其中第二部分就是基于HTML5的微信公众号应用。比如棋社列表,php的中转程序非常简单,就十几行代码:
按此在新窗口浏览图片

在php中指名调用package 10的第142服务。lazarus的服务程序如下:
按此在新窗口浏览图片

基于Linux上的lazarus应用平台差不多开发了一年,开发的应用既有客户端模式的,如内蒙古电力电网数据查询客户端,也有完全基于HTML5的WEB应用,如内蒙古电力调度控制中心、市场信息、围棋部落、鲜蔬超市等微信公众号。总体感觉上,lazarus功能已经够用,稳定性够强。以前在windows上经常出来的莫名其妙问题全部消失,linux能够7X24小时为客户提供稳定的服务。

有兴趣的朋友欢迎扫描微信群二维码加入讨论!
按此在新窗口浏览图片
----------------------------------------------
-
作者:
男 dede3000 (dede3000) ▲▲▲▲△ -
普通会员
2017/1/23 18:47:53
1楼: 1996出差...大哥今年高寿了?
----------------------------------------------
My Delphi will go on, and on.
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 19:02:30
2楼: 基于Linux上的lazarus应用平台差不多开发了一年?是全职开发吗?
如果全职开发一年没有碰到大问题,那这个工具可以算是生产力工具了。
----------------------------------------------
只有偏执狂才能生存!
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 19:12:49
3楼: to dede3000:嗯,40多啦

to nevergrief:用的挺好的,当然也有弱点,比如不能像windows下的bpl包装,要包装成so比较难。
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 19:16:08
4楼: lazarus在centos下不支持汉字录入,然后我都要在其他编辑器中修改后再拷贝过来,有点麻烦。
----------------------------------------------
-
作者:
男 go_on (go_on) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 21:41:00
5楼: 先在win下开发,再重新编译到centos不行吗?
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 21:51:59
6楼: 没有这样试过。主要有些函数库用gcc开发的share object,有用到一些开源类库,移到windows下要用啥mingw等玩意,会累死人。
----------------------------------------------
-
作者:
男 ying32 (唯有此生) ▲▲▲▲▲ -
普通会员
2017/1/23 22:18:38
7楼: delphi的还是老人忧居多啊。按此在新窗口浏览图片
@ fausten  lazarus在osx下输入中文也有问题,后来又有其它问题,所性直接卸载了
----------------------------------------------
一个热爱delphi的人,Golang GUI库。 --我的博客--
作者:
男 star5 (星五) ★☆☆☆☆ -
盒子活跃会员
2017/1/23 23:15:54
8楼: 精神上支持一下,这样的项目越多越好,大家一起发展。
----------------------------------------------
博客 - http://offeu.com
脚本模型 - http://webpascal.com
需要短信接口的请联系我,可发行业与营销内容。
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/24 9:41:08
9楼: 是啊,大家一起努力。到时我在微信群里公布些源码,大家一起研究
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/24 10:03:49
10楼: 哈哈,我用lazarus+nginx+PHP去开发服务器端MIS和微信公众号,应该是前无古人,后无来者。
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/24 10:18:34
11楼: 第一、大家有什么技术问题可以拿来在群里讨论,大家一起解决;第二、我已经在开源入门了,我考虑一下怎么在微信群里带大家也一起入门遨游。
----------------------------------------------
-
作者:
男 kingofsun (小矮人酋长) ★☆☆☆☆ -
普通会员
2017/1/24 17:40:10
12楼: @fausten   在linux下处理过pdf和图像吗?最好是大容量的,有这样的第三方插件没有?
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/24 18:56:03
13楼: 没有处理过,能否用libreoffice转pdf ?

图像要做什么处理? GD什么的可以吗?
----------------------------------------------
-
作者:
男 akay (akay) ★☆☆☆☆ -
普通会员
2017/1/24 22:56:43
14楼: 我的做法跟楼主差不多,也积累了好多年了。
我的服务,可以是C++,pascal, php, tuxedo实现,php也是中转。我可以在windows上编译调试后,再port到linux,服务器端支持windows/linux/unix
比如C++写的服务,我可以在C++Builder上调试通过后,拿到unix上重新编译就可以。
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/25 9:54:11
15楼: 之前的windows平台做了十多年,转到linux上才1年多。现在新做的项目都会用linux上的服务器。
----------------------------------------------
-
作者:
男 msfm (清洁工) ★☆☆☆☆ -
盒子活跃会员
2017/1/25 10:34:50
16楼: 我直接转行 游戏服务器了
----------------------------------------------
-
作者:
男 chro (chro) ★☆☆☆☆ -
普通会员
2017/1/25 11:51:59
17楼: 个人意见,楼主的思路指出了一个delphier的重要前进方向。
论坛上的讨论,以delphi为本的多,以delphier为本的太少
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/27 3:51:56
18楼: 给大家看下开源有多伟大,右边为真是照片,使用opencv,就十几行代码,可以进行矩形矫正自动生成左边的图像,方便我进行自动数子。
按此在新窗口浏览图片
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/27 3:52:21
19楼: 上面图像的转换源码我发在微信群里。
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/27 3:54:33
20楼: 要进入微信群请扫码:

按此在新窗口浏览图片
----------------------------------------------
-
作者:
男 ccxpts (渔夫) ★☆☆☆☆ -
普通会员
2017/1/27 16:19:22
21楼:  @go_on:可以使用codetyphon,在windows下编译for linux的代码
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/27 22:58:02
22楼: 就是想脱离windows,能不用windows的地方尽量不用。

找到编译opencv 3.2的方法:
1)git clone https://github.com/opencv/opencv.git
2)mkdir build
      cd build
      cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr ..
      make -j4
     sudo make install

这样能编译成功opencv 3.2
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/28 12:00:44
23楼: 今天早上把php升级到最新的7.1.1
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/29 11:24:13
24楼:
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/29 11:25:09
25楼:
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/29 11:26:04
26楼:
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/1/29 11:26:22
27楼: 奇怪贴不了了?
----------------------------------------------
-
作者:
男 hawke2e (hawke2e) ★☆☆☆☆ -
普通会员
2017/2/4 12:55:56
28楼: @fausten
为啥php extension要用gcc,用lazarus不行吗?是担心它的内存管理吗?
lazarus不是提供了cmem单元
----------------------------------------------
软件是什么,相信很多人都说不清。
作者:
男 hawke2e (hawke2e) ★☆☆☆☆ -
普通会员
2017/2/4 13:16:38
29楼: 忘了php不支持fpc
我只是想问楼主有没有用lazarus的内存管理器做linux?
----------------------------------------------
软件是什么,相信很多人都说不清。
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/2/4 19:28:20
30楼: lazarus的内存管理用的是自带的。php支持c++,然后通过c++调用的fpc写的share object。
----------------------------------------------
-
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/2/4 19:29:16
31楼: @hawke2e: 网上真找不到php extension用fpc写的,可能不支持吧?
----------------------------------------------
-
作者:
男 metalqiang (天上人间) ★☆☆☆☆ -
盒子活跃会员
2017/2/6 23:37:36
32楼: 二维码失效了
----------------------------------------------
-
作者:
男 hacker2005 (疯狂的狼) ★☆☆☆☆ -
普通会员
2017/2/7 8:43:29
33楼: 失效了!我想进群!
----------------------------------------------
-
作者:
男 siaosa (siaosa) ★☆☆☆☆ -
盒子活跃会员
2017/2/8 8:02:37
34楼: 新版的delphi 10.2已经可以编译出可以在linux下运行的程序了.
----------------------------------------------
-
作者:
男 teclick (nelson) ★☆☆☆☆ -
普通会员
2017/2/10 13:05:49
35楼: 研究了一周了,fpc调用java程序,目前测试jdk5,jdk6,jdk7没有问题,jdk8报告非法地址访问,继续......。个人觉得java开源的东西太多可以选择,可以提高开发效率,还有一些语法特性,混合编程感觉开发工具类软件是我目前的首选。

https://en.wikipedia.org/wiki/Delphi_(programming_language)#Early_Borland_years_.281995.E2.80.932004.29
----------------------------------------------
-
作者:
男 wac1104 (火鸟) ★☆☆☆☆ -
普通会员
2017/2/10 13:16:46
36楼: 说一下群号吧,你的二维码过期了。扫不了了
----------------------------------------------
火鸟
作者:
男 hawke2e (hawke2e) ★☆☆☆☆ -
普通会员
2017/2/10 22:21:27
37楼: 在IDE免费,开源的库和框架如此丰富的今天,作为RAD的delphi还有啥优势?
在delphi跟其它免费IDE比较没有任何优势的前提下,delphi还有啥理由不免费?
在不应该收费的前提下,它还继续收如此之高的价格,而且收了这么多年,这不是垂死挣扎吗?
建议坛主开辟LAZARUS板块。反正delphi必死,何不给delphier创造点生机?!
----------------------------------------------
软件是什么,相信很多人都说不清。
作者:
男 fausten (fausten) ★☆☆☆☆ -
盒子活跃会员
2017/2/11 23:39:18
38楼: wac1104:加我微信号christopherli,我拉你进群。
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS