本人新手,想学习 C# 写 C/S 程序(后台连 SQL SERVER 数据库),要能在 INTERNET 上用,哪位大侠能指点一下思路?后台是直接用数据库还是应用层+数据库?如果是后者的话,前台软件如何连接后台应用层?ADO 要不要用?要用的话怎样处理?还有跨 INTERNET 的关键地方在哪里?要怎样设置?像QQ一样不管在内网还是外网,都可以连到腾讯服务器,这在技术上怎样处理的?前台自动更新模块怎样实现?问题比较多,希望哪位大侠能不吝赐教,万分感谢!(PS:本人用 PHP + MYSQL 做过信息管理软件,但现在已经非常厌烦这种 B/S 开发了,主要的痛苦来自前端的处理,界面的安排、调整很烦人,内容的打印、复杂的操作、交互等都很难受,决定转学 C/S,希望高人帮忙!)
你厌烦B/S就是因为你没有利用前人的经验 认为那种三层架构之类的东西 无意义而繁琐最终东西是做出来了 但是一旦有我们变化或者调整就很烦当然我不确定你遇到的真实情况如何
我觉得不论C/S B/S
你应该好好学习一下 如何构建符合规范的三层架构
做 B/S 时,三层架构是考虑过的。主要是不想去钻 HTML, CSS , JAVASCRIPT 等这些东西了,看着这些东西就烦,但这些东西不深入掌握和应用,前台的表现力、交互性、人性化、可调性就很差,所以很烦。总之,不想在 B/S 这条路上继续走了,长痛不如短痛,想转到 C/S 上来。
大概就是分别写服务器程序和客户端程序,服务器端程序封装好数据库访问、侦听、数据发送之类乱七八糟的东西,公开供客户端程序访问的接口,服务器端程序和客户端程序通过socket通信......
俺了解的只有这么多了,没做过~~~
放弃BS才是王道,但是BS你要会啊
如果让人家直接跟你通讯的话你需要掌握P2P技术。
虽然我很菜,但不是小子了,也许比你年纪还大。不过是决定要放弃 B/S投 C/S 了。B太难受了,真是非常难受,不用控件,许多事弄起来很要命,要是使用控件,还不如用 C,无论从哪头看,都要转 C/S
c/s无论开发效率、传输速度、安全性、服务器要求均高于b/s,但也有弊端,那就是要安装客户端。
做c/s,同样需架设三层甚至多层,并且分客户端程序和服务端程序,客户端也就是b/s中的调用接口界面呈现数据,服务端即b/s中的接口层、BLL、DLL、SQLHelp之类。总之大体差不多。
想从事c/s开发,你必须了解Remoting、WCF这两种服务,用做通信,这两种服务可任选一种,WCF已成主流。
另外,建议兄台继续走B/S之道前途可能会更光明些,Why? 人才网搜一下就明白了
谢谢指点,WCF,socket 之类的我会去看一下。安装客户端这个弊端跟C/S 的强大比起来,我想应该可以接受的,像 QQ、炒股软件之类的不都需要下载安装么?也没听见大家抱怨这样很烦,呵呵。一次装好后就行了,以后就让客户端软件自行配置、自动更新,这样我觉很好,像QQ人人都会下载都会安装使用,不需要复杂的配置,软件做成这样挺好。倒是 B/S ,前端真是烦死人,开发也麻烦,用户体验也没 C/S 好,功能也没 C/S 强,或者说要做同样功能的,B 可能要费劲的多。未来如果 B/S 把 C/S 搞死了,那这个 B 起码也变得跟 C 差不多了,如果还是 HTML 加 CSS 加 JAVASCRIPT 加控件等这样七拼八凑的话,要把 C/S 淘汰掉目前可能还是比较难。在企业内部或面向固定用户群的话,C/S 还是挺好的。
我的新手,以后请多指教。
为什么不关心互联网?只能在局域网用的 C/S 没意思,要像 QQ 一样分布在互联网上可以登录的 C/S 程序才好,而且我觉得这也是做 C/S 必须要考虑的,否则一些人总是认为B/S可以用在互联网,C/S只用在局域网,我不认同这种看法,QQ就是一个现成的很好的例子,通过互联网使用的C/S