百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

程序员CMS的选择,Lin CMS,简单优雅纯粹

ccwgpt 2024-10-09 08:32 24 浏览 0 评论

Lin CMS 是一个前后端分离的 CMS 解决方案,这意味着,Lin 既提供后台的支撑,也有一套对应的前端系统,当然双端分离的好处不仅仅 在于此,Lin 目前已有 Python 、Node.js 和 Java 版本的实现。Lin 已经内置了 CMS 中最为常见的需求:用户管理、权限管理、日志系统等。开发者只需 要集中精力开发自己的 CMS 业务即可。






Github和文档

https://github.com/TaleLin/lin-cms-vue

http://doc.cms.talelin.com/

特点

  • Lin CMS 本身也是一套开发规范

Lin CMS 除了内置常见的功能外,还提供了一套开发规范与工具类。换句话说,开发者无需 再纠结如何验证参数?如何操作数据库?如何做全局的异常处理?API 的结构如何?前端结 构应该如何组织?这些问题 Lin CMS 已经给出了解决方案。当然,如果你不喜欢 Lin 给出 的架构,那么自己去实现自己的 CMS 架构也是可以的。但通常情况下,你确实无需再做出 架构上的改动,Lin 可以满足绝大多数中小型的 CMS 需求。

举例来说,每个 API 都需要校验客户端传递的参数。但校验的方法有很多种,不同的开发 者会有不同的构筑方案。但 Lin 提供了一套验证机制,开发者无需再纠结如何校验参数, 只需模仿 Lin 的校验方案去写自己的业务即可。

还是基于这样的一个原则:Lin CMS 只需要开发者关注自己的业务开发,它已经内置了很 多机制帮助开发者快速开发自己的业务。

  • 基于插件的扩展

任何优秀的框架都需要考虑到扩展。而 Lin 的扩展支持是通过插件的思想来设计的。当你 需要新增一个功能时,你既可以直接在 Lin 的目录下编写代码,也可以将功能以插件的形 式封装。比如,你开发了一个文章管理功能,你可以选择以插件的形式来发布,这样其他开发者通过安装你的插件就可以使用这个功能了。毫无疑问,以插件的形式封装功能将最大化 代码的可复用性。你甚至可以把自己开发的插件发布,以提供给其他开发者使用。这种机制 相当的棒。

  • 前端组件库支持

Lin 还将提供一套类似于 Vue Element 的前端组件库,以方便前端开发者快速开发。相比 于 Vue Element 或 iView 等成熟的组件库,Lin 所提供的组件库将针对 Lin CMS 的整体 设计风格、交互体验等作出大量的优化,使用 Lin 的组件库将更容易开发出体验更好的 CMS 系统。当然,Lin 本身不限制开发者选用任何的组件库,你完全可以根据自己的喜好/ 习惯/熟悉度,去选择任意的一个基于 Vue 的组件库,比如前面提到的 Vue Element 和 iView 等。你甚至可以混搭使用。当然,前提是这些组件库是基于 Vue 的。



所需基础

由于 Lin 采用的是前后端分离的架构,所以你至少需要熟悉 Python(Node.js 或者 Java) 和 Vue。

Lin 的服务端框架是基于 Python Flask 的,所以如果你比较熟悉 Flask 的开发模式,那 将可以更好的使用 Lin。但如果你并不熟悉 Flask,我们认为也没有太大的关系,因为 Lin 本身已经提供了一套完整的开发机制,你只需要在 Lin 的框架下用 Python 来编写自己的 业务代码即可。照葫芦画瓢应该就是这种感觉。

如果你不熟悉 Python,甚至说不会 Python,没关系。我们的 Node.js 版本已经发布。

但前端不同,前端还是需要开发者比较熟悉 Vue 的。但我想以 Vue 在国内的普及程度,绝 大多数的开发者是没有问题的。这也正是我们选择 Vue 作为前端框架的原因。如果你喜欢 React Or Angular,那么加入我们,为 Lin 开发一个对应的版本吧。



为什么选择 Node.js

我们在多方面的考虑和衡量下选择了 Node.js 作为团队第二个引入的技术栈。

  • Node.js 受众广,不论是前端,后端,甚至是测试、UI 都有一定的 js 基础。
  • Node.js 近几年一直蓬勃发展,但是真正易用的 CMS 框架鲜有,Lin 希望填补这一空缺 。
  • ...

在框架上,我们选择了koa 作为基础框架,整合了 koa-router,sequelize,jsonwebtoken 等一系列的框架,得益于 flask 版本的实现,koa 版的 CMS 更加优良与易用。lin-cms-koa 在很大程度上借鉴了 lin-cms-flask,我们尽量 保证二者的架构和模式一致。当然由于二者属于不同语言,也有截然不同的生态,因此或多 或少的存在一定的差异性,我们后续会在文档中详细介绍。

lin-cms-koa 实现的主要技术栈和特点:

  • 整合了koa-router作为基础路由框架,并提供LinRouter进行权限管理。
  • 整合了validator.js作为参数校验库。
  • 整合了sequelize框架,方便进行数据库操作。
  • 整合了jsonwebtoken框架,并提供了access_token和refresh_token的令牌机制。
  • 提供了 配置、日志、权限等诸多基础功能,当然得益于 koa 的生态,你也可以使用任何 其它三方库。

另外还有Java(spring boot)、Python(flask)后端版本,.Net core版本

相关推荐

谷歌正在为Play商店进行Material Design改造

谷歌最近一直忙于在其应用程序中完成MaterialDesign风格的改造,而Play商店似乎是接下来的一个。9to5Google网站报道,有用户在Play商店的最新版本中发现了新界面,暗示该应用和网...

企业网站免费搭建,定制化建站CMS系统

科腾软件企业网站CMS管理系统已完成开发工作,首次开源(全部源码)发布。开发工具:VisualStudioEnterprise2022数据库:SQLite(零配置,跨平台,嵌入式)开发...

您需要的 11 个免费 Chrome 扩展程序

来源:SEO_SEM营销顾问大师Chrome扩展程序是SEO的无名英雄,他们在幕后默默工作,使您的策略脱颖而出并提高您的努力效率。从竞争对手研究到审核您的网站,速度比您说“元描述”还快,这些小工具发...

户外便携设备抗干扰困境如何破局?CMS-160925-078S-67给出答案

  在户外复杂的电磁环境中,便携式设备中的扬声器需具备出色抗干扰能力,CUID的CMS-160925-078S-67在这方面表现突出。  从其结构设计来看,矩形框架虽主要为适配紧凑空...

一个基于NetCore开发的前后端分离CMS系统

今天给大家推荐一个开源的前后端分离架构的CMS建站系统。项目简介这是一个基于.Net3构建的简单、跨平台、模块化建站系统。系统业务简单、代码清晰、层级分明、全新架构便于二次扩展开发。支持多种数据库,...

本地Docker部署ZFile网盘打造个人云存储

前言本文主要介绍如何在LinuxUbuntu系统使用Docker本地部署ZFile文件管理系统,并结合cpolar内网穿透工具实现远程访问本地服务器上的ZFile传输与备份文件,轻松搭建个人网盘,无...

pcfcms企业建站系统 免费+开源的企业内容管理系统

项目介绍pcfcms是基于TP6.0框架为核心开发的免费+开源的企业内容管理系统,专注企业建站用户需求提供海量各行业模板,降低中小企业网站建设、网络营销成本,致力于打造用户舒适的建站体验。演示站...

【推荐】一个高颜值且功能强大的 Vue3 后台管理系统框架

如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!项目介绍SnowAdmin是一款基于Vue3、TypeScript、Vite5、Pinia、Arco-Desi...

java开源cms管理系统框架PublicCMS后台管理系统

一款使用Java语言开发的CMS,提供文章发布,图片展示,文件下载,用户权限、站点模块,内容管理、分类等功能。可免费用于商业用途maven工程数据库脚本在工程中database文件夹下代码结构:效果...

一定要大量读书:当我问Deepseek,它给出的高效阅读方法厉害了!

一年一度的世界读书日,总该写点什么。于是,我去问Deepseek给我推荐人生破局必读的10本书,结果它给了我回复,竟然10本推荐的书籍里,我都曾经浏览过,同时还给出破局关键。而说浏览过,不是读过,是因...

《搜神札记》:不应磨灭的惊奇(小说《搜神记》)

□黄勃志怪传说的书写一直是文人墨客的后花园,晚近尤盛,从张岱到袁枚到纪昀,收集那些或阴森或吊诡的行状故事,遂成一类,到民国年间,周作人挟此遗传,捋袖子拿希腊神话动刀,乃兄鲁迅不甘其后,《故事新编》虎...

《如何构建金字塔》之第三章总结(构建金字塔结构的方法有)

“没有什么比一套好理论更有用了。”——库尔特.勒温这篇读后感依然引用了这句库尔特.勒温名言,这句话也是我读芭芭拉.明托这本书的初衷。今天就“如何构建金字塔”,我来谈谈我的读后心得。我热爱写作,但是写...

《助人技术》第一章助人引论内容框架

第一章内容基本呈现如何成为助人者(心理咨询师)以及一些相关基础知识,对于进入这个行业有兴趣以及希望通过心理咨询寻求帮助但存有疑虑的当事人,都值得一读。心理咨询的三个阶段(不是说严格的三个阶段,而是广义...

AI助手重构读后感写作流程:从提纲到完整性思考的转换

大家好!你有没有遇到过读完一本书,想要写读后感,却不知道从何下手的情况呢?今天我们要来探讨一下如何利用稿见AI助手来重构读后感写作流程,从提纲到完整性思考的转换。让我们一起来看看这个全新而又实用的方法...

图解用思维导图做读书笔记技巧(图解用思维导图做读书笔记技巧视频)

做阅读笔记非常有利于读后进行有效的深入思考,而思维导图这一强大的工具其最大的特点就是架构清晰,在阅读过程中对文章的分析、总结、分类起着很大的辅助作用。思维导图读书笔记步骤:1、阅读大纲。首先要快速浏览...

取消回复欢迎 发表评论: