TangCuXa

TangCuXa

16 posts

悼念李文亮医生

过去一年我们沉浸在祖国 70 周年庆典表现出来的和谐,强大的表象之下。我们觉得中美贸易战会赢。我们认为菜菜子连任是统一台湾的大好消息。我们认为全民小康即将到来。全国上下都充满信心。然而一场新冠疫情群暴露出来的问题狠狠的给我们泼了一盆冷水。 今天凌晨,作为最初发出“谣言”的八人之一的李文亮医生逝世了。我们不该忘记,这该死的世道,该死的官僚,还有这些值得尊敬的人们。

  • TangCuXa
    TangCuXa
音乐

那些年的音乐梦

在去年底,还是下定决心系统的学习乐理和 Ukulele 的弹奏技巧。所以便报了刘老师的课程,起因是因为自己爱音乐的那颗心还在跳动。尤其是过去那么些年只能算是一个爱好者、门外汉。扫扫弦、弹着一些完全没有严格循序节奏的曲子。现在回头看看真是无地自容。 现在算是归纳总结一下这段时间学到的知识吧。 识谱 音符时值 节奏 扫弦节奏型 音阶 音阶盒子 顺阶和弦 和弦转调 和弦构成 弹奏旋律的规则 指弹独奏的规则 希望有空能够记录下来,另外终于买了彩虹人的相思鸟 UT3K !!!!

  • TangCuXa
    TangCuXa
JavaScript

Webpack2 学习记录 — 第二章·模块热替换/兼容配置

前言 上一章我们完成了 Webpack 的基础配置。对项目常用的资源都进行了模块化,这一章主要说明在基于 Webpack 的项目上实现模块热替换 (HMR)。模块热替换表现在开发上,就是当我们修改某段 html 或者 js 时。浏览器会自动完成代码的替换切不需要刷新浏览器。别看这个事情很小,一旦习惯了这种设定,就很难回到传统的开发方式了。它对开发效率上的提升是肥肠有必要的,所以我们今天就在基于 Webpack 的项目上来实现这一特性。Webpack 里实现 HMR 有两种方式: webpack-dev-server 自带服务器、配置简便。 webpack-dev-middleware 这是一个中间件,必须搭配 express 等其他服务器来使用。配置较为复杂,需要有 express 等 Node 服务器使用经验。 这两个我们都会讲到 HMR: Hot

  • TangCuXa
    TangCuXa
JavaScript

Webpack2 学习记录 — 第三章·开发/生产配置优化

上一章我们完成了 Webpack HMR 的配置,这也是在前端工程化开发后的标配。相信这些新的东西能让你体会到一些不一样的感觉。这一章我们主要把上一章的配置进行一些优化,并且添加一些打包压缩之类的配置。我们在第一章完成了基本的配置,能够打包输出静态文件。在第二章完成了 HMR 的配置,但是我们会发现在第二章里并不会输出静态文件。所以这里引出一个概念,在前端工程化的项目里,开发与生产并不一定会用同一套配置。开发时我们需要自带服务器、需要 HMR ,但是在生产环境并不需要这些,我们只需要一些静态文件,往 nginx 一丢就可以了。接下来主要就会讲这一部分! 配置优化 项目需要同时具备 dev 和 build 两套配置,所以我们抽离其中一些公用的配置,减少的样板代码的重复出现。仔细思考,我们会发现其中 loaders 部分是通用的,部分 plugins 也是通用的。所以我们可以在 build 目录建立一个

  • TangCuXa
    TangCuXa
JavaScript

Webpack2 学习记录 — 第一章·最小可用配置

在大前端的路上,总有那么些坑需要去踩。 相比于 14 年初刚出来工作,那时对前端的感觉远没有现在敏感,也不会想到现在的前端会发生天翻地覆的变化。细数自己对前端领域的技能,不懂的还有很多。NodeJs 也是后来粗略看了些,略微了解。前端自动化方面则一直没有时间去学习,例如 Gulp 、Grunt 都一窍不通。而前端模块化方面,之前略微了解 RequireJS ,Webpack 也曾手动写过配置。如今 Webpack 已升级到 2.0 + ,感觉是一个系统的学习并记录下过程的好时机。基于这个原因,就有了这个系列。— Webpack2 学习记录 基础 对于初次接触 Webpack 甚至 NodeJS 的同学,学习起来可能会有些困难。对于这种情况,建议还是先学习一些 NodeJS 的基础知识再学习 Webpack

  • TangCuXa
    TangCuXa
家用机

我的游戏历程 - 青春

小学五六年级时,我第一次进入网吧、第一次有了 QQ 。第一次去网吧时,托同学帮我注册了 QQ,还给了我一个《梦幻西游》账号。谁也没想到,这次经历导致我几年后辍学。那时的我正值青春年少,玩的最多的就是 — 网游。 《梦幻西游》在我的青春的游戏史占了很大的一部分。我很清楚的记得刚玩时,到 10 级就需要充点卡。但还在小学时的我,没有钱去买点卡。所以玩到 9 级就只能在建邺城(新手村)遛弯、打乌龟、海毛虫,运气好的还能遇到泡泡(珍稀神兽)。新手村待久了总会觉得无趣,因为新手任务做完了,地图逛完了,没有其他的探索要素。所以总会忍不住点下升级按钮,走出建业城门,来到江南野外则又是一番新天地。由于下线前可以不用充点卡,所以还是能玩到 15 级左右。拜了师门,

  • TangCuXa
    TangCuXa
家用机

我的游戏历程 - 初见

最近总想写些什么,像是无数话语梗在心头,好不难受!想来想去,发现游戏在我的人生中占有很大一部分位置。那就来讲讲我玩游戏的经历吧。 我记得,那时我还小。家住在揭阳市惠来县隆江镇,我们家跟着叔叔伯伯一样,做鱼副产品营生,还有个小厂子。那时候厂子就我爸和我妈在做,奶奶偶尔也会在厂子里看着。相对于各位叔叔伯伯的厂来说,我们家的厂子很小,亏了那时效益不错,我们家也过得还好。 我爸每过一段时间就会去送货,大多是送到深圳等地。回来时总会给我们带各种好吃好玩的。有时候会带好吃好玩的回来,记得第一次喝益力多,也是那时我爸带回来的,印象甚是深刻。我第一次玩到的游戏机 — 红白机,也就是我爸在某次送货回家时带回了一个盒子。那时我也不知道它叫什么,只知道我爸插到电视上后可以玩游戏。这就是我第一次接触到家用机,直到十几年后 — 我十五岁,我才知道它的名字叫 — 红白机(FC)。 那时候我们家流行玩的是**《坦克大战》,也是我爸唯一会玩的游戏。后来喜欢玩《F1 赛车》、《雪人兄弟》、《松鼠大战》

  • TangCuXa
    TangCuXa
生活

我眼中的锤子手机 - 锤子科技 2017 春季新品发布会

说起为什么知道老罗这个人。许多人都能追溯到老罗语录时期,十几岁便听着老罗语录长大。在那时,我还是个懵懵懂懂的小学生。在家看着各种国产、日产动画片,难以想象在今日会对这样一个胖子发出什么感想。 我不是一个从小听着老罗语录长大的人。 我已经忘记第一次知道老罗时是在什么时候,依稀记得是在 12 年左右。那时还是个学生,当时对小米、王自如还存在好感。在他们之间微博的交流中知道了这个人,并且在某个慵懒的午后,不知在什么地方看了《一个理想主义者的创业故事 2》,之后便一发不可收拾。我抽时间看完了老罗的其他几场演讲,包括在吉林大学的那场《我的奋斗》。至于原因,可能就是因为比相声好看? 通过干干净净地赚钱让人相信干干净净地赚钱是可能的;通过实现理想让人相信实现理想是可能的;通过改变世界让人相信改变世界是可能的……即使是在中国。 打动我的其实是老罗与他的培训机构-老罗英语培训创业中的各种经历,让我知道我们还可以干干净净挣钱,认认真真做事。那时,我知道我们的价值观是相同的。我们相信善良、相信所有美好的事物,即使现在身处黑暗。 我是一个科技爱好者,我喜欢游戏,SONY 的 PLAYSTATION

  • TangCuXa
    TangCuXa
Java

SSM 整合教程,献给新人们的礼物 - 第二章

前情回顾 在第一章里,我们完成了一个基于 Spring + Spring MVC 的 Web 应用程序。但在我们现实中,一个具有一定业务能力的 Web 系统往往都需要进行数据的持久化。接下来,我们会在第一章的基础上,整合 ORM 框架 — Mybatis 。 ORM: Object Relational Mapping 对象关系映射 添加 Mybatis 依赖 <!-- Mybatis --> <dependency> <groupId>org.mybatis</groupId> <

  • TangCuXa
    TangCuXa
Git

Github Pages & Hexo 博客搭建教程

为什么要写博客? 之所以以这个标题开头,正是因为这篇文章主要讲的便是基于 Github Pages 服务与 Hexo 静态博客框架搭建博客的教程。博客是什么?在现在这个信息爆炸的时代,我们每天接收到的信息多不胜数。在这海量的信息里有大部分是无用的,我认为在吸收这些信息的同时,能够表达出自身想法、整合并输出优秀的内容正是我们所欠缺的。所以便在这里献上这篇文章,拥有一个博客也是你表达自身想法的第一步。权当抛砖引玉了 ^_^ 环境要求 Github 账户 Git 客户端 NodeJS 文本编辑器 使用 Github Pages 服务 创建一个以自己 Github 用户名加上 github.io 的仓库 例:jjandxa 是我的 Github 用户名,所以需要创建一个名为 jjandxa.github.io

  • TangCuXa
    TangCuXa
Java

SSM 整合教程,献给新人们的礼物 - 第一章

前言 大半年没有更新过博客,最近在水神的鼓动下又弄起了 Hexo ,想想还是写篇博客抒发下。 初入 Java Web 的童鞋第一个门槛就是创建一个 Web 应用程序,尽管可以使用 Servlet 编写,但那也显得太过**“原始“**了。为了优化应用架构、提高效率、代码可控,所以我们需要用到各种框架来辅助我们构建应用程序。目前我主要使用的便是 Spring MVC、Spring、Mybatis—简称 SSM 。 接下来会使用 Maven 来管理依赖与构建项目,不懂的童鞋也可以等我后面专门讲解 Maven 的文章。 项目使用 JetBrains 家族的 Intellij Idea 开发。 创建 Maven Web 项目

  • TangCuXa
    TangCuXa
Git

部署Docker Gitlab

Gitlab 由于公司现在 Git 私有服务使用的是 Gitblit ,虽然只有我们一个项目组在用 Git ,但使用下来问题不断,基本有以下几点: 团队成员对 Git 的使用不熟悉,目前只有我一个人长期使用 GitHub 、 Coding 等服务。 缺少 Git 工作流程的规范化。 由第二点引起的缺少代码评审机制 对于第一点,引入 SourceTree 可以解决大部分问题,在操作上使用图形界面相对于 Bash 上敲命令容易的多。 对于第二点,起先打算引入 Git Flow 工作流,然而相对来说还是较为复杂,成员不一定能够理解其中奥妙。 对于第三点,如果使用 Git Flow 工作流的话实现不了强制性代码评审,直到后来看到了 Gitlab 。 基于以上几点,我在 Ubuntu

  • TangCuXa
    TangCuXa
JavaScript

RequireJS 填坑

什么是 RequireJS — 自己 Google 去。 Start 点我去官网 刚认识用 RequireJS 之前,我还不知道前端还能这样模块化编程,尽管我是个渣,但当我第一次用上之后就回不去以前了,模块化管理你的 JS 是很有必要的,有利于前端工程的规范化管理,页面也不用写很多 link 标签和 script 标签了。 AMD 由于 RequireJS 是基于 AMD 规范的,我们需要来了解它是怎么使用的。 //hello.js define(['jquery'],function($) { //$('body') }) 这是一个基于的 AMD 规范定义的模块,它接收两个参数,第一个为依赖的字符串数组,第二个为回调的函数。这个例子表明它依赖于 jquery ,RequireJS

  • TangCuXa
    TangCuXa
OSX

MacBook Pro

话说从学生时代就盼着的 MacBook Pro 终于入手了 之前在长沙时,本想等着3月份 Apple 春季发布会新款出来买新款的,结果那天晚上看完发布会整个人失望的无以复加。竟然只发布了 iPhone SE , iPad Pro , 还有几个表带,我能说啥?Omg ,我的 RMBP 只能继续等了。 四月 我忍不了,回到家后百无聊赖的,想起了盼望已久的 MacBook Pro ,我的心蠢蠢欲动,终于!在控制不了双手的情况下,点下了下单按钮!!一切都归于平静了。这时,我想起了那句话: 买了悔三天 不买悔三年 至于说为什么我这么迷恋 MBP 作为一个正常人,我只能说: 因为它美

  • TangCuXa
    TangCuXa