在某宝或某东上选购装修建材靠谱吗 发布于 九月 16, 2021 建议网购的衡量点,一划算,二售后不麻烦,三退换成本低,四选择多。 比如,硬装阶段 1、水电要用的:水管、线管、电线、前置过滤器,都适合网购,价格会比当地便宜一点,品牌选择也更多,像常见的联塑、日丰、伟星、金龙羽、秋叶原、金杯,京东或天猫都能找到旗舰店,蹲活动买就行,万一在旗舰店买到假的,那售后完.....就发个小财。 线管可以去1688再对比看看,价格能再少些,只是保护电线用的,可以不用太讲究。 断路器,蹲活动网购会更便宜,去旗舰店买也不用担心会买到假的,像我常用的施耐德,正泰,各种价位都有,根据客户预算去搭配。 强弱电箱,网购也会更便宜,毕竟线下的价格挺不透明的。 2、做防水要用的:防水涂料等,网购一点问题没有,常用的雨虹,德高,立邦,天猫京东都有旗舰店,小店就去品牌官网查查授权。 3、贴砖要用的:局部使用的小众花砖、马赛克,建议网购,小城市估计都找不出来这种类型,网上的选择更多,而且这类砖一般不买很多,让老板稍微给你预多一点量就可以了。 其他的地砖墙砖,不建议网购,当地已经很多选择了,四五线小城市到处都是30-1000元的砖,丰俭由人,这类如果出现色差或者其他不符的情况,当地退换比网购方便的多,成本也是当地划算。 4、吊顶要用的:石膏板等都建议当地采购,网购不占什么优势,价格差别也不大。 5、刷墙要用的:墙固、腻子、乳胶漆等,都可以网购,不过乳胶漆的价格跟线下区别相差不大,之前看是每桶差个10几20块左右,像立邦多乐士的旗舰店,有些是厂家发货,有些是当地经销商那直接发过来的,如果要调色,也是可以调的,不过基本都是浅色系,而且得注意色差了。 6、定制柜,这个其实更建议线下,可以在网上找找周边有没有这类的厂家,去实地了解,因为这个到安装阶段容易出现售后问题,尺寸不对,颜色不对等等,一般当地很容易找到千元内一平的。自己有资源就另外说了,外地做好物流过来,找人安装就行,建材一条街的小店很多都是这样的,接了单发外地厂家,做好物流过来,店家找师傅给你安装。 7、厨房像水槽、水龙头,拉篮,网上蹲活动,价格大概率比线下便宜,像拉篮,我一客户之前装修,定橱柜那家让他+900,给他安一个的拉篮,没有牌子,网购买悍高才多少钱,同样规格,实惠的才300多点,买贵的800多,质量跟售后都有保障,选择也更多。 如果橱柜是做石材柜体或者砖夹的,柜门也适合网购,一般做橱柜那家店的选择都很少,而... 阅读全文
小程序框架全面测评 发布于 十月 28, 2019 最近前端届多端框架频出,相信很多有代码多端运行需求的开发者都会产生一些疑惑:这些框架都有什么优缺点?到底应该用哪个? 作为 Taro 开发团队一员,笔者想在本文尽量站在一个客观公正的角度去评价各个框架的选型和优劣。但宥于利益相关,本文的观点很可能是带有偏向性的,大家可以带着批判的眼光去看待,权当抛砖引玉。 那么,当我们在讨论多端框架时,我们在谈论什么: 多端 笔者以为,现在流行的多端框架可以大致分为三类: 1. 全包型 这类框架最大的特点就是从底层的渲染引擎、布局引擎,到中层的 DSL,再到上层的框架全部由自己开发,代表框架是 Qt 和 Flutter。这类框架优点非常明显:性能(的上限)高;各平台渲染结果一致。缺点也非常明显:需要完全重新学习 DSL(QML/Dart),以及难以适配中国特色的端:小程序。 这类框架是最原始也是最纯正的的多端开发框架,由于底层到上层每个环节都掌握在自己手里,也能最大可能地去保证开发和跨端体验一致。但它们的框架研发成本巨大,渲染引擎、布局引擎、DSL、上层框架每个部分都需要大量人力开发维护。 2. Web 技术型 这类框架把 Web 技术(JavaScript,CSS)带到移动开发中,自研布局引擎处理 CSS,使用 JavaScript 写业务逻辑,使用流行的前端框架作为 DSL,各端分别使用各自的原生组件渲染。代表框架是 React Native 和 Weex,这样做的优点有: 开发迅速 复用前端生态 易于学习上手,不管前端后端移动端,多多少少都会一点 JS、CSS 缺点有: 交互复杂时难以写出高性能的代码,这类框架的设计就必然导致 JS 和 Native 之间需要通信,类似于手势操作这样频繁地触发通信就很可能使得 UI 无法在 16ms 内及时绘制。React Native 有一些声明式的组件可以避免这个问题,但声明式的写法很难满足复杂交互的需求。 由于没有渲染引擎,使用各端的原生组件渲染,相同代码渲染的一致性没有第一种高。 3. JavaScript 编译型 这类框架就是我们这篇文章的主角们: Taro 、 WePY 、 uni-app 、 mpvue 、 chameleon ,它们的原理也都大同小异:先以 JavaScript 作为基础选定一个 DSL 框架... 阅读全文
阿里盒马领域驱动设计DDD实践 发布于 四月 25, 2021 前言 设计是把双刃剑,没有最好的,也没有更好的,而是条条大路到杭州。同时不设计和过度设计都是有问题的,恰到好处的设计才是我们追求的极致。 DDD(Domain-Driven Design,领域驱动设计)只是一个流派,谈不上压倒性优势,更不是完美无缺。 我更想跟大家分享的是我们是否关注设计本身,不管什么流派的设计,有设计就是好的。 从我看到的代码上来讲,阿里集团内部大部分代码都不属于 DDD 类型,有设计的也不多,更多的像“面条代码”,从端上一条线杀到数据库完成一个操作,仅有的一些设计集中在数据库上。我们依靠强大的测试保证了软件的外部质量(向苦逼的测试们致敬),而内部质量在紧张的项目周期中屡屡得不到重视,陷入日复一日的技术负债中。 一直想写点什么唤起大家的设计意识,但不知道写点什么合适。去年转到盒马,有了更多的机会写代码,可以从无到有去构建一个系统。盒马跟集团大多数业务不同,盒马的业务更面向 B 端,从供应到配送链条,整体性很强, 关系复杂,不整理清楚,谁也搞不明白发生什么了 。所以这里 设计很重要 ,不设计的代码今天不死也是拖到明天去死,不管我们在盒马待多久,不能给未来的兄弟挖坑啊。在我负责的模块里,我们 完整地应用了 DDD 的方式去完成整个系统 ,其中有我们自己的思考和改变,在这里我想给大家分享一下,他山之石可以攻玉,大家可以借鉴。 领域模型探讨 1. 领域模型设计:基于数据库 vs 基于对象 设计上我们通常从两种维度入手: Data Modeling : 通过数据抽象系统关系,也就是数据库设计 Object Modeling : 通过面向对象方式抽象系统关系,也就是面向对象设计大部分架构师都是从 Data Modeling 开始设计软件系统,少部分人通过 Object Modeling 方式开始设计软件系统。这两种建模方式并不互相冲突,都很重要,但从哪个方向开始设计,对系统最终形态有很大的区别。 Data Model 领域模型(在这里叫数据模型)对所有软件从业者来讲都不是一个陌生的名词,一个软件产品的内在质量好坏可能被领域模型清晰与否所决定,好的领域模型可以让产品结构清楚、修改更方便、演进成本更低。 在一个开发团队里,架构师很重要,他决定了软件结构,这个结构决定了软件未来的可读性、可扩展性和可演进性。通常来说架构师设计领域模型,开发人员基于这个领域... 阅读全文
买了车以后才知道的一些事情 发布于 十月 15, 2021 1.盲区,驾校通常不教,很多人都是听别人说什么AB柱盲区,但是从来没有认真去了解过盲区的形成原理,市区的交通事故,很大一部分是因为盲区导致的,盲区可不是只有AB柱,弯道、路口、天气、路况都是盲区变化的条件,在行车过程中是会动态变化的,不要做撞车了连为什么撞都不知道的人。开车的观察如果只看后视镜,迟早出事。而且不止你要注意你的盲区,也要注意尽量不要去别人的盲区里面转悠。 2.路权,路权概念驾校通常也不讲,路权可以说是一切交规的基础,学习路权的概念,然后再去读道交法,相信你会对交规以及驾驶技巧有不一样的认识。 3.地板油,不管是什么车,不同模式,不同档位的地板油,自己找个场地试试,不要开了几年车,连自己车地板油什么感觉都不知道,关键时候能救命,还有ABS打脚的感觉,相信很多人都没有踩出来过,去试试紧急刹车,做麋鹿测试。感知不同的道路条件下,轮胎抓地力的区别。以上,不知道有多少人去逼过自己车辆的极限,一定要知道自己车性能实际表现,不是停留在纸面数据,反正我知道没有踩出过ABS的人第一次遇到打脚是会慌的。有条件的,把esp关了,漂移控车也感受一下。借别人的车同理。 4.心平气和 5.防御性驾驶是门学问,只要你坐在驾驶位上,请把路上所有人预设神经病。 6.随车装备最重要的是反光器材、灭火器、工具箱 7.市区最怕鬼探头,高速最怕追尾 8.丢车保帅,人才是最重要的,特别是高速事故。 9.气囊只有正确方式弹出才能救人,所以什么气囊上放东西的,摆挂件的,打方向盘姿势不对的,都是自废武功,你还不如买不带气囊的车,即便是形成肌肉记忆的习惯,也要去改,因为气囊上摆东西把头骨打碎的,打方向姿势不对把手崩残废的多了去了。 10.儿童座椅很重要 11.珍爱生命、远离大车 12.每天十分钟,卖车坐家中 13.红绿灯不要挂P档,特别是傍晚,至于为什么,动动你的小脑筋,我就一句话,P档设计出来就是叫你去停车场用的,不是叫你在大马路上用的。 14.看得多远,才开多快 15.开灯是为了让别人看见你,最傻逼的是晚上在路上不开灯还没有反光标的电动车 16.永远有人闯红灯,特别是凌晨,过路口和人行道一定要减速。 17.新手们,出弯和变道要加油,即便你不加油,千万别刹车。 18.安全车速是相对的,不安全车速是绝对的。 19.路边停了一排车的,从旁边过车速不要超过30 20.路边停车超过5分钟,尽量下车绕车检查或者... 阅读全文
Mifare Classic card(M1卡)破解过程记录(准备+理论+获取扇区密钥+数据分析) 发布于 五月 25, 2021 首先认识一下一卡通的类型,市面上常见的一卡通是IC卡的一种,IC卡即集成电路卡,也是广义上的智能卡,准备篇介绍一些智能卡的基础知识,帮助我们确定卡的类型和使用的设备, 目前淘宝上提供了设备和全套软件,确定好方法就可以自动化破解,下面的内容比较详细,不用全部看完也能破解,但了解一下可以提高效率 。 按照使用方式分类: · 接触式IC卡: 符合 ISO 7816 标准,卡片表面包含金属触点,读写需要 IO 线路接触,即需要插卡使用,如手机的 SIM 卡模块 · 非接触式IC卡: 符合 ISO/IEC 14443 标准,由 IC 芯片、感应天线组成,封装在一个标准的 PVC 卡片内,芯片及天线无任何外露 部分,通过 RFID 感应使用,校园卡及身份证都是这一类型。 · 双界面卡IC: 又称组合卡 / 双端口 卡,是 同时兼备接触和非接触两种界面通信的多功能卡 ,将非接触 IC 卡的方便性和接触 IC 卡的安全性融为一体,使之成为一卡多用的极佳载体,代表着未来 IC 卡的主要发展方向,银行卡就是这一类型。 需要注意的是我们平时见到的某些门禁卡虽然也是通过感应使用,但不一定是IC卡,现在有相当一部分便宜的门禁使用的是磁卡和ID卡,ID卡使用RFID射频技术,但其频率一般较低,一般为125KHz,如爱特梅尔的T5577卡,不可写入用户数据,其记录内容仅限卡号只可由芯片厂一次性写入,开发商只可读出卡号加以利用,所以只用于身份识别,不能用于消费,其成本相对非接触式IC卡较低,一般使用字典攻击的方式就能复制。 智能卡按照工作频率分类: 区分ID卡和IC卡——读卡判断法 读卡判断法是判断卡智能卡类型最准确的方法,这需要可识别多类型卡的设备支持,例如手机NFC或者pn532开发板、ACR122U读卡器以及Proxmark3。使用手机NFC是最为便捷的方法,在支持全功能NFC的手机上下载MIFARE Classic Tools,给予权限后将卡片贴在NFC感应区根据提示读取标签后查看标签信息。下面是两种不同容量的IC卡的显示,如果RF技术这栏显示ISO/IEC 14443,说明就是典型的13.56MHz的非接触式IC卡,这也是生活中使用最多的类型。 ... 阅读全文
万物选购指南:层次分析法解决选择困难 发布于 七月 23, 2021 (一)层次分析法及其原理 层次分析法 (Analytic hierarchy process,简称 AHP 法) 是美国运筹学家 T.L.Saaty 于 1970 年代提出的一种 多目标决策分析方法,通过对定性问题的定量化分析来解决复杂的多目标决策问题。 所谓 定性问题 ,通常是指难以通过数量计算方法来解决的问题,比如谈恋爱、选电脑、风险投资、健身房的选择等,这些问题所涉及的影响条件太多,每个人对于各种影响因素的看重程度不同,因此无法使用统一标准获得一个放之四海而皆准的答案。可以说,我们日常生活中绝大多数问题都是定性问题,只不过,在日常场景中,我们通常可以凭借自身的经验做出选择,并不需要进行复杂的理性计算来获得答案。而 定量化方法 ,则是指通过数理计算过程获取答案的方法,简单讲就是算术方法。 多目标决策问题 更容易理解,就是上文所讲的 「多重趋避冲突」 的典型场景,即同时存在多个备选项,每个备选项均具有优点和缺点,我们需要在其中选出最佳的或者最适合自己的选项。 一般而言,层次分析的过程包含以下几个步骤: 对构成决策问题的各种要素建立多级递进的结构模型; 对同一等级(层次)的要素以上一级要素为准则进行两两比较,根据评定尺度确定其相对重要程度,并据此建立判断矩阵; 通过一定的计算,确定各要素的相对重要度; 通过综合重要度的计算,对各种替代方案进行优劣比较并排序。 上面四个步骤,我将其精简为以下 12 个字并做简单介绍: 定层级、互比较、定权重、排顺序 1. 定层级 定层级就是确定总目标、决定目标的因素、备选项之间的层次关系和隶属关系 。如下图所示,我们可以将某一复杂的定性决策问题分为目标层、准则层、备选项三个层次。 目标层 是我们想要选出的最佳项目,通常为一至多项产品或方案; 准则层 中,我们需要确立影响目标的重要因素,由于影响因素众多,通常需要对其进行归类,进而整理出几项包含绝大多数影响因素的大类; 备选项 代表我们可供选择的产品或方案,我们目标层将在备选项中获得。通过对层级进行划分,我们可以将定性问题条理化、逻辑化,化繁为简,便于后续的定量计算。 2. 互比较 互比较即确定将准则层各因素及备选项在各因素中相对重要程度进行对比,以此来确定其对上层的相对重要顺序 。那么,如何进行比较呢?比较的前提是要拥有一个标准的尺度,而这个尺度还必须能相对准确地反映出各因素重... 阅读全文
小米 11 Ultra 免 root 精简列表 发布于 九月 27, 2021 目前我是用着没看出问题来,有问题我也会及时更新: #!/bin/bash echo "===========================系统精简开始===========================" # 一定要先退出"纯净模式",否则卸载后无法退出 adb kill-server adb devices # 所附设备列表 # 7HX0219928032887 device # 卸载预置应用包 # MIUI 相关 adb shell pm uninstall --user 0 com.miui.accessibility # 小米闻声 adb shell pm uninstall --user 0 com.miui.analytics # 小米广告分析,必删(重启会自动安装) adb shell pm uninstall --user 0 com.miui.aod # 万象息屏 adb shell pm uninstall --user 0 com.miui.audiomonitor # 小米录音 adb shell pm uninstall --user 0 com.miui.bugreport # 用户反馈 adb shell pm uninstall --user 0 com.miui.cit # CIT手机测试 adb shell pm uninstall --user 0 com.miui.cleanmaster # 清理垃圾 adb shell pm uninstall --user 0 com.miui.compass # 小米指南针 adb shell pm uninstall --user 0 com.miui.contentcatcher # 应用程序扩展服务 adb shell pm uninstall --user 0 com.miui.contentextension # 传送门 adb shell pm uninstall --user 0 com.miui.easygo # EasyGo adb shell pm uninstall --user 0 com.miui.freeform # 自由窗口 adb shell pm uninstall --user 0 com.... 阅读全文
QNAP 威联通 NAS的个人使用经验(使用须知) 发布于 七月 21, 2021 一、家庭使用,不要用Raid!没有特殊需要,不要用存储池! 家庭使用,不要用存储池,不要用Raid!不要用Raid1!不要用Raid5!不要用Raid6!重要的事情说n遍。 Raid的设计初衷是为了 提高系统可用性 ,保证部署在服务器上的业务系统在存储出现故障时,可以做到系统不下线,在线完成存储的修复! 虽然可以在某些层面提高数据的安全性!但在硬盘故障后做数据恢复时,带来的后续问题会更多! 家用2-8盘位居多,一般多用Raid1和5。Raid5的安全性争议由来已久,那么Raid1呢? 结论还是没有必要。 以4盘位为例,文字模拟一下几种使用情况: 1、4块4T,组Raid5,(注,Raid5和存储池需搭配使用)获得12T空间; 优点:存储空间连续,单文件夹即可存储12T内的资源; 缺点:磁盘性能会受到影响;在使用tr充当下载机的情况下,全盘24小时持续工作,损失全部硬盘寿命; 坏掉一块硬盘后; 如果恢复Raid,根据使用空间和零碎文件的多少,大概需要1-4天的时间,这期间,所有硬盘几乎火力全开。由于4块硬盘一般同时购买又是同批次,1块硬盘由于读写过多导致故障时,其他3块磁盘的寿命也差不太多。加上连续读写高发热,高震动,在这个情况下又要连续工作n久,如果这时候再有一块硬盘出现故障,或者遇到NAS硬件故障或者断电,数据就完蛋了。 数据完全损毁这个后果你可以承受的了吗?我反正不行。 2、4块4T,使用存储池,获得16T的连续存储空间。 故障后,你根本就不会知道你损失掉了哪些数据。 家用请直接Pass掉这种使用方式。 3、推荐的方式: 全部无脑使用 静态磁盘分区 ,也有叫Basic分区的,QTS 4.3后叫静态卷 ,都是一个意思,就是没那么多花活儿和功能,每一块硬盘自成体系,且拥有最高的性能。 建议先安装一块硬盘,把所有需要的APP装完之后,再安装其他的硬盘。(QTS4.3后可选APP安装位置,但还是建议这样做)。并且,如果使用下载功能,请将下载目录设置在这块硬盘。 其他的硬盘,建立多个文件夹, 仅用于 存储数据。 这样一来,不论是下载时,还是调用APP时,大多数情况,仅仅这一块硬盘在工作。其他的硬盘会处于休眠模式。 很多人说威联通现在的系统就无法休眠。我没办法说什么。只能说,根据我个人的使用经验看。我所认为的休眠模式,硬盘是无法读写的。在你访问其他盘上的共享目录时,可以明显... 阅读全文
个人文件管理和备份策略 发布于 七月 14, 2021 一、按重要程度分类 1、一级(特级) :绝对不能丢的,丢了会是巨大的损失,甚至是灾难性的 特点1: 1)一定会用到的、非常重要的资料,比如合同、报销单, 2)丢了会带来巨大的麻烦,或者间接造成很大的时间或金钱的损失; 特点2: 1)很可能会用到的资料, 2)是花了很多时间和精力才获得的(自己制作或收集)资料, 3)或者(从某处获得的)稀有珍贵的资料, 4)丢了就无法重新获得,或者需要巨大的代价才能重新获得; 特点3: 1)非常珍贵的珍藏版纪念文件,独一份的或稀有的,代表一种珍贵的记忆,十分舍不得丢; 特点4: 1)金钱角度看:这个资料很重要,以至于当它丢了时,宁愿花100元以上甚至1000元也要把它找回来。 2、二级 :可以丢,但是丢了会有一定影响,或造成小的麻烦 特点1:这个资料有一定利用价值,只是不太明显,可能会用得上,但也可能永远都不会用,即使丢了,大不了不用嘛。 特点2:有一定的纪念价值,但不很重要,即使忘记这一段也没啥。 特点3:金钱角度看:这个资料丢了时,可以不用,大多数时候不太愿意花钱去把它找回来,偶尔确实要用到,也只愿意花几十百把块钱找回。 时间就是金钱,如果花二三十块钱就能搞定的,就不愿意花两三个小时去折腾。目前我的时间的最高价值是一小时=100元,最低价值是20元。 3、三级 :丢了无所谓,可要可不要的 这个资料只是冗余备份,或临时保存,谈不上什么重要性 如果这个资料丢了,OK,想不出来有任何重要的影响,丢了就丢了,不愿意为它花1元钱去找回! 二、其他分类方式 1、按 使用频率 分类 1)常用,2)不常用(罕用) 2、按 文件大小 分类 1)小文件——单个在50Mb以内; 2)较小文件——单个不超过100Mb / 200Mb / 300Mb 3)较大文件——单个文件通常在100Mb以上,甚至1Gb 4)大文件——单个文件达到1G甚至50G 3、按 文件类型 分类 比如 软件、音乐、电影、代码、文档、图片、照片等 三、文件管理的指导思想 1、保证重... 阅读全文
Matomo API 官方接口详情 发布于 六月 24, 2021 API接口 你可以通过调用Matomo的分析接口将数据集成到其他应用中去。这些数据包括访问数,页面网址、网页标题、用户设置、搜索引擎、关键词、推荐网站、用户浏览器 其中的请求参数和返回值需要对照官方手册来 未定义 ## API `未定义` ## Annotations `未定义` ## Contents `未定义` ## CoreAdminHome `未定义` ## CustomDimensions `未定义` ## CustomJsTracker `未定义` ## CustomVariables `未定义` ## DBStats `未定义` ## Dashboard `未定义` ## Events `未定义` ## Feedback `未定义` ## Goals `未定义` ## ImageGraph `未定义` ## LanguagesManager `未定义` ## Login `未定义` ## Marketplace `未定义` ## MobileMessaging `未定义` ## PagePerformance `未定义` ## Provider `未定义` ## SEO `未定义` ## SitesManager `未定义` ## TagManager `未定义` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Actions 动作(行为) Actions.get 访客分析-概述-访客概览(右边一列) Actions.getPageUrls 行为-页面 Actions.getPageUrlsFollowingSiteSearch Actions.getPageTitlesFollowingSiteSearch Actions.getEntryPageUrls 行为-进入页面 Actions.getExitPageUrls 行为-退出页面 Actions.getPageUrl 行为-通过页面的PageUrl查看详情(获取单条记录) Actions.getPageTitles 行为-页面标题 Actions.getEntryPageTitles 行为-页面标题-进入页面标题 Actions.getExitPageTitles 行为-页... 阅读全文
评论