自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (14)
  • 收藏
  • 关注

翻译 FastAPI 快速上手

路径操作装饰器告诉FastAPI请求路径为使用get操作@decoratorInfo@something语法在 Python 中被称为「装饰器」。像一顶漂亮的装饰帽一样,将它放在一个函数的上方(我猜测这个术语的命名就是这么来的)。装饰器接收位于其下方的函数并且用它完成一些工作。在我们的例子中,这个装饰器告诉FastAPI位于其下方的函数对应着路径加上get操作。它是一个「路径操作装饰器@app.put()Tip您可以随意使用任何一个操作(HTTP方法)。FastAPI。

2024-02-28 21:39:30 12

原创 Docker overlay存储工作原理

一、镜像与分层一个镜像由多个分层组成。Dockerfile中写有每个分层,比如:FROM ubuntu:18.04COPY . /appRUN make /appCMD python /app/app.pydockerfile中每一行指令都会创建一个层次。每一层保留只有与前一层有差异的部分,一次次进行叠加。当你创建一个‘容器’时,顶层将会创建一个读写层。这个读写层就称之为...

2019-07-20 11:28:59 837 1

转载 100+经典Java面试题及答案解析

本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力。面向对象编程(OOP)Java是一个支持并发、基于类和面向对象的计算机编程语言。下面列出了面向对象软件开发的优点:代码开发模块化,更易维护和修改。代码复用。增强代码的可靠性和灵活性。增加代码的可理解性。面向对象编程有很多重要的特性,比如:封装,

2015-09-11 19:44:39 808

转载 Android App 性能优化实践

原文出处: mingpengfei(@stackvoid)   欢迎分享原创到伯乐头条工具Hierarchy Viewer 是 Android SDK 自带的 Layout 嵌套检查工具,以可视化的布局角度直观获取 Layout 布局设计和各种属性信息,来帮助我们完成优化布局的设计。需要注意的是,出于安全考虑 Hierarchy Viewer 只能连接Android开发版手机(

2015-09-08 14:59:34 446

原创 重构与模式--聚集

1、Collecting Parameter把Collecting Parameter对象传入不同的方法中收集数据把任何连接到result的代码进行抽取

2015-08-12 21:17:11 378

原创 重构与模式--泛化

1、Template模式父类中使用模板,子类复写特殊部分父类一次性实现了一个算法不变的部分,子类实现可变的行为通常组合使用策略模式与模板模式

2015-08-10 21:18:48 425

原创 重构与模式--简化

1、用Strategy代替条件逻辑用多个子类代替条件通过new几个子类来避免条件        其中一个策略子类:以Loan为参数

2015-08-10 17:40:47 360

原创 重构与模式--创建

1、用方法替换构造方法2、链构造函数3、用Factory封装类将面向实现改为面向接口原客户端:很多new新客户端:用了抽象工厂抽象工厂:

2015-08-10 16:30:20 425

原创 代码整洁之道--系统,并发

1、将系统的初始化与逻辑使用分开 避免延迟初始化 2、应该将构造过程添加到main过程中 3、并发把做什么和何时做分解开

2015-08-05 14:51:37 233

原创 代码整洁之道--类

1 顺序 公共静态常量 private 静态变量 private 实体变量public方法 private方法2、类的名称应该描述单一权责 3、类应该只有一个权责,只有一个修改的理由 4、内聚 类应该有少的实体变量,每个方法应该操作实体变量,则内聚性好 如果一个实体变量只有少数函数使用,则将其拆分出小类 大函数拆分出小函数,小函数拆分出小类。 5、将公共方法重构到子类中,将私有方

2015-08-05 13:54:06 371

原创 代码整洁之道--单元测试

1、测试的三个环节: 构造测试数据;操作测试数据;检验结果 2、每个测试一个断言

2015-08-05 12:53:20 275

原创 代码整洁之道--错误处理

1、使用异常而非返回码 2、先写try catch Finally3、异常分类 不太好的分类 应该打包返回异常类型 4、使用特例模式。将特例封装至特例对象,就不用catch异常了。5、别返回null值,而应该返回特例对象。

2015-08-05 11:32:58 445

原创 代码整洁之道--对象和数据结构

1、将变量私有后,不应都设置set和get将变量公之于众,而是暴露抽象接口 2 3德墨忒尔律 4、对象暴露操作,数据结构暴露数据 对象便于添加新的类型,不便于在已有的对象中添加新的行为。 数据结构反之 5、数据传送对象DTO 。bean结构 只有成员变量,get和set,没有其他方法

2015-08-05 10:42:48 428

原创 代码整洁之道--注释,格式

1、注释会撒谎。 程序员不能坚持维护注释 2、只需创建描述与注释相同的函数名即可 3、好的注释:对意图的注释;TODO注释 4、一个文件100行内 5、调用者应该放在被调用者上面 6、赋值周围加上空格 7、参数列表用空格隔开 8、加减号用空格隔开

2015-08-05 09:49:57 349

原创 代码整洁之道--函数

1、函数应该短小,最多20行每个函数的缩进不应该多于两层2、只做一件事几个步骤都在函数名下To do函数名,步骤1,步骤2。。。只做一件事的函数无法被划分成多个区段。3、每个函数语句都应在同一抽象级上。4、让每个函数后面跟着位于下一抽象层级的函数。使得代码有自顶向下的阅读顺序。

2015-08-04 21:42:09 425

原创 Android Studio中配置 Android annotations

1、导入两个jar包 2、配置全局buildbuildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.2.3' classpath 'com.neenbedankt.gradle.p

2015-07-12 19:25:04 418

转载 Material Design兼容库(Design Support Library)

导读:这个兼容库很容易和之前的 Android Support Library 22.1混淆,都是兼容库,区别是这个库多了个Design。 Android Support Library 22.1只是支持了一些基本控件的材料设计化,但是这个库更多的是对一些特效的实现,这个库和github上的很多开源项目是有很大关系的,material design的很多效果,同一种效果在github上有太多的

2015-05-31 13:33:51 767

原创 ActionBar中Fragment的状态保存

private int tabIndex;class MyTabListener implements TabListener {// 3.changed // 接收每个Tab对应的Fragment,操作 private Fragment fragment; private Fragment [] fragments ={fSet,fPlate,fCurve,fResul

2015-05-25 16:19:17 428

转载 设计模式中类的关系

原文出处: 卡奴达摩的专栏在java以及其他的面向对象设计模式中,类与类之间主要有6种关系,他们分别是:依赖、关联、聚合、组合、继承、实现。他们的耦合度依次增强。1. 依赖(Dependence) 依赖关系的定义为:对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。定义比较晦涩难懂,但在java

2015-03-29 18:29:44 327

转载 eclipse类图插件 Relo

Relo是一个帮助开发人员研究大型代码库的好工具,它能够一步步的跟踪你所展开的代码包,并快速生成类似UML的类图。1.代码分析用的:http://steeven.iteye.com/blog/370738  介绍的也就是relo啦。2.插件下载:http://d.download.csdn.net/down/997934/sbfivwsll3.安装方法:http://w

2015-03-18 16:10:35 1442

转载 用PageTransformer打造更好的动画效果

自定义PageTransformer实现个性切换动画[java] view plaincopypublic interface PageTransformer {         /**         * Apply a property transformation to the given page.         *

2015-03-16 18:08:27 861

转载 健壮且可读的安卓架构设计

自接触Android以来,我一直在寻找一种比较健壮的开发方法。譬如避免在UI线程进行IO操作,防止重复的网络请求,对重要数据进行缓存并且准确的更新这些缓存等等。当然,代码结构也要保持尽量清晰。本文并不是给你提供一个权威精准的解决方案,更多的是去探讨在灵活性、可读性和健壮性之间有着很好平衡的App的一种开发方式。一些现有的解决方案在Android的初期版本,许多人处理多任务时

2015-02-15 12:00:29 427

转载 java常用设计模式

设计模式;一个程序员对设计模式的理解:“不懂”为什么要把很简单的东西搞得那么复杂。后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把锁的模式,目的仅仅是着眼于解决现在的问题,而设计模式的“复杂”就在于它是要构造一个“万能钥匙”,目的是提出一种对所有锁的开锁方案。在真正理解设计模式之前我一直在编写“简单”的代码.这个“简

2015-02-07 21:26:44 334

转载 UML——类图

基础如先前所提到的,类图的目的是显示建模系统的类型。在大多数的 UML 模型中这些类型包括:类接口数据类型组件UML 为这些类型起了一个特别的名字:“分类器”。通常地,你可以把分类器当做类,但在技术上,分类器是更为普遍的术语,它还是引用上面的其它三种类型为好。类名类的 UML 表示是一个长方形,垂直地分为三个区,如图 1 所示。顶部区域显示类

2015-02-02 17:17:18 411

转载 IoC模式,控制反转与依赖注入

1.依赖依赖就是有联系,有地方使用到它就是有依赖它,一个系统不可能完全避免依赖。如果你的一个类或者模块在项目中没有用到它,恭喜你,可以从项目中剔除它或者排除它了,因为没有一个地方会依赖它。下面看一个简单的示例: /// /// 用户播放媒体文件 /// public class OperationMain { public

2015-01-27 21:21:05 389

原创 【笔记】Java设计模式——接口型模式、适配器模式

1、接口定义行为,不提供实现。2、类适配器适配器模式的意图是,使用不同的类所提供的服务为客户端提供接口创建physicalRocket类的子类,同时实现RocketSim接口3、对象适配器使用了委派而非继承4、JTable对数据的适配也采用对象适配器

2014-12-29 19:54:25 472

原创 【笔记】Java设计模式——绪论

1、任何模式的核心要素在于它的意图2、通过意图对模式进行分类

2014-12-29 15:08:07 355

转载 Android TV 焦点上下左右移动

第一种方法:采用Android自带的直接控制焦点上下左右的方法。这种方法的前提是必须知道每个view的id,因此在进行布局时有必须要通过view.setId(...)指定view的特定ID,然后通过view.setNextLeftView(...)等四个方法控制该view的上下左右移动后所到达的view。        第二种方法是:在一些比较复杂的Layout中,特别是涉及到在View的焦点

2014-12-24 16:37:42 4603

原创 【笔记】Java编程思想——对象的集合

1、容器类将所有对象都按Object类型处理一个容器可以放入任何对象,基本类型除外基本类型应先放入数组,数组再放入容器中2、对象数组保存的是引用,基本类型保存的是基本类型的值class Weeble{ }Weeble [] a= new Weeble[5];int[] f= new int[5];3、可在容器中使用包装类,例如Interger,Double等存放基本类型

2014-12-14 20:07:30 957

原创 【笔记】Java编程思想——类型检查

1、RTTI:运行时类型识别2、生成类的对象时才会加载该.class文件3、RTTI的形式:一、(shape);二、查询class对象来获取信息;三、instanceof4、instanceof返回一个布尔值,告诉我们对象是不是某个类型的实例if (x instanceof Dog) ((Dog)x).bark();

2014-12-14 11:09:19 363

原创 【笔记】Java编程思想—一异常处理

1、异常问题:当前环境下无法获得必要的信息来解决问题。抛出异常:从当前环境跳出到上一级环境2、异常类有两个构造器,一个默认构造器,一个字符串参数的构造器throw new NullPointerException(“t=null”)3、捕获所有异常:catch(Exception e){ }Exception 是异常类型的基类4、在catch中throw,可以把异常抛给

2014-12-13 15:26:16 373

原创 【笔记】Java编程思想—一接口与内部类

1、interface产生一个完全抽象的类,无任何实现,interface代替class使子类能够向上转型成为多种基类,实现多重继承2、接口:所有实现该接口的类看起来都像他接口被用来建立类与类之间的协议接口中的方法都是public的。3、多继承:可继承任意多个接口,可以向上转型为多个基类接口只能继承接口。4、通过继承扩展接口5、接口中放入群组常量

2014-12-11 22:27:44 474

原创 【笔记】Java编程思想—一多态

一种类型与其他类型从同一个基类导出,多态方法调用使导出类表现出区别。多态也称为动态绑定;1、让Instrument的每种子类如Wind,Strings,Brass都能使用tune方法不管导出类,让代码只与基类打交道更好为每个数组元素draw时,与类型有关的特定行为会奇迹般发生。对draw的调用是动态绑定的。draw就是多态方法调用。2、动态绑

2014-12-06 17:39:49 548

原创 【笔记】Java编程思想—一复用类

1、组合与继承2、继承会得到基类的所有字段和方法3、被继承的类中,一般将数据成员指定为private,将方法指为public。4、supersuper.scrub()将调用基版本的scrub方法5、用基类构造器初始化基类子对象创建子类对象时,先调用基类构造器,再调用导出类的构造器6、带参数的基类构造器class Game{   Game(int i){

2014-12-04 19:43:01 474

原创 安卓通过串口获得数据,步骤

1、复制jni文件夹2、复制lib文件夹3、复制android_serialport_api 文件夹4、修改 manifest文件application   android:name="android_serialport_api.sample.Application">  否则报错类型转换错误5、修改主activity主activity继承Seri

2014-12-04 09:46:50 1594

原创 【笔记】Java编程思想—一初始化与清理

1、用构造器来进行类的初始化构造器与类同名,无返回值2、方法重载:每个重载的方法都必须有独一无二的参数类型列表3、this:在方法内部获得当前对象的引用。this只能在方法内部使用可在构造器中调用构造器。this只能调用一个构造器,不能两个。必须将构造器置于最起始处FLower(){this(“hi”,47);}可解决参数名和成员变量重名问题。 this.s=s

2014-12-02 10:27:49 419

原创 【笔记】Java编程思想—一控制程序流程

1、操作符(加减乘除幅值)操作符只能操作基本类型=、==、!=能操作所有对象,但是尽量不要对对象赋值。避免别名问题。String支持+和+=

2014-12-01 19:18:07 391

原创 【笔记】Java编程思想—一切都是对象

1、用引用(C中的指针)来操纵对象String s;只是引用,不是对象应该在创建引用的同时进行初始化String s = “asdf”;或String s = new String (“asdf”);2、静态存储:static(在内存中固定的位置),对象的某个元素是程序运行时一直存在的数据常量存储:通常直接存放在程序代码内部3、基本类型(如int,char,byte)存

2014-11-29 16:04:37 441

原创 【笔记】Think in Java 对象导论

1、类,实际上就是一个数据类型。2、要获取对象,就必须产生对对象的请求。这些请求由对象的接口(interface)所定义Light lt =new Light();类型 引用 创建新对象lt. on();对象名称 消息请求3、对象是服务的提供者4、类只暴露必要的部分,隐藏其他的部分。将实现隐藏起来可以减少bug。5、良好的类分离的接口和实现,用publi

2014-11-25 10:52:31 523

原创 关于ActionBar Tab与ListFragment的结合

public void onTabSelected(Tab tab, FragmentTransaction ft) {ft.replace(R.id.main_titles, fragment, null);}

2014-11-16 21:50:45 506

jdk1.7.0_67-cloudera

jdk1.7.0_67-cloudera Extract the JDK to /usr/java/jdk-version; for example /usr/java/jdk.1.7.0_nn or /usr/java/jdk.1.8.0_nn, where nn is a supported version.

2020-04-07

elasticsearch-7.6.0-x86_64.part2.rar

Elasticsearch 是一个分布式的开源搜索和分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。Elasticsearch 在 Apache Lucene 的基础上开发而成

2020-03-03

elasticsearch-7.6.0-x86_64.part1.rar

Elasticsearch 是一个分布式的开源搜索和分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。Elasticsearch 在 Apache Lucene 的基础上开发而成

2020-03-03

kibana-7.6.0-x86_64.part2.rar

kibana-7.6.0-x86_64.part2.rar Kibana 是为 Elasticsearch设计的开源分析和可视化平台。你可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互

2020-03-03

kibana-7.6.0-x86_64.part1.rar

kibana-7.6.0-x86_64.part1.rar Kibana 是为 Elasticsearch设计的开源分析和可视化平台。你可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互

2020-03-03

Android编程实战 (Erik Hellman) 全

Android Programming: Pushing the Limits 本书适合有一定Android基础,但想更进一步提升自己的Android开发人员。 本书从自定义视图、多点触摸手势讲起,到集成在线Web服务,进一步扩展到探索地理围栏和活动识别等新技术。作为一名经验丰富的Android工程师,Erik Hellman通过本书深入剖析了一些专业技巧、诀窍、容易绊倒开发者的陷阱,以及一些鲜为人知的技术。

2015-07-19

数据结构与算法分析Java语言描述(第2版)

数据结构与算法分析Java语言描述(第2版),很经典哒,免费分享!

2015-03-18

屏幕取色工具

拖拽可取到屏幕任意像素色彩的16进制值与RGB值

2015-03-18

串口调试助手

串口调试助手,可使PC与串口设备间进行通讯

2015-03-18

串口通讯jar包 comm.jar

用于Java工程的串口通讯的包 comm.jar

2015-03-18

Android编程权威指南 中文版 全

本书既注重基础理论又注重实战应用 《Android编程权威指南》共37章,详细介绍了GeoQuiz、HelloMoon、DragAndDraw等8个Android应用。这些应用的难易程度不一,最复杂的CriminalIntent应用占用了13章的篇幅。通过这些精心设计的应用,读者可掌握很多重要的理论知识和开发技巧,获得最前沿的开发经验。

2015-02-12

Android开发三剑客 UML、模式与测试 源码

王家林编写的《Android开发三剑客 UML、模式与测试 源码》一书中的所有资源与源码

2015-01-27

Android应用案例开发大全第二版 源码(7至12章)

吴亚峰 编写的《Android应用案例开发大全第二版》一书中第7至第12章源码

2015-01-27

Google官方Android培训文档(中文版)

Google Android团队在2012年的时候开设了Android Training板块,这些课程是学习Android应用开发的绝佳资料。 我们通过Github发起开源协作翻译的项目,完成中文版的输出,欢迎大家传阅学习! https://github.com/kesenhoo/android-training-course-in-chinese

2014-12-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除