背景 我是一名在.Net平台上工作的中级Web应用程序开发人员。我的大部分工作都是由我的同事或上司很好地为我定义的,我按照说明完成工作没有问题。
手头的任务: 最近我被一位老朋友要求从头开始重做他的网络应用程序。他的应用程序非常过时,而且它一直在被打破而不知所措。有问题的应用程序是库存/ CRM应用程序,目前每个客户都需要新安装的应用程序(通常通过在同一服务器上的不同域上部署并指向新数据库来完成)。
目前,如果任何客户希望对表单进行任何修改,例如附加字段,新功能等,我的朋友会进入并手动将这些字段添加到表单,脚本,数据库等中。因此,此应用程序的所有安装都是唯一的。没有一个单一的源存储库,也没有这个应用程序的单个版本。通常,新功能会超时加入其他站点,但这仍然是在逐个站点的基础上完成的。
我将以非常模块化的方式接近这一点。最初,我将编写一个模块,该模块将向外部Web服务查询某些数据,显示和存储它,并定期自动更新。下一个模块可能用于存储和显示库存数据。这样我希望随着时间的推移100%复制他的应用程序的当前功能集,但是会逐步复制。
百万美元问题
我想让应用拥有用户 可配置的表单字段。用户 应该可以去管理员 页面,创建一个新的表单页面 某些类别,然后指定 他想要什么领域。他 可以说'创建一个新的文本字段 称为Item#并将其设为a 要求“而且会得到 存储在某个地方。所有表格都将是 动态渲染到基于屏幕 关于用户配置的内容。是 这是一个很好的方式去做 不知道是什么的问题 客户可能想要一个表格?和 因此能够存储和显示 形式数据?什么样的 我应该遵循设计模式吗?
我熟悉asp.net和 .net框架一般而且 有很好的javascript知识, html,silverlight,jquery,c#等 我可以绕着网络工作 应用程序很好,但我不是 确定什么样的框架或技术 我应该用它来做到这一点 任务。 ASP.net 3.5将成为webforms 要走的路?或者我应该调查一下 ASP.NET MVC?我是否使用jquery和ajax 完全解耦前端和 后端?或者是一个普通的asp.net 页面上有一些喷溅的ajax 投入使用代码隐藏 是一天的顺序?
在我开始之前寻找一般建议。
我目前正在考虑使用ASP.NET 3.5 webforms,jquery用于客户端动画,ui,操作和数据验证,以及sqlserver + a .net或wcf webservice用于后端。
您的建议一如既往地受到赞赏。
答案 0 :(得分:2)
我最近为一家保险公司实施了一个白标电子商务系统,允许每个合作伙伴选择自己的一组输入字段,屏幕,并根据个人需求订购应用程序流程。
虽然它不是火箭科学,但它增加了复杂性并增加了开发时间。
非常仔细地考虑用户配置方面事后看来,我的客户和他们的客户反过来会对更严格的系统感到满意。
至于问题的技术方面,我在VS2005中使用asp.net webforms和带有SQLserver后端的webservices开发了我的项目,因此您正在查看的堆栈肯定能够提供正常工作的产品。就可测试性而言,ASP.net MVC几乎肯定会有所帮助。
如果我要重新开始,我现在要改变的最大的事情是使用nServiceBus,MassTransit等替换基于消息的服务的中间web服务。虽然网络服务运行良好,但基于消息的通信应该更快,更可靠。
最后,在开始编码之前,请确保您了解当前系统的内部和外部功能。如果新系统没有做旧系统所做的事情,那么最终用户就会非常明显。