[Asp.Net Core] Blazor Server Side 开发教程 - 进度, 计划, 安排

前言:

在写了上一篇文章之后, 

Blazor Server Side 开发教程 - 安装环境与运行第一个程序

还写了一个较远的东西 : 

视频图文教学 - 用最快的速度把 DotNet Core Blazor 程序安装到 树莓派中 并且用网页控制 GPIO 闪灯

到现在, 居然已经过了一个多星期了. 

 

正如前面文中计划的, 本人写的一系列教程主要针对 中小企业开发者 , 包括新手

所以做事的方向也是如此. 

 

组件:

这个星期我除了本职工作以外, 主要干的是创造 Blazor 所需要各种组件.

Blazor的确是一个很好的开发框架. 但是它太新了. 很多细节并没有提供直接的解决方案. 

开发者如果需要手动去做, 某些事情需要花费大量的工作. 

现在我做的这个组件, 就是要解决开发中难度与耗时问题. 

当前已实现的东西有:

  • Alert / Confirm / Prompt / Toast
  • 模态对话框 Modal Dialog , 支持 ESC 键, 返回键, history.back() , 手机返回键等等. 
  • 文件上传 . 很容易定制自己的进度条. 
  • BlazorSession , 用于弥补 Blazor 没有自带 Session 的问题
  • BlazorSession.Browser , 用于自动给浏览器存一个UniqueID , 与基于这个ID进行数据存取
  • 更友好的脚本交互模式. 直接支持Eval , 而不需要提交一个函数名. 
  • DOM控件体系 (凌驾于Render体系) , 扩展界面的编写模式, 现在可以手动 Create/Append/Remove DOM元素
  • BlazorTreeView , BlazorListView , PlusGridView , 这些还未写例子和文档. 
  • js文件依赖关系与推送,缓存 - 解决js文件的动态加载问题, 在服务器按需推送脚本, 立刻推送立刻可用. 
  • 对SVG,Canvas提供简易的支持. 

其他例子有:

  • 常用信息获取 - 例如 IP, 客户端状态, 服务器各种情况
  • 使用PlusControl来直接生成一棵自带状态的Tree
  • 聊天室 - 按IP分配聊天室, 同一个IP的人可以互相聊天
  • 验证码 - 参照 为什么选择 Blazor Server Side (一) 快速实现图片验证码
  • Input未提交前立刻获取输入中的信息

演示地址 http://demo.blazorplus.com/ (硅谷服务器, 国内访问挺卡的) 

演示代码 https://github.com/BlazorPlus/BlazorPlusDemo 

Nuget : https://www.nuget.org/packages/BlazorPlus

MIT License , 完全免费无使用担忧. 

 

相关项目:

https://github.com/BlazorPlus/BlazorLinuxAdmin 

这是第一个基于这个组件开发的项目. 用于验证组件功能. 

虽然它不是"中小型软件公司"所关注的类型. 

但是里面已经包含了一些常见概念 :  

  • 全局登录 
  • 列表 (搜索) , 
  • 树型目录
  • 简单的Canvas动态折线图

需要尝鲜的网友可以试一下. 

 

进度问题

目前这个东西还在积极的开发中, 文档也慢慢准备. 

最终的目标, 就是Plus, Blazor缺的功能, 都给加上

注意的是, 这套东西与现在很多 UI项目不一样, 它不是UI, 但兼容所有的 UI项目的

其他UI项目

以下复制自张队的文章 : https://www.cnblogs.com/shanyou/p/12717318.html , 推荐的UI项目: 

目前我们在开发一个开源项目 ant-design-blazor,目标是成为Ant Design官方认可的Blazor实现,并丰富Blazor生态。现在刚起步,需要有兴趣的同学一起参与。

Github:https://github.com/ElderJames/ant-design-blazor
Demo:
https://ant-design-blazor.gitee.io
开发文档:
https://github.com/ElderJames/ant-design-blazor/wiki
Blazor文档:https://docs.microsoft.com/zh-cn/aspnet/core/blazor/?view=aspnetcore-3.1

欢迎任何形式的issue和PR

国内社区还有几个Blazor相关的库:

1、Bootstrap 是 Blazor 基于Bootstrap ,这个UI库目前只有服务器端,客户端wasm模式等正式版出来会搞, 仓库地址:https://gitee.com/LongbowEnterprise/BootstrapBlazor ,演示地址:blazor.sdgxgz.com 

2、Blazui  是 Element UI 的 CSS 和 HTML 结构 仓库地址:https://github.com/wzxinchen/Blazui ,演示地址 http://blazui.com:9000

 

计划:

因为日常工作量还是很大, 而且还得空闲事件开发组件与文档教程

所以博客园的新手系列估计还是只能坚持一周一章. 

不过没关系, 因为Blazor也是在... 在爆发之中,  需要飞一会儿, 时间上刚好搭上. 

现在不建议新手开发者立刻上马. (老手开发者可以) 

但是值得平时花多一点时间, 慢慢学习, 慢慢积累经验. 

 

教程方面, 会有一系列的文章推荐.  

除了自己写的 ,  还会推荐其他人写的值得一看的文章.  

当然是考虑到开发者的能力程度, 为开发者省时咯. 

虽然很多文章内容都很好.  但是网上的文章缺少整理. 

什么程度的人需要看哪些文章, 文章与文章之间是什么前后关系, 

有哪些文章值得看, 哪些文章不值得看, 

都需要整理, 排序, 归类, 等等. 

也是不少工作量. 

 

样板项目:

上次提及过, 要写一个样板工程.  

这次样板工程的类型也基本上定了下来. 

 

那便是 中小型软件公司快速开发模板 

包含后台管理, 包含微信整合, 桌面/手机消息推送等等东西. 

里面大概做的是 : 

  1. 统一用户管理 , 微信公众号绑定
  2. OA/CRM/项目管理/工作流/.... 等比较基本的可选的功能. 
  3. 企业私有网盘 , (解决小企业'隐私地'分享文件问题, 而不是依靠云或邮件, 并且支持使用量审计, 操作纪录)
  4. 基于这个, 慢慢做一些典型行业的模板.

很多中小型企业, 他们根本不愿意上云. 也拒绝使用各种云OA....  

已经很多年不做OA了, 互联网OA拼杀太残酷. 给中小企业做定制OA, 没什么肉吃. 

但是这次借助这么一个机会, 把OA重新搞起来, 还是值得的. 毕竟不愿意使用公共OA的市场还有..

 

这次做这个项目, 打算全程录播

从新建项目开始, 一步一步的, 如何慢慢增加功能, 都录屏下来, 然后拖时间的部分剪掉. 

让开发者可以自己感受一下Blazor的开发方式. 建立一套第一目标为省时省力的开发方式. 

考虑使用的技术方案, 越简单越好. 不要有太多的依赖, 让项目换人变得更容易. 

 

暂时这样

需要加入新手问答群的, 请进QQ群 934608703 ,  现在没什么人, 欢迎来占坑.  我们要做的就是等待 Blazor 爆发. 

另外我的 B 站 : https://space.bilibili.com/540073960 , 用于投放视频.  有价值的视频都会在博客园发表文章解说. 

我自己是极为看重 Blazor 的, 它将会大大地提高工作效率,  基于统一的开发方式, 至少能用上10年, 或者更长...

现在要做的, 就是准备, 早一点准备, 早上车早享受. 

 

posted on 2020-04-24 09:15  轩轩之家  阅读(1268)  评论(1编辑  收藏  举报

导航