十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
作为一名开源爱好者,发掘优秀的开源项目是一件非常有趣的事情。在第一期中,我分享了单页个人网站模板、组装式 Flutter 应用框架、PHP 客户端库、Java 诊断工具等一些实用的库和工具。本期依旧会为大家分享一些前端、后端、移动开发的相关工具,希望你能“淘”到适合自己的工具。
创新互联是专业的泊头网站建设公司,泊头接单;提供做网站、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行泊头网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
1.Vue-EasyTable
Vue-EasyTable 是一款基于 Vue2.x 的 table 组件,具备自适应、表头与列固定、自定义单元格样式、自定义 Loading 等功能。
2.React-Calendar
这是一款具备原生日期格式的日历组件。它不依赖 Moment.js,支持日期选择范围,涵盖了各国语言,开箱即用。
3.Matter
CSS 实现的 Material 组件合集项目,作者已将部分作品开源,效果可以在 CodePen 上查看。
4.Revery
Revery 是一款用于构建高性能、跨平台桌面应用的框架。它类似于加速版的原生 Electron,除了拥有类似 React / Redux 的库,还具备 GPU 加速渲染功能,其内置的编译器速度也相当快。
5.Web Accessibility Guide
这是一个精选了 Web 可访问性贴士、技巧和最佳实践的开源项目,你将会学习到一些改善 Web 可访问性的实用做法。
1.SOFAJRaft
SOFAJRaft 是蚂蚁金服开源的生产级 Java Raft 算法库,它基于 Raft 一致性算法的生产级高性能 Java 实现,支持 MULTI-RAFT-GROUP,适用于高负载低延迟的场景,易于使用。
2. Dragonwell
阿里开源了 OpenJDK 发行版 Dragonwell,它提供长期支持,包括性能增强和安全修复。在数据中心大规模 Java 应用部署情况下,可以大幅度提高稳定性、效率以及性能。
3.Lawoole
Lawoole 是一款基于 Laravel 和 Swoole 的高性能 PHP 框架。它兼具了 Laravel 的特点,还解决了其功能背后的性能问题。同时,你还能感受到与 Laravel 一样的编码体验。
4.AntNest
AntNest 是一个简洁、快速的异步爬虫框架。它仅有 600 行代码,基于 Python 3.6+.
5.PHP-Awesome
这个仓库汇集了 PHP 优秀的资源,供你查询和参考。
1.FlutterBoost
FlutterBoost 是闲鱼开源的新一代 Flutter-Native 混合解决方案。它能够帮你处理页面的映射和跳转,你只需要关心页面的名字和参数即可。
2.MyLayout
MyLayout 是一套 iOS 界面视图布局框架,可谓 iOS 下的界面布局利器。它集成了 iOS Autolayout、Size Classes、Android 的 5 大布局体系、HTML/CSS 的浮动定位技术以及 Flex-Box 和 Bootstrap 框架等主流的平台的界面布局功能,并提供了一套简单、完备的多屏幕尺寸适配的解决方案。
3.SegementSlide
SegementSlide 是一个 iOS UI 库,它具备完整的滑滚及切换组件,旨在解决多层 UIScrollView 嵌套滚动的问题。
1.DevHub
DevHub 是一款跨平台的 GitHub 通知管理客户端,支持 Android、 iOS、网页和桌面上使用,帮助你便捷的接收 GitHub 各类通知。
2.Reqman
Reqman 是一个帮助后端工程师进行 API 测试的工具,同时也是一个基于 Node.js 的爬虫工具。
3.FreeCodeCamp
说到 FreeCodeCamp,或许大家不会陌生,而这个项目就是他们建立的开源课程和相应的代码库。网站提供了 6 大认证课程,也涉及了全栈开发认证。如果你感兴趣,不妨了解下。
4.Gitter
Gitter 是 GitHub 小程序客户端,作者采用 Taro 框架 + Taro UI 进行开发,而小程序内数据则来自 GitHub Api V3.
5.Awesome Podcasts
这个项目收集了各类实用的播客,涵盖了主流的编程语言,希望对你提升技术水平有所帮助。
6.编程图书大全
书籍不光能在你迷茫的时候,给予你答案,还能在你提升技能的时候,给予你帮助。这个仓库收集了众多编程图书,涉及主流编程语言、人工智能、算法、Linux、大数据等。看看,有木有你需要的。
7.VS Code Netease Music
很多开发者喜欢边写代码,边听音乐,VS Code Netease Music 这个插件就能满足你在 VS Code 上听歌的愿望。它使用 Webview 实现,不依赖命令行播放器。
Star-Battle
Star-Battle 是一款使用 JavaScript ES6、Canvas 开发的飞船射击类 游戏 。来 Enjoy 吧。
注:
如需转载,烦请按下方注明出处信息,谢谢!
真实来说,做程序员没有五年经验,根本无法理解其中的奥秘,很多高深的知识,比如框架设计,分布式原理,领域专用语言,这些高级点的知识,没书没材料没人讲,没经验根本就是要止步了,国内需要的根本就不是真正的程序员而是代码的搬运工,把业务给我写出来,加班写出来就行了。而国外,那些程序员都会去想着把业务写得更好,更具有创新,快捷,方便大众。还是思想的问题。忙着赚钱的公司太多。
你看看很多著名的框架,比如前端jQuery bootstrap 爬虫框架scrap,深度学习框架keras,TensorFlow. Flutter都是国外程序写的,还有大量的工具型无盈利网站,国内为啥写不出,很简单,因为在你正钻研更高深的知识的时候,把你裁掉,让你转行搞其他的,你自己饭碗都保不住,还怎么去想着搞?
中国企业很简单的一点就是,出业务,做PPT,拿融资,扩大推广,裁掉程序员,这叫卸磨杀驴。这是小中型企业的模式,招程序员就是看能不能加班,能不能抗压。
不想讲了,当兴趣不能当饭吃的时候,你们还怪这片土地出不了天才。
我年过40,进入这个行业已经二十多年了,总的来说,谈不上后悔,有得有失。现在谈谈我的几点感悟吧。
一、综合素质很重要
进入这个行业开始,就是做一个程序员,到后面成为了架构师,再到技术总监。给我的启示就是,偏科的程序员发展前景是有限的。综合素质包括沟通能力,领导能力和组织能力有时候比编程能力更为重要。有很多程序员不善于沟通,但是在中国 社会 ,沟通很重要,和领导的沟通,和同事的沟通,和下级的沟通。不会沟通的程序员,注定是难于转型的,只能干程序员,干编程,而编程是青春饭。
二、自学能力很重要
在IT这个行业,自学能力太重要了,不能自学最新的技术并运用到工作中,你会发现很快就跟不上这个行业的发展,工作起来力不从心,进而被淘汰。自学的过程中,合理的分配时间是关键,很多程序员平常工作很忙,基本没有时间去学习,而领导分配任务的时候是不会给你专门留出学习时间的,你只有合理利用好时间,忙里偷闲。
三、尽早向上“提升”
在中国,程序员做到30多岁就算“大龄”了,在这之前,就要考虑好自己的向上晋升渠道,是适合继续做技术?还是转型管理?如果还想做技术,必须要在技术上往上提升一层,能够达到架构师的水平,否则,30多岁的程序员如果被公司末位淘汰请不要吃惊。如果转型做管理,这个就要体现出你的管理能力,尽早被上司赏识,从 而 被提拔到管理岗位上。
一路走来,感悟很多,不管怎样,选择了程序员这个职位,就没必要后悔,后悔也没有用,愿天下所有程序员都 人生无悔,活在当下 。
人类 历史 长河中,各行各业有几个小黄人儿留下的东西?小黄人儿哪都短 不是吗?
这个问题应该不同人有不同答案吧,说说我自己吧,入行十几年了,谈不上后悔,但整体有点无奈。
回顾这十几年的经历,弯路没少走,错误没少犯,就算一些现在看来走对的路,也是误打误撞。
总结起来走过两个阶段,个人观点,仅供参考。
入行第一个阶段,无论职业规划是否正确,发展都还算顺利
这个阶段基本就是学习和工作的循环阶段,即便没有很明确的目标性,只要努力,薪资一般都会持续增长,所以现在回头看这个阶段,应该是最爽的一个阶段了。
当然,如果想要在这个行业持续做下去,并且中年以后依然可以游刃有余,最好能在这个阶段完成三件事外加明白一个道理
需要完成的三件事:
明白一个道理:
人过中年靠投简历找工作不太靠谱,需要为未来铺条路(也就是说一旦发生职业危机,他可以帮个忙),尽管这条路未必用得上,也但愿永远别用上。
也就是说要选择发展自己的技术优势还是人脉优势留在日后备用。
如果要发展技术优势,也就是人们常说的技术大牛,这个大牛可不是某个小技术团队的大牛,而是某个领域内切切实实的牛人,至少在某个领域内有一定的知名度。这就不仅仅对你个人努力程度有一定要求,还要看机遇。例如,你想成为并发领域专家,如果没有机会接触真真的大并发场景,仅仅靠啃几本书想成为这个领域的专家,无异于水中捞月。
如果要发展人脉,前提条件要求你也具备相当的技术能力,否则到时候别人怎么帮你也没用。
入行第二个阶段,决定未来职业走向的关键时期
如果第一个阶段随波逐流的走过来(注意,是随波逐流,不是混,如果是混过来,可能在第三四个年头就不好找工作了),除非运气特别好,否则在第二个六年中再找工作就会感觉力不从心了,也就是人们常说的实力和工龄不符。
然而这一切才刚刚开始,如果第二个阶段依然得过且过的工作,第三个阶段的职场将更加难混。
在这个阶段要完成的事情
需要确定好自己未来的职业方向,管理还是技术。
不论选择哪一个,在选择好之后最好确定一个偏向,因为无论管理还是技术,里面涉及的东西都太多,一个人有限的精力很难全面精通。
过了技术积累期之后,任何工作都离不开对业务的深入理解,这也意味着每一次跳槽都需要重新组建自己的业务架构。
因此,有一个可以持续打拼而不需要不断更换的平台就显得尤为重要。
以上就是十几年经历过的两个阶段的总结,至于后面该怎么走,依旧处于迷茫阶段^0^。
过了40的程序员基本上几百万的资产是有的,这是大多数人一辈子才能挣到的钱,所以应该说是很辛运的,大部分学计算机的其实一毕业就转行了,根本就进不了这个行业,进来的也会有不少半路不愿干或者干不下去转行的,中国大环境其实对程序员不是太友好,所以来说能干到40来岁的只有很少一部分。
前端三大框架,是Angular、React、Vue,这三个框架现在是最为流行也是最多人用的框架。
React:
1.声明式设计:React采用声明范式,可以轻松描述应用。
2.高效:React通过对DOM的模拟,最大限度地减少与DOM的交互。
3.灵活:React可以与已知的库或框架很好地配合。
优点:
1.速度快:在UI渲染过程中,React通过在虚拟DOM中的微操作来实现对实际DOM的局部更新。
2.跨浏览器兼容:虚拟DOM帮助我们解决了跨浏览器问题,它为我们提供了标准化的API,甚至在IE8中都是没问题的。
3.模块化:为你程序编写独立的模块化UI组件,这样当某个或某些组件出现问题是,可以方便地进行隔离。
4.单向数据流:Flux是一个用于在JavaScript应用中创建单向数据层的架构5.同构、纯粹的javascript:因为搜索引擎的爬虫程序依赖的是服务端响应而不是JavaScript的执行,预渲染你的应用有助于搜索引擎优化。6.兼容性好:比如使用RequireJS来加载和打包,而Browserify和Webpack适用于构建大型应用。它们使得那些艰难的任务不再让人望而生畏。缺点:React本身只是一个V而已,并不是一个完整的框架,所以如果是大型项目想要一套完整的框架的话,基本都需要加上ReactRouter和Flux才能写大型应用。
Vue:
Vue是尤雨溪编写的一个构建数据驱动的Web界面的库,准确来说不是一个框架,它聚焦在V(view)视图层。
它有以下的特性:
1.轻量级的框架
2.双向数据绑定
3.指令
4.插件化
优点:
1.简单:官方文档很清晰,比Angular简单易学。
2.快速:异步批处理方式更新DOM。
3.组合:用解耦的、可复用的组件组合你的应用程序。
4.紧凑:~18kbmin+gzip,且无依赖。
5.强大:表达式无需声明依赖的可推导属性(computedproperties)。
6.对模块友好:可以通过NPM、Bower或Duo安装,不强迫你所有的代码都遵循Angular的各种规定,使用场景更加灵活。
缺点:
1.新生儿:Vue.js是一个新的项目,没有angular那么成熟。
2.影响度不是很大:google了一下,有关于Vue.js多样性或者说丰富性少于其他一些有名的库。
3.不支持IE8。
Angular:
Angular是一款优秀的前端JS框架,已经被用于Google的多款产品当中。
它有以下的特性:
1.良好的应用程序结构
2.双向数据绑定
3.指令
4.HTML模板
5.可嵌入、注入和测试
优点:
1.模板功能强大丰富,自带了极其丰富的angular指令。
2.是一个比较完善的前端框架,包含服务,模板,数据双向绑定,模块化,路由,过滤器,依赖注入等所有功能;3.自定义指令,自定义指令后可以在项目中多次使用。
4.ng模块化比较大胆的引入了Java的一些东西(依赖注入),能够很容易的写出可复用的代码,对于敏捷开发的团队来说非常有帮助。
5.angularjs是互联网巨人谷歌开发,这也意味着他有一个坚实的基础和社区支持。
缺点:
1.angular入门很容易但深入后概念很多,学习中较难理解。
2.文档例子非常少,官方的文档基本只写了api,一个例子都没有,很多时候具体怎么用都是google来的,或直接问misko,angular的作者。
3.对IE6/7兼容不算特别好,就是可以用jQuery自己手写代码解决一些。
4.指令的应用的最佳实践教程少,angular其实很灵活,如果不看一些作者的使用原则,很容易写出四不像的代码,例如js中还是像jQuery的思想有很多dom操作。
5.DI依赖注入如果代码压缩需要显示声明。
HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。
这里有实战项目、入门教程、黑 科技 、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短时间内感受到开源的魅力,对编程产生兴趣!
1、 toybox :该项目将 200 多个常用的 Linux 命令行工具,做成一个可执行文件。从而可以让 Android 这种原本不支持 Linux 命令的系统,也得以用上 ls、find、ps 等命令。还可以用于快速构建最小的 Linux 环境
2、 the_silver_searcher :比 ack 更快的命令行搜索工具。速度快、功能强大、使用简单,支持 Linux、Windows、macOS 操作系统,还能够整合进 Vim 和 Emacs 等编辑器
3、 WindTerm :支持 SSH/Telnet/Serial/Shell/Sftp 的终端工具。虽然该软件完全免费,但部分代码尚未完全开源,对安全敏感的同学可以再观望下
4、 wavefunctioncollapse :基于波函数坍缩 (WFC) 算法,实现的无限城市示例。城市里有房子、楼梯、树木、连接房屋的通道,你可以在城市中自由移动、跳跃、飞行,但不论你怎么移动都找不到尽头,因为这座城市会无限延伸
5、 NETworkManager :管理和解决网络问题的工具。它集成了 IP 和端口扫描、WiFi 分析器、跟踪路由、DNS 查询等工具
6、 ppsspp :能够运行在 Android 和 PC 上的开源 PSP 模拟器
7、 leocad :用来创建虚拟乐高模型的 CAD 工具。适用于 Windows、Linux 和 macOS 系统
8、 csshake :用 CSS 实现抖动效果
9、 MangoDB :真正开源的 MongoDB 替代品。它底层采用 PostgreSQL 作为存储引擎,用 Go 语言实现了 MongoDB 协议,所以几乎兼容所有的 MongoDB 库,迁移起来毫无负担。如果你用不到 MongoDB 的高级功能,还受限于它的开源协议,那么这个项目可作为 MongoDB 的开源替代方案。它才刚刚起步,建议观望一段时间或做足测试再用于生产环境
10、 caddy :用 Go 编写的轻量级 Web 服务器。它相较于 Apache、Nginx 这些知名 Web 服务器,独特点在于提供了编译好的可执行文件,实现了真正的开箱即用。无需任何配置即可拥有免费的 HTTPS、自动把 Markdown 文件转化成 HTML 等人性化的功能。如果是搭建中小型的 Web 服务,它完全够用而且省时省心
11、 croc :可以让任意两台计算机,安全方便地传输文件和文件夹的工具。轻松实现端到端加密的跨平台文件传输,还支持多文件传输、传输中断和恢复等功能
12、 jnativehook :获取键盘和鼠标事件的 Java 库。轻松监听按键、鼠标移动、点击等事件
13、 spider-flow :用流程图的方式编写爬虫的平台。无需写代码就可以快速完成一个简单的爬虫
14、 greenDAO :高性能的 Android ORM 库。拥有体积小、易于使用、支持数据库加密等特点,通过它 Android 开发者可以采用面向对象的方式操作数据库,不需要再手写和拼接 SQL 啦
15、 vue-color-avatar :纯前端实现的矢量风格头像生成网站。可以通过搭配不同的素材,生成个性化头像。该项目使用 Vite + Vue3 开发,能够帮助前端初学者熟悉 Vue3 语法并掌握项目搭建的相关知识
16、 colorfu :自动生成由文字/颜色/图片/纹理元素组成的壁纸
17、 pm2 :Node.js 的进程管理工具。它容易上手操作简单,可以有效地提高 Node.js 程序运行的稳定性,支持自动重启、负载均衡、不停服务重启、性能监控等功能,多用于生产环境中管理、监控 Node.js 进程
18、 automa :通过图形化界面拖拽功能模块,实现浏览器自动操作的扩展工具。轻松实现自动填表、截图、定时执行等操作。让浏览器自动完成预设工作流的插件,从而减少重复性操作提高效率
19、 PyWebIO :快速构建 Web 应用的 Python 工具。通过该项目你可在不写 HTML、CSS、JS 代码的前提下,仅用 Python 快速完成一个包含数据展示、表单的小型 Web 应用页面
20、 pottery :以 Python 的方式操作 Redis 的库。忘记那些 Redis 命令吧,只要你知道如何使用 Python 字典,那么你就会用这个库操作 Redis
21、 zulip :完全开源的企业级即时通讯项目。后端采用 Python 语言实现性能足够强大,功能齐全相当于开源、免费的 Slack,拥有拖拽上传文件、代码高亮、Markdown 语法、应用整合、容易接入的 API 等功能,还支持 Web、PC、iOS 和 Android 主流平台,众多知名企业都在用,能够有效地提高团队沟通和办公效率。同时该项目对新手用户友好,如果你想加入一个不错的 Python 开源项目,推荐你花时间研究下它一定会有所收获
22、 webssh :简单的 SSH 连接服务器的 Python Web 应用。该项目后端采用 Tornado Web 框架和 Python SSH 库 paramiko,前端是 TypeScript 写的命令行前端组件 Xterm.js 实现。整个项目简单还具有实用价值,可作为 Python Web 的实战项目学习
23、 django-debug-toolbar :Django 的调试工具栏。可显示当前请求和响应有关的各种调试信息,包括耗时、SQL、配置、性能等信息
24、 hyperfine :命令行基准测试工具。可用来查看和对比命令的耗时,支持多次运行的统计分析、结果导出等功能
25、 xcode-dev-cleaner :用于清理各种 Xcode 的缓存数据,释放存储空间。注意是清除 Xcode 缓存数据,不是卸载 Xcode 哈
26、 toml :更易读和易于维护的配置文件格式。如果你厌倦了 INI 的局限性、层层嵌套的 JSON 和 YAML 令人心惊胆战的缩进语法,不防给 TOML 一个机会,它支持多种数据类型、抛弃了缩进和嵌套,而且众多流行编程语言都有对应的库。TOML 已经足够成熟,绝对值得一试
27、 waka-readme-stats :自动在 GitHub 个人首页展示编程时长的工具。该项目通过 WakaTime 记录用户在 IDE 的使用时间,统计编程时长和数据,然后采用 GitHub Action 自动获取并动态更新到 GitHub 个人首页。轻而易举地展示自己的编程时长
28、 PathPlanning :常见的路径规划算法集合。项目包含了 Python 代码实现、运行过程动画以及相关论文
29、 howdy :为 Linux 系统提供人脸识别解锁电脑的工具。通过电脑内置的摄像头和红外设备,实现了类似 Windows Hello 风格的身份认证,可用于登陆、锁屏、sudo 等任何需要输入密码的地方
30、 The-Open-Book :开源的电子水墨屏阅读设备。动手能力强的同学可跟着这个项目,从焊电路板开始亲手制作出一个类 Kindle 的 4.2 英寸阅读设备
31、 fl_chart :Flutter 图表库。它支持折线图、条形图、饼图、散点图和雷达图
32、 ugo-compiler-book :《从头开发一个迷你 Go 语言》该书教你从头实现迷你 Go 语言,内容包含了词法解析、语法树构建、函数闭包、接口、CGO 的实现等内容
33、 archbase :教科书《计算机体系结构基础》第三版
34、 spring-in-action-v6-translate :《Spring 实战第 6 版》中文翻译
35、 best_AI_papers_2021 :2021 年必看的人工智能论文列表。该项目不是简单的罗列论文,它不仅包含相关论文的代码、效果展示,还有深入的文章和讲解视频。通过学习这些前沿的人工智能论文,提前了解 AI 在未来更多可能性
36、 AnimeGANv2 :可以将图片和视频转换成漫画风格的工具。采用的是神经风格迁移+生成对抗网络(GAN)的组合,转换速度快
感谢您的阅读,如果觉得内容还不错的话 求赞、求分享 ,您的每一次支持都将让 HelloGitHub 变得更好!
移动App(手机应用)自动化工具。
手机APP自动化有什么用?
自动化完成一些重复性的任务
比如微信客服机器人
爬虫
就是通过手机自动化爬取信息。
为什么不通过网页、HTTP爬取呢?有的系统没有网页,也不方便通过HTTP爬取
自动化测试
很多企业里面有这样的需求
Appium自动化方案的特点:
开源免费
支持多个平台
iOS(苹果)、安卓App的自动化都支持。
支持多种类型的自动化
支持苹果、安卓应用原生界面的自动化
支持应用内嵌WebView的自动化
支持手机浏览器中的web网站自动化
支持flutter应用的自动化
支持多种编程语言
像Selenium一样,可以用多种编程语言调用它开发自动化程序。