任何形式的贡献都欢迎,包括:
个人能力有限,欢迎一起开发。
目前项目基本框架已经建立,但是还不完整,因此非常欢迎人一起讨论技术和业务。 但是交流合作之前,请查看以下碎碎念。
litemall的设计受众是小微型企业,而不是互联网企业,因此litemall的开发理念是一个小而美:
正是因为以上考虑,目前litemall的架构是简单的,三种技术栈都是最基本的。
虽然这么说,但是实际上开发的入门门槛不低:
因此贡献新的代码或讨论业务前,建议考虑以下问题:
因为本项目希望能够为更多的人所学习使用,项目的复杂性是需要考虑的问题。 如果是复杂性和收益是相同的,那么接收贡献的可能性其实值得讨论。
例如,一些技术框架采用了fastjson,而实际上spring boot已经默认采用jackson,因此如果没有特殊原因, 贡献者应该尽可能采用jackson。
这里是谨慎的。例如,如果要引入缓存技术,则需要去学习缓存相关的类库,以及可能会遇到一些使用中存在的问题。 而v2.0.0之前其实没有必要提前考虑性能问题。同样地,单点登录技术是分布式架构中必须存在的基本功能,但是 目前两个后端服务分别采用各自登录方案即可。
注意:
这里并不是拒绝新技术,而是希望采取一个渐进式的谨慎的态度。 此外,对于新技术运用,其实规划是基于本项目稳定版本再开发一个独立的分布式版本。
这里是欢迎的。例如,已经有了vue框架的管理后台,但是采用其他前端框架的管理后台也是欢迎的。 这样可以给不同技术背景的用户所选择。当然,应该尽量保持不同版本之间的同步。又或者,小程序 已经有了一些开发框架,而目前小商场的小程序端仍然是原始的小程序技术,因此基于这些新的开发框架 来重构小程序端是欢迎的。
也就是说本项目希望避免技术深度,而倾向于技术宽度,帮助自己以及更多的人学习了解不同的技术。
这里是欢迎的。很多开源项目都建议贡献代码时应该少量并且逻辑分明。这样审阅代码时才能明确。 当然,如果是单词拼写不对之类,那么应该尽可能在一次commit中修复同样的问题。
虽然这里可能表现出对新技术的谨慎态度,但是如果用户发现有更好的技术或者有必要,欢迎讨论。 当然,如果开发者不认同这里的一些理念,也可以基于自己的技术选型来开发自己的版本。 如果认为自己开发的好,可以在本项目提交链接地址,让其他开发者了解。
本项目所设想的基本业务功能已经在文档中列举完成。
如果希望引入高级功能,例如分销功能等,建议用户在本项目基础上自行开发。
如果认为有基本业务没有实现,可以Issue或者QQ群讨论,加入后续开发计划。
当然更希望开发者直接提供代码,丰富完善目前的基础业务功能。