全栈工程师体能备战--知识面(20--30)
常常在系统引导装入时启动,在系统关闭时终止。linux系统启动时会启动多守护进程,大多数服务器都是用守护进程实现的。
它们没有控制终端,不能直接和用户交互,不受用户登陆、注销影响,一直运行着。
守护进程完成许多系统任务.有些书籍和资料也把守护进程称作:“服务”(service)。通常采用以d结尾的名字。
22.Xinetd从守护进程的概念可以看出,对于系统所要通过的每一种服务,都必须运行一个监听某个端口连接所发生的守护进程,
这通常意味着资源浪费。
为了解决这个问题,Linux引进了"网络守护进程服务程序"的概念。xinted(extended InterNET daemon)
xinetd同时监听多个指定的端口,接受用户请求时,根据请求端口,启动不同的网络服务进程来处理这些用户请求。
可以把xinetd看做一个管理启动服务的管理服务器,它决定把一个客户请求交给哪个程序处理,然后启动相应的守护进程。
xinetd无时不在运行并监听它所管理的所有端口上的服务。
当某个要连接它管理的某项服务的请求到达时,xinetd就会为该服务启动合适的服务器。
23.Android自定义控件开发自定义控件的步骤:
1、了解View的工作原理
2、 编写继承自View的子类
3、 为自定义View类增加属性
4、 绘制控件
5、 响应用户消息
6 、自定义回调函数
http://www.cnblogs.com/0616--ataozhijia/p/4003380.html
24.Java静态方法java静态方法与非静态方法有什么区别?
静态方法可以直接用类名点出来方法,而普通方法需要创建类的对象后才能调用!
静态方法是使用公共内存空间的,就是说所有对象都可以直接引用,不需要创建对象再使用该方法。
例如,我创建一个类,里面有一个静态方法:
class Test{ public static int z(int xx,int yy){ return xx+yy; public int zz(int xx,int yy){ return xx+yy; }
然后在含有main方法的类中使用这个类时,对与以上非静态和静态方法的引用方式是不同的,如下:
import Test; public class mainClass{ int sum; public static void main(String args[]){ sum=Test.z(1,2); //直接用 类.方法或者属性就可以使用该方法或属性。 System.out.println(sum); Test t=new Test(); sum=t.zz(1,2); //因为zz不是静态方法,所以只能只能用Test类创建一个t对象,然后调用该对象的方法。 System.out.println(sum); }
25.蓝牙uuid
关于 蓝牙UUID ——UUID是“Universally Unique Identifier”的简称,通用唯一识别码的意思。对于蓝牙设备,每个服务都有通用、独立、唯一的UUID与之对应。也就是说,在同一时间、同一地点,不可能有两个相同的UUID标识的不同服务。
// UUID号,表示不同的数据协议 private final String UUID_STR = "00001101-0000-1000-8000-00805F9B34FB";
26.内存映射文件
内存映射文件,是由一个文件到一块内存的映射。Win32提供了允许应用程序把文件映射到一个进程的函数 (CreateFileMapping)。内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,内存文件映射的物理存储器来自一个已经存在于磁盘上的文件,而且在对该文件进行操作之前必须首先对文件进行映射。使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行I/O操作,使得内存映射文件在处理大数据量的文件时能起到相当重要的作用。
Linux下为mmap函数。
27.AfinalAfinal是一个android的ioc,orm框架,内置了四大模块功 能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的 方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载bitmap图片,而无需考虑oom等问题。通过finalDB模块,我们一行 代码就可以对android的sqlite数据库进行增删改查。通过FinalHttp模块,我们可以以ajax形式请求http数据。
目前Afinal主要有四大模块:
FinalDB模块:android中的orm框架,一行代码就可以进行增删改查。支持一对多,多对一等查询。
FinalActivity模块:android中的ioc框架,完全注解方式就可以进行UI绑定和事件绑定。无需findViewById和setClickListener等。
FinalHttp模块:通过httpclient进行封装http数据请求,支持ajax方式加载。
FinalBitmap模块:通过FinalBitmap,imageview加载bitmap的时候无需考虑bitmap加载过程中出现 的oom和android容器快速滑动时候出现的图片错位等现象。FinalBitmap可以配置线程加载线程数量,缓存大小,缓存路径,加载显示动画 等。FinalBitmap的内存管理使用lru算法,没有使用弱引用(android2.3以后google已经不建议使用弱引 用,android2.3后强行回收软引用和弱引用,详情查看android官方文档),更好的管理bitmap内存。FinalBitmap可以自定义 下载器,用来扩展其他协议显示网络图片,比如ftp等。同时可以自定义bitmap显示器,在imageview显示图片的时候播放动画等(默认是渐变动 画显示)。
IOC: 控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。
ORM: 对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。
面经手册 · 第1篇《认知自己的技术栈盲区》 讲到技术盲区,先说说我自己。几年前我也是从传统行业跨到互联网,同时还是从C#开发转到Java开发,与其说转不如说是回归Java。从上大学到毕业实习,我都是做Java的,但入职第一家公司,由于技术积累以及需要用C#与中继器、IO板卡、摄像头等进行交互,以及开发的软件是部署到客户端的,所以整套服务都是C#与少部分的C语言进行编写。
开发者必备:职业发展黄金手册 你是否有类似这样的问题——“天天写代码的程序员,怎么成为技术大牛,开始写技术代码?”今天,阿里资深无线开发专家李运华,系统梳理了自己的思考和理解,希望帮助更多同学少走一些弯路。
跳槽阿里基本上都分为两个阶段的提问。第一个阶段是主语言本身以及它的高级特性,第二个阶段是讲述自己的项目,并在中间穿插着问题。正文才是重点...... 面试的时候一般面试官的问题都是环环相扣,逐渐深入的,这点在下面大家可以更明显的感受出来。
相关文章
- 18·灵魂前端工程师养成-JS语法入门
- 16·灵魂前端工程师养成-JavaScript内存图
- 前端工程师vscode必备插件(20个)
- 一名数据分析师到算法工程师的转岗经历
- 高并发服务优化篇:JVM--工程师进阶的必经之路
- 未来的高级算法工程师需要具备什么技能?
- 前端工程师leetcode算法面试--二分搜索算法(上)
- 思科和华为网络设备命令对比,多维度,建议网络工程师收藏!
- Linux工程师面试:问题与答案(linux工程师面试题目)
- 拥抱Linux:崭新的运维工程师体验(linux系统运维工程师)
- [红帽软件] 招聘linux 系统工程师
- 《30天打造安全工程师》第14天:sniffer,今天开始说它了
- 《30天打造安全工程师》第10天:说SQL
- Linux系统工程师:实现计算机最高效能!(linux系统工程师)
- 深入学习Linux,成功扮演运维工程师并管理项目(linux运维工程师项目)
- Linux运维工程师简历模板:突出职业能力(linux运维工程师简历模板)