原文:Swift中文教程(四)--函数与闭包 Function 函数 Swift使用func关键字来声明变量,函数通过函数名加小括号内的参数列表来调用.使用->来区分参数名和返回值的类型: func greet(name: String, day: String) -> String { return "Hello \(name), today is \(day)." } greet("Bob", "Tuesday") 练习: rem…
上一篇和大家一起宏观上学习了Samza平台的架构,重点讲了一下数据缓冲层和资源管理层.剩下的一块非常重要的SamzaAPI层本节作为重点为大家展开介绍.     当你使用Samza来实现一个数据流处理逻辑时.你必须实现一个叫StreamTask的接口,例如以下所看到的: public class MyTaskClass implements StreamTask { public void process(IncomingMessageEnvelope envelope, MessageColl…
希望上一篇背景篇让大家对流式计算有了宏观的认识,本篇依据官网是介绍概念,先让我们看看有哪些东西呢?     概念一:Streams     Samza是处理流的.流则是由一系列不可变的一种相似类型的消息组成.举个样例,一个流可能是在一个站点上的全部点击,或者更新到一个特定数据库表的更新操作,或者是被一个服务或者事件数据生成全部日志信息.消息可以被加到还有一个流之后或者从一个流中读取.一个流能有多个消费者,而且从一个流中读取不会删除消息(使得小心可以被广播给全部消费者).另外消息可以有一个关联的k…
    大家应该听我在前言篇里扯皮后,迫不及待要来一看Samza到底是何物了吧?先了解一下Samza的Background是不可缺少的(至少官网上是放在第一个的),我们须要从哪些技术背景去了解呢?     什么是消息(Messaging)?     消息系统是一种实现近实时异步计算的流行方案. 消息产生时能够被放入一个消息队列(ActiveMQ,RabbitMQ).公布-订阅系统(Kestrel,Kafka)或者日志聚合系统(Flume.Scribe).下游消费者从上述系统读取消息而且处理它们或…
Netty4.x中文教程系列(四)  对象传输 我们在使用netty的过程中肯定会遇到传输对象的情况,Netty4通过ObjectEncoder和ObjectDecoder来支持. 首先我们定义一个User对象,一定要实现Serializable接口: package mjorcen.netty.object; import java.io.Serializable; /** * User: hupeng Date: 14-6-3 Time: 上午1:31 */ public class Use…
介绍 当您使用一个Struts 2标签时,例如 <s:select ..../>  在您的web页面中,Struts 2框架会生成HTML,它会显示外观并控制select控件的布局.样式和布局取决于为标签们设置的Struts 2主题.Struts 2有三个内置的主题:简单.xhtml和cssxhtml.如果您没有指定主题,那么Struts 2将默认使用xhtml主题. 本帖地址 struts2官方 中文教程 系列十四:主题Theme 即 http://www.cnblogs.com/lingh…
Netty4.x中文教程系列(五)编解码器Codec 上一篇文章详细解释了ChannelHandler的相关构架设计,版本和设计逻辑变更等等. 这篇文章主要在于讲述Handler里面的Codec,也就是相关的编解码器.原本想把编解码器写在上一篇文章里面的.后来想想Netty里面的编解码器太多了.想要一次写完比较困难.于是重新开了一篇文章来专门写这个. 1.     Hello World !实例中的使用 在这里先讲一下我们第一篇文章里面的实例使用到编解码器. 1.1 DelimiterBased…
Netty4.x中文教程系列(一)目录及概述 Netty 提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序. Netty是一个NIO客户端 服务端框架.允许快速简单的开发网络应用程序.例如:服务端和客户端之间的协议.它最棒的地方在于简化了网络编程规范.例如:TCP和UDP socket服务. Netty官网:Netty.io 笔者个人理解: Netty本身是用于快速构建服务端与客户端之间通信协议的框架.Netty在消息处理上使用责任链模式,用户可…
Netty4.x中文教程系列(四)  ChannelHandler 上一篇文章详细解释了Hello World示例的代码.里面涉及了一些Netty框架的基础. 这篇文章用以解释ChannelHandler.笔者本身在以前写过文章ChannelHandler改动及影响 和 ChannelInitializer 学习 对Netty的.ChannelHandler做过阐述.里面主要描述了4.x版本相对于3.x版本的改动以及影响.并引用了一些文章.为大家详细的解释了ChannelHandler里面涉及架…
今天我们来看一下怎么自定义NGUIAtlas,制作属于自己风格的UI.第一部分:自定义 Atlas1 . 首先我们要准备一些图标素材,也就是我们的UI素材,将其导入到unity工程中.2. 全选我们需要用到的UI素材.选择菜单NGUI->Open the Atlas Maker(快捷键 Alt +shift+M).打开Atlas Maker窗口,如图 我们可以看到,刚才选择的图片素材已经在下面的Sprite窗口中列出来了. 3. 在Create右侧为Atlas起个名称,其余默认即可(这里第二个参…