有人试过用c++写b/s程序没有?

我为学校内的几个大ftp写了个简单的搜索引擎, 用c++写的, 今天打算做一个web界面, 不是很复杂, 又懒得去用php, rails什么的, 所以就决定用c++写cgi, 但cgi弊端很多, 所以我想到了用fastcgi, 在研究的过程中另外又找到了一个cgicc的库, 发现相当好用, 突发奇想是不是可以实现一套c++的web应用框架.

可能用c++写b/s意义不大, 不过我觉得:
1.现在stl库,boost库已经把c++扩充得很强大, 动态语言的一些优点不再那么令人神往了.
2.c++连本地数据库速度还是挺爽的, 配合sqlite3不错, 不是说b/s主要瓶颈在io上吗?
4.我最近做的几个b/s程序都是用了大量的ajax, 所以c++的任务就是生成xml或json, 这些应该都有很方便的库.
3.c++也有很好的ide, 我用vc9express觉得相当不错, 不管是编码还是调试, rails最好的ide netbeans速度还是有点不爽
4.fcgi的编程风格也容易写出mvc这种模式
5.适合过分饭c++的人,过分追求速度的人,虽然用c++写出的b/s程序不一定比rails快多少, 但是多少能满足有些人的bt心理, 呵呵

下面是我程序的几个部分:
1.dll, 主要用来处理业务逻辑, 主要导出函数为dispatcher
2.主程序, 主要是fcgi主循环, 页面被访问之后循环开始, 显示调用调用dll的dispatcher解析http请求, 这样程序在开发的过程中基本不用杀掉fcgi进程
3.html,css,images..., 这些不是c++了, 可以用其它的工具来做
4.测试程序, 不是单元测试(我这方面经验还不足). 分两种, 一个是普通cgi, 因为fcgi主程序一旦调用, 关闭比较麻烦, 需要杀掉一个apache进程和一个fcgi进程, 用普通cgi就方便了; 另一种是一个本地程序, 模仿主程序显示调用dll, 这主要是为了方便调试dll, 用vc调试还是相当方便的.

另外我还有一些想法:
1.因为主程序中的静态变量是被所有的fcgi主循环共享的, 所以这里可以放一些共享数据, 缓存一些东西
2.不一定所有地方都用ajax, 纯用c++生成或者纯的html模板可能方便性不是很高, 可以考虑在html模板中假如一些模板语言, 自己定语法用c++解析可能速度不一定快, 用一些简单的又可以用c++执行的动态语言呢? 比如说lua? 其实用c++生成json放到页面里让javascript自己去处理也行


我的想法不一定很成熟, 只是因为很喜欢c++, 也熟悉b/s开发, 看看有没有途径让c++也可以方便的写b/s程序

欢迎拍砖!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值