<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[菜鸟实验室]]></title><description><![CDATA[真的很一般]]></description><link>https://blog.youkuaiyun.com/SelfLearner</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SelfLearner]]></copyright><item><title><![CDATA[linux笔记( 更新中)]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/78203135</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/78203135</guid><author>SelfLearner</author><pubDate>Wed, 01 Nov 2017 17:03:29 +0800</pubDate><description><![CDATA[Linux 下修改 root 密码方法

passwd root




查看服务

 /etc/services 
 /etc/init.d/  启动脚本处    
 /etc/* ：各服务各自的配置文件
 service --status-all 查看所有服务]]></description><category></category></item><item><title><![CDATA[Bug 记事本]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/78038378</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/78038378</guid><author>SelfLearner</author><pubDate>Wed, 20 Sep 2017 11:00:03 +0800</pubDate><description><![CDATA[因为应用加了persistent，优先级提高，所以该命令没能杀死进程，导致应用的单例数据没变，测试出错]]></description><category></category></item><item><title><![CDATA[JavaScript 笔记本]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/77774442</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/77774442</guid><author>SelfLearner</author><pubDate>Fri, 01 Sep 2017 16:18:40 +0800</pubDate><description><![CDATA[HTML CSS JS 介绍
HTML是网页内容的载体。内容就是网页制作者放在页面上想要让用户浏览的信息，可以包含文字、图片、视频等。
CSS样式是表现。就像网页的外衣。比如，标题字体、颜色变化，或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。
JavaScript是用来实现网页上的特效效果。如：鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有焦点新闻（新闻图片）的轮]]></description><category></category></item><item><title><![CDATA[Common sense for server]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/76691326</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/76691326</guid><author>SelfLearner</author><pubDate>Thu, 24 Aug 2017 14:11:17 +0800</pubDate><description><![CDATA[Common sense for server





java web


JDBC 是 Java 对关系型数据库进行访问的最主要的 API
Servlet 是 Server Applet 的缩写，也称为服务端小程序
Spring 是一个开源框架，也是一个基于控制反转、依赖注入的轻量级容器，它的出现大大简化了传统的 J2EE 开发模式。
Struts2框架是MVC流程框架，适合分层开发。框架应]]></description><category></category></item><item><title><![CDATA[记录一些kotlin的用法]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/75287090</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/75287090</guid><author>SelfLearner</author><pubDate>Tue, 18 Jul 2017 14:12:03 +0800</pubDate><description><![CDATA[操作符Elvis 操作符 ?:val a = b?.length ?: -1安全转换 as？
转型不成功返回 null
null safetyvar a : String? = null
a?.length //a 为null 则pass，不为null 则调用
a!!.length// 抛异常
类型判断符 is范围操作符 : infor(i in 1..5 step 1){}
for (i in 5]]></description><category></category></item><item><title><![CDATA[经典蓝牙的配置文件攻略]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/73546603</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/73546603</guid><author>SelfLearner</author><pubDate>Wed, 21 Jun 2017 14:07:13 +0800</pubDate><description><![CDATA[经典蓝牙的配置文件攻略1. 介绍这里讲讲经典蓝牙的规范使用，平时我们使用蓝牙电话、语音、文件传输等等都是建立在蓝牙技术联盟，一个以制定蓝牙规范，与推动蓝牙技术为宗旨的跨国组织，所建立的规范中使用的，根据谷歌的基本api文档启动蓝牙，根据不同的需求建立相应的协议连接就ok啦！ 
2. 源码结构 (API 22)如果想了解具体的蓝牙源码，可以到以下标记的源码位置去一探究竟： 
-  蓝牙协议所在：/pa]]></description><category></category></item><item><title><![CDATA[Activity和Fragment回调研究]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/71200978</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/71200978</guid><author>SelfLearner</author><pubDate>Tue, 09 May 2017 15:10:54 +0800</pubDate><description><![CDATA[Activity和Fragment回调研究Activity和Fragment回调研究
所有回调
Activity
Fragment
调用示例
没有加回退栈
加了回退栈反注册没了啊啊
所有回调Activity
onCreate   : 第一次创建的时候执行
onContentChanged : 当Activity的布局改动时，即setContentView()或者addContentView()方法执]]></description><category></category></item><item><title><![CDATA[【持续更新】简单记录一下常用的设计模式]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/70676190</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/70676190</guid><author>SelfLearner</author><pubDate>Thu, 27 Apr 2017 17:18:09 +0800</pubDate><description><![CDATA[设计模式
单例模式
Builder模式
原型模式
工厂方法模式
抽象工厂模式
策略模式
状态模式
责任链模式
解释器模式
命令模式
观察者模式
设计模式单例模式
Double Check Lock
public static Singleton getInstance(){
  if(mInstance == null){
    synchronized(Singleton.class){]]></description><category></category></item><item><title><![CDATA[【不断更新】python脚本常用的函数！]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/70140448</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/70140448</guid><author>SelfLearner</author><pubDate>Wed, 12 Apr 2017 17:24:55 +0800</pubDate><description><![CDATA[python 脚本常用函数
文件操作
字符串操作
列表操作python 脚本常用函数这里记录一些脚本常用的函数文件操作
路径相关
os.chdir(dst_dir)               #改变当前目录
os.path.basename()              #去掉目录路径, 返回文件名 
os.path.splitext()              #返回 (filename, e]]></description><category></category></item><item><title><![CDATA[【cs基础】如何判断算法的好坏]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/68944799</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/68944799</guid><author>SelfLearner</author><pubDate>Sat, 01 Apr 2017 15:14:05 +0800</pubDate><description><![CDATA[算法复杂度
平时我们说算法的好坏，排除一些软件和硬件上的限制，怎么去衡量这个算法运行的更快呢？这就是Big O notation的作用啦！
Big O notation
Big O notation是一种描述述函数渐进行为的理论，说白了，表达算法的增长趋势，一个算法会渐渐走向快速还是缓慢的表达方式。
这种渐进表达有三种记号来表示：O、 Θ 和 Ω 记号法。Θ 记号渐进地给出了一个函数的上界和下界，当]]></description><category></category></item><item><title><![CDATA[差分升级的攻克！（主要是so库的生成和使用啦）]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/68490777</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/68490777</guid><author>SelfLearner</author><pubDate>Thu, 30 Mar 2017 17:44:40 +0800</pubDate><description><![CDATA[差分升级
一  什么是差分升级
二 差分升级相关概念
差分工具
bsdiff 生成补丁
bspatch 合成apk
创建so库
使用so库差分升级一.  什么是差分升级
  将已安装的apk和最新的apk进行二进制对比，得到差分包。用户升级的时候只需要下载差分包，在本地使用差分包和已安装的apk合成新的apk安装即可。
二. 差分升级相关概念差分工具
bsdiff
bspatch
Courgette]]></description><category></category></item><item><title><![CDATA[【cs基础】浮点数的存储]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/67640059</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/67640059</guid><author>SelfLearner</author><pubDate>Wed, 29 Mar 2017 10:06:05 +0800</pubDate><description><![CDATA[浮点数的存储为什么讨论浮点数
计算机只能识别二进制，整数转化为二进制没有任何问题。
但是！浮点数有小数点, 计算机怎么识别！必然要有个规范来规定计算机怎么识别吧！这个规范就是国际标准IEEE 754.
浮点数的识别规范
标准规定，任何浮点数的表现形式为 V= （-1）^S x M x 2^E
符号位S
尾数位M
指数位E
32bit : 符号位1，指数位8，尾数位23
64bit : 符号位1，指数]]></description><category></category></item><item><title><![CDATA[Android日志系统概述]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/65630290</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/65630290</guid><author>SelfLearner</author><pubDate>Fri, 24 Mar 2017 17:49:44 +0800</pubDate><description><![CDATA[一 Log的使用
二 Log是怎么产生的
log的定义
loggerh
loggerc
log的初始化
log的读取
log的写入
Logcat的输出
打开与初始化日志设备
读取与输出日志设备一. Log的使用
平常写代码，少不了log的使用，一般应用层的开发主要使用java封装的logger访问接口 (frameworks/base/core/java/android/util/Log.java)]]></description><category></category></item><item><title><![CDATA[醉了，删除文件夹失败的原因竟是它.....]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/65446930</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/65446930</guid><author>SelfLearner</author><pubDate>Thu, 23 Mar 2017 18:10:29 +0800</pubDate><description><![CDATA[今天测试给了个bug，查到程序文件目录删除失败。 
回头复现的时候怎么都复现不了，但log不会骗人。 
最后发现！测试时开着adb shell ，访问着该文件夹没有退出，当然删除文件夹失败！orz]]></description><category></category></item><item><title><![CDATA[学会shell脚本]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/64920510</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/64920510</guid><author>SelfLearner</author><pubDate>Wed, 22 Mar 2017 15:53:53 +0800</pubDate><description><![CDATA[shell是什么    Shell 是一个用C语言编写的程序，它是用户使用Linux的桥梁。
    Shell既是一种命令语言，又是一种程序设计语言，这个应用程序提供了一个界面，用户通过这个界面访问操作系统内核的服务。
shell脚本是什么shell是为shell编写的脚本程序。
- Bash是大多数Linux系统默认的Shell。#! 告诉系统其后路径所指定的程序即是解释此脚本文件的Shell程]]></description><category></category></item><item><title><![CDATA[【cs基础】C语言重点]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/64128308</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/64128308</guid><author>SelfLearner</author><pubDate>Mon, 20 Mar 2017 17:49:09 +0800</pubDate><description><![CDATA[主要参考菜鸟教程： 
http://www.runoob.com/cprogramming/c-data-types.html程序结构
预处理指令cpp
函数
变量
语句&表达式
注释
基本语法
token， C 程序由各种令牌组成，令牌可以是关键字、标识符、常量、字符串值，或者是一个符号。
注释 /* 我的第一个 C 程序 */
数据类型
算术类型整数型char(1 Byte) , unsigne]]></description><category></category></item><item><title><![CDATA[【cs基础】编译器的普及]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/62884708</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/62884708</guid><author>SelfLearner</author><pubDate>Fri, 17 Mar 2017 15:40:02 +0800</pubDate><description><![CDATA[编译器是什么编译器就是一种翻译程序，一般是将高级语言编写的源代码转化成汇编或者机器码。说白了就是把我们用python,java等各种语言写的程序,翻译成计算机能看懂的二进制指令数据,以便运行.编译流程
  source –> 词法分析 == 各种记号Token stream 
              –> 语法分析 == 语法树 
              –> 语义分析 == 优化后的语法树]]></description><category></category></item><item><title><![CDATA[【cs基础】CPU是怎样执行代码的]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/62884042</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/62884042</guid><author>SelfLearner</author><pubDate>Fri, 17 Mar 2017 11:10:53 +0800</pubDate><description><![CDATA[基础概念
程序是指令和数据的组合体，被复制到内存才能运行。
内存地址是保存指令和数据的场所，通过地址标记。
CPU 能识别和执行的只有机器语言。
CPU 结构CPU 内部由寄存器、控制器、运算器和时钟四个部分构成，由电流信号相互连通 
- 寄存器： 保存指令、数据 
- 控制器： 读取内存输入寄存器，控制指令流转 
- 运算器： 运算寄存器中的数据 
- 时钟：发出计时信号，代表运算速度寄存器程序是]]></description><category></category></item><item><title><![CDATA[你应该知道的android单元测试]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/62884014</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/62884014</guid><author>SelfLearner</author><pubDate>Fri, 17 Mar 2017 11:09:35 +0800</pubDate><description><![CDATA[介绍
setup：即new 出待测试的类，设置一些前提条件
执行动作：即调用被测类的被测方法，并获取返回结果
验证结果：验证获取的结果跟预期的结果是一样的
Junit4java测试框架
  testCompile ‘junit:junit:4.12’ 
   @Before 
   @Test 
  (expected = IllegalArgumentException.class) 验证是否抛该]]></description><category></category></item><item><title><![CDATA[Rx常用操作符]]></title><link>https://blog.youkuaiyun.com/SelfLearner/article/details/62883959</link><guid>https://blog.youkuaiyun.com/SelfLearner/article/details/62883959</guid><author>SelfLearner</author><pubDate>Fri, 17 Mar 2017 11:08:03 +0800</pubDate><description><![CDATA[常用操作符Observable.from()
它接收一个集合作为输入，然后每次输出一个元素给subscriber,将集合依次发送，
map
用来把把一个事件转换为另一个事件的
flatmap
接收一个Observable的输出作为输入，同时输出另外一个Observable
concatmap
类似flatmap，区别是遵循事件的顺序
switchmap
observable发送新数据时,旧数据订阅还]]></description><category></category></item></channel></rss>