用做网页开发经历了三个阶段(附长篇讨论) good
用做网页开发经历了三个阶段:
第一阶:傻干阶段
使用Intraweb,傻瓜型,无需知道javascript,html,css,会pascal就可以了。
第二阶:困惑阶段
使用Intraweb,有很多限制,比如资料少,界面不容易做漂亮,没有源代码等等。于是转向研究其他开发工具。首先吸引眼球的是Nodejs,前后台用一种语言Javascript,爽,运行速度也不赖。
随着PHP7的发布,注意力也被PHP7的高性能所吸引,玩了一阵PHP7。当然还有以前摸过的Tomcat/asp.net,各种框架一大堆。还有,也许是未来方向的Rust语言(无视GO),这方面有Iron/nickel。
玩着玩着,还是发现问题了。PHP/Nodejs,解释执行,无法编译,一点隐私都没有。虽然PHP足够稳定,速度也不错,还是放弃吧。尼玛的微软,PHP7发布了,你赶紧提供PHP7的驱动啊,我要用PHP7来连接SQL Server。微软:“哈哈,你等着吧,迟早会有的。”别说Laravel好,源代码一大堆,资料一大箩,读死你。Nodejs,后面的依赖一大堆,出点问题。你找去吧,你结交的朋友太多,谁知道哪个朋友出卖了你。
Tomcat是一个不错的选择,企业级,开源,各种框架你随便挑,稳定性没有问题,喜欢高价语言的还有Scala可玩;自动生成代码的也有,比如jeecg,连微信的开发都有了。尼玛的jeecg,害死人,自动生成的代码你改得了吗,客户今天有这个需求,明天有那个需求,除非jeecg是你写的,你想改就改。最让人受不了的是tomcat的速度,同样功能的程序,PHP都跑到半山腰了,那只公猫还在山脚下晃晃悠悠。
大姑娘,小媳妇,外面的野花你随便采。采过之后你发现,还是家花好。
第三阶:回归阶段
于是有了:WYSIWYG WebBuilder + Delphi 开发Web应用的最佳搭档(http://bbs.2ccc.com/topic.asp?topicid=512086)
我一直纳闷:Delphi这么好的语言,性能直逼C++,完全的Native Code,在Web开发这块领地,咋就没有数得着的成功案例?
其实大家将最好的东西忽略了,这就是WebBroker,因为大家把聚光灯都照在了IntraWeb上。结果IntraWeb是个不争气的孩子,做前端没有框架,一点艺术细胞都没有;做后端没有性能,Indy的框架显然满足不了当下高并发高速度的网络需求。要是不研究mORMot,还不知道用Delphi也可以写http.sys应用。不研究http.sys,就不知道IIS如此牛逼,不知道IIS的好,就不会去研究ISAPI。一研究ISAPI,你才发现,原来Delphi7的时代,WebBroker就已经IOCP了。
后台WebBroker,性能与稳定性建立在ISAPI基础上,站在巨人的肩膀上,你还怕没有好戏看吗?就差前台工具了。
前台我选WYSIWYG WebBuilder,这个东西你越用越喜欢,可以与WebBroker“狼狈为Jian”,帮WebBroker补全开发页面缺少所见即所得需要的工具。
WebBroker与WebBuilder的粘合剂就是javascript+AJAX/AJAJ,将javascript发扬光大的是jQuery,当然还有Angular/React。
前端完全采用html文件,负责页面展示,是"View",后端只负责json数据提供(当然json数据中没有规定你不能写html元素),负责读写数据库,是"Model"。"Control"在哪里?前后都有,前端是javascript写的引导程序,页面一启动,首先向后端发起ajax请求,接到后端的返回数据后负责对页面加工。肖老尸告诉你,这就是Intraweb的玩法,后端不光返回数据,也可以返回运行指令,一段javascript代码片段,让浏览器来执行。有兴趣的朋友,可以仔细研究我在“最佳搭档”开篇中那段javascript代码,那里有文章。
别告诉我IW也可以写ISAPI,尼玛IW,代码锁在自己的抽屉里,就等着发霉吧。request居然不能操作RawContent,只能解析x-www-form-urlencoded与multipart/form-data格式编码数据,如果前端直接往后端发送application/json或者text/xml编码数据,IW歇菜了。你只会炖猪肉,给你牛排你不知道如何加工,那你倒是把收到的牛排拿出来呀,尼玛的,你解析不了,又把原材料锁起来,我如何招待特需客户。
IW重写ISAPI,提升性能?性能在哪里,性能在Bill Gates那里,IIS才是性能之源。用IW 58版写一个Win10下64位的ISAPI,浏览器收到404错误,不知道问题出在哪里。人家Berlin版的WebBroker一点毛病都没患(不是没有哦)。你只用Delphi来写restFul Sevice,你是选择没有源代码,附加功能一大堆的IW,还是选择提供全部源代码,轻量级的WebBroker呢?WebBroker没有Session,Session那点事,根本就不是事,自己来。自己生的娃,出了问题自己才好教。
http://bbs.2ccc.com/topic.asp?topicid=478609