Gradle插件开发(1) - Hello world

目前的开发工具主要是在Android Studio上,对这个工具真的是又恨又爱,只能收希望它越来越好。
这几天,一直在看Gradle插件的相关的东西,希望将自己的这些学习成长的经历记录下来。由易到难,开发一个自己的插件。

准备工作

  1. Android Studio(建议3.0+)
  2. gradle 4.0+

阅读全文

numpy中的axis使用

axis

在数据统计时,我们经常会使用numpy+pandas来进行统计,有一个很有意思的问题,就是轴的问题,这个类似于数学中的x轴,y轴,如下面个的例子。

1
2
data = pd.DataFrame(np.arange(16).reshape(4,4),columns=list('abcd'))     
data

阅读全文

JNI开发笔记(2) -- Native要校验APP安全

由于使用NDK开发,可以中间的数据放入到so中,这样是的关键数据更安全。因为破解原生代码相对来说太容易,而so文件相对来说门槛较高。
我们本篇就是从安全角度来使用NDK开发,将重要的数据放入NDK中,同时将重要的加密也放入到NDK开发,这样在一定程度上可以保证APP应用的安全。

阅读全文

JNI开发笔记(1)- 入门

Android Studio 3.0 更新了很多新特性,其中对C++开发者也越来越友好。目前Android Studio默认构建工具是CMake(当然也是支持ndk-build),我们将使用Cmake来开始编写我们的Helleworld。

准备

更新我们的sdk-tool中的LLDB、CMake和NDK三个选项。

阅读全文

白话ACSCII,GBK,Unicode,UTF-8

ACSCII,GBK,Unicode,UTF-8这些名词都跟编码有关系,究竟是什么关系呢,看网上的确有很多解释,也很详尽,不过我觉得还是很有必要把我自己学习的历程记录下来。

ACSCII码

在计算机的世界是只有0和1,数据的计算,传输,保存等过程都是通过0和1,可以说0和1是组成计算机的元素。
对于最早使用计算机的美国人,为了记录a,b,c,d等这些字母,1,2,3等还有其他的符号,共收集了128个(2的7次方),于是为了更好记录就有了ASCII(American Standard Code for Information Interchange,美国信息互换标准代码,ASCⅡ)码,可以看下每个符号对应的ACSCII码。

阅读全文

数据分析--NBA哪个月的比赛最多

我是个NBA伪球迷,去打篮球很少,但是天天看球赛,什么NBA,CBA甚至连NCAA的八强赛也关注,前几天接触Python的数据分析,发现挺有意思,于是我就自己搞了一个简单的程序来分析—从96-97赛季开始,平均哪个月的NBA比赛最多。

阅读全文

(译文)手把手教你用Java实现AOP

介绍

众所周知,AOP(面向切面编程)是web框架Spring的特色功能之一。通过设置横切关注点(cross cutting concerns),AOP提供了极高的扩展性。

阅读全文

Center OS下安装常用软件

在腾讯云上买了个服务器,3年多,这也是为自己学习的投资。拿到新机器,我们需要搭常见的环境,如java,python等,中间一顿折腾,后来居然还重置了机器。今天就把周末自己折腾的结果整理下,防止有人进坑。

安装python环境

python不必多说,是各种语言(Java,Oc,sh脚本)的粘合剂,提供丰富的库,语言简洁,人生苦短,我用Python。

阅读全文

位运算妙用

位运算妙用
位运算作为最基本的计算机操作运算符,在很多时候用到绝对是很好的技巧。

异或(x or)

异或运算就是一个神器,异或有个最基本的原理就是自己异或等于0。

如result3 ^ 3 结果为0
136. 只出现一次的数字

阅读全文

top K的解题思路

很早记得,出去面试,经常有人问:最大值怎么求,对一个经过变成训练的人,或许都会解这个题目,因为最大值是我们程序员的一个最最基本的素养。其实还可以拓展就最K大的值,也就是我们常说的top K问题,最大其实就是top 1大,还有第二大,第三大的问题吧。

阅读全文