摘要:
随着Ajax的流行,现在的项目使用Ajax已经很普遍了,可以说是大量的使用Ajax了。由于存在大量的Ajax请求,变得难于管理。于是我们经常统一请求,唯一页面或者唯一的入口。于是便有以下类似的代码:示例:一、创建抽象类AjaxComm。二、Factory类,根据用户请求的Comm命令,创建相应的类,并执行相应的操作。三、实现相应的命令类。 # 优点与缺点# +合并创建逻辑和实例化/配置选项。 +将客户代码与创建逻辑解耦。 -如果可以直接实例化,会使设计复杂化。 阅读全文
摘要:
当你学会用挑剔的眼光审视自己所写的代码时,将一段代码反复读上五六遍,每次都会找到新的问题。
重构,也就是对既有代码设计的改善,要求你首先知道什么样的代码需要改善。
最常见的设计问题都出自这样的代码:
1、重复代码。
2、代码过长。将一个厂方法分解为几个小方法,不但利于理解,而且能发现通常有很多方式能够使它们共享逻辑。
3、条件逻辑太复杂。
……
*重复。
*不清晰。
*复杂。
这些大原则当然对发现代码中何处需要改进有帮助。但是,许多程序员会感到这个列表太过含糊;他们不知道如何认出外表上不同代码重复,把握什么样的代码表达不算清晰,更难辨别简单代码和复杂代码。
Fowler和Beck为我们列出了存在代码坏味的12种情况。
阅读全文
摘要:
推荐一个基于.Net Core开发的开源CMS项目,该项目功能完善、涉及知识点比较多,不管是作为二次开发、还是学习都是不错的选择。 01 项目简介 Cofoundry是基于.Net开发的、代码优先开发、具备可扩展且灵活的架构、简单易用的内容管理系统。 02 项目框架 1、基于.Net 8开发。 2、 阅读全文
摘要:
我们在工作中,经常需要安装大量的软件,随着应用程序的不断增多,管理这些软件变得非常困难。 下面介绍一款具备高效、简洁的特点,可以帮助我们快速卸载大量不需要的应用程序,让电脑管理变得更加轻松。 01 项目简介 Bulk-Crap-Uninstaller是一款开源的软件卸载工具,基于.Net开发的,致力 阅读全文
摘要:
推荐一个具有模块化和可扩展的架构的CMS开源项目。 01 项目简介 Piranha CMS是一个轻量级且跨平台的CMS库,专为.NET 8设计。 该项目提供多种模板,具备CMS基本功能,也有空模板方便从头开始构建新网站,甚至可以作为移动应用的后端。 是一个完全解耦的CMS,意味着我们可以使用任何技术 阅读全文
摘要:
推荐一个跨平台、模块化、可扩展且超快速的开源一体化电子商务平台。 01项目简介 Smartstore 支持桌面和移动平台、多语言、多商店、多货币的商城,并支持SEO优化,支持无限数量的产品和类别、报表、ESD、折扣、优惠券等等。 还有一套全面的 CRM 和 CMS、销售、营销、付款和物流处理等工具可 阅读全文
摘要:
这是我之前分享在星球里面的课程,下面整理下,分享下这个无感刷新Token技术方案。 我们都知道Token是有设置有效期的,为了安全都不会设置过长的有效期;但设置有效期太短,又会导致经常需要重新登录。 这就需要无感刷新Token的方案,来提升用户体验。 目前比较常用的方案是:双token机制。 1、登 阅读全文
摘要:
推荐一个开源的文档协作办公套件,可以很好的满足团队对方便、高效、安全的方式来处理文档工作,促进团队协作和信息共享。 项目简介 ONLYOFFICE 是一个开源的办公套件,包括文档、表格、演示文稿和表单等应用程序。 可以很好低与微软Office兼容,允许多人实时在线对同一个文档进行协作编辑,并且支持W 阅读全文
摘要:
.Net 8正式发布了,发布了诸多重大的新功能、新特性! .Net 8新增的功能带来诸多惊喜,还未一一体验完毕呢,我又发现了跟随.Net 8的发布,eShop也迎来重磅升级! eShop一直以来都是微软官方提供的,一个基于.Net开发的电子商务系统开源项目。 这次升级有几大关键词:.Net 8、微服 阅读全文
摘要:
随着三天.NET Conf 2023的会议结束了,.Net 8正式发布了。 .Net 8是官方号称有史以来性能最快的一个版本了。 .Net 8 增加了数以千计的性能、稳定性和安全性改进,以及平台和工具增强功能,有助于提高开发人员的工作效率和创新速度。 反正就是快,性能好、工作效率更高! 这个版本,. 阅读全文
摘要:
Windows服务一种在后台持续运行的程序,它可以在系统启动时自动启动,并在后台执行特定的任务,例如监视文件系统、管理硬件设备、执行定时任务等。 今天推荐一个可将执行文件打包成Windows 服务的工具,方便我们封装第三个的软件。 **项目简介** = winsw一个基于.Net开发的开源项目,可以 阅读全文
摘要:
推荐一个简单易用的WPF选项卡控件。 **项目简介** = 这是一个基于WPF开发的,可扩展、高度可定制、轻量级的UI组件,支持拖拉拽功能,可以让开发人员快速实现需要选项卡窗口的系统。 **特色功能** = 1、拖拉拽标签; 2、浮动的窗口、多文档界面; 3、支持MVVM; 4、支持Chrome风格 阅读全文