• 六个优雅的 Linux 命令行技巧

    Posted by : lon.y@qq.com on 2017年8月31日

    一些非常有用的命令能让命令行的生活更满足 使用 Linux 命令工作可以获得许多乐趣,但是如果您使用一些命令,它们可以减少您的工作或以有趣的方式显示信息时,您将获得更多的乐趣。在今天的文章中,我们将介绍六个命令,它们可能会使你用在命令行上的时间更加值当。 watch watch 命令会重复运行您给出的任何命令,并显示输出。默认情况下,它每两秒运行一次命令。命令的每次运行都将覆盖上一次运行时显示的内容,因此您始终可以看到最新的数据。 您可能会在等待某人登录时

    阅读全文...

  • 在 Linux 中分割和重组文件

    Posted by : lon.y@qq.com on 2017年8月31日

    非常有用的 csplit 命令可以将单个文件分割成多个文件。Carla Schroder 解释说。 Linux 有几个用于分割文件的工具程序。那么你为什么要分割文件呢?一个用例是将大文件分割成更小的尺寸,以便它适用于比较小的存储介质,比如 U 盘。当您遇到 FAT32(最大文件大小为 4GB),且您的文件大于此时,通过 U 盘传输文件也是一个很好的技巧。另一个用例是加速网络文件传输,因为小文件的并行传输通常更快。 我们将学习如何使用 csplit,spli

    阅读全文...

  • 树形结构数据存储方案(二): 物化路径

    Posted by : lon.y@qq.com on 2017年8月31日

    前一篇文章介绍了比较简单的邻接列表模式,物化路径其实更加容易理解,其实就是在创建节点时,将节点的完整路径进行记录。以下图为例: 按照Path Enumeration 进行存储后的结果如下: 此种方案借助了unix文件目录的思想,主要时以空间换时间。 查询某一节点下的所有子节点:(以Fruit为例) SET @path = (SELECT path FROM pathTree WHERE node_name = 'Fruit'); SELECT * FROM

    阅读全文...

  • 优雅的QSignleton (四) 通过属性器实现MonoSingleton

    Posted by : 袁艳平 on 2017年8月30日

    接下来介绍通过属性器实现MonoSingleton。 代码如下: MonoSingletonProperty.cs namespace QFramework.Example { using System.Collections; using UnityEngine; class Class2MonoSingletonProperty : MonoBehaviour,ISingleton { public static Class2MonoSingleton

    阅读全文...

  • 优雅的QSignleton (三) 通过属性器实现Singleton

    Posted by : 袁艳平 on 2017年8月30日

    不通过继承的方式实现单例模式方法 代码如下: MonoSingletonProperty.cs namespace QFramework.Example { using UnityEngine; class Class2SignetonProperty : ISingleton { public static Class2SignetonProperty Instance { get { return QSingletonProperty<Class

    阅读全文...

  • 优雅的QSignleton (二) MonoSingleton单例实现

    Posted by : 袁艳平 on 2017年8月30日

    如何用QSingleton实现继承自MonoBehaviour的单例。 代码如下: MonoSingleton.cs namespace QFramework.Example { using System.Collections; using UnityEngine; class Class2MonoSingleton : QMonoSingleton<Class2MonoSingleton> { public override void On

    阅读全文...

  • 优雅的QSignleton (一) Singleton单例实现

    Posted by : 袁艳平 on 2017年8月30日

    如何用QSingleton实现一个简单的单例。 代码如下。 Singleton.cs namespace QFramework.Example { using UnityEngine; class Class2Singleton :QSingleton<Class2Singleton> { private static int mIndex = 0; private Class2Singleton() {} public override vo

    阅读全文...

  • Unity 游戏框架搭建 (十四) 优雅的QSignleton(零) Quick…

    Posted by : 袁艳平 on 2017年8月30日

    QSingleton: 之前有几篇文章介绍过单例模板在Unity中的几种实现。之后又参考了其他的单例库的实现,借鉴(chao)了它们的优点,借鉴了哪里有声明原作者。 快速开始: 实现一个继承MonoBehaviour的单例类 namespace QFramework.Example { [QMonoSingletonPath("[Audio]/AudioManager")] public class AudioManager : ManagerBase,I

    阅读全文...

  • Unity 游戏框架搭建 (十三) 无需继承的单例的模板

    Posted by : 袁艳平 on 2017年8月30日

    之前文章中介绍的Unity 游戏框架搭建 (二) 单例的模板和Unity 游戏框架搭建 (三) MonoBehaviour单例的模板有一些问题。 存在的问题: 只要继承了单例的模板就无法再继承其他的类。 虽然单例继承其他类是比较脏的设计,但是难免会遇到不得不继承的时候。没有最好的设计,只有最合适的设计。 解决方案: 首先实现单例的类从使用方式上应该不变,还是 XXX.Instance.ABCFunc() 之前的单利的模板代码如下所示: using Syst

    阅读全文...

  • Unity 游戏框架搭建 (十二) 简易AssetBundle打包工具(二)

    Posted by : 袁艳平 on 2017年8月30日

    本篇文章的核心api还是: BuildPipeline.BuildAssetBundles (outPath, 0, EditorUserBuildSettings.activeBuildTarget); 在第三个参数中,只要传入不同平台 BuildTarget就可以了。目前只考虑Android和iOS平台。 区分iOS、Android平台。 很简单,只要在上篇文章的QABEditor类中将原来的BuildAssetBundle方法分为BuildAsset

    阅读全文...