ace

解读鸿蒙源码: 鸿蒙“小程序”工作原理研究笔记

佐手、 提交于 2020-10-21 06:24:54
1. 介绍 自从微信小程序出现以来,各种“小程序”如雨后春笋一般出现。事实证明小程序这种开发方式非常好,鸿蒙 JS UI 框架采用类似的方式也是在意料之中的。 一个小程序(在鸿蒙 OS 中,也就是 Ability)由多个页面组成,每个页面由三部分组成: .hml 用来描述界面的元素 .css 用来描述界面的风格 .js 用来编写处理事件逻辑 我们来看个例子: index.hml <div class="container"> <text>{{count}}</text> <input if="{{count < 10}}"type="button" value="Inc" onclick="inc"/> <input if="{{count > 0}}" type="button" value="Dec" onclick="dec"/> </div> index.css .container { flex-direction: column; justify-content: center; align-items: center; left: 0px; top: 0px; width: 454px; height: 454px; } index.js export default { data: { count: 5 }, inc() { this.count++; }, dec

程序员的聚会

时间秒杀一切 提交于 2020-10-17 19:55:45
下车后,第一个来迎接我的,是祢豆车站前的小花园,大片的彩菊在晨风中摇曳生姿,像是爵士酒吧里微醺的优雅舞者。 祢豆是我出生的城市,大学毕业后,每年只有过年才会回家,这次也不例外。 在车站对面的街口有一条横幅,上书“欢迎回家”四个红底白字。横幅下,是一家米粉铺,店外的露天桌椅上,坐满了吃饭的年轻人,各色的行李箱就立在身旁,想必他们也是从远方归乡的务工者。米粉铺的老板我不认识,只见他一只手煮粉调码,另一只手托着手机刷短视频,动作娴熟且精确。他是个很年轻的小伙子,外表看起来与店外食客别无二致。 走出车站时手机震了几下,是大苏打来了电话。 “我来接你了,你在哪呢?” “刚到站,我现在在车站对面的街口,这里有家米粉店。” “好,我马上到。” 大苏是我高中时最好的朋友,现在更成为了同行,我俩都是程序员。高中毕业后,大家都分散到全国,乃至全世界去求学,毕业后也鲜有人留在老家。只有大苏是例外,他没有像其他人一样奔向北上广深纽约东京,而是在完成学业后回到了老家。 几分钟后,一辆崭新的白色雅阁停在我面前,透过降下的车窗,我看到大苏坐在驾驶室嘻嘻地笑着。“兄弟!快上来,这里不能久停的!”他说。我迅速拉开车门坐入副驾,把公务包丢在后座上,嘴里说着好久不见。 车子缓缓地开出了这个街区,向着我家进发。大苏显得很兴奋,他表示我们兄弟两人这么久不见,今晚上要好好地喝一顿,说着递给我一支烟,自己也点上了一支。他说

插入排序之希尔排序(Java)

亡梦爱人 提交于 2020-10-12 05:01:39
插入排序之希尔排序(Java) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 希尔排序法介绍 希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序。 希尔排序法基本思想 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止 代码(交换式) package cn.guizimo.sort; import java.util.Arrays; public class ShellSort { public static void main(String[] args) { int[] arr = {8, 9, 1, 7, 2, 3, 5, 4, 6, 0}; System.out.println("排序前"); System.out.println(Arrays.toString(arr)); shellSort(arr); System.out.println("排序后"); System.out.println(Arrays.toString(arr)); } public static

一个优秀的商业分析师是如何炼成的

左心房为你撑大大i 提交于 2020-10-06 09:03:58
本文4500字,阅读完毕需10分钟 这是一个9年分析老兵的心路独白,供大家参考吐槽。 绕了一圈,还是干回数据分析 曾经数据分析师是一个被严重低估的岗位。 在陈老师12年前本科毕业的时候,做分析是件相当没前途的事。我本人读的是应用数学系。那时候一流的学生做金融,二流的去宝洁、IBM这种五百强,三流的进各大银行三大运营商的IT部,四流的做软件开发,不入流的人才去做什么数据分析。在那个年代,腾讯还是一个年收入30亿的小公司,百度刚刚崭露头角,阿里还不知道在哪里。华为,好像华为和数据没啥关系…… 在这种大环境下,陈老师果断的读了研究生。不争气的转了管理学。进入文科生的世界以后才发现,原来本科读个数学专业是这么霸气,想水个管理学/经济学的论文简直太eas y。 只需要找到一篇底稿,修改一下研究假设,派个问卷,然后几十行代码往lisrel里一丢,就基本大功告成。如果输出模型检验值通不过,还能通过数据加权,合成变量等手段合理合法的改数据,改到OK为止。 以上做法虽然为正儿八经学习的同学们所不耻(确实很无耻,同学们勿学),但是却是应付差事的利器。 类似的还有利用SPSS做因子、聚类分析,用Eviews做经济学模型,虽然过程经不起推敲,结果却看起来像那么回事。应付个差事,这就足够了。 那个年代还没有 调参侠 这个称呼,因此没有人当头棒喝给我那么一下,告诉我这种二半吊子做法会有什么危害

3D开发解析:摄像机跟随物体的代码怎么写

生来就可爱ヽ(ⅴ<●) 提交于 2020-10-06 07:01:58
ThingJS 的摄像机官方示例推出新功能,实现镜头跟随物体这个动作。 在了解摄像机跟随物体移动之前,我们需要先了解摄像机,摄像机作为ThingJS中十分重要的一个对象,需要我们认真了解和学习。 摄像机包含两个重要的位置参数:镜头位置 position 和被拍摄物体的位置 target (又叫目标点)。(具体可以看看 https://www.thingjs.com/guide/cn/tutorial_Introduce/Camera.html) 形象点来说,镜头就像是手机的相机,摄像头的定位决定了拍摄的角度,而被拍摄物体的位置更好理解了,物体可以是静止不动的,也可以是移动的,所以ThingJS新推出摄像机跟随物体移动的新功能,如何一步步实现呢? 在跟随物体移动之前,我们需要了解物体在程序语言里移动方式,例如位移(move to)或让物体沿着不同的路径移动(move path)等,路径有方形路径、圆形路径,网页端通过点击按钮进行切换。 镜头跟随物体移动 ThingJS中世界坐标系使用position属性,想象一下,跟随物体移动(move path)的时候,摄像头需要一个合适的拍摄位置,比如正前方或后上方,那么改变这个坐标的position值就可以了。ThingJS默认position [0, 5, -10] 代表 摄像机位置为“移动小车后上方”,意味着向后移动到10m处

一个工业级、跨平台、轻量级的 tcp 网络服务框架:gevent

纵然是瞬间 提交于 2020-10-05 13:51:50
作为公司的公共产品,经常有这样的需求:就是新建一个本地服务,产品线作为客户端通过 tcp 接入本地服务,来获取想要的业务能力。 与印象中动辄处理成千上万连接的 tcp 网络服务不同,这个本地服务是跑在客户机器上的,Win32 上作为开机自启动的 windows 服务运行; Linux 上作为 daemon 在后台运行。总的说来就是用于接收几个产品进程的连接,因此轻量化是其最重要的要求,在这个基础上要能兼顾跨平台就可以了。 其实主要就是 windows,再兼顾一点儿 linux。 考察了几个现有的开源网络框架,从 ACE 、boost::asio 到 libevent,都有不尽于人意的地方: a) ACE:太重,只是想要一个网络框架,结果它扒拉扒拉一堆全提供了,不用还不行; b) boost::asio:太复杂,牵扯到 boost 库,并且引入了一堆 c++ 模板,需要高版本 c++ 编译器支持; c) libevent:这个看着不错,当时确实用这个做底层封装了一版,结果发版后发现一个比较致命的问题,导致在防火墙设置比较严格的机器上初始化失败,这个后面我会详细提到。 其它的就更不用说了,之前也粗略看过陈硕的 muddo,总的感觉吧,它是基于其它开源框架不足地方改进的一个库,有相当可取的地方,但是这个改进的方向也主要是解决更大并发、更多连接,不是我的痛点,所以没有继续深入研究。 好了

研究称32%中国新冠患者嗅觉或味觉失灵,能以此来排查感染者吗?| 专家解读

為{幸葍}努か 提交于 2020-10-03 05:16:34
  冠病毒疾病的临床症状不仅包括干咳、发烧和气短,化学感知功能丧失也成了一项标志性症状。   英国查尔斯王子就是丧失嗅觉的新冠患者之一。6 月 16 日,查尔斯王子在探望国民保健署工作人员时透露, 他自 3 月感染新冠病毒至今仍未完全恢复嗅觉和味觉。 现年 71 岁的查尔斯王子在 3 月确诊新冠轻症。   查尔斯王子失去嗅觉并非特例。6 月 24 日,北京市第 131 场新冠肺炎疫情防控新闻发布会上,北京地坛医院副院长吴国安介绍,近期的病例中,有嗅觉改变的 33 人,味觉改变 21 人。据此前的媒体报道, 在感染新冠病毒后,母亲可能闻不出婴儿尿布的味道,厨师可能无法分辨咖喱或大蒜的气味,还有人说他们无法闻到洗发水的甜香和猫砂的臭味。   据复旦大学附属上海市公共卫生临床中心卢洪洲教授牵头,联合复旦大学附属眼耳鼻喉科医院舒易来主任以及德国、法国等国际专家的一项最新研究, 该症状在新冠患者中占据了较大比例,高达 41%,其中中国、德国和法国患者嗅觉或味觉障碍的发病率分别为 32%、69% 和 49%。   值得注意的是,不少患者根本没有意识到自己的嗅觉或者味觉减退,因此专家建议将嗅觉或味觉障碍纳入新冠排查标准。   6 月 16 日,这项研究发表在美国耳鼻咽喉头颈外科协会会刊《耳鼻咽喉头颈外科杂志》(Otolaryngology–Head and Neck Surgery)上。   图

40亿次仿真学习:人工智能5:0大胜人类飞行员!

↘锁芯ラ 提交于 2020-09-29 03:46:33
来源:桌面战斗 本文约 2000字, 建议阅读 5 分钟。 本文介绍了国防高级研究计划局(DARPA)的Alpha狗斗的最后一场人机对抗试验在线展开,8支人工智能团队运用算法控制空战模拟器进行虚拟对决。 8月18日至20日,国防高级研究计划局(DARPA)的Alpha狗斗的最后一场人机对抗试验在线展开,8支人工智能团队运用算法控制空战模拟器进行虚拟对决。这8支团队中,既有大型传统国防承包商(如洛克希德·马丁公司)到小型民营公司(如“苍鹭系统”)。 最终,“苍鹭系统”的人工智能团队不仅击败了其余7支团队,而且以5:0的成绩大胜真实人类飞行员团队。去年同样有8支团队参加试验,目的是演示先进的AI算法,该算法能够执行可视范围内的模拟近距空战,俗称“狗斗”。该系列试验旨在为DARPA的空战演进(ACE)计划激发并扩大AI开发人员的基础。空战演进(ACE)项目致力于实现空战自主化并建立人类对AI的信任,这是朝着改善人机团队的方向迈出的一步。 DARPA战略技术办公室美国空军项目经理丹·贾沃塞克上校说:“我们仍然很高兴看到AI算法与武器学校训练的人类如何相互对抗,并希望来自空军,海军和海军陆战队的战斗机飞行员以及军事领导人和AI技术社区将在线注册并观看。在不到一年的时间,这些团队就拥有先进的AI进行自主作战的技术,真是令人惊讶。” 前两次对抗实验,分别于2019年11月和2020年1月举行

CAD图纸如何转换成白色背景的SVG图片?

落花浮王杯 提交于 2020-08-19 20:48:33
如何将CAD图纸转换为具有白色背景的SVG图形? 在使用CAD文件的过程中,我们经常要将CAD绘图文件转换为SVG图像格式文件。而SVG是常用的图像格式之一,属于可缩放矢量图形,优点是可以直接使用代码来描述图像,而且任何文字处理工具都可以打开SVG图像。那么,怎么将CAD图纸转换成白色背景的SVG图片?今天,小编在这里和大家分享具体的转换操作。 详细步骤: 使用工具:迅捷CAD转换器 第一步:选择“CAD转图片”功能并添加文件 先登录任意浏览器,搜索‘迅捷CAD转换器’,找到迅捷CAD官网,下载安装软件到电脑桌面。双击图标,启动运行。然后在主界面选择“CAD转图片”,再添加相应的文件。 第二步:进行自定义设置 把添加的文件导入后,选择右上角的浏览选项,把文件的保存路径进行自定义设置。随后,在转换器的“背景颜色”选项框里选择白色,“输出格式”选择SVG,把CAD图纸转换成白色背景的SVG图片。最后,点击“批量转换”即可。 第三步:查看转换后的文件 转换成功后,点击文件后方的【打开】、【文件夹】、【分享】、【预览】、【删除】等选项图标,依据个人情况对转换后的SVG格式图片进行相应的操作。 以上就是今天和大家分享的CAD图纸如何转换成白色背景的SVG图片的演示操作步骤,是不是很简单又方便?希望能够帮助到使用CAD制图的小伙伴们! 来源: oschina 链接: https://my

录音如何转文字?高效工作就选:录音转文字助手APP

南楼画角 提交于 2020-08-18 21:17:56
录音如何转换成文字?对于会议记录,很多小伙伴感到十分头疼。其实,选择对了软件,会议记录便会变得更简单、轻松。“录音转文字助手”APP是办公达人高效工作的必备软件之一,小伙伴们知道如何使用这款APP把录音内容转换成文字内容吗? 接下来,小编和小伙伴们分享一下,它是如何把录音转换成文字的。 在手机应用商店,输入、搜索“录音转文字助手”,点击、进入软件详情介绍页就可以下载、安装并使用 第一步: 打开APP,点击、进入软件首页的【录音实时转写】功能页面,开始音频的录制。 第二步: 点击页面下方的【开始录音】蓝色按钮,软件便会开始录音,并自动把录制的音频转换成文字显现在页面的白色框中。 第三步: 录制并转换完成后,点击页面右上方的【保存】即可。 录音如何转换成文字?看完小编以上的分享内容,小伙伴们知道如何使用“录音转文字助手”APP把录音转换成文字了吗?对这款APP感兴趣的小伙伴们,记得下载、安装到手机上使用哦。 来源: oschina 链接: https://my.oschina.net/u/4528176/blog/4291297