我将从头开始一个 C# 项目,该项目将包含几个模块,因此它可以通过现有 PHP/ASP/MySQL/Oracle/MS SQL 应用程序的模块出售,该应用程序管理显示 3D 对象并创建 2D 和 3D CAD 文件来自用户可以用来创建所有东西的网络应用程序。
我的问题是,从零开始,从“销售”的角度出发,它应该是我应该实现的一种很好的编程方法、设计模式、单元测试等......我怎么知道如何应用它们,有没有什么好的教程/“给我指路”有点像了解这些事情,比如......
- 我应该使哪些类可以被客户端覆盖,以便我可以在我们的模块中提供可扩展性?
- 我应该使用什么样的“包装”来“销售”?DLL、CAB、微星?
- 我应该使用 SubSonic / NHibernate 以便用户可以生成自己的 DAL?我们的原型实现将仅使用 Oracle。
我现在有点迷路,我知道该怎么做,但不知道如何完成它(记住这个完美的编码路径)。
任何好的编程想法都很高兴:)