Python项目化安装第三方模块的实现方案

之前接触的高级语言对于第三方模块的管理,基本都是项目化安装,到了Python发现pip命令默认都是全局安装。

虽然平常开发和部署都使用Docker,避免了模块冲突、删除等问题,但把第三方模块当全局变量来处理的方式自然不能忍。

网上找了很久资料没有发现靠谱的解决方案,于是从开始了探索。

Read More

原生js+css实现时序图

前言

前面我用React + AntDesign 实现了一个简单的时序图,但是后来有了更复杂的需求,并且要求同时展示2000个任务的展示,这就涉及到了性能问题,本人先使用React+antd+ts实现了一个基本满足下面需求的demo,但是react的渲染机制造成了较大的性能问题,利用chrome自带的Performance,测试发现demo的首次渲染高达10s以上,并且后续的操作也会使整个页面非常卡。时序图设计到的折叠和展开功能涉及到整个页面的重绘,经过思索后决定使用原生js+css去实现,因为原生js下性能是最优的。

Read More

理解动态规划

动态规划是一个经典而实用的算法,经常在面试题中出现。

以最著名的刷题网站leetcode为例,目前有147道动态规划算法题,占比约 13% 。

其重要性可见一斑~

这篇文章就来详细分析一下动态规划相关知识点。

Read More

微信小程序统计Trello、掘金积分,Promise异步处理

声明:本人是第一次写小程序项目,有写的不对的地方,大佬们指点指点。

简介

Trello是一款团队管理工具。本文介绍的是使用微信小程序做一个积分排名的项目,从微信小程序端去调用Trello的接口、获取掘金上面的文章,按照特定的规则去积分。项目开始之前需要做一些准备工作:

  1. 注册 Trello 账号–>注册为开发者 –>获取 trello 开发者的key –>生成 token。然后进入Trello API 文档获取需要的接口。
  2. 成为微信小程序开发者,具体步骤请参考https://developers.weixin.qq.com/miniprogram/dev/quickstart/basic/getstart.html
  3. 获取genetalks_大数据里面的所有文章。

提示:使用微信开发者工具发请求前先把:微信开发者工具(右上角) –> 详情 –> 不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书 (✔ 上)

Read More

使用vue自定义指令来开发一个表单验证插件

简介

这段时间在进行一个新项目的前期搭建,新项目框架采用vue-cli3和typescirpt搭建。因为项目比较轻量,所以基本没有使用额外的ui组件,有时候我们需要的一些基础组件我就直接自己开发了。今天就来介绍一下如何利用vue的自定义指令directive来开发一个表单验证插件的过程。本文是以ts为基础开发的,如果同学们需要js版的只需要把ts语法转为js即可。

Read More