自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张驰Terry

汗水浇灌灵感,千里之行始于足下

  • 博客(239)
  • 资源 (9)
  • 收藏
  • 关注

原创 快速创建自己的第一个 Typescript 项目

1.基于脚手架项目创建你的项目git clone <https://github.com/alexjoverm/typescript-library-starter.git> ${yourProjectName}cd ${yourProjectName}2.安装依赖npm install3.启动开发指令npm run start4.在实例网页中引入构建的产物<!DOCTYPE html><html lang="en">&

2021-01-17 10:31:21 2019 8

原创 “SOLID“五大原则

开闭原则说到面向对象设计,大部分人脑海中闪过的恐怕都是“23种设计模式”。设计模式代表的是业务场景中总结出的最佳实现方式,属于实践的范畴,在其之上是更为重要的“SOLID”五大原则:Single Responsibility Principle 单一责任原则 The Open Closed Principle 开放封闭原则 The Liskov Substitution Principle 里氏替换原则 The Dependency Inversion Principle 依赖倒置原则 Th

2021-01-15 09:52:41 934

原创 AST 入门必知必会

1. AST简介AST ( Abstract syntax tree ) 是编译原理中的一个概念,即源代码语法结构的一种抽象表示。它以树的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。 例如这样的一段 js 代码,可以表示为下面的结构:function abs(number) { if (number >= 0) return number else return -number}有了 AST,我们面对的就不再是一坨各种符号混杂空格...

2021-01-13 06:54:07 947

原创 Web产品国际化经验总结

1. 业务背景国际化前提:有服务非中文用户的场景需求 国际化根据业务定位确定实现策略,即实现标准的国际化产品或专业的国际化产品2. 普通国际化与专业国际化3. 技术原理3.1 工程化compiler —— 编译时生成不同语种版本的代码 —— docs editor xtb文件runtime —— 词条(读取词条文件, 国际化平台拉取)3.2 经验总结翻译 —— 专业团队 UI调整 复数|模板 —— 词条嵌套 避免硬翻译 避免空返回 —— 无对应语种词条返回默认值

2021-01-13 06:52:28 242

原创 详解大型前端项目知识点

目标解决实际问题 成本与产出(效率) 可度量,可定义 ,数据驱动 快速可复制,降低边际成本内容:前端基础架构 项目管理 代码管理 版本管理 CI/CD 缺陷管理 外包管理 开发环境 预发布环境 测试环境 本地开发环境 公有云、私有云环境 规范 代码风格 性能,可用性,可访问性 技术文档 培训分享 统一脚手架 前后端分离 软件安全 Mock服务 BFF GraphQ

2021-01-12 08:36:49 1876 4

原创 一行代码实现网站移动化的原理与实现

阅读时间10分钟前言在2013年,智能手机才刚刚开始进入千元机时代,手机硬件和手机 App 开发成本远远高于2020年现在的市场平均价,并且企业网站移动化还是一个新概念。企业和政府开始重视门户网站在移动端浏览器的体验,例如中国政府网,联想,微软,w3c,csdn, 探路者等等,他们在寻找企业网站移动化解决方案的过程中,在经过预算,技术,产品体验以及服务质量的综合对比,最后选择云适配 (Allmobilize )方案,而这个方案的特点是在原有的 pc 前端工程中引入"一行代码实现网站移动化",这行

2021-01-08 12:01:53 2728 13

原创 js bridge 实现原理

原文链接 https://www.cnblogs.com/dailc/p/5931324.html#hybrid_2_2说明JSBridge实现原理目录前言 参考来源 前置技术要求 楔子 原理概述 简介 url scheme介绍 实现流程 实现思路 第一步:设计出一个Native与JS交互的全局桥对象 第二步:JS如何调用Native 第三步:Native如何得知api被调用 第四步:分析url-参数和回调的格式 第五步:Native如何调

2021-01-31 10:05:09 2243 7

原创 css 实现中文繁体翻译 font-variant-east-asian

一行CSS:body{ font-variant-east-asian: traditional;}网页中的文字就会使用繁体。

2021-01-31 09:57:45 166

原创 css 中的 content-visitly 提升渲染性能

content-visibility 新的css属性,可显著提升渲染性能译文:原文链接:https://web.dev/content-visibility/本文介绍CSS的新属性content-visibility,这个属性可以显著提升渲染性能。Chromium 85开始有了[content-visibility](<https://drafts.csswg.org/css-contain/#propdef-content-visibility>)属性,这可能是对于提...

2021-01-31 09:57:13 142

原创 Node.js架构剖析

原文链接: http://www.ayqy.net/blog/node-js-architecture-overview/一.Node.js 缔造的传奇I have a job now, and this guy is the reason why I have that now. His hobby project is what I use for living. Thanks. —— Shajan Jacob2009 年 Ryan Dahl 在JSConf EU大会上推出了 Node.

2021-01-31 09:56:34 1725 5

原创 Nodejs 源码阅读指南

原文: https://zhuanlan.zhihu.com/p/83775779开始之前,可以先尝试在本地编译一下 libuv 的源码。**Joey:libuv 源码阅读之准备篇**zhuanlan.zhihu.com1. Build the Node debugging build$ cd $NODE_HOME # clone 下来的 node 仓库 $ ./configure --debug $ make -j82. add launch.json{ // Use Intell

2021-01-31 09:55:50 135 3

原创 Echarts源码阅读指南

文章作者:萌萌哒的邱邱邱邱原始链接:https://qiuruolin.github.io/2019/05/20/echarts-1/前言由于echarts是基于zrender进行实现的,所以要解读echarts源码,首先要对zrender有大致的了解,在这篇文章中,我将对zrender的整体结构进行大致的解读。介绍zrender是canvas的一个类库,也就是说zrender是基于canvas实现的,canvas API可以参考:W3CSchool Canvas 参考手册在后续的解

2021-01-31 09:55:04 2066 5

原创 网页爬虫的原理

原文地址: https://zhuanlan.zhihu.com/p/35324806这篇文章的定位是,给有一些python基础,但是对爬虫一无所知的人写的。文中只会涉及到爬虫最核心的部分,完全避开莫名其妙的坑或概念,让读者觉得爬虫是一件非常简单的事情,而事实上爬虫确实是一件非常简单的事情(如果你不是以爬虫为工作的话)。本文分为如下几个部分引言 概念介绍 HTML介绍 解析代码介绍 chrome检查工具介绍引言简单理解网络爬虫就是自动抓取网页信息的代码,可以简单理解成代替繁琐的复制

2021-01-31 09:54:22 1263 3

原创 grid布局快速入门

原文链接: https://github.com/lvqq/blog/issues/28CSS Grid 是创建网格布局强大的工具,在2017年,已获得主流浏览器的原生支持(Chrome,Firefox,Edge,Safiri),这篇博客带你快速上手 Grid 布局兼容性在前端领域,提到某个新技术,想在实际开发中使用它,就不得不考虑兼容性问题,目前 Grid 布局在各大主流浏览器已实现支持,如下:网格布局这里是一个网格布局,由父元素container和若干子元素ite...

2021-01-31 09:53:55 248 2

原创 flex布局快速入门

原文链接 : https://lz5z.com/FlexLayoutLearning/什么是 flex 布局传统布局的核心是盒子模型,依赖 display 属性 + position 属性 + float 属性。可以看出来传统布局非常容易实现像 word 左对齐,右对齐这样的功能,可以说,传统布局更适合于文字排版。flex 是 flexible Box 的缩写,可以看做弹性的盒子模型。flex 用法使用 flex 首先要设置父元素display: flex。任何元素都可以指定为 fle.

2021-01-31 09:50:31 1175 4

原创 css实现垂直居中的方式

使用绝对定位和负外边距对块级元素进行垂直居中HTML<div id="box"> <div id="child"></div></div>复制代码CSS#box { width: 300px; height: 300px; background: #ddd; position: relative;}#child { width: 150px; height: 100px;

2021-01-31 09:49:49 3537 7

原创 如何编写一个d.ts文件

原文链接: https://segmentfault.com/a/1190000009247663这篇文章主要讲怎么写一个typescript的描述文件(以d.ts结尾的文件名,比如xxx.d.ts)。总结一下:从类型type角度分为:基本类型(string、number、boolean等)及其混合;复杂类型(class、function、object)及其混合(比如说又是class又是function)。从代码有效范围分为:全局变量、模块变量和又是全局变量又是模块变量的。从定义文件来说:自己写

2021-01-30 09:20:02 1160 2

原创 Salesforce 收购分析一览图

Salesforce 收购分析一览图https://cloud.tencent.com/developer/article/1070526关键词:Salesforce,CRM一、 重要结论在梳理 Salesforce 并购整合路径的整个过程中,我们总结出 Salesforce 外延拓展的两条核心主线:技术逻辑与产品逻辑。技术并购帮助 Salesforce 从 PC 时代跨越到互联网,再次从移动互联网到云计算大数据,使 Salesforce 能够利用高新科技去完善自己的底层架构与技术储备。

2021-01-30 09:18:30 1170 3

原创 Linux 中获取当前目录的树形结构

Linux tree命令用于以树状图列出目录的内容。执行tree指令,它会列出指定目录下的所有文件,包括子目录里的文件。语法tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式>][目录...]参数说明:a 显示所有文件和目录。 A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。 C 在文件和目录清单加上色彩,便于区分各种类型。 d 显示目录名称而非内容。 D 列出文件或目录的更改时间。 f 在每个文

2021-01-30 09:00:33 1110

原创 什么是贪心算法?

1. 前言本节内容是贪心算法系列之一:贪心算法的介绍,主要介绍了贪心算法的定义,贪心算法的使用条件,明确了什么样的问题适合用贪心算法求解,最后说明贪心算法在日常生活中的应用场景。2. 什么是贪心算法?贪心算法(Greedy Algorithm)是计算机科学与技术领域中一种常见的选择算法,与之前介绍的动态规划算法有一定的相似度。顾名思义,贪心算法总是会做出在当前情况下看来最好的选择,谓之贪心,也就是说贪心算法并不会从整体最优考虑,它所做出的选择都只是在某种意义上的局部最优选择。当然贪心算法虽然

2021-01-30 09:00:01 144

原创 SAAS 租户识别的方案

通过域名(网页url)识别租户SAAS系统是给租户生成一个指定或者随机的二级域名,比如baidu.salesforce.com如果客户想使用自己的域名,可以在cname到系统生成二级域名,并在域名管理系统里面做绑定这样一个租户可以有两个域名企业绑定的 saas系统生成的二级域名这样通过域名识别租户,然后初始化 TenantContext(租户上下文).如果不想通过域名来识别租户,也可以通过登录名来判断。这种方式要涉及到租户切换问题,不同在同一个浏览器下进行多个企业办公。..

2021-01-30 08:58:50 244

原创 Tableau Desktop 如何学习

原文: https://www.zhihu.com/question/29478254Tableau作为BI tool leader ( 2016 Gartner BI chart), 不仅是一款可视化软件,还不可忽略其强大的Data connection, collaboration, security management, multi-platform 功能· Data connection: Tableau Desktop可直接连接Salesforce(销售报表),各类常用数据库(sql,

2021-01-30 08:58:12 108

原创 Docker 快速入门

原文地址:梁桂钊的博客博客地址:blog.720ui.com一、欢迎来到 Docker 世界1. Docker 与虚拟化在没有 Docker 的时代,我们会使用硬件虚拟化(虚拟机)以提供隔离。这里,虚拟机通过在操作系统上建立了一个中间虚拟软件层 Hypervisor ,并利用物理机器的资源虚拟出多个虚拟硬件环境来共享宿主机的资源,其中的应用运行在虚拟机内核上。但是,虚拟机对硬件的利用率存在瓶颈,因为虚拟机很难根据当前业务量动态调整其占用的硬件资源,因此容器化技术得以流行。其中,Docker

2021-01-30 08:57:28 1177

原创 盘点:16 个好用的 Code Review 工具

Code Review 工具自动化了代码审核过程。它们有助于静态代码分析,这对于交付可靠的软件应用程序至关重要。市场上有太多的 Code Review 工具了,以至于为我们的项目选择一个合适的 Code Review 工具都会成为一种挑战。本文精选了 16 个 Code Review 工具,它们都具有最受欢迎的特性和最新的下载链接。该列表既包含了开源工具也包含了商业工具。1. Review AssistantReview Assistant是 Visual Studio 的一个扩展。它支持 V.

2021-01-30 08:56:58 199

原创 盘点软件开发中 Codereview 的方式

1.周期性 CodeReview按固定周期进行专项Codereview2.CI,CD关键节点在主要的CI或者CD环节进行3.某代码提交策略比如集成分支有MR提交,进行4.按代码准入标准代码不符合工程规范,提交就会一直被打回5.按邀请制开发邀请资深工程师进行Codereview以学习交流为节奏CodeReview作为学习交流的形式之一...

2021-01-30 08:56:07 104

原创 怎么去阅读Chromium的源码?

从初学者角度的话,如果是刚开始研究chromium,建议找个老版本chromium来看。新版太大太复杂了。我建议从github搜下chromium.bb这个项目,是个chromium49的删减版。之所以推荐这个,有几个原因:0,工程环境比原版chromium好搭多了,不用翻墙,不用改一些系统设置。90%的初学者我估计卡在搭chromium环境这了,尤其是国内。。1,代码量相对较小,所以直接可以生成vs工程后配合vax的代码着色和智能跳转阅读。有VAX辅助,对于查找函数具体位置有很大帮助。

2021-01-29 09:53:20 1052 2

原创 Office线上预览编辑解决方案对比

Office文件常常以附件的形式存在于各种系统中。大家对于线上附件的最常用的需求是预览,偶尔会有简单的编辑。目前在大多数的场景下是将附件下载到本地使用桌面Office程序来打开预览或者编辑,这样做的最大问题是破坏了原有系统的闭环,在有编辑的需求下会陷入到下载编辑-》上传—〉其他用户再次下载阅读的循环。这个过程往往会出错,并且也很不便利。因此对于这种场景最好的解决方案是office文件能够线上预览编辑。目前在线文档类的产品很多有Office365,wps+,腾讯文档,石墨,基于开源的onlyoffice的

2021-01-29 09:49:28 171 1

原创 盘点技术团队发展方向规划的思路

一、顺势而为从国家行业扶持趋势角度 从基础技术革新角度 从投资部门调研考察角度 从商业目标角度二、加强合作从合作企业的反馈角度 从产品的大客户反馈角度 从客服渠道反馈角度三、超越行业从竞品的产品分析角度 从人才引进后获取的信息角度 从咨询公司获取信息四、内部创新从内部数据已有数据分析角度 从所在行业获取的关键信息角度 从内部质量,质量,长期价值角度 从历史包袱角度...

2021-01-29 09:48:01 159

原创 Office 复制粘贴的挑战难度在哪?

系统剪切板 浏览器 w3c API Chrome 扩展 系统剪切板格式 跨浏览器复制粘贴 跨文档产品复制粘贴(Office,WPS,Google Docs等等) 相同产品跨 Doc 复制粘贴 复制粘贴数据与业务数据的兼容度(经验工程)...

2021-01-29 09:45:20 100

原创 自研一个word应用,需要哪些基本功能

以下为一个脑图

2021-01-29 09:44:26 96

原创 从研发角度看 SAAS产品交付的形式

一、订阅式产品以云服务,使用浏览器即可访问,客户注册账号,关联信用卡,按月,年续费1.1 SAAS产品 提供公有云地址类似钉钉,轻雀协作,飞书二、合同签约售前,销售团队,客户服务,技术支持完成客户方案制作,参与客户投标2.1 产品以云服务开通客户账号,使用浏览器即可访问2.2 私有化部署2.2.1 客户提供云主机,数据库服务,SAAS产品技术人员进行知实施部署2.2.2 SAAS产品提供 docker 镜像2.2.3 SAAS产品提供源码2.2.4 SAAS产

2021-01-29 09:42:13 264

原创 14 天开发一个web Excel - 第1天

第 1 天,我们实现一个有虚拟滚动的 canvas 表格 https://jsfiddle.net/zhangchi/fgu0rm23/1/<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <ti

2021-01-29 09:41:43 135

原创 如何将 html 变成结构化的数据模型

var util = {};util.getRichTextByHtml = function (html) { var divEl= document.createElement('div'); divEl.innerHTML = html; document.body.appendChild(divEl); var iterator = document.createNodeIterator(divEl, NodeFilter.SHOW_ELEMENT | Nod.

2021-01-29 09:40:31 167 1

原创 现代前端滚动实现的各种解读指南

原文链接: http://caibaojian.com/css-scroll.html来自众成翻译的一篇:滑向未来(现代 JavaScript 与 CSS 滚动实现指南),里面解释了现代前端中基于web标准的改善,各种流畅的滚动CSS和JavaScript代码,这些特性将使你的页面更平滑、美观。一些(网站)滚动的效果是如此令人着迷但你却不知该如何实现,本文将为你揭开它们的神秘面纱。我们将基于最新的技术与规范为你介绍最新的 JavaScript 与 CSS 特性,(当你付诸实践时,)将使你的页面滚动更

2021-01-29 09:35:51 1451

原创 Tableue 实现数据分组统计 - 依据连续度量创建数据桶

版本:2020.4适用于: Tableau Desktop, Tableau Online, Tableau Server有时,将连续度量(或数值维度)转换为数据桶会很有用。Tableau 中的任何离散字段都可以被认为是一组数据桶。例如,假设您创建了一个视图,“Profit”(利润)在行上,“State”(省/市/自治区)在列上。您可以将**“State”(省/市/自治区)字段视为一组数据桶 — 每个利润值会按数据桶进行分类,该数据桶与从中记录值的省/市/自治区相对应。但是,如果想要查看分配给数据桶

2021-01-28 09:55:14 208 1

原创 【前端性能】Web 动画帧率(FPS)计算

原文: https://www.cnblogs.com/coco1s/p/8029582.html我们知道,动画其实是由一帧一帧的图像构成的。有 Web 动画那么就会存在该动画在播放运行时的帧率。而帧率在不同设备不同情况下又是不一样的。有的时候,一些复杂或者重要动画,我们需要实时监控它们的帧率,或者说是需要知道它们在不同设备的运行状况,从而更好的优化它们,本文就是介绍 Web 动画帧率(FPS)计算方法。****流畅动画的标准首先,理清一些概念。FPS 表示的是每秒钟画面更新次数。我们平

2021-01-28 09:51:29 1244 3

原创 1px边框的产生与解决方案总结

原文链接: https://juejin.cn/post/6844903456717668359在之前的项目中,UI告诉我说我们移动项目中的边框全部都变粗了。原谅我的近视眼,为什么我看不出什么差距了,结果UI把他的设计稿跟我的屏幕截图跟我看,居然真的不一样!!!没有办法,只有在后面的版本中去修改了,但是要改的话,需要知道是为什么。所以查了很多资料,终于搞懂了这个问题,并且总结了几种方法。造成边框变粗的原因其实这个原因很简单,因为css中的1px并不等于移动设备的1px,这些由于不同的手机有不同的

2021-01-28 09:50:54 306 1

原创 Code Server 是什么?

原文链接:https://www.jiangzhuolin.com/4882.html概要1、什么是 code server?code server是coder公司基于微软开源的Visual Studio Code开发的一款产品。2、code server 的目标是什么?code server 的目标是为开发者构建一个便捷统一的开发环境,让开发者能从任意设备、任意位置通过浏览器来进行代码的编写。从而免去了常规的 IDE 开发流程中的环境搭建的问题。3、code server...

2021-01-28 09:50:06 2540 5

原创 rxjs 的 observable 是什么?

原文链接: https://segmentfault.com/a/1190000009924164RxJS 是响应式编程 (reactive programming) 强大的工具,今天我们将深入介绍 Observables 和 Observers 的内容,以及介绍如何创建自己的操作符 (operators)。如果你之前已经使用过 RxJS,并希望了解 Observable 及 Operators (操作符) 的内部工作原理,那么这篇文章非常适合你。什么是 ObservableObservab

2021-01-28 09:49:32 2563 6

原创 OpenStack 是什么?

最近几年,OpenStack这个词开始频繁出现,引起了越来越多人的关注。对于大部分人来说,这是一个很陌生的词,不知道它到底是什么,从哪里来,有什么用,和自己的工作有什么关系。有人可能知道,它和现在非常火的云计算有很大的关系。伴随它一起出现的,还有很多新词,例如NFV、Nova、Neutron、Horizon等,更加让人云里雾里。为了消除大家的疑惑,今天小枣君就来一个“大揭秘”——通过这篇通俗易懂的科普文,帮助大家轻松入门**「OpenStack」**。OpenStack的起源我们

2021-01-28 09:49:14 1180 2

阅读md文件的工具

md工具

2013-09-04

前端架构图-前端未来.png

前端架构图-前端未来.png

2021-01-08

kibana-5.3.1

Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看、交互存放在Elasticsearch索引里的数据,使用各种不同的图表、表格、地图等kibana能够很轻易地展示高级数据分析与可视化。 Kibana让我们理解大量数据变得很容易。它简单、基于浏览器的接口使你能快速创建和分享实时展现Elasticsearch查询变化的动态仪表盘。安装Kibana非常快,你可以在几分钟之内安装和开始探索你的Elasticsearch索引数据,不需要写任何代码,没有其他基础软件依赖。

2017-09-06

javascript高级编程

javascript高级编程

2012-11-28

apache-maven-3.5.0

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。 Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。 Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目中共享JARs。

2017-09-06

elasticsearch-5.3.1.zip

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 我们建立一个网站或应用程序,并要添加搜索功能,但是想要完成搜索工作的创建是非常困难的。我们希望搜索解决方案要运行速度快,我们希望能有一个零配置和一个完全免费的搜索模式,我们希望能够简单地使用JSON通过HTTP来索引数据,我们希望我们的搜索服务器始终可用,我们希望能够从一台开始并扩展到数百台,我们要实时搜索,我们要简单的多租户,我们希望建立一个云的解决方案。因此我们利用Elasticsearch来解决所有这些问题以及可能出现的更多其它问题。

2017-09-06

Angular开发指南

Angular入门书籍,讲的很细,从Angular对dom的编译,数据的双向绑定,服务的注入等等都将的很细,推介大家看一看

2013-09-04

js高级程序设计

JavaScript高级程序设计(中文版 全书)

2012-11-28

java生成json对象

java生成json对象,这是封装好的jar包

2012-11-25

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除