【译】如何优雅的处理协程的取消?
在软件开发乃至生活中,我们都要避免过多无用的工作,这样只会浪费内存和精力。这个原则对协程也是一样。确保你可以控制协程的生命周期,在它不需要工作的时候取消它,这就是 结构化并发 。继续阅读下面的内容,来了解关于协程取消的来龙去脉。 如果你更倾向于视频,可以点击下面的链接观看 Ma…
我用起来顺手的数据库设计工具,这次推荐给大家!
好的数据库设计工具,可以帮助我们进行思考并提高我们的设计效率。以前一直使用的是PowerDesigner,最近发现Navicat的数据库设计功能也很不错,界面简洁且容易使用,特此推荐给大家。 首先我们需要打开Navicat的数据库设计功能,该功能在工具栏中的模型按钮下,直接打开…
这份Mybatis总结,我觉得你很需要!
Mybatis应该是国内用得最多的「数据访问层」框架了,我看了我司的好几个系统,基本都是用Mybatis的。 实话实说,我对Mybatis没有很深入的了解,也仅仅是处于「会用」的阶段上。日常的要加张表,加个字段就是写写DAO/Mapper。 为什么没有深入去研究Mybatis的…
Jetpack Compose 将支持桌面应用开发 ?
可能在未来的某一天,Google 的工程师会使用通过 Compose 开发的 IDE 来开发 Compose 。 打不开链接的给大家截个图。 目前官方的相关信息还比较少,从下面的截图中可以窥探到一些关键信息。 首先,多平台通用。Windows 自然不用说,也提供了 Linux …
Now in Android 16 —— 最新 Android 动态分享
大家好,我是秉心说。 包含一些 bug fix,并没有什么新特性。 除此之外,还有很多的 RC 、beta 、alpha 版本更新。作者挑了两个动画相关的 alpha 版本更新着重说明, Core-Animation 1.0.0-alpha01 和 Vectordrawable…
[译] Coroutines: First things first
该系列博客深入探索了协程的取消和异常。取消 可以避免进行预期以外的工作,从而节省内存和电量;合适的异常处理 可以带来良好的用户体验。作为该系列另外两篇文章的基础,通过本文搞清楚协程的一些基本概念,例如 CoroutineScope 、Job 、CoroutineContext …
如何在5天内学会Vue?聊聊我的学习方法!
先说下为什么用学习Vue这个例子来谈我的学习方法?其实关注我的朋友很多都是从我的Github上面来的,大多数都是Java后端开发者,Vue作为一种前端技术,掌握的人并不多。所以使用Vue从零开始的学习过程为例子,对于大家学习新技术有很好的借鉴价值,接下来我们来聊聊我的学习方法吧…
DataStore —— SharedPreferences 的替代者 ?
瞎逛的时候发现了一个新东西,来和大家分享一下。 SharedPreferences 大家应该都用过,它的槽点很多,多到我专门写了一篇文章。 不过,官方吐槽,最为致命。 我就不翻译了,可能会翻的不是很准确。以上吐槽来自 AndroidX 添加的新成员 DataStore 的类注释…
Elasticsearch项目实战,商品搜索功能设计与实现!
使用中文分词器以后,可以将中文文本按语境进行分隔,可以满足我们的需求。 在SpringBoot中使用Elasticsearch本文不再赘述,直接参考《mall整合Elasticsearch实现商品搜索》即可。这里需要提一下,对于需要进行中文分词的字段,我们直接使用@Field注…
数据库还可以这么看?(Android Studio 4.1 新特性)
大家好,我是秉心说。今天带来的内容是 Android Studio 4.1 版本带来的一个新功能。 对于大部分 Android 开发者来说,Sqlite 数据库肯定不陌生。记得我人生前几次的面试当中,还遇到过要求徒手写一个增删改查的客户端。那么,你们一般都是如何查看或者调试数据…
Now in Android #15 —— 最新 Android 知识分享
大家好,我是秉心说。 照例给大家总结一下。往期所有文章可以在这里查看: 下面进入这一期的最新内容。 上一期中介绍了 开发者预览版 2,到目前为止没有新版本的发布。Chet Haase 在原文中分享了几个值的一提的内容。 Android 11 开发者预览版 2 为 Native …
Elasticsearch快速入门,掌握这些刚刚好!
记得刚接触Elasticsearch的时候,没找啥资料,直接看了遍Elasticsearch的中文官方文档,中文文档很久没更新了,一直都是2.3的版本。最近又重新看了遍6.0的官方文档,由于官方文档介绍的内容比较多,每次看都很费力,所以这次整理了其中最常用部分,写下了这篇入门教…
给 Adapter 做 “加法” —— 实战 MergeAdapter
在最新的 recyclerview:1.2.0-alpha02 中发布了一个关于 Adapter 的新特性 MergeAdapter 。我们可以 “合并”Adapter,或者说给 Adapter “做加法”。 听起来可能不是那么容易理解。我们先来看下面的 RecyclerVie…
我说我懂多线程,面试官立马给我发了offer
在上周总结了一篇「工作中常用到的Java集合类」,反响还不错。这周来写写Java另一个重要的知识点:「多线程」 多线程大家在初学的时候,对这个知识点应该有不少的疑惑的。我认为主要原因有两个: 多线程在初学的时候不太好学,并且一般写项目的时候也很少用得上(至少在初学阶段时写的项目…
Layout Inspector 支持 3D 视图了!
Layout Inspector(布局检查器) 大家应该都不陌生,我们可以通过它来检查布局层级。 下面就带着大家简单了解一下 AS 4.0 为 Layout Inspector 带来了哪些新能力。 接着选择你要调试的进程就可以了。 这里要注意的是你选择的进程只能是 正在运行的进…
还需要学习JDBC吗?如果需要该了解到怎么样的程度?
不知道大家在工作中还有没有写过JDBC,我在大三去过一家小公司实习,里边用的就是JDBC,只不过它封装了几个工具类。写代码的时候还是能感受到「这是真真实实的JDBC代码」 现在开发一般都是Mybatis,也有公司用的Hibernate或者Spring Data JPA。很多时候…
Docker环境下秒建Redis集群,连SpringBoot也整上了!
为了提高Redis的存储容量和响应速度,有时候我们需要搭建Redis集群。本文主要讲述Redis集群环境的搭建步骤以及如何在SpringBoot中整合使用Redis集群。 之后通过cluster nodes命令可以查看节点信息,发现符合原来3主3从的预期。 由于Redis容器r…
是时候丢掉 onActivityResult 了 !
你的答案肯定是 startActivityForResult 和 onActivityResult 。没错,一直以来,在某些场景下,例如启动系统相机拍照,返回当前页面后获取照片数据,我们并没有其他选择,只能在 onActivityResult 中进行处理。 在最新的 Activ…
Now in Android #14 —— 最新 Android 动态分享
大家好,我是秉心说。 昨晚在 Medium 上看到了 #Now in Android# 更新了第十四期,大致浏览了一遍,有点东西,onActivityResult() 都要被干掉了。 今天忍不住爬上来和大家分享最新一期的内容。 下面就进入正题。 上篇文章 Now in Andr…
工作中常用到的Java集合类有哪些?
Java集合是我认为在Java基础中最最重要的知识点了,Java集合是必须掌握的。我在实习/秋招面试的时候,只要是面到Java,那一定是少不了Java集合。 作为一个新人,最关心的其实有一点:这个技术在工作中是怎么用的。换个说法:“工作中常用到的Java集合有哪些,应用场景是什…