- 博客(542)
- 资源 (11)
- 收藏
- 关注
翻译 Python的Numpy概要介绍
Numpy是Python中用于科学计算的基础包。它一个Python类库,其中提供了多维数组对象,及其各种派生对象(如掩码数组、矩阵等),以及基于这些数组对象各种快速操作的方法,包括数学计算、逻辑处理、图形操作、排序、选择、输入/输出(I/O),离散傅里叶变换,基本的线性代数、基本的统计操作,随机模拟等。Numpy包的核心是ndarray对象,它是对同类型数据的多维数组的封装,同时为了执...
2018-12-20 15:38:06 765
翻译 Spring的核心技术(八)---依赖注入的示例(1)
下面的示例使用了基于XML的配置元数据来配置基于Setter方法的依赖注入。这只是Spring的XML配置文件所指定的Bean定义的一小部分。 id="exampleBean" class="examples.ExampleBean"> name="beanOne"> bean="anotherExampleBean"/>
2015-12-11 08:46:54 2548
翻译 Spring的核心技术(七)---循环依赖
循环依赖如果使用构造器注入的方法,就可能会创建一个无法解析的循环依赖的场景。例如:类A通过构造器注入需要类B的一个实例,并且类B通过构造器注入也需要一个类A的实例。如果对类A和B做了这样的相互注入的配置,那么Spring的IoC容器会在运行时检查这种循环引用,并抛出BeanCurrentlyInCreationException异常。一种可能的解决是修改某些类的源代码,通过Setter
2015-12-08 19:03:52 3527
翻译 Spring的核心技术(六)---基于Setter的依赖注入
基于Setter方法的依赖注入容器调用没有参数的构造函数或没有参数的静态工厂方法来创建Bean的实例,然后调用Bean实例上的Setter方法来实现依赖注入。下面的例子展示了一个只能使用setter方法来注入依赖的类。这是个标准的Java类,它不依赖于容器指定的接口、基类或注解。public class SimpleMovieLister { // the Simp
2015-12-08 19:02:03 3248
翻译 Storm的消息处理保障机制
本文译自:http://storm.apache.org/documentation/Guaranteeing-message-processing.htmlStorm会保证每个来自Spout的消息会被完全处理。本文介绍Storm是如何实现这种保证机制的,以及要让用户从Storm的可靠性能力中获益所要做的一些事情。“完全处理的消息”意味着什么?一个来自Spout的数据元组可能会触发基于
2015-12-07 19:48:42 4350
翻译 Spring的核心技术(五)---基于构造器的依赖注入
基于构造器的依赖注入基于构造器的依赖注入(DI)是通过调用带有代表依赖参数的构造器来实现的。调用带有指定给Bean构造器的参数的静态工厂方法也是相似的,并且有关把给构造器和静态工厂方法传递参数的讨论也是类似的。下面的示例展示了使用构造器来注入依赖的类。注意这个 类没有特殊的依赖,它只是一个不依赖于容器特定接口、基类或注解的POJO对象。public class SimpleMovieL
2015-12-01 20:25:29 3253
翻译 Spring的核心技术(四)---依赖性简介
通常企业级的应用程序都不会由一个单一的对象(在Spring中叫做Bean)组成。即使是最简单应用程序,也会有多个对象在一起协同工作。接下来解释如果把一些单独Bean定义组合成一个对象间相互协作的真实的应用程序。依赖注入(DI)是一个对象定义它们的依赖的过程,也就是说,通过构造器参数、工厂方法的参数、或者对象实例上的set属性方法等来设置与其一起工作的其他对象。然后Spring容器在创建相关的B
2015-11-30 19:33:13 2257
翻译 Spring的核心技术(三)---Bean简介
Bean简介Spring的IoC容器管理着很多个Bean,这些Bean是通过提供给容器的配置元数据来创建的,例如XML样式的定义。1. 在容器的Bean定义表示为BeanDefinition对象,它包含了以下元数据:2. 限定包的类名:通常是实际的定义Bean的实现类;3. Bean的行为配置元素,定义了容器中的Bean应该如何工作(如范围、生命周期的回调等等);4. Bean
2015-11-23 19:04:40 2547
翻译 Spring的核心技术(二)---容器简介
org.springframework.context.ApplicationContext接口代表了Spring的IoC容器,并且它负责实例化、配置和组装前面提到的Bean对象。这个容器通过 读取配置元数据来获得要实例化、配置和组装的对象的指令。配置元数据被放在XML文件、Java注解或Java代码中,你可以用这些元数据来描述构成应用程序的对象以及这些对象之间的丰富的内部依赖关系。Sprin
2015-11-19 20:18:04 4534
翻译 Storm的基本概念介绍
本文译自:http://storm.apache.org/documentation/Concepts.html以下是Storm的主要概念和相关资源信息的连接:1. Topologies(拓扑)2. Streams(数据流)3. Spouts(发送器)4. Bolts(运算器)5. Stream groupings(数据流分组)6. Reliability(可靠性)
2015-11-19 20:08:36 3403
翻译 Spring的核心技术(一)
这部分参考文档涵盖了Spring框架中的所有关键技术,其中最重要的是Spring框架的控制反转容器(IoC),然后是与IoC容器紧密结合的Spring的面向切面(AOP)的编程技术。Spring框架有它自己的概念上容易理解的AOP框架,它能够在Java企业及编程中满足80%的AOP需求。此外,Spring还提供了对AspectJ(当前Java企业级编程领域最成熟、功能最丰富的AOP实现)的整合
2015-11-16 08:59:36 4169
翻译 Spring 4.x框架中的新特性---4.1中的新功能和提升
JMS的改善Spring4.1通过引入带有@JmsListener注解的bean方法给注册JMS监听端点提供一个更加简单的基础设施。XML命名空间已经被增强,以便支持这种新的样式(jms:annotation-driven),并它还可以使用Java配置(@EnableJms、JmsListenerContainerFactory)来配置这个基础设施,也可以使用JmsListenerConfig
2015-11-12 19:00:48 3930
翻译 Spring 4.x框架中的新特性---Spring4.0框架的新功能和改善
2004年Spring框架首次发布,然后陆续发布了一些重要的版本:Spring2.0提供XML命名空间和AspectJ的支持;Spring2.5包含了注释驱动配置;Spring3.0在框架基础代码中引入了强大的Java5+,并且提供诸如基于Java的@Configuration模式。4.0版本是Spring框架最新发布的主版本,并且首次完全支持Java8的功能。你依然可以使用较早的Java版本
2015-11-11 19:48:31 20561
翻译 Spring框架简介---使用场景
在许多场景中,使用前面介绍的Spring模块是合乎逻辑的,从运行在有资源限制的嵌入式设备上的应用,到使用Spring事务管理和Web框架集成的完整的企业级应用。 下图是典型的完整的Spring Web应用 有些时候不允许你完全切换到不同的框架中,因此Spring框架不会强制要求使用它内部的每个模块,它不是非此即彼的解决方案。既存的用Struts、Tapestry、JSF或其他UI框架构建的前
2015-11-10 09:24:13 8630 1
翻译 Spring框架简介---模块
Spring框架大约有20个功能模块组成。这些模块分别被分组到Core Container、Data Access/Integration、Web、AOP(面向切面的编程)、Instrumentation、 Messaging和Test中,其结构如下图所示。 下面列出了每个可用模块的功能特性以及与其关联部件名称和它们所覆盖的范围。这些部件的名称与依赖管理工具中的部件ID相关联。 1. 内核
2015-11-06 08:53:53 7529
翻译 Spring框架简介---依赖注入和控制反转
本文译自:http://docs.spring.io/spring/docs/4.2.0.BUILD-SNAPSHOT/spring-framework-reference/htmlsingle/#spring-introduction Spring框架是用于构建企业级应用的一站式轻量级解决方案。而且Spring是模块化的,它允许我们只使用所需要的部分,既可以在任意Web框架之上使用它的IoC容器
2015-11-04 20:39:52 2397
翻译 Maven的POM.xml详解(五)
本文译自:http://maven.apache.org/pom.html属性属性是最后需要理解的POM基础。跟Ant中属性一样,Maven的属性是值的占位符。在一个POM内可以在任何位置使用${X}(X代表属性)符号来访问属性的值。它们有五种不同的样式:1. env.x:带有”env”前缀的变量会返回系统的环境变量。例如,${env.PATH}就包含了PATH环境变量。注
2015-03-09 17:04:49 3162
翻译 Maven的POM.xml详解(四)
本文译自:http://maven.apache.org/pom.html超级POM与面向对象编程中的对象继承类似,POM会扩展某些继承自父工程的值,而且跟Java对象都继承自基本的java.lang.Object一样,Mavne的所有工程对象模型都继承自基本的超级POM。以下是Maven3.0.4中超级POM的片段: 4.0.0 ce
2015-02-12 09:23:57 4103
翻译 Maven的POM详解(三)
本文译自:http://maven.apache.org/pom.html除外除外是明确的告诉Maven,你不想包含指定的依赖工程中的依赖(即,不包含传递性依赖)。例如,maven-embedder需要maven-core,但是你不希望使用它或它的依赖,那么就可以它作为一个除外项目来添加。 xmlns:xsi="http://www.w3.org/2001/XMLSchema
2015-02-05 21:12:57 2796
翻译 Maven的POM.xml详解(二)
本文译自:http://maven.apache.org/pom.htmlPOM关系Maven的强大之一就是它的工程关系的处理能力,它包括依赖(和依赖传递)、继承和聚集(多模块的工程)。传统的依赖管理让即使是最简单的工程也会变得异常复杂。“Jarmageddon”虽然快速,但会让依赖树变得大而复杂。“JarHell”在一个系统上所依赖的版本并不等同于那些被开发的版本,它既有可能给出错误的版
2015-01-21 20:37:32 2761
翻译 Maven的POM.xml详解(一)
原文:http://maven.apache.org/pom.htmlPOM是什么?POM是“Project ObjectModel”的首字母缩写,即工程对象模型。它在一个名叫pom.xml的文件中使用XML来表示一个Maven工程。在跟使用Maven的人们一起谈论工程时,工程的概念有些哲学的意义,它不仅仅是一个包含代码的文件的集合。一个工程包含了配置文件、相关的开发者和他们的角色、缺陷跟
2015-01-18 21:42:59 3405
翻译 使用Spring创建满足RESTful规范的Web Service
原文:http://spring.io/guides/gs/rest-service/这个指南讨论如何使用Spring的RESTful web service来创建一个“hello world”程序。示例功能简介使用以下方式的HTTP GET请求来访问这个Service:http://localhost:8080/greeting使用下面greeting的JSON描述来响应这个
2015-01-14 17:07:11 2571
翻译 理解REST
原文: http://spring.io/understanding/REST2000年,RoyFielding在他的博士论文中引入和定义了REST(Representational State Transfer---表述性的状态传输)。REST是一种设计分布式系统的架构样式。它不是一个标准而是一组约束,例如无状态、客户/服务的关系、以及统一的接口。REST虽然不强制关联HTTP,但通常都
2015-01-11 10:55:05 1353
翻译 如何创建Maven的Archetype
原文:http://maven.apache.org/guides/mini/guide-creating-archetypes.html创建Maven的Archetype是一个相当直接的过程。一个Archetype就是一个非常简单的作品,它包含了你所希望的工程的原型。一个Archetype的组成如下:Ø 一个原型描述符(它是位于src/main/resources/META-INF/m
2015-01-09 08:50:08 1635
翻译 Maven的Archetype简介
原文:http://maven.apache.org/guides/introduction/introduction-to-archetypes.htmlArchetype是什么?简单的说,Archetype是Maven工程的模板工具包。一个Archetype定义了要做的相同类型事情的初始样式或模型。这个名称给我们提供来了一个一致的生成Maven工程的方式。Archetype会帮助作者给
2015-01-08 16:01:59 6215
原创 项目管理中的主动控制与被动控制
在项目管理中,最常被提及的就是QCD,即品质、成本和交付,但是在执行过程中往往是事与愿违,常常是摁下了葫芦起了瓢,所以辛苦的IT人总是不停的在探究相关的项目管理办法,瀑布、迭代、敏捷等等方法层出不穷,可我们的QCD却好像总是在跟我们的项目管理者做对,延期、超预算、本质低下会毫不留情的砸向项目的每个参与者,这是为什么? 项目管理方法中最常提及的过程管理和过程改善,通常我们的项目管理者
2014-11-27 20:58:09 3899 1
原创 关于用户体验
用户体验已经成为移动互联网时代的职位新宠。记得刚刚进入软件研发这个行业的时候,一个软件工程师就可以基本搞定一个小的应用软件的开发,用户对交互体验好像没有要求,有的只是好奇、羡慕和赞赏,用户是真的没有体验的要求吗?答案当然是否定的,只不过用户的认知还没有达到谈体验的层次而已。 真正的软件交互体验又是什么样的呢?历经了Dos时代、Widows时代、移动互联网时代,辛苦的IT从未停止过
2014-11-26 21:14:38 1461
原创 大数据时代的思考
大数据时代的基本表象是数据的智能化,即我们可以通过海量数据的收集和分析,来有效的描述一件事情当前的状态,相对准确的预测其未来的结果。从这个角度来思考大数据,我们就不能简单的用数据的体量来理解大数据,在从数据到信息、从信息到知识、再从知识到智慧的演化过程中,我们需要跨学科、跨领域整合众多人类智慧,我们所面对的计算机世界将再也不是冰冷的键盘、鼠标、显示器加主机了,一个丰富多彩的带有智能感知和情感的计算
2014-09-27 15:22:19 1851 3
翻译 Android---解决云端的数据冲突(一)
本文译自:http://developer.android.com/training/cloudsave/conflict-res.html本文介绍如何使用云存储服务为应用程序的数据存储设计强壮的冲突解决策略。该云存储服务允许你把应用程序的每个用户的应用数据保存到Google的服务器上。通过使用云存储API,你的应用程序能够获取和更新来自Android设备、iOS设备、或Web应用的用户数据。
2014-01-28 16:58:39 3419 1
原创 .NET---DataGridView中DataGridViewComboBoxColumn类型的Cell赋值方法
1. 把对应Cell的类型强转成DataGridViewComboBoxCell类型,如:DataGridViewComboBoxCell cmbLst = (DataGridViewComboBoxCell)dataGridView2[7, i];2.像ComboBox控件一样,把相关的数据添加到Items成员属性中,如: for (int j = 0; j {
2014-01-22 20:35:49 5306
翻译 Android---利用Google的云消息
本文译自:http://developer.android.com/training/cloudsync/gcm.html谷歌的云消息(GCM)是一个用于给Android设备发送消息的免费服务。GCM能够极大的提高用户的体验。你的应用程序会保持最新的状态,而不用担心因唤醒无线信号所造成的电池电量的浪费,也不用使用轮询来询问服务器是否有更新。还有,GCM允许把一个单一的消息绑定到1000个接收端
2014-01-12 20:17:31 2511
翻译 Android---使用备份API
本文译自:http://developer.android.com/training/cloudsync/backupapi.html当用户采购一款新的设备或重置他们现有的设备时,他们可能期望Google Play在把应用程序恢复到设备上的过程中,把之前与应用程序关联的数据也恢复到设备上。默认情况下,这种情况不会发生,并且应用程序中的所有的用户操作履历和设置都不会被恢复。
2014-01-02 21:08:42 2777
翻译 Android---基于连接类型来修改下载方案
本文译自:http://developer.android.com/training/efficient-downloads/connectivity_patterns.html在谈到网络连接对电池电量的影响时,不是所有的连接类型都是一样的。使用Wi-Fi信号不仅可以显著的比其他同等的无线信号节省电量,而且不同的无线信号技术对电量的消耗也是不一样的。使用Wi-Fi
2013-12-21 21:17:14 1657
翻译 Android---冗余的下载是多余的
本文译自:http://developer.android.com/training/efficient-downloads/redundant_redundant.html减少下载的最基本的方法是只下载必要的数据,在数据方面,意味着要实现REST API,这些API允许使用参数来指定查询条件,从而限定返回的数据,如指定最后一次更新的时间。同样,当下载图片时,好的做法是
2013-12-13 19:40:44 2019
翻译 Android---最大限度的减少定期更新对电池的影响
本文译自:http://developer.android.com/training/efficient-downloads/regular_updates.html最佳的定期更新频率经常会基于设备的状态、网络的联通性、用户的行为,以及明确的用户设置。在“优化电量消耗”的系列文章中,讨论了如何基于主机设备的状态来修改刷新频率,从而构建高效使用电池的应用程序。其中包括在丢
2013-12-12 19:54:47 2159
翻译 Android---优化下载让网络访问更高效(四)
使用DDMS网络流量工具来识别关注的区间Android的DDMS(Dalvik Debug Monitor Server)包含了详细的网络使用情况选项卡,这使得跟踪应用程序使用网络情况成为可能。使用这个工具,可以监视应用程序传输数据的方式和时机,并在此基础上可以优化底层相关的代码。图3显示了大约每隔15秒钟传输一次少量数据时网络使用情况,建议通过预先获取每个请求的数据或打包上传的数据来
2013-12-05 15:22:54 3593
翻译 Android---优化下载让网络访问更高效(三)
批处理传输和连接每次启动一个连接---跟传输的数据大小无关---在使用典型的3G无线信号时,就会潜在的导致无线信号消耗近20秒的电量。如果一个应用程序每隔20秒ping一次服务器,只是告知该应用程序正在运行,且对用户是可见的,那么无线信号的保持将无法限制,这会导致在几乎没有实际数据传输的情况下,明显的消耗电池电量。基于以上考虑,重要的是要把传输的数据打包,并创建一个传输队列。这样由于发
2013-12-04 18:42:05 2118
翻译 Android---优化下载让网络访问更高效(二)
预先获取数据预先获取数据是一种有效的减少大量的独立的数据传输会话的方法。它允许基于一个连接,在给定的单一时间周期内,满负荷的下载所有的需要的数据。通过提前下载,可以减少大量的下载数据所需的无线活跃信号。这样不仅可以保存电池电量,也可以改善延迟、降低所需的带宽、减少下载时间。在执行一个操作或浏览数据之前,通过预下载所需的数据,可以减少应用程序因等待下载而造成应用延迟,从而改善用户体验。
2013-11-30 18:46:53 2019
翻译 Android---优化下载让网络访问更高效(一)
本文译自:http://developer.android.com/training/efficient-downloads/efficient-network-access.html使用无线传输数据是你的应用程序潜在的最大的电池电量消耗源。要减少网络活动的电池电量的消耗,关键是要理解连接模式是如何影响底层的无线硬件的。本文介绍无线状态机,并解释应用程序的连接模式如何跟它交互。为了减少数据
2013-11-21 21:24:23 2710
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人