This commit is contained in:
Jackpopc 2022-09-30 09:09:04 +08:00
parent 8fe4e8619f
commit d544e50fda
3 changed files with 354 additions and 0 deletions

View File

@ -29,8 +29,14 @@ DevWeekly收集整理每周优质开发者内容包括**开源项目**、**
# 2022年
### 10月
⭐️[第13期当你在终端上按下一个键时会发生什么](./weekly/2022-10-07-weekly.md)
### 9月
⭐️[第12期一个关于 "yes"的小故事](./weekly/2022-09-30-weekly.md)
⭐️[第11期Java的7种垃圾回收方式](./weekly/2022-09-23-weekly.md)
⭐️[第10期像专家一样处理Python日志](./weekly/2022-09-16-weekly.md)

171
weekly/2022-09-30-weekly.md Normal file
View File

@ -0,0 +1,171 @@
**DevWeekly**收集整理每周优质开发者内容,包括**开源项目**、**资源工具**、**技术文章**等方面。
每周五定期发布,同步更新到<a href="https://www.zhihu.com/people/sharetechlee/activities">
知乎Jackpop</a><a href="https://mp.weixin.qq.com/s/hTZAGgkiMS0XPZ9OHQxFJg" rel="nofollow">公众号:平凡而诗意</a>
欢迎大家投稿,**[提交issue](https://github.com/Jackpopc/DevWeekly/issues)**,推荐或者自荐开源项目/资源/工具/文章~
**订阅方式**
1. **Star**并收藏项目[DevWeekly](https://github.com/Jackpopc/DevWeekly)
2. 关注<a href="https://www.zhihu.com/people/sharetechlee/activities">
知乎Jackpop</a>
3. 关注并星标<a href="https://mp.weixin.qq.com/s/hTZAGgkiMS0XPZ9OHQxFJg" rel="nofollow">公众号:平凡而诗意</a>
进阶技术,优质资源,实用工具,欢迎关注公众号**平凡而诗意**
<p align="center">
<img src="https://s1.ax1x.com/2022/07/10/jsCAdH.jpg" width="260" height="260"></img>
</p>
## 开源项目
#### 1. [Frelatage](https://github.com/Rog3rSm1th/Frelatage)
` Python` `Star:203`
![A56MX.png](https://picx.zhimg.com/80/v2-784245f33165d5b2f0b59641d13243a3_720w.png?source=d16d100b)
Frelatage是一个基于覆盖率的Python模糊匹配库可用于python代码模糊匹配。
Frelatage的开发受到其他各种模糊器的启发包括AFL/AFL++、Atheris和PythonFuzz。
该项目的主要目的是利用这些模糊工具的最佳功能,并将它们集合到一个新的工具中,以便有效地模糊匹配。
#### 2. [tinyflux](https://github.com/citrusvanilla/tinyflux)
` Python` `Star:71`
TinyFlux是一款优化版的小型时间序列数据库。
TinyFlux是TinyDB的时间序列版本也是用Python编写的没有外部依赖性。
#### 3. [Pinkerton](https://github.com/oppsec/Pinkerton)
`Python` `Star:143`
![img](https://pica.zhimg.com/80/v2-67188dbfb3905b1bfac8b91ee5327fe3_720w.png?source=d16d100b)
Pinkerton是一个用Python开发的JavaScript文件爬取工具和密码搜索器。
#### 4. [Karve](https://github.com/AlexEidt/Karve)
` Java` `Star:37`
Karve是一个简单的缝隙瑕疵修复工具它的原理是基于图像的上下文信息进行调整。
该算法保留了图像中的物体,而不太重要的背景空间则通过移除图像中的 "接缝"而被移除。
#### 5. [lancet](https://github.com/duke-git/lancet)
` Go` `Star:1.6k`
lancet柳叶刀是一个全面、高效、可复用的go语言工具函数库。 lancet受到了java apache common包和lodash.js的启发。
特性:
- 全面、高效、可复用
- 300+常用go工具函数支持string、slice、datetime、net、crypt...
- 只依赖go标准库
- 所有导出函数单元测试覆盖率100%
#### 6. [leetcode.com](https://github.com/donutloop/leetcode.com)
` Go` `Star:109`
用Go语言实现的LeetCode问题解答方案。
390多个流行的LeetCode问题的集合用Go解决了这些问题每个目录都包括问题的解决方案目录名称是相关问题的名称。
#### 7. [NoobBoy](https://github.com/Mika412/NoobBoy)
` C++` `Star:242`
![img](https://picx.zhimg.com/80/v2-364b8c60bd0974124e2d4cd826bf0a6b_720w.png?source=d16d100b)
NoobBoy是一个简单的gameboy模拟器作者写它是为了了解更多关于仿真的世界。
#### 8. [ghrns](https://github.com/devidw/ghrns)
` JavaScript` `Star:12`
![gh](https://picx.zhimg.com/80/v2-023e7b879441b47da4841ebe564ecc5c_720w.png?source=d16d100b)
起名一直都是一项困扰而艰巨的任务ghrns让人工智能为你的GitHub仓库提供命名建议。
打开GitHub上的任何公共仓库将该扩展作为一个客户端使用GitHub仓库的描述和你的OpenAI API密钥它就会提供命名建议。
#### 9. [snippets.ninja](https://github.com/dd3v/snippets.ninja)
` JavaScript` `Star:52`
![A587t.png](https://picx.zhimg.com/80/v2-302b73222b2c33ef16c34bd974961894_720w.png?source=d16d100b)
Snippets.Ninja是一款用于代码片段管理的渐进式网络应用程序。
它是离线且开源的应用程序使用IndexedDB进行本地存储。
#### 10. [laravel](https://github.com/reliese/laravel)
` PHP` `Star:971`
Reliese Laravel Model Generator旨在通过提供一些方便的代码生成功能来加快Laravel应用程序的开发过程。
该工具检查你的数据库结构, 包括列名和外键, 以便自动生成具有正确类型属性的模型, 以及与其他模型的关系.
## 资源工具
#### 1. [QCAD](https://www.qcad.org/en/)
![QCAD Application Window](https://pic1.zhimg.com/80/v2-439c26295b4850c11a37389f2ed66673_720w.png?source=d16d100b)
面向所有人的开源CAD系统。
QCAD是一个免费的、开源的计算机辅助制图CAD的二维2D应用程序。
使用QCAD你可以创建技术图纸如建筑、室内、机械部件或原理图和图表的计划。
QCAD可在Windows、macOS和Linux上运行。
QCAD应用程序窗口QCAD的设计同时考虑到了模块化、可扩展性和可移植性。除此之外它还提供了一个非常直观易用的用户界面。
#### 2. [musikcube](https://musikcube.com/)
![windows screenshot](https://pica.zhimg.com/80/v2-9d5a076f7b7246a14fee035b9d746de7_720w.png?source=d16d100b)
musikcube是一个功能齐全的基于终端的音乐播放器、资料库和流媒体音频服务器可以在Windows、macOS和Linux上原生运行。
它在带有定制DAC如IQaudIO DAC+、HiFiBerry DAC+和其他的Raspberry Pi上也运行良好可以舒适地输出24bit/192k音频。
#### 3. [Coder](https://coder.com/)
![A5XLx.png](https://pica.zhimg.com/80/v2-ce82bdfe83b5e7a19187424acb53614b_720w.png?source=d16d100b)
在任何地方的任何机器上运行VS Code并在浏览器中访问它。
#### 4. [Git-Story](https://initialcommit.com/tools/git-story)
![Image of the git-story tool](https://picx.zhimg.com/80/v2-b7be92eda93922bb2b951789190b6c9d_720w.png?source=d16d100b)
通过直接从你的Git repo创建、提交历史生成视频动画.mp4讲述你的Git项目的故事。
## 技术文章
#### 1. [优化软件开发生命周期的5种方法](https://blog.flycode.com/5-ways-to-optimize-your-software-development-life-cycle)
在当今快速变化的数字世界和高度竞争的市场中,对于软件开发团队来说,接受更现代和创新的软件交付方法,以便能够在明显更短的时间内交付软件,变得越来越重要。
然而开发高质量的软件解决方案需要一个有效的软件开发生命周期SDLC。如果你采取措施优化公司的软件开发流程无论是在公司内部还是通过外包你都会大大增加产品成功的机会。
在这篇文章中将讨论SDLC的工作流程和一些可以影响项目交付成功的最佳实践。
#### 2. [一个关于 "yes"的小故事](https://endler.dev/2017/yes/)
当使用Linux时你对什么印象比较深刻
不同人会有不同的回答,但是,关于`yes`这个问题应该很多人都有接触。
无论是安装软件,还是执行命令时,经常会遇到在命令行下让输入`Y/N`,可能很多同学不管三七二十一,一顿的选择`yes`。
这看似不起眼的东西,在实际应用中却大有价值,在这篇文中就会介绍有关`yes`的一些妙用和价值。

177
weekly/2022-10-07-weekly.md Normal file
View File

@ -0,0 +1,177 @@
**DevWeekly**收集整理每周优质开发者内容,包括**开源项目**、**资源工具**、**技术文章**等方面。
每周五定期发布,同步更新到<a href="https://www.zhihu.com/people/sharetechlee/activities">
知乎Jackpop</a><a href="https://mp.weixin.qq.com/s/hTZAGgkiMS0XPZ9OHQxFJg" rel="nofollow">公众号:平凡而诗意</a>
欢迎大家投稿,**[提交issue](https://github.com/Jackpopc/DevWeekly/issues)**,推荐或者自荐开源项目/资源/工具/文章~
**订阅方式**
1. **Star**并收藏项目[DevWeekly](https://github.com/Jackpopc/DevWeekly)
2. 关注<a href="https://www.zhihu.com/people/sharetechlee/activities">
知乎Jackpop</a>
3. 关注并星标<a href="https://mp.weixin.qq.com/s/hTZAGgkiMS0XPZ9OHQxFJg" rel="nofollow">公众号:平凡而诗意</a>
进阶技术,优质资源,实用工具,欢迎关注公众号**平凡而诗意**
<p align="center">
<img src="https://s1.ax1x.com/2022/07/10/jsCAdH.jpg" width="260" height="260"></img>
</p>
## 开源项目
#### 1. [PRegEx](https://github.com/manoss96/pregex)
` Python` `Star:416`
正则表达式是开发过程中非常有用,但是它的缺点是非常难易阅读和记忆。
由于RegEx的声明性许多程序员并不熟悉以及它大量使用与RegEx模式中的功能没有内在联系的符号从而使它们难以记忆。而且RegEx模式很多时候是由大量的信息组成的我们的大脑似乎就是在努力地分解这些信息以便进行有效的分析。
PRegEx是可编程正则表达式的缩写是一个Python软件包可以用来以更加人性化的方式构建正则表达式模式。
通过使用PRegEx正则表达式中的难点可以迎刃而解从而轻松使用正则表达式。
#### 2. [termtyper](https://github.com/kraanzu/termtyper)
` Python` `Star:750`
一款提升打字水平和体验的工具,它提供了可互动、美观的用户界面,机械键盘的声音,实时比较打字速度等有趣的功能。
#### 3. [project-loom-c5m](https://github.com/ebarlas/project-loom-c5m)
` Java` `Star:302`
Project Loom C5M是一项实验目标利用OpenJDK Project Loom虚拟线程在客户端和服务器端的Java应用中实现500万个持久性连接。
#### 4. [gotop](https://github.com/xxxserxxx/gotop)
` Go` `Star:1.9k`
![img](https://pic2.zhimg.com/80/v2-28379d0eb016580f294f50edf590d4a6_720w.gif?source=d16d100b)
一个基于终端的图形活动监视器其灵感来自于gtop和vtop。
#### 5. [writer](https://github.com/mintlify/writer)
` JavaScript` `Star:1.3k`
![img](https://pic1.zhimg.com/80/v2-2dc2f5a82a2a3934079a6a8b74b207c7_720w.png?source=d16d100b)
由AI驱动的文档编写工具如下语言
- Python
- JavaScript
- TypeScript
- JSX and TSX files
- C and C++
- PHP
- Java
- C#
- Ruby
- Rust
- Dart
- Go
#### 6. [sql-lint](https://github.com/joereynolds/sql-lint)
` JavaScript` `Star:363`
![AWLjK.gif](https://picx.zhimg.com/80/v2-413e70e092b267d575f4438349e883d5_720w.gif?source=d16d100b)
`sql-lint`是一个SQL检查工具能够对你的SQL查询进行合理性检查并从数据库中返回错误信息。
如果你担心在DELETE中忘记了WHERE或者用意外的字符破坏了你的数据那么`sql-lint`就会起到很大作用。
#### 7. [orange](https://github.com/naaive/orange)
` Rust` `Star:1.1k`
Orange是一个文件搜索工具具有如下特性
- 使用简单,自带中文简繁体分词、拼音、补全、高亮
- 毫秒级搜索响应
- 低CPU、内存资源占用
- 实时监听文件变化
- 轻量安装包
- 简单大方UI
#### 8. [lite-xl](https://github.com/lite-xl/lite-xl)
` Lua` `Star:2.7k`
![screenshot-dark](https://picx.zhimg.com/80/v2-8effa326082892134627f0d7deba270d_720w.png?source=d16d100b)
一个用Lua编写的轻量级文本编辑器
#### 9. [Clendar](https://github.com/vinhnx/Clendar)
` Swift` `Star:371`
通用的苹果平台日历应用程序用SwiftUI编写。
#### 10. [mcrypt_compat](https://github.com/phpseclib/mcrypt_compat)
` PHP` `Star:242`
用于PHP 5.x-8.x polyfill的mcrypt加密模块扩展。
## 资源工具
#### 1. [simplex-chat](https://simplex.chat/)
![AWGWa.png](https://pic1.zhimg.com/80/v2-cd58519f3041a8fe58656d50f0368ad9_720w.png?source=d16d100b)
第一个没有任何形式用户识别码的信息交流平台100%的为私人设计,具有如下特性:
- 保护你的信息和元数据
- 端到端加密,有额外的加密层。
- 适用于安卓Google PlayAPK和iOS
- 可作为终端(控制台)应用程序/CLI在Linux、MacOS、Windows上使用
#### 2. [You](https://you.com/)
![AWSsN.png](https://pic3.zhimg.com/80/v2-e3152bbcb14087a39dd9ecce30e1a607_720w.png?source=d16d100b)
You是一个搜索引擎它为你总结了互联网上最优质的内容没有广告而且有很好的隐私保护。
它通过人工智能将帮助你从网络和应用程序中找到最相关的结果,你可以对其进行分类和优先排序,以获得最佳搜索体验。
#### 3. [Emoji Cloud](https://alohe.github.io/emojicloud/)
![AWQyS.png](https://pic1.zhimg.com/80/v2-e45b986bfcb8162abf3261c7e4b7fab3_720w.png?source=d16d100b)
表情包云,你可以将矢量表情包添加到你的项目中,只需零配置和一行代码。
#### 4. [freeCodeCamp ](https://www.freecodecamp.org/)
freeCodeCamp是一个由世界各地数百万人组成的社区在这里可以一起学习代码。
此外,还可以通过免费的在线课程、编程项目和开发人员工作中的面经来学习编码。
## 技术文章
#### 1. [当你在终端上按下一个键时会发生什么?](https://jvns.ca/blog/2022/07/20/pseudoterminals/)
如果使用过macOS、Linux应该对终端都不陌生。
在终端下,我们会执行很多实现不同功能的命令`ls`、`cd`、`top`、`grep`、`sed`....
那你是否考虑过,当你在终端上按下一个键,它到底发生了什么?
这篇文章通过实验的方式会告诉你答案。
#### 2. [Python日志开发者指南](https://blog.sentry.io/2022/07/19/logging-in-python-a-developers-guide)
你在调试你的Python代码时有过困难吗
如果是的话学习如何在Python中设置日志可以帮助你简化你的调试工作流程。
作为一个初级程序员,你可能已经使用了`print()`语句来输出中间过程信息,检查代码是否按预期工作。
使用`print()`语句进行调试,对于较小的 Python 程序来说,可以很好地工作。
然而,当你开始处理更大、更复杂的项目时,就需要一个持久的日志,其中包含更多关于你的代码行为的信息,以便帮助你系统地调试和追踪错误。
在这个教程中,你可以学习如何使用内置的日志模块在 Python 中设置日志,从基础入门到高级用法都会涉及。