Ⅰ 开源精粹(二)!22个实用、有趣的开源项目
作为一名开源爱好者,发掘优秀的开源项目是一件非常有趣的事情。在第一期中,我分享了单页个人网站模板、组装式 Flutter 应用框架、PHP 客户端库、Java 诊断工具等一些实用的库和工具。本期依旧会为大家分享一些前端、后端、移动开发的相关工具,希望你能“淘”到适合自己的工具。
1.Vue-EasyTable
Vue-EasyTable 是一款基于 Vue2.x 的 table 组件,具备自适应、表头与列固定、自定义单元格样式、自定义 Loading 等功能。
2.React-Calendar
这是一款具备原生日期格式的日历组件。它不依赖 Moment.js,支持日期选择范围,涵盖了各国语言,开箱即用。
3.Matter
CSS 实现的 Material 组件合集项目,作者已将部分作品开源,效果可以在 CodePen 上查看。
4.Revery
Revery 是一款用于构建高性能、跨平台桌面应用的框架。它类似于加速版的原生 Electron,除了拥有类似 React / Rex 的库,还具备 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 吧。
注:
如需转载,烦请按下方注明出处信息,谢谢!
Ⅱ 全栈项目开发3:应用国际化和权限处理
对于现在的APP应用,国际化需求并不高,但是作为一项有用的功能,我们还是按部就班地去实现它,由于还未完成全局状态管理和全局事件总线,暂时使用了一个全局变量Locale去定义,因此要完成切换就需要手动修改变量值后重启应用(热更新是不可以的),目前仅实现简体中文和美式英文两种语言
1.引入国际化需要的包。
2.在Flutter节点下添加generate,可以在重启或者热更新时实时更新翻译文件。
3.在根目录下增加l10n.yaml文件,用于配置实时更新的内容。
4.在根Widget的MaterialApp中增加如下配置,大多都是来自第三步自动更新的内容,如果编译器不能自动识别,可以手动引入如下包:import 'package:flutter_gen/gen_l10n/app_localizations.dart'
5.编译翻译文件,在lib/I10n的目录下新增app_zh.arb和app_en.arb两个文件(如果要具体到国家代码可以新建为app_zh_CN.arb和app_en_US.arb),文件采用Json的语法,Vscode等编辑器也有对应的语法插件,至于翻译语法,大家可以自行了解,限于篇幅,仅做常用的展示。
注:app表示变量名,后续可以使用AppLocalizations.of(context)!.app调用,语言切换时就会按照对应的翻译文件进行展示。
@app表示对app变量的描述,是给翻译人员看的,与代码运行无关。
模板语句,有时候需要实现类似“倒计时20秒”只有数字变化的语句,此时就形成了模板插值语句,在模板上插入数字,上述hit6即实现了这样一个语法,最终会被翻译为一个函数,读者可自行尝试。
关于iOS平台
尝试过国际化的读者可能发现在iOS平台无法顺利完成切换(上述全局变量方式和使用全局状态管理的实现方式有本质区别,注意区分),这是因为iOS应用程序有一套自建的语言环境管理机制,所以使用上面的方式适配国际化对于iOS应用程序是无效的,为了让iOS应用程序也能支持国际化,还需要在原生iOS工程中进行额外的配置。 使用Xcode打开Flutter项目的iOS原生工程,切换到工程面板,然后在Localization选项配置中添加中文支持即可。
在Android/ios平台权限处理是绕不开的内容,本应用作为demo应用,会尽可能地多索要权限,但是设计为仅在用户安装后第一次打开时索取一次,后续不再主动索取,仅在用户需要使用相关功能时引导用户给予权限即可。权限管理的实现相对简单,可以引用permission_handler包,并加入以下代码,在APP启动时调用一次requestAllPermission函数即可。
下章内容 : 主题切换,欢迎页,引导页,
小破站同名,同步文章且定时直播编程,有兴趣可以移步
Ⅲ 华为手机方舟编译器怎么用
1、方舟编译器是业界首个多语言联合优化的编译器,开发者在开发环境中可以一次性将多语言统一编译为一套机器码,运行时无需产生跨语言带来的额外消耗,并可以进行跨语言的联合优化,提升运行效率。
2、安卓自身的编译技术在不断的发展,但始终需要在运行中依赖虚拟机来进行动态编译和解释执行,对系统资源消耗较大。而方舟编译器在开发环境中就可以完成全部代码的编译,手机安装应用程序后无需依赖虚拟机资源,即可全速运行程序,带来效率上的极大提升。
3、举一个例子:EMUI9.1仅仅对系统组件SystemServer应用了华为方舟编译器后,就带来了系统操作流畅度提升24%,系统响应性能提升44%的收益。
Ⅳ 方舟编译器有什么用,怎么用
了解方舟编译器前,我们简单了解下编译器。编译器能够将高级语言转换成机器能懂的机器码,并按照指令运行。可以说是人类和机器沟通的桥梁。方舟编译器是由华为百人专家团队打造推出的高级语言直接编译成机器码的移动端编译器。
1、用户是否只需要在应用市场下载已编译的软件即可?
方舟编译器编译的应用在开发阶段就已经完成。也就是说,只要是经过编译器编译的应用,在应用市场上上架了以后,用户下载的就是编译过的了。
2、方舟编译器能给用户带来什么?
它解决了安卓系统久用必卡顿的魔咒,打破了人机之间的藩篱,让用户能直观感受到的就是:A、提升了应用的流畅度;
B、降低手机 CPU 的开销;
C、进一步降低功耗提升了手机续航能力;
D、为用户带来更加持久流畅的体验。
Ⅳ 方舟编译器3.0好用不
好用。
方舟编译器是采用了静态编译,是首个取代安卓虚拟机的静态编译器。可供开发者在开发者环境中一次性的将高级语言编译成机器码,手机安卓应用程序后可全速运行,大大提高了流畅度和响应速度,从底层解决了安卓运行效率低下的问题。
《方舟:生存进化》故事主要讲述,一群男女从在岸边醒来后,发现自己身处一个充满恐龙的神秘岛屿“ARK”。游戏中除了狩猎、资源搜刮、物品打造、种植、科研、调查技术和建造房子来抵抗炎热的白天,冰冷的夜晚,易变的天气系统,危险的野外和潜在的敌人等之外,玩家还必须面对其他玩家所扮演的幸存者,合作或者是相互厮杀。