主页

Spring Cloud 配置中心

闲话配置 老司机都喜欢在程序设计中尽可能的把各种参数做成可配置的,等到产品需求发生改动的时候,优雅的修改一行配置,重新加载一次配置,就满足了需求。 配置(Configuration)是不修改代码的情况下,对程序的运行调整的能力。 简单来讲,配置可以分成两类: 系统配置:包括线程池大小、数据库连接等,变化频率较低 业务配置:功能开关,功能参数等,变化较为频繁 程序的配置一般而言,分为几个环境

小工具-sips-图片批量转大小

家有设计师 我家夫人是一位设计师,平时少不了将一张大图导出成多种规格的小图的脏活累活。 看了她导了好几次,实在不能忍。得发挥程序员的能动性,做个小工具。 调研 imagemagick 是一个很好的工具,支持多个平台,功能丰富强大。考虑了一下,如果这个小工具还需要用户安装依赖的话,显然提高了使用门槛。 设计师们大多在 MacOS 下工作,最好是运用这个平台下现成的工具包。搜索了一下,发现今天的主角:

亚马逊 Alexa Echo Dot——入门

智能家居 大约20年前,在报纸上看到关于比尔盖茨智能豪宅的报道,心生向往。我等平民在20年后,终于迎来了智能家居浪潮普及的浪潮。 亚马逊的 Alexa Echo 无疑是这个浪潮中的当红明星。 它是一个蓝牙音箱,是一个智能语音助手,是一个智能家居管理中心,它还提供了开放平台,允许第三方添加 Skills 来扩充功能。 本篇介绍一些购买和基本使用经验。 购买 在经过几代的发展之后,目前这个产品主要包含

读一首诗——纪伯伦《孩子》

今天在最喜欢的陈老师的《待字闺中》那里读到一首诗,纪伯伦(Kahlil Gibran)的《孩子》,很有感触。将冰心的译文和原文奉上。 1234567891011121314151617孩  子 你们的孩子,都不是你们的孩子。乃是生命为自己所渴望的儿女。他们是凭借你们而来,却不是从你们而来,他们虽和你们同在,却不属于你们。你们可以给他们以爱,却不可给他们以思想。因为他们有自己的思想。你们可以荫庇他们

SDK 开发最佳实践之一:为你的 SDK 增加 No-Op 版本

笔者在开发和维护 Bugtags SDK 的一年多时间里面,趟过了不少坑,走了不少弯路,也积累了不少经验。这个 SDK 开发最佳实践系列,就是分享经验教训,帮助读者打造一款跟 Bugtags 这样快速成长的 SDK。 SDK 的使用场景 站在用户的角度来看,引入一个 SDK 可能会带来几方面的问题: - 包增大 - 可能不稳定 - 安全性问题 对于一些 SDK,产品形态是允许在测试阶段开启,上

Android Gradle 构建系统·初探

8月7号,应北京 GDG 邀请,我做了一个题为《Android Gradle 构建系统·初探》的分享。 主要内容是构建系统背景知识,源码库,代码亮点,写插件。 很明显这是一个很大的话题,有超过 2.5GB 的核心代码和超过50个子项目。 第一步,我进行了宏观的介绍。下一步,我会继续深入子项目,尝试发现更多有意思的点。 对这个话题感兴趣的,请加入技术交流 qq 群:583688711。 Slides

Android Gradle 技巧之二: 最爱命令行

如果你习惯了命令行,你会爱上它的,因为它简单、直接,深入。 命令行 很多做 Android 开发不久的同学,习惯于使用图形界面,对命令行操作很陌生甚至恐惧。遇到 AS 运行错误,束手无策。 AS 为了确保易用性,也在 UI 界面上屏蔽了很多命令行运行的细节,导致很多人觉得 AS 难用。 这种情况,我在解决用户集成使用 Bugtags SDK 的问题的时候,经常能遇到。其实 GUI 界面的操作,绝大

Android Gradle 技巧之一: Build Variant 相关

Build Variant android gradle 插件,允许对最终的包以多个维度进行组合。 1BuildVariant = ProductFlavor x BuildType 两个维度 最常见的就是这样: 1234567891011121314151617productFlavors { pro { } fre { }}lintOptions { abortO

拥抱 Android Studio 之五:Gradle 插件开发

官方文档给出了比较详细的实现步骤,本文的脉络会跟官方文档差不了太多,额外增补实际例子和一些实践经验。文中的代码已经托管到了 github 项目中。 需求 默认的 Android 打包插件会把 apk 命名成 module-productFlavor-buildType.apk,例如 app-official-debug.apk,并且会把包文件发布到固定的位置: module/build/outpu

如何更好的提出技术问题

下面咱们就来聊聊技术人的素养:如何更好的提出技术问题。 笔者从事 Bugtags.com 开发运营以来,除了开发任务以外,最重要的工作就是在 qq 群里面回答用户的问题。 这半年来,少说也接待了上千个用户了。笔者发现,有相当一部分的用户,提问方式和技巧都有问题,这样导致了我们额外的客服量,也使得自己的问题得不到及时满意的回答。 下面咱们就来聊聊技术人的素养:如何更好的提出技术问题。 直接了当 有的