0%

搜项目大全 awesome-xxx 例如想了解python的所有技术体系,我们就可以搜索 awesome-python ,当然Java\spider\datascience等等 搜索样例 xxx simple 或者 xxx demo 空项目结构 xxx starter 例如 springboot starter springboot+mybatis starter 教程与学习路线 xxx tutorial 例如: python tutorial 当然结合 awesome-xxx 更香哦 常用快捷键 s: 快速定位到搜索框进行搜索 t: 项目文件树 ctrl +
阅读全文 »

* scrcpy: https://github.com/Genymobile/scrcpy/ * vysor: https://www.vysor.io/ * QtScrcpy: https://github.com/barry-ran/QtScrcpy * Total Control: https://www.sigma-rt.com/ * Appetizer:https://www.notion.so/appetizerio/AppetizerIO-1383d971ded94388b8e76f3236fe1f4f
阅读全文 »

本文仅提供思路,还需自身有足够的基础。 很多时候通常需要阅读很多源码,当然阅读源码也是有很多技巧的。 通常,根据他人总结的文档,先看整体(目录和类图)再看局部(类和函数)。 对于 Java 项目,就是先查看包的层级关系,然后分析包中类(接口)之间的关系,包括继承、实现、委托、方法调用等,最后再查看某个类具体的属性和方法的具体实现。 对于Python 项目,也是这样,先整体后局部,后核心。遵循先广度在深度,先核心在周围 源码阅读基本步骤 首先是通读官方文档,对框架或项目有个大致的了解 学习一些基础库及联系紧密的方法 找到一个趁手的IDEA,深层沉浸式阅读 尝试二次开发、修源码进
阅读全文 »

Jetbrains plugins 通用 ignore:生成git、dodkcer配置文件 Node.js:提供nodejs 支持 CSV: 用于编辑 CSV/TSV/PSV 文件的轻量级插件,具有灵活的表格编辑器、语法验证、结构突出显示、可自定义的颜色、新意图和有用的检查。 Rainbow CSV:用于以不同颜色突出显示 CSV 文件的插件。 Rainbow:基于 IntelliJ IDEA 的 IDE 的彩虹高亮标识符和分隔符 Tabnine: 代码智能提示 Ideolog: “.log”文件的交互式查看器。 CodeGlance Pro:提供代码缩略图 env file
阅读全文 »

反射简介 Go在标准库中提供的reflect包让Go程序具备运行时的反射能力(reflection)。反射是程序在运行时访问、检测和修改它本身状态或行为的一种能力,各种编程语言所实现的反射机制各有不同。 Go语言的interface{} 类型变量具有析出任意类型变量的类型信息(type)和值信息(value)的能力,Go的反射本质上就是利用interface{} 的这种能力在运行时对任意变量的类型和值信息进行检视甚至是对值进行修改的机制。 反射让静态类型语言Go在运行时具备了某种基于类型信息的动态特性。利用这种特性,fmt.Println在无法提前获知传入参数的真正类型的情况下依旧可以对其
阅读全文 »

Go标准库 Go标准库中的unsafe包非常简洁,如下所示 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 // 用于获取一个表达式值的大小 func Sizeof(x ArbitraryType) uintptr // 用于获取结构体中某字段段地址偏移量(相对于结构体变量的地址) // Offsetof函数应用面较窄,仅用于结构体某字段的偏移值 func Offsetof(x ArbitraryType) uintptr // Alignof用于获取一个表达式的内存补齐系数 func Alignof
阅读全文 »

Go code tips 使用 pkg/errors https://pkg.go.dev/github.com/pkg/errors 我们在一个项目中使用错误机制,最核心的几个需求是什么?我觉得主要是这两点: * 附加信息:我们希望错误出现的时候能附带一些描述性的错误信息,甚至这些信息是可以嵌套的 * 附加堆栈:我们希望错误不仅仅打印出错误信息,也能打印出这个错误的堆栈信息,可以知道出错的具体代码。 在 Go 语言的演进过程中,error 传递的信息太少一直是被诟病的一点。使用官方的 error 库,只能打印一条简单的错误信息,而没有更多的信息辅助快速定位错误。所以,推荐在应用层
阅读全文 »

少有人走的路 我们在生活中经常会评价一个人说这个人不成熟像个孩子,那到底什么成熟,一个人成熟与否最重要的是自律性然后是否懂得什么是真正的爱。就是当一个人学会自律,主动的要求自己用积极的心态去面对承受痛苦解决问题的时候那就是距离成熟的距离很近了。而且我们生活中大量的人就宁愿在不成熟当中徘徊宁愿在痛苦当中打转,就是不愿意走上这少有人走的路。走上这条用自律和爱,铸就通向心灵承受的道路。 自律是解决人生问题的最重要的主要工具 全面的自律 不自律的表现 遇到问题拖延着不去主动解决回避问题,假装看不见用药物、酒精等成瘾物麻痹自己,换得一时解脱 实现自律的四个原则 推迟满足感:父母没耐心教孩子,
阅读全文 »

如何判断对象是垃圾 经典判断方法 1:引用计数法 思路很简单,但是如果出现循环引用,即 A 引用 B,B 又引用 A,这种情况下就不好办了。所以一般还使用了另一种称为“可达性分析”的判断方法。 经典判断方法 2:可达性分析 如果 A 引用 B,B 又引用 A(发生了循环引用问题),这 2 个对象是否能被 GC回收? 关键不是在于 A、B 之间是否有引用,而是 A、B 是否可以一直向上追溯到 GC Roots。如果与 GC Roots 没有关联,则会被回收;否则,将继续存活。 上图是一个用“可达性分析”标记垃圾对象的示例图,灰色的对象表示不可达对象,将等待回收 哪些内存
阅读全文 »

雷电模拟器抓包配置 爬虫免不了抓包分析,当然也免不了中间转发相关的便捷操作。如果有一个稳定的、妥善的抓包环境。相信在爬虫开发中一定会事半功倍。 有真机当然是最好的,同时如果爬虫开发者并没有真机。那么模拟器变成为了不二之选。当然如果支持多开的话那就更好了。 业界比较知名的有 MuMu模拟器:https://mumu.163.com/ 雷电模拟器:https://www.ldmnq.com/ 夜神模拟器:https://www.yeshen.com/ 在开发爬虫的时候,我个人使用的比较多的的是雷电模拟器,因为他支持多开(虽然这之间有限制),以及抓包也有些问题。但奈何,它支持多开啊。配合
阅读全文 »