Fork me on GitHub

Go语言开发-集合类型

4 集合类型 本章第一节介绍了Go语言中的值、指针和及引用类型,因为对于本章其余部分和后续章节,理解这些概念是必要的。Go语言的指针在语法构成和语意上与C和C++中的指针类似,只是Go不支持指针运算,这样就消除了能够影响C和C++程序的一些潜在bug。Go语言也无需使用free()函数或delete…

Go语言开发-字符串-regexp包

3.6.5. regexp包 本小节给出了一些表,这些表列出了regexp包里的函数和支持的正则表达式语法,同时也给出了几个例子。在本小节或本书的其他地方也会使用到正则表达式,我们假设读者已经具有了一些正则表达式基础。 regexp包是Russ Cox的RE2正则表达式引擎的Go语言实现,该引擎速度…

这里有一些珍贵的《魂斗罗》设计企划书

这里有一些珍贵的《魂斗罗》设计企划书

关于《魂斗罗》,很多人至今认为系列第一作是红白机上的版本(FC 版),而实际上《魂斗罗》系列真正的起点是 1987 年的街机版。限于条件,当时能玩到街机版的人并不多。在《魂斗罗》推出后的第二年,Konami 还发售了另一款名为《饿流祸》的射击游戏,是 3D 的,令笔者印象颇深。两个游戏的主角形象都来自电影《第一滴血》,但二者之间并没有多大关联。不过本文主要谈《魂斗罗》,其余游戏就不额外展开了。

Go语言开发-字符串-strconv包

3.6.2. strconv包
strconv包提供了许多用于将字符串和其他类型相互转换的函数。表3.8和表3.9(也可以参考fmt包的打印和扫描函数)列出了这些函数。接下来让我们看几个例子。一个常见的需求是将字符串表示的值转换为布尔值。我们可以使用 strconv.ParseBool() 函数来实现。

Go语言开发-字符串-strings包

3.6.1. strings包
在字符串处理中一个常见的需求是能够将字符串切分为字符串切片,然后再做进一步的处理,例如,将字符串转换为数字或去除字符串前后的空格。为了学习如何使用strings包中的函数,我们将通过一些简单的例子来使用这些函数。表3.6和表3.7列出了strings包中所有的函数。首先让我们以切分字符串开始。

Go语言开发-字符串-为调试格式化

3.5.6.为调试格式化
%T(类型)用于打印内置的或自定义值的类型,%v用于打印内置值的值。事实上,%v还可以打印自定义类型的值,对于没有定义String()方法的类型使用默认的格式,对于定义了String()方法的类型使用该类型的String()方法打印。
上面这个例子演示了如何使用%t和%v来输出任意值的类型和值。

功能性动画设计:优秀的转场效果

功能性动画是一种微妙的动画,有着明确、合理的目标。它能减少认知负荷,防止变化视盲,在空间上营造更好的印象。但还有一点,动画让用户界面鲜活起来。
通过组合与分割、改变形状和尺寸,运动可以使外表感觉鲜活。应当运用功能性的动画,流畅地在导航内容间引导用户,解释屏幕元素和排列的变化,并且强调元素层级。
成功的动效设计具有以下6个特征: