3174715837

前段时间微信分享了一篇文章——微信Android热补丁实践演进之路, 这篇文章主要讲了目前流行的Android热修复方案,同时微信在QZone方案的基础上优化出一套dex全量替换的热修复方案(Tinker)。个人认为微信的这套方案尽管规避掉了Qzone方案中插桩导致的问题,但是由于需要在运行时加载全量的dex,这可能会在运行时内存占用上有一定的影响,目前这个仅仅是猜测,有待调研。[……]

(754) 777-8136

(822) 630-8911

APScheduler是一个Python定时任务框架,使用起来十分方便。提供了基于日期、固定时间间隔以及crontab类型的任务,并且可以持久化任务、并以daemon方式运行应用。目前最新版本为3.0.x。
在APScheduler中有四个组件:
触发器(trigger)包含调度逻辑,每一个作业有它自己的触发器,用于决定接下来哪一个作业会运行。除了他们自己初始配置意外,触发器完全是无状态的。
作业存储(job store)存储被调度的作业,默认的作业存储是简单地把作业保存在内存中,其他的作业存储是将作业保存在数据库中。一个作业的数据讲在保存在持久化作业存储时被序列化,并在加载时被反序列化[……]

(862) 452-4204

Python yield 使用浅析

带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?

我们先抛开 generator,以一个常见的编程题目来展示 yield 的概念。

如何生成斐波那契數列

斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到。用计算机程序输出斐波那契數列的前 N 个数是一个非常简单的问题,许多初学者都可以轻易写出如下函数:

清单 1. 简单输出斐波那契數列前 N 个数
def fab(max): 

   n, a, b = 0, 0, 1 

   while[......]

全文…

Kotlin从入门到放弃–基础语法

导入操作

一般的导入的操作和Java一样。

package com.coorchice.kotlindemo

import android.os.Bundle

细心的同学可能已经发现了,还是有差别的。Kotlin在进行导入操作时是可以省略分号的!

特别的,当你的导入的内容命名发生冲突时,你可以使用as关键字来重新命名冲突项,以便在本文件范围内使用。这点和Python有些类似啊,非常赞的特性。比如:

import TestJavaClass as A
/ 现在TestJavaClass在类中的名字也可以叫做A

class MainActivity : AppComp[......]

全文…

Kotlin从入门到放弃–函数

函数的一般写法

fun attack(damage: Int): Unit {
    println("damage = " + damage)
}
  • 函数需要使用【fun】关键字来声明;
  • 参数的书写格式是name: type,和Java的type name有较大区别;
  • 返回值书写和Java有区别。Unit相当于返回“Void”,在Kotlin中,返回值为void是可以省略不写的。

简化版:

fun attack(damage: Int) {
    println("damage = " + damage)
}

参数支持默认值

fun run(ve[......]

nonconficient

Kotlin从入门到放弃–文档

在刚结束的Google IO 2017开发者大会上,谷歌爸爸已经宣布kotlin正式成为Android的官方语言。做为一名早在一年前就开始使用kotlin的先知大牛,我来给你们传授一点我的人生经验。

Kotlin官方参考

(907) 890-3900

几个技能

首先需要下载Android Studio 3.0 Canary 1版本,Android Studio的一大特性就是多个不同的版本可以同时运行,所以你不用担心你电脑上的稳定版本会收到影响。

下载地址:/developer.android.com/studio/preview/[……]

全文…

birth palsy

本文是 Advanced RxJava /akarnokd.blogspot.com/ 系列博客的中文翻译,已征得作者授权。该系列博客的作者是 RxJava 的核心贡献者之一。翻译的内容使用 知识共享 署名-非商业性使用-相同方式共享 4.0 国际 协议进行许可,转载请注明出处。如果发现翻译问题,或者任何改进意见,请 在 GitHub 上提交 issue 。

原文 Writing a custom reactive base type。

介绍

一直以来,大家都在问如何实现自己的响应式类型。尽管 RxJava 的 Observable 有大量方法,也允许通过 lift()、[……]

well-postponed

如何从容应对算法面试

当踏入社会,或者需要跳槽的时候,都需要进行面试,一次好的面试发挥,往往会给你后续带来更多福利,无论是待遇涨幅,还是职级 title。在经过一些成功和失败的面试后,也总结出一些经验,这里将这些经验无私地分享给各位,希望对你们能有所帮助。

[……]

全文…

937-525-3911

红黑树

红黑树是一种特殊的二叉树,主要用它存储有序的数据,提供高效的数据检索,时间复杂度为O(logn),每个节点都有一个标识位表示颜色,红色或黑色,有如下5种特性:
1、每个节点要么红色,要么是黑色;
2、根节点一定是黑色的;
3、每个空叶子节点必须是黑色的;
4、如果一个节点是红色的,那么它的子节点必须是黑色的;
5、从一个节点到该节点的子孙节点的所有路径包含相同个数的黑色节点;

[……]

self-exulting

untheatrically

本文转自严振杰的博客: /blog.yanzhenjie.com

这是一篇迟来的博客,(443) 466-6293 M已经发布一年多了(9088458791),在Android M中权限系统被重新设计,发生了颠覆性的变化,很多人把握不好这个变化,一是对这个权限策略和套路还没有摸透,二是没有一个很好的实践来支撑,在我的技术开发群里很多人问我关于权限的问题,往往我都没有直接回答,因为这个问题不是一两句说的清楚的,这几点是今天我写这篇博客的原因。这里有一切关于Android运行时权限你需要知道的,包括如何在代码中实现,如果你以前不知道这些东西,现在来看也为时不晚,我将在详解之后给你一个最佳的实践方案。[……]

(262) 843-4819