摘要:
适配器模式 类似于中间件的功能,对不同情况做适配。 定义: 将一个类的接口转换成客户希望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 功能: 进行转换匹配,目的是复用已有的功能,而不是来实现新的接口。在适配器里实现功能,这种适配器称为智能适配器。 优点: 更好的
阅读全文
posted @ 2018-12-07 14:14
anobscureretreat
阅读(150)
推荐(0)
摘要:
责任链模式 这里针对的是请求,从上层向下层传递。 ##模式介绍 ###模式的定义 一个请求沿着一条“链”传递,直到该“链”上的某个处理者处理它为止。 ###模式的使用场景 一个请求可以被多个处理者处理或处理者未明确指定时。
阅读全文
posted @ 2018-12-07 14:12
anobscureretreat
阅读(124)
推荐(0)
摘要:
观察者模式 类似于回调函数。 首先在Android中,我们往ListView添加数据后,都会调用Adapter的notifyDataChanged()方法,其中使用了观察者模式。 当ListView的数据发生变化时,调用Adapter的notifyDataSetChanged函数,这个函数又会调用D
阅读全文
posted @ 2018-12-07 14:10
anobscureretreat
阅读(164)
推荐(0)
摘要:
#简单工厂 即对象的封装。 ###接口 接口是一种特殊的抽象类,跟一般的抽象类相比,接口里的所有方法都是抽象方法,接口里的所有属性都是常量。也就是说接口里面只有方法定义没有任何方法实现。 接口的思想是"封装隔离" ###简单工厂 示例代码: https://github.com/GeniusVJR/
阅读全文
posted @ 2018-12-07 14:09
anobscureretreat
阅读(152)
推荐(0)
摘要:
策略模式 从策略的角度对算法进行封装。 ##模式的定义 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 注:针对同一类型操作,将复杂多样的处理方式分别开来,有选择的实现各自特有的操作。 ##模式的使用场景 针对同一类型问题的
阅读全文
posted @ 2018-12-07 14:07
anobscureretreat
阅读(132)
推荐(0)
摘要:
#常见的面向对象设计原则 高层模块不应该依赖底层模块,二者都应该依赖于抽象。 抽象不应该依赖于具体实现,具体实现应该依赖于抽象。 面向接口编程 优先使用组合,而非继承 一个类需要的数据应该隐藏在类的内部 类之间应该零耦合,或者只有传导耦合,换句话说,类之间要么没关系,要么只使用另一个类的接口提供的操
阅读全文
posted @ 2018-12-07 14:05
anobscureretreat
阅读(143)
推荐(0)
摘要:
#外观模式 即从外观相似的角度进行分装 ###定义 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 ###外观模式的目的 不是给子系统添加新的功能接口,而是为了让外部减少与子系统内多个模块的交互,松散耦合,从而让外部能够更简单的使用子
阅读全文
posted @ 2018-12-07 14:04
anobscureretreat
阅读(127)
推荐(0)
摘要:
#原型模式 即对象的拷贝。 ##模式介绍 ###模式的定义 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 模式的使用场景 ##Android源码中的模式实现 Intent中使用了原型模式 ##优点与缺点 ###优点 原型模式是在内存二进制流的拷贝,要比直接 new 一个对象性能好很
阅读全文
posted @ 2018-12-07 13:56
anobscureretreat
阅读(170)
推荐(0)
摘要:
单例模式 即只能实例化一个对象。 ###定义 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 Singleton:负责创建Singleton类自己的唯一实例,并提供一个getInstance的方法,让外部来访问这个类的唯一实例。 饿汉式: private static Singleton u
阅读全文
posted @ 2018-12-07 13:47
anobscureretreat
阅读(129)
推荐(0)
摘要:
#代理模式 类似于临时对象。 ##模式介绍 代理模式是对象的结构模式。代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。 ##模式的使用场景 就是一个人或者机构代表另一个人或者机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间
阅读全文
posted @ 2018-12-07 13:46
anobscureretreat
阅读(133)
推荐(0)
摘要:
#Builder模式 即一种封装。 ##模式介绍 ###模式的定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 ###模式的使用场景 ###Android源码中的模式实现 在Android源码中,我们最常用到的Builder模式就是AlertDialog.Builde
阅读全文
posted @ 2018-12-07 13:45
anobscureretreat
阅读(143)
推荐(0)
摘要:
Linux下的IPC几种通信方式
阅读全文
posted @ 2018-12-07 13:39
anobscureretreat
阅读(645)
推荐(0)
摘要:
TCP与UDP 面向报文的传输方式是应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。因此,应用程序必须选择合适大小的报文。若报文太长,则IP层需要分片,降低效率。若太短,会是IP太小。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。这也就是说,应用层交给UD
阅读全文
posted @ 2018-12-07 13:26
anobscureretreat
阅读(177)
推荐(0)
摘要:
#Http协议 默认端口:80 ##Http协议的主要特点 ###非持续性和持续性 HTTP1.0默认非持续性;HTTP1.1默认持续性 ####持续性 浏览器和服务器建立TCP连接后,可以请求多个对象 ####非持续性 浏览器和服务器建立TCP连接后,只能请求一个对象 ###非流水线和流水线 类似
阅读全文
posted @ 2018-12-07 13:08
anobscureretreat
阅读(227)
推荐(0)
摘要:
Java源文件 res/menu/main.xml res/layout/activity_main.xml
阅读全文
posted @ 2018-12-06 21:37
anobscureretreat
阅读(1737)
推荐(0)
摘要:
其中 requestWindowFeature(Window.FEATURE_NO_TITLE)的意思就是不在活动中显示 标题栏,注意这句代码一定要在 setContentView()之前执行,不然会报错。 其中 requestWindowFeature(Window.FEATURE_NO_TITL
阅读全文
posted @ 2018-12-06 20:34
anobscureretreat
阅读(162)
推荐(0)
摘要:
Android 大致可以分为四层架构 1. Linux 内核层 Android 系统是基于 Linux 2.6 内核的,这一层为 Android 设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi 驱动、电源管理等。 2. 系统运行库层 这一层通过一些 C/C++
阅读全文
posted @ 2018-12-06 19:47
anobscureretreat
阅读(185)
推荐(0)
摘要:
然后选中 LogCat,点击 OK,这样你就成功将 LogCat 添加到 Eclipse 中了。
阅读全文
posted @ 2018-12-05 23:51
anobscureretreat
阅读(348)
推荐(0)
摘要:
比如在 strings.xml 中找到的 Hello world!字符串,我们有两种方式可以引用它: 1. 在代码中通过 R.string.hello_world 可以获得该字符串的引用; 2. 在 XML 中通过@string/hello_world 可以获得该字符串的引用。 基本的语法就是上面两种方式,其中 string 部分是可以替换的,如果是引用的图片资源 就可以替换成 drawa...
阅读全文
posted @ 2018-12-05 23:48
anobscureretreat
阅读(212)
推荐(0)
摘要:
所有以drawable开头的文件夹都是用来放图片的 所有以values开头的文件夹都是用来放字符串的 layout 文件夹是用来放布局文件的 menu 文件夹是用来放菜单文件的。之所以有这么多 drawable开头的文件夹,其实主要是为了让程序能够兼容更多的设备 在制作程序的时候最好能够给同一张图片提供几个不同分辨率的副本,分别放 在这些文件夹下,然后当程序运行的时候会自动根据当前...
阅读全文
posted @ 2018-12-05 23:45
anobscureretreat
阅读(426)
推荐(0)
摘要:
1. src src 目录是放置我们所有 Java 代码的地方,它在这里的含义和普通 Java 项目下的 src 目录是完全一样的 2. gen 这个目录里的内容都是自动生成的,主要有一个 R.java 文件,你在项目中添加的任 何资源都会在其中生成一个相应的资源 id。这个文件永远不要手动去修改它。 3. assets 这个目录用得不多,主要可以存放一些随程序打包的文件,在你的程序运行时可...
阅读全文
posted @ 2018-12-05 23:32
anobscureretreat
阅读(190)
推荐(0)
摘要:
硬盘型号 sudo hdparm -i /dev/sda |grep "Model" 硬盘数量大小 sudo fdisk -l |grep "Disk /dev/sd" 每个内存大小 sudo dmidecode -t memory |grep -A16 "Memory Device$" |grep
阅读全文
posted @ 2018-12-05 12:46
anobscureretreat
阅读(502)
推荐(0)
摘要:
Server部分: #!/usr/bin/env python import sys import os import rospy #from beginner.srv import * from beginner.srv import AddTwoInts def add_two_ints_client(x,y): rospy.wait_for_service('add_two_in...
阅读全文
posted @ 2018-12-05 12:37
anobscureretreat
阅读(240)
推荐(0)
摘要:
sudo apt-get install ros-indigo-map-server
阅读全文
posted @ 2018-12-05 12:36
anobscureretreat
阅读(572)
推荐(0)
摘要:
class Dog(object): __first_new = True __instance = None def __new__(cls): if cls.__first_new: cls.__instance = object.__new__(cls) ...
阅读全文
posted @ 2018-12-05 12:33
anobscureretreat
阅读(154)
推荐(0)
posted @ 2018-12-05 12:31
anobscureretreat
阅读(232)
推荐(0)
posted @ 2018-12-05 12:11
anobscureretreat
阅读(1559)
推荐(0)
摘要:
nohup java -jar /xxx/xxx/xxx.jar >/dev/null 2>&1 & 关键在于最后的 >/dev/null 2>&1 部分,/dev/null是一个虚拟的空设备(类似物理中的黑洞),任何输出信息被重定向到该设备后,将会石沉大海 >/dev/null 表示将标准输出信息重定向到"黑洞" 2>&1 表示将标准错误重定向到标准输出(由于标准输出已经定向到“...
阅读全文
posted @ 2018-12-04 20:50
anobscureretreat
阅读(503)
推荐(0)
摘要:
sudo apt-get install ros-indigo-robot-pose-publisher
阅读全文
posted @ 2018-12-04 19:11
anobscureretreat
阅读(2464)
推荐(0)
摘要:
Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. Traceback (most recent call last): File "/opt/ros/indigo/...
阅读全文
posted @ 2018-12-04 19:07
anobscureretreat
阅读(1148)
推荐(0)
摘要:
Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. Traceback (most recent call last): File "/opt/ros/indigo/...
阅读全文
posted @ 2018-12-04 19:04
anobscureretreat
阅读(1897)
推荐(0)
摘要:
sudo apt-get updatesudo apt-get install nginx
阅读全文
posted @ 2018-12-04 18:59
anobscureretreat
阅读(157)
推荐(0)
摘要:
/home/xxx/ros_workspace/src/bp_protocol_bridge/protospot/src/msgsrvmgr.cpp:5:37: fatal error: kdl_conversions/kdl_msg.h: No such file or directory #include ^ ...
阅读全文
posted @ 2018-12-04 17:33
anobscureretreat
阅读(240)
推荐(0)
摘要:
/home/xxx/ros_workspace/src/bp_protocol_bridge/protospot/src/msgsrvmgr.cpp:4:26: fatal error: kdl/frames.hpp: No such file or directory #include ^ compilation terminated...
阅读全文
posted @ 2018-12-04 17:30
anobscureretreat
阅读(842)
推荐(0)
摘要:
CMake Warning at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:76 (find_package): Could not find a package configuration file provided by "camera_info_manager" with any of the following...
阅读全文
posted @ 2018-12-04 17:09
anobscureretreat
阅读(2941)
推荐(0)
摘要:
-- Using these message generators: gencpp;genlisp;genpy -- checking for module 'yaml-cpp' -- package 'yaml-cpp' not found CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:283 (mess...
阅读全文
posted @ 2018-12-04 17:01
anobscureretreat
阅读(1057)
推荐(0)
摘要:
-- ==> add_subdirectory(bp_fusion) -- checking for module 'orocos-bfl' -- package 'orocos-bfl' not found CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:283 (message): A require...
阅读全文
posted @ 2018-12-04 16:53
anobscureretreat
阅读(2188)
推荐(0)
摘要:
#如果没有发现ssh进程说明ssh没有启动 username@hostname:~$ ps -e | grep ssh #在服务端启动服务username@hostname:~$ service ssh startssh: unrecognized service #在本机远程到服务端bogon:~
阅读全文
posted @ 2018-12-04 16:48
anobscureretreat
阅读(1736)
推荐(1)
posted @ 2018-12-04 16:39
anobscureretreat
阅读(1403)
推荐(0)
posted @ 2018-12-04 16:24
anobscureretreat
阅读(1153)
推荐(0)