51CTO首页
内容精选
博客
学堂
精培
企业培训
CTO训练营
开源基础软件社区
元宇宙大会
AISummit人工智能大会
公众号矩阵
移动端
博客
论坛
免费课程
课程排行
直播课
软考学堂
精品班
厂商认证
IT技术
2022年软考
PMP项目管理
在线学习
企业服务
CTO训练营
技术经理研习营
LeaTech峰会
文章
资源
问答
开源课堂
专栏
直播
51CTO
开源基础软件社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
开源基础软件社区订阅号
51CTO学堂APP
51CTO学堂企业版APP
开源基础软件社区视频号
退出
开源基础软件社区
首页
贴子
问答
资源
开源课堂
直播
发现
登录/注册
51CTO
中国优质的IT技术网站
51CTO博客
专业IT技术创作平台
51CTO学堂
IT职业在线教育平台
专栏
极客Show
鸿蒙技术特刊
我的关注
全部帖子
OpenHarmony
OpenHarmony原生
OpenHarmony发行版
应用开发
设备开发
框架语言
其他
物联网
嵌入式开发
物联网应用
通讯技术
其他
云原生
容器
DevOps
微服务
其他
数据库
关系型数据库
分布式数据库
图数据库
键值数据库
时序数据库
其他
操作系统
服务器操作系统
桌面操作系统
嵌入式操作系统
其他
其他
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
意见反馈
社区规则
社区活动
默认
发布时间
热度
原创
精华
热门标签
OpenHarmony
物联网
HarmonyOS
weiV DSL 已经设计完成,Widget、Element、View 架构已经搭建好
昨天早上突发奇想就开干,现在展示一下最新的开发成果。DSL样式如下:classMainActivity:WeiVActivity(){privatevarswitchfalseprivatevartext"weiV"overridefunbuild():Widget{returnWeiV{Flex(orientationLinearLayout.HORIZONTAL){Text(texttext,textSize14f)Text(texttext)Flex(keyKey(),orientationLinearLayout.VERTICAL){if(switch){Text(texttext)}else{Text(texttext)}repeat(10){Button(texttext+it)}for(iin1..5){Te...
xbkong
0回复
234浏览
weiV
有一个云服务器能做哪些事情?
这个问题网上有不少答案,都差不多。我也有一台自己的云服务器,是阿里云最低配的那种,1核2G,1MB带宽。我是在阿里云做活动的时候买的,一次性买了4年,只需要200多块钱,非常的便宜。今天来谈一谈我都用它干了哪些事情吧。我用它做了以下事情:1.部署了自用的Mock服务2.部署了内网穿透服务:远程ADB,远程桌面3.部署了几个网站:儿子的个人主页,FlutterFirst官网,将来还会部署weiV的官网4.部署了中继服务用来加速我家的宽带...
xbkong
0回复
311浏览
云服务器
weiV 优雅的支持 Java 并运行起来了
weiV(发音同wave)wave.webpif("weiV""View".reversed()){Log.d("weiV","它意味着控制反转,你始终应该直接操作UI的描述Widget而不是直接操作View。")}它具有以下优势:1.声明式的UI写法让原生开发效率翻倍2.达到或超越View系统的性能1.我将我的FlutterConstraintLayout移植到Android,依托它先进的布局算法,在不引入固有特性测量的情况下,让View树中的子元素在任何情况都只会被layout一次,使得任意嵌套不会引起性能问题。...
xbkong
0回复
276浏览
weiV
我要开发一个操作系统和编译器
我计划开发一个操作系统和编译器,先看操作系统。操作系统Flutter的势头发展迅猛,已经有几十万的移动应用采用Flutter开发。前不久发布的Flutter3.0已经稳定支持Windows、Linux、MacOS、Android、iOS、Web六个端。我极其看好它,我认为未来大前端将有80%的UI采用Flutter构建。实现这个目标快则5年,长则10年。Flutter不仅仅是个跨平台的UI框架,它还是Google新系统Fuchsia的默认UI框架。Flutter大量普及之后,我认为意味着99%的...
xbkong
0回复
177浏览
Flutter
必须干掉这10道,面试100%遇到!(三)
0X05二叉树层序(锯齿)遍历二叉树的遍历,对应力扣102,107,103.详细分析:一次面试,被二叉树层序遍历打爆了如果普通二叉树层序遍历,也不是什么困难的问题,但是它会有个分层返回结果的操作,就需要你详细考虑了。很多人会用两个容器(队列)进行分层的操作,这里其实可以直接使用一个队列,我们首先记录枚举前队列大小len,然后根据这个大小len去枚举遍历就可以得到完整的该层数据了。还有一个难点就是二叉树的锯齿层序(也叫之...
joytrian
0回复
226浏览
算法
Flutter 嵌套地狱?不存在的,ConstraintLayout 来解救!(三)
4.网格FlutterWeb在线示例grid.pngclassGridExampleextendsStatelessWidget{constGridExample({Keykey}):super(key:key);overrideWidgetbuild(BuildContextcontext){List<Color>colors[Colors.redAccent,Colors.greenAccent,Colors.blueAccent,Colors.orangeAccent,Colors.yellow,Colors.pink,Colors.lightBlueAccent];returnScaffold(body:ConstraintLayout(children:[...constraintGrid(id:ConstraintId('grid'),left:parent....
xbkong
0回复
192浏览
Flutter
ConstraintLayout
Flutter 嵌套地狱?不存在的,ConstraintLayout 来解救!(五)
性能优化1.当布局复杂时,如果子元素需要频繁重绘,可以考虑使用RepaintBoundary。当然合成Layer也有开销,所以需要合理使用。classOffPaintExampleextendsStatelessWidget{constOffPaintExample({Keykey}):super(key:key);overrideWidgetbuild(BuildContextcontext){returnMaterialApp(home:Scaffold(body:ConstraintLayout(children:[Container(color:Colors.orangeAccent,).offPaint().applyConstraint(width:200,height:200...
xbkong
0回复
229浏览
Flutter
ConstraintLayout
Flutter 嵌套地狱?不存在的,ConstraintLayout 来解救!(四)
7.marginFlutterWeb在线示例margin.pngclassMarginExampleextendsStatelessWidget{constMarginExample({Keykey}):super(key:key);overrideWidgetbuild(BuildContextcontext){returnScaffold(body:ConstraintLayout(children:[Container(color:constColor(0xFF005BBB),).applyConstraint(size:50,topLeftTo:parent,margin:constEdgeInsets.only(left:20,top:100,),),Container(color:constColor(0xFFFFD500),).applyConstraint(s...
xbkong
0回复
318浏览
Flutter
ConstraintLayout
Flutter 嵌套地狱?不存在的,ConstraintLayout 来解救!(二)
高级用法1.引导线FlutterWeb在线示例guideline.pngclassGuidelineExampleextendsStatelessWidget{constGuidelineExample({Keykey}):super(key:key);overrideWidgetbuild(BuildContextcontext){ConstraintIdguidelineConstraintId('guideline');returnMaterialApp(home:Scaffold(body:ConstraintLayout(children:[Container(color:constColor(0xFF005BBB),).applyConstraint(width:matchParent,height:matchConstraint,top:paren...
xbkong
0回复
390浏览
Flutter
ConstraintLayout
动态规划,它来了(一)
前言大家好,我是bigsai,好久不见,甚是想念(天天想念)!很久前就有小伙伴被动态规划所折磨,确实,很多题动态规划确实太难看出了了,甚至有的题看了题解理解起来都费劲半天。动态规划的范围虽然确实是很广很难,但是从整个动态规划出现的频率来看,这几种基础的动态规划理解容易,学习起来压力不大,并且出现频率非常高。这几个常见的动态规划有:连续子数组最大和,子数组的最大乘积,最长递增子序列(LIS),最长公共子序列(L...
joytrian
0回复
209浏览
算法
动态规划,它来了(二)
最长递增子序列最长递增子序列,也称为LIS,是出现非常高频的动态规划算法之一。这里对应力扣300给你一个整数数组nums,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组[0,3,1,6,2,2,7]的子序列。输入:nums[0,1,0,3,2,3]输出:4解释:最长递增子序列是[0,1,2,3],因此长度为4。对于最长递增子序列,如果不考虑动态规划的方法,使...
joytrian
0回复
196浏览
算法
必须干掉这10道,面试100%遇到!(一)
大家好,我是bigsai,好久不见,天天想念。最近不少小伙伴跟我交流刷题肿么刷,我给的建议就是先剑指offer和力扣hot100,在这些题中还有些重要程度和出现频率是非常非常高的,今天给大家分享当今出现频率最高的10道算法题,最近铺天盖地的出现,学到就是赚到。本篇主要内容为:0X01翻转链表力扣206和剑指offer24原题,题意为:给你单链表的头节点head,请你反转链表,并返回反转后的链表。分析:翻转链表,本意是不创建新的链表...
joytrian
0回复
221浏览
算法
必须干掉这10道,面试100%遇到!(二)
0X03环形链表对应力扣141和力扣142,力扣141环形链表要求为:给定一个链表,判断链表中是否有环,用O(1)内存解决。详细分析:环形链表找入口,真的太妙了这个问题利用快慢双指针比较高效,快指针fast每次走2步,slow每次走1步,慢指针走n步到尾时候快指针走了2n步,而环的大小一定小于等于n所以一定会相遇,如果相遇那么说明有环,如果不相遇fast先为null说明无环。具体代码为:publicclassSolution{publicbooleanhasCycle(List...
joytrian
0回复
637浏览
算法
Prometheus监控神器-服务发现篇(六)
将Consul日志加入Syslog此处为可选项,如果你需要单独将日志输出到ELK,那么此项配置非常有必要,因为默认的日志都打到syslog中了。创建目录&赋权mkdirpvarlogconsulchownRsyslog.syslogvarlogconsul创建日志配置文件cat>etcrsyslog.dconsul.conf<<EOFlocal0.varlogconsulconsul.logEOF修改默认配置文件中的以下内容vimetcrsyslog.d50default.conf变更前.;auth,authpriv.nonevarlogsyslog变更后.;auth,authpriv.none,local0.non...
icegoblin
0回复
235浏览
Prometheus
Prometheus监控神器-服务发现篇(五)
创建Server{13}配置文件生成密钥CONSULKEYconsulkeygennodeid一定不可以重复,servername可以随便定义创建server1配置文件cat>dataconsulserverconfigconfig.json<<EOF{"datacenter":"prometheus","bindaddr":"192.168.1.153","loglevel":"INFO","nodeid":"09d82408bc4f49e0111161ef1d4842f7","nodename":"server1","datadir":"dataconsulserverdata","server":true,"bootstrapexpect":3,"encrypt":"${CONSULKEY}","ui":true,"cl...
icegoblin
0回复
243浏览
Prometheus
Prometheus监控神器-服务发现篇(三)
本章节讲解服务发现与Relabelling的机制与范例。通过服务发现的方式,我们可以在不重启Prometheus服务的情况下动态的发现需要监控的Target实例信息。如上图所示,对于线上环境我们可能会划分为:dev,stage,prod不同的集群。每一个集群运行多个主机节点,每个服务器节点上运行一个NodeExporter实例。NodeExporter实例会自动注册到Consul中,而Prometheus则根据Consul返回的NodeExporter实例信息动态的维护Target列表,从而向这些T...
icegoblin
0回复
246浏览
Prometheus
Prometheus监控神器-服务发现篇(四)
本章节会对Consul的架构与自动发现、Template配置做全面讲解。Consul架构上图是官网提供的一个事例系统图,图中的Server是consul服务端高可用集群,Client是consul客户端。consul客户端不保存数据,客户端将接收到的请求转发给响应的Server端。Server之间通过局域网或广域网通信实现数据一致性。每个Server或Client都是一个consulagent。Consul集群间使用了GOSSIP协议通信和raft一致性算法。上面这张图涉及到了很多术语:Agent...
icegoblin
0回复
211浏览
Prometheus
Prometheus监控神器-服务发现篇(一)
本章节主要讲自动发现使用场景介绍与Prometheus基于文件、DNS的自动发现配置.当我们使用各类exporter分别对系统、数据库和HTTP服务进行监控指标采集,对于所有监控指标对应的Target的运行状态和资源使用情况,都是用Prometheus的静态配置功能staticconfigs来手动添加主机IP和端口,然后重载服务让Prometheus发现。对于一组比较少的服务器的测试环境中,这种手动方式添加配置信息是最简单的方法。但是实际生产环境中,对于成百上...
icegoblin
0回复
277浏览
Prometheus
Prometheus监控神器-服务发现篇(二)
基于DNS的发现对于一些环境,可能基于文件与consul服务发现已经无法满足的时候,我们可能就需要DNS来做服务发现了。在互联网架构中,我们使用主机节点或者Kubernetes集群通常是不对外暴露IP的,这就要求我们在一个内部局域网或者专用的网络中部署DNS服务器,使用DNS服务来完成内部网络中的域名解析工作。这个时候我们就可以使用Prometheus的DNS服务发现,Prometheus的DNS服务发现有俩种方法,第一种是使用DNAA记录来做自动发现...
icegoblin
0回复
246浏览
Prometheus
Floyd是咋求图的最短路径?(一)
前言在图论中,在寻路最短路径中除了Dijkstra算法以外,还有Floyd算法也是非常经典,然而两种算法还是有区别的,Floyd主要计算多源最短路径。在单源正权值最短路径,我们会用Dijkstra算法来求最短路径,并且算法的思想很简单—贪心算法:每次确定最短路径的一个点然后维护(更新)这个点周围点的距离加入预选队列,等待下一次的抛出确定。虽然思想很简单,实现起来是非常复杂的,我们需要邻接矩阵(表)储存长度,需要优先队列(或者...
joytrian
0回复
244浏览
算法
暂无内容
1
12
13
14
15
16
17
18
19
20
35
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅