笔者从 2020 年疫情爆发之前,一直从事后端开发工作。2020 年因为工作原因,加入了 SAP 一个代号为 Spartacus 的开源项目的开发团队。这个项目是一个基于 Angular 的电商 Storefront 框架,其代码贡献者来自全世界各个地区。实际上,这个项目的开发工作由六个敏捷开发团队组成,笔者是唯一一位来自 APJ 即亚太地区的开发人员。从此,我开启了为期两年多,一直持续到现在的远程办公生涯。本文通过下列几个方面,向大家分享笔者所在的开...
## 一、移动端跨平台开发技术栈的前世今生[AngularJS](https://www.angularjs.net.cn/) 诞生于**2009**年,由 [Misko Hevery](https://www.bilibili.com/video/av99126345/) 等人创建,后为 **Google** 所收购。[... 不同是应用层开发语法 (即 DSL,`Domain Specific Language`):`Weex` 支持 `Vue` 语法和 `Rax` 语法,`Rax` 的 DSL(`Domain Specific Language`) 语法是基于 `React JSX` 语法糖而创造,而 `RN` 的 `DSL` 是基于 `Rea...
之前各个编辑器(VSCode, Vim, Atom, Sublime...)各自为战,编辑器内部实现的特性和协议都不同。每换一个编辑器,就有可能要给该编辑器中支持的每门语言写一个对应的 Language Server,也就是说假设有 n 门语言,m 个编辑器,那全部编辑器适配所有语言的开发成本和复杂度为 n * m。能不能在中间层做一个抽象,让语言的「静态分析服务」和「编辑器 / IDE」分离开来?这样上述情景下开发成本和复杂度就可以降低为线性的 n + m。![image...
我当时已经从服务器端编程的 ABAP 技术栈转到了 Java 和 Node.js,搭建本地开发环境一度成为了我的噩梦。Docker 提供了应用与环境的隔离,简化了应用的部署和扩展,使得应用能在不同的环境中以一致性的方式运行。其轻... 我现在是一个 Angular 开发人员,几乎每天都要和其标准库里的 HttpClient 工具库打交道。工作中我对其 request 方法感兴趣,想阅读其源代码,但是对于里面个别语句不甚理解:![picture.image](https://p3-volc-co...
Angular自不必说。自从移动端火热发展后,为了解决H5在移动端性能表现的缺陷,大家又想办法推出新的框架,以便于集成Native端的高性能和Web端快速发版迭代的优势。在这个大背景下催生出了小程序,ReactNative和Flutter... 在ReactNative中没有WebView,开发者也不能直接在浏览器中运行。但是ReactNative比较好的是语法类似于React,学习成本比较低,而且在开发环境下可以实现热更新,开发者可以很方便地在手机或者模拟器中调整样式和功能。...
3.WebView 中的 prompt/confirm/alert 拦截;得物App现有的跨端通讯方式主要为URL Scheme拦截,所以本篇着重介绍跨端通讯中URL Scheme拦截的实现原理以及对应的JS-SDK的重构与优化。## URL Scheme拦截### 原理... 在主流的VScode + TS大环境下,引入一个没有任何类型定义的JS文件、靠AnyScript + 类型断言才能不报红的开发体验是糟糕的,即使加上了d.ts定义也只能兼顾在当前的项目类型提示完善。3. 有调试SDK的需求时,看着一坨编...