最新 | 最热门 | 最高评价

+0  一个有特色的有限状态机

Tag: Go
鸟窝 发于 2017年03月22日 23:18 | 点击: 584 | 展开摘要
gofsm是一个简单、小巧而又特色的有限状态机(FSM)。

github已经有了很多状态机的实现,比如文末列出的一些,还为什么要再发明轮子呢?

原因在于这些状态机有一个特点,就是一个状态机维护一个对象的状态,这样一个状态机就和一个具体的图像实例关联在一起,在有些情况下,这没有什么问题,而且是很好的设计,而且比较符合状态机的定义。但是在有些情况下,当我们需要维护成千上百个对象的时候,需要创建成千上百个状态机对象,这其实是很大的浪费,因为在大部分情况下,对象本身自己会维护/保

查看全文: http://www.udpwork.com/item/16029.html

+0  [译]Go Slice 秘籍

Tag: Go
鸟窝 发于 2017年03月22日 20:17 | 点击: 140 | 展开摘要
这是 Golang官方的一个总结: SliceTricks

由于引入了内建的append的方法, 包container/vector的很多方法都被移除了,可以被内建的append和copy方法代替。

下面是栈vector的操作方法的实现,使用slice实现相关的操作。

AppendVector

1

a = append(a, b...)

Copy

1
2
3
4

b = make([]T, len(a))
copy(b, a)
// 如果a不为空,也可以用下面

查看全文: http://www.udpwork.com/item/16187.html

+0  skynet 1.1 发布候选版本

Tag: skynet
云风 发于 2017年03月22日 11:23 | 点击: 251 | 展开摘要
skynet 1.0 于 2016 年 8 月 1 日正式发布,到今天已经有 7 个多月了。这段时间积累了很多小修改,我想是时候发布 1.1 版了。

很高兴这段时间 skynet 社区继续壮大,有更多的公司选择基于 skynet 开发。

现打算在下个月以目前 github 仓库 master 分支为基础发布 1.1 正式版,这两周如果同学们还有什么问题请尽快提 issue 。

下面是从 1.0 开始积累的更新:

debug console : 可用户指定绑定 ip 。

查看全文: http://www.udpwork.com/item/16184.html

+0  控制RecyclerView item的宽度

技术小黑屋 发于 2017年03月21日 21:54 | 点击: 156 | 展开摘要
自从Android中引入RecyclerView之后,它就逐步的替换掉了ListView和GridView。本文很简单,行文目的是记录和备忘。如果能帮到你,那再好不过了。

关于控制RecyclerView item的宽度,说起来还不是那么清晰,上一张图,就明白了。

上面的实际上是一个Grid布局

前三行每个item均分RecyclerView的宽度

最后一行的Others占大概三分之一,而Flipboard则占据了三分之二。

上面的图和描述就是我们今天想要实现的效果

查看全文: http://www.udpwork.com/item/16186.html

+0  前端架构的设计与进化

Tag: First Category
s5s5 发于 2017年03月21日 10:04 | 点击: 223 | 展开摘要
上周参加了一门这个课,笔记一下

架构

开发模式

通用模型

模板引擎

基础类库

组件框架

避免GOOGLE

大厂

选合适的

不用时怎么办

代码结构

团队和业务快速变化

开发行为耦合

多特性多并行

主线是什么

开发规范

编码

设计思路

模块拆分

结构分层

工具平台

工程化过程

框架支撑

研发效率(质量)

代码管理

运营支撑

运维监控

流程边界

流程

分工跨界

活动开发

平台化

经验沉淀

核心理念

查看全文: http://www.udpwork.com/item/16185.html

+0  还是猴子

Tag: 小女婉清 | 小女云舒 | 岁月如歌
qyjohn 发于 2017年03月19日 18:21 | 点击: 227 | 展开摘要

+0  Reduce 和 Transduce 的含义

Tag: JavaScript
阮一峰 发于 2017年03月18日 16:50 | 点击: 249 | 展开摘要
学习函数式编程,必须掌握很多术语,否则根本看不懂文档。

本文介绍两个基本术语:reduce和transduce。它们非常重要,也非常有用。

一、reduce 的用法

reduce是一种数组运算,通常用于将数组的所有成员"累积"为一个值。

var arr = [1, 2, 3, 4];

var sum = (a, b) => a + b;

arr.reduce(sum, 0) // 10

上面代码中,reduce对数组arr的每个成员执行sum函数。sum的参数a

查看全文: http://www.udpwork.com/item/16182.html

+0  画个猴子

Tag: 小女婉清 | 小女云舒 | 岁月如歌
qyjohn 发于 2017年03月17日 19:09 | 点击: 213 | 展开摘要

+0  关于租赁单车的东拉西扯

Tag: TMT乱弹
魏武挥 发于 2017年03月17日 18:19 | 点击: 275 | 展开摘要
这两天关于租赁单车——媒体们投资人们创业者们更喜欢用“共享单车”这个词——的讨论变得比较热闹。我周末还接了财经的采访电话,前前后后说了一个小时有余。有几个颇具流量的媒体也做了长篇文章,比如财新,比如腾讯科技。

这篇文章我谈谈我对这个事的看法,有点不成体系,所以叫“东拉西扯”。

 

一个奇怪的词

这两年,有两个词在特别奇怪地流行。

第一个词是自媒体。自媒体本身并不奇怪,但把很多明明是机构团队做的也不太彰显个人风格的媒体称为“自媒体”,实在是很奇怪。

有人和

查看全文: http://www.udpwork.com/item/16180.html

+0  如何优雅的实现一个 lua 调试器

Tag: lua与虚拟机
云风 发于 2017年03月17日 15:52 | 点击: 597 | 展开摘要
最近一段时间在帮公司一个项目组的客户端 review 代码。

我们的所有项目,无论渲染底层是用的 ejoy2d 还是 Unity3d ,实际开发的时候都基本是使用 lua 。所以开发人员日常工作基本是在和 Lua 打交道。

虽然我个人挺反感围绕着调试的开发方式,也就是不断的在测试、试错,纠正的循环中奔波。我认为好的程序应该努力在编写的过程中,在头脑中排错;在预感到坏味道时,就赶快重写。而坏味道通常指代码陷入了复杂度太高的境地,无法一眼看出潜在的问题。对付复杂度最好的武器是

查看全文: http://www.udpwork.com/item/15933.html

+0  Lua 调试器

Tag: lua与虚拟机
云风 发于 2017年03月17日 15:43 | 点击: 260 | 展开摘要
又一篇谈 Lua debugger 的 blog 了。但这次,并不是我的个人作品 :) 。

去年底我写了 如何优雅的实现一个 lua 调试器 。正如我的 blog 中所写:“不过期待它短期内发展成为一个图形式的漂亮交互调试器可能有点不现实,除非做前端的朋友有兴趣来完善它。”

ok 。这次,真的有人来完善它了。

我公司的前端大神突然对实现一个 lua debugger 产生了兴趣。他觉得既然 chrome 可以用来调试 javascript ,那么魔改一下后,调试 lua

查看全文: http://www.udpwork.com/item/16179.html

+0  [转]Protobuf3 语法指南

Tag: protobuf | 工具
鸟窝 发于 2017年03月16日 19:52 | 点击: 290 | 展开摘要
以前我翻译了 Protobuf2 语法指南,现在 千念飞羽把protobuf3的语法指南也翻译了,我也转载一下,读者可以有个参考。 译文地址是: Protobuf3语言指南。

英文原文:
Language Guide (proto3)
中文出处:
Protobuf语言指南
[译]Protobuf 语法指南
中文出处是proto2的译文,proto3的英文出现后在原来基础上增改了,水平有限,还请指正

这个指南描述了如何使用Protocol buffer 语言去描述你的pro

查看全文: http://www.udpwork.com/item/16178.html
|<<<1234567>>>| 一共1210页, 14513条记录