首页 文章 精选 留言 我的

精选列表

搜索[学习],共10000篇文章
优秀的个人博客,低调大师

酷瓜云课堂(企业版)v1.2.9 发布,课程学习+考试练习

web端更新 更新layui-v2.9.10 更新docker国内镜像地址 增加导入镜像构建容器的方式 教师不批阅非首次考试试卷 补充model为文档课程的交互提醒和说明 文档类型课时补充文件大小扩展属性 答案菜单下增加评论管理链接 修正积分兑换实物发货链接 license页面增加icp备案指向链接 轮播图增加专栏类型目标链接 增加课程能否发布检查 去除初始化kindeditor语言文件 去除选择题EF选项 优化富文本内容显示样式 优化内容图片点击放大监听 优化试题题干答案等图片样式 优化课时为图文时默认格式 优化公众号关注和取关逻辑 优化macros 优化后台页面 移动端更新 在线文档预览 下载地址: https://download.koogua.com/release/ctc-app-pro-v1.1.4.zip 注意事项 此次更新为了适应微信公众号模板消息的调整,放弃了老的模板,请参考文档重新添加相关模板。 文档地址:https://www.koogua.com/article/40 系统介绍 酷瓜云课堂,依托腾讯云基础服务架构,采用 C 扩展框架 Phalcon 开发,致力互联网课程点播,互联网课程直播,局域网课程点播,局域网课程直播,垂直于在线教育解决方案。 系统功能 实现了点播、直播、考试、专栏、面授、问答、会员、积分、秒杀、拼团、分销等。 友情提示 请使用干净的系统执行安装,如有安装过 nginx,apache 之类的占用 80 和 443 端口的 web 服务会造成端口冲突。 配置要求 操作系统:Ubuntu | Debain | Centos 系统内存:2G+ 桌面端演示 前台演示 后台演示 演示帐号:100015@163.com / 123456 (前后台通用) H5 端演示 演示帐号:13507083515 / 123456 微信公众号演示 演示帐号:13507083515 / 123456 微信小程序演示 演示帐号:13507083515 / 123456 支付流程演示 MySQL 提升全面讲解 MySQL 架构设计(0.01 元) Nginx 入门到实践 Nginx 中间件(0.01 元) 数据库与中间件的基础必修课(0.02 元) Tips:测试支付请用手机号注册一个新账户,以便接收订单通知,以及避免课程无法购买 视频加密演示 CSS3 实现按钮特效 课程简介 微信推送演示 Tips:请用手机注册一个新账号,用户中心 -> 关注订阅,扫码关注公众号。之后的登录、购买、退款、直播、咨询等会有消息推送。 项目组件 后台框架:phalcon3.4 前端框架:layui 2.9 全文检索:xunsearch 1.14 基础依赖:php 7.3, mysql 5.7, redis 5.0 项目文档 运行环境搭建 系统服务配置 客户终端配置 产品试用 申请地址:https://www.koogua.com/page/trial

优秀的个人博客,低调大师

酷瓜云课堂(内网版)v1.1.1 发布,局域网学习平台方案

更新内容 增加ldap登录 增加主观题评分功能 增加用户导出功能 增加弹幕审核和管理 去除league/commonmark包 使用AccountSearchTrait复用代码 使用xlswriter替换phpspreadsheet 修正exam/question/img上传问题 修正chapter_user中plan_id=0问题 修正ArticleUser账号查询 修正首页simple模式样式问题 修正关闭考试中的问题 更新layui-v2.9.3 优化错误处理 系统介绍 酷瓜云课堂内网版,采用C扩展框架Phalcon开发,使用本地基础服务,无营销相关功能,主要适用于公司、集团、机关、学校等内部网络环境使用。 系统功能 实现了点播、直播、专栏、问答、积分等。 友情提示: 演示系统配置低,带宽有限,切莫压测 课程数据来源于网络(无实质内容) 管理后台已禁止数据提交,私密配置已过滤 系统演示: 前台演示 后台演示 演示账号:100015@163.com / 123456 (前后台通用) 项目组件 后台框架:phalcon 3.4.5 前端框架:layui 2.9.3 全文检索:xunsearch 1.4.9 基础依赖:php7.3, mysql5.7, redis5.0 项目文档 运行环境搭建 系统服务配置 客户终端配置 产品试用 申请地址:点击申请

优秀的个人博客,低调大师

DDD学习与感悟——总是觉得自己在CRUD怎么办? | 京东云技术团队

一、DDD是什么? DDD全名叫做Domins drives Design;领域驱动设计。再说的通俗一点就是:通过领域建模的方式来实现软件设计。 问题来了:什么是软件设计?为什么要进行软件设计? 软件开发最主要的目的就是:解决一个问题(业务)而产生的一个交付物(系统)。而软件设计旨在高效的实现复杂项目软件。也就是说软件设计是从业务到系统之间的桥梁。 而DDD则是在复杂业务场景下一种更高效更合理的软件设计思维方式和方法论。 二、以前的软件设计思维是什么? 绝大部分从事软件开发的人,不管是在学校还是刚开始工作,都是从ER图开始。即直接通过业务设计数据库模型和数据关联关系。这种思维根深蒂固的印在了这些人的头脑里(包括我自己)。因此在软件设计过程中习惯性的直接将业务转化为数据模型,面向数据开发。也就是我们所说的CRUD。我们有时候也会看到一些博客看到或者听到一些同事在说:这个业务有什么难的,不就是CRUD么? 不可否认的是,在软件生命周期初期,通过CRUD这种方式我们可以快速的实现业务规则,交付项目。然而一个系统的生命周期是很长的并且维护阶段的生命周期占绝大部分比例。 随着业务的发展,业务规则越来越复杂,通过CRUD这种粗暴方式,让工程代码越来越复杂,通常一个方法可能会出现几百甚至上千行代码,各种胶水代码和业务逻辑混合在一起,导致很难理解。 这种系统交接给另一个同学或者新进来的同学后,可能需要花费很长的时间才能理解这个方法,原因就是因为这种胶水代码淹没了业务核心规则。所以在现实场景中,我们经常会听到,上一个开发是SB,或者自嘲自己是在屎山上面继续堆屎。 三、DDD思想下的软件设计 DDD的思想是基于领域模型来实现软件设计。那么,什么是领域模型?领域模型怎么得来呢? DDD思想,将软件的复杂程度提前到了设计阶段。基于DDD思想,我们的设计方式完全变了。 统一语言 首先,将业务方、领域专家以及相关的产研人员都聚拢在一起,共同探讨出业务场景和要解决的问题,统一语言。来确保所有人对于业务的理解都是一致的。 这里的统一语言不是指某种具体的技术语言,而是一种业务规则语言。所有人必须要能够理解这种统一语言。 战略设计 其次,我们根据待解决的问题空间,进行战略设计。所谓的战略设计就是根据问题空间在宏观层面识别出限界上下文。比如说一个电商业务,我们需要交付一个电商系统,根据电商业务的特点,需要划分出用户、商品、订单、仓储等限界上下文,每一个限界上下文都是一个独立的业务单元,具有完整的业务规则。 识别领域模型 然后,再分别针对上下文内的业务领域进行建模,得到领域模型。在DDD思想中,领域模型中通常包含实体、值对象、事件、领域服务等概念。我们可以通过“事件风暴”的方式来识别出这些概念。 注意,“事件风暴”和“头脑风暴”是有区别的。“头脑风暴”的主要目的是通过发散思维进行创新,而“事件风暴”是DDD中的概念,其主要目的是所有人一起根据统一语言和业务规则识别出事件。再根据事件识别出实体、值对象、领域服务、指令、业务流等领域模型中的概念。 所谓事件指的是已经发生了的事情。比如用户下了一个订单、用户取消了订单、用户支付了订单等 根据事件,我们可以识别出实体,比如上面这个例子中的订单实体,以及指令:取消、支付、下单等。 程序设计 识别出领域模型之后,我们就可以根据领域模型来指导我们进行程序设计了。这里的程序设计包括业务架构、数据架构、核心业务流程、系统架构、部署架构等。需要注意的是,在进行程序设计时,我们依然要遵循DDD中的设计规范。否则很容易走偏方向。 编写代码 有了完整的程序设计之后,我们就可以进行实际的工程搭建以及代码编写了。 这个阶段需要注意的是,我们需要遵循DDD思想中的架构设计和代码设计。实际上这个阶段也是非常困难的。因为基于DDD思想下的工程架构和我们传统的工程架构不一样。 基于DDD思想下,编码过程中我们经常会遇到的一个问题是:这个代码应该放在哪里合适。 工程结构 在DDD中,标准的工程结构分为4层。用户接口层、应用层、领域层和基础设施层。 DDD中,构建软件结构思维有六边形架构、CQRS架构等,它们是一种思想,是从逻辑层面对工程结构进行划分,而我们熟知的SOA架构以及微服务架构是从物理逻辑层面对工程结构进行划分,它们有着本质的区别,但是目标都是一样的:构建可维护、可扩展、可测试的软件系统。 代码编写 在DDD中,最为复杂的便是领域层,所有的业务逻辑和规则都在这里实现。因此我们经常会遇到一个问题就是代码应该放在哪里。 在具体落地过程中会遇到这些问题,解决这些问题没有银弹,因为不同的业务有不同的处理方式,这个时候我们需要与领域专家们讨论,得出大家都满意的处理方案。 代码重构 没有不变的业务。因此我们需要结合业务的发展而不断迭代更新我们的领域模型,通过重构的方式来挖掘隐形概念,再根据这些隐形概念去不断的调整我们的战略设计以及领域模型。使得整个软件系统的发展也是螺旋式迭代更新的过程。 通过以上的介绍,我们实现DDD的过程如下:  四、总结 通过对于DDD的理解,其实不难发现,程序员的工作重心变了,程序员其实不是在编写代码,而是在不断的摸索业务领域知识,尤其是复杂业务。 所以如果总是觉得自己在CRUD,有可能不是你做的业务没价值,而是自己对于业务的理解还不够深;如果总是沉迷于代码编写,可能你的发展空间就会受限了。 作者:京东科技 孙黎明 来源:京东云开发者社区 转载请注明来源

优秀的个人博客,低调大师

酷瓜云课堂(局域网版)v1.0.1 发布,内网在线学习平台

更新内容 优化模块注册 优化路由扫描 优化用户导入 优化CsrfToken 增加去版权判断 优化用户登录,用户注册,忘记密码 使用html替换markdown内容编辑器 轮播图增加考试类型支持 markdown转html 修正chapter模型问题 增加考试模块 去除IM和群组模块 整理优化CSS 系统介绍 酷瓜云课堂内网版,采用C扩展框架Phalcon开发,使用本地基础服务,无营销相关功能,主要适用于公司,学校等内部网络环境使用。 系统功能 实现了点播、直播、专栏、问答、积分等。 友情提示: 演示系统配置低,带宽有限,切莫压测 课程数据来源于网络(无实质内容) 管理后台已禁止数据提交,私密配置已过滤 系统演示: 前台演示 后台演示 演示账号:100015@163.com / 123456 (前后台通用) 项目组件 后台框架:phalcon 3.4.5 前端框架:layui 2.6.8 全文检索:xunsearch 1.4.9 即时通讯:workerman 3.5.22 基础依赖:php7.3, mysql5.7, redis5.0 项目文档 运行环境搭建 系统服务配置 客户终端配置

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册