学习编程并不是学习编程语言

2018-11-20
阅读 2 分钟
5.9k
大家都知道计算机科学不是研究计算机,它反倒是利用计算机研究自动解决问题的。问题解决是计算机科学,不是编程。这就许多计算机科学专业的学生似乎不理解他们为什么要学习算法或数学的原因。

智能微服务的设计与开发(node.js)

2018-11-16
阅读 10 分钟
5k
基于koa2、关系数据库(暂时只支持mysql)建立的智能微服务快速开发框架,将同时支持graphql与rest标准,使用typescript语言编写,力求安全、高效。

如何学习一门计算机编程语言

2018-11-09
阅读 3 分钟
6.5k
计算机编程是一个实践性很强的“游戏”,对于新入门者,好多人都在想,哪一门编程语言最好,我该从哪开始呢?我的回答是:语言不重要,理解编程思想才是最关键的!所有编程语言都支持的那一部分语言特性(核心子集)才是最核心的部分。所以从实际情况出发,选一门你看着顺眼,目前比较贴近你要做的工作或学习计划的计算机...

typescript模块导入与全局变量踩坑日志

2018-09-21
阅读 2 分钟
19.1k
在调整typescript项目结构,全局变量尽量少用,但还是必不可少的,既要合理的引入,又要能用上vscode的智能提示。上篇日志已经记录了,在vscode中开发,全局变量的定义与声名是分开的,要做好对应。

使用vscode写typescript(node.js环境)起手式

2018-09-07
阅读 5 分钟
13.9k
动机 一直想把typescript在服务端开发中用起来,主要原因有: javascript很灵活,但记忆力不好的话,的确会让你头疼,看着一月前自己写的代码,一脸茫然。 类型检查有利有敝,但在团队开发中,限制个人的天马行空还是很有效的; node对模块等es6特性的支持不尽人意,目前我只用node长期支持版所能支持的特性,个人不愿用b...

golang实现rest server框架(二)

2018-07-05
阅读 7 分钟
3.9k
这篇文章是golang针对数据库增删改(非查询结果集,查询语句的自动生成比较复杂,下篇文章专门解析)操作具体实现,包括了自动生成sql与自定义sql相关函数,以及指的插入与更新,同时实现了异常处理。

golang实现rest server框架(一)

2018-07-03
阅读 7 分钟
5.6k
用golang对数据库标准操作进行封装,为后面的rest server提供数据库访问层。实现的目标是:能根据rest请求参数自动生成数据库操作语句,提供增、删、改、查、批量写入、事务等必要的数据库操作封装。并可以方便的扩展到多种数据库,让所有的数据库操作对于rest server来说表现为一致的访问接口。

golang实现抓取IP地址的蜘蛛程序

2018-06-28
阅读 5 分钟
4.6k
背景 要做IP地址归属地查询,量比较大,所以想先从网上找到大部分的分配数据,写个蜘蛛程序来抓取入库,以后在程序的运行中不断进行维护、更新、完善。 一些关键点 goroutine的使用,让程序并行运行。 正则表达式分组信息提取的使用,正确的提取我们关注的信息。 数据库批量插入操作。 数据库批量更新操作。 代码解析 按...

golang实现mysql数据库备份

2018-06-25
阅读 6 分钟
13.5k
navicat是mysql可视化工具中最棒的,但是,在处理视图的导入导出方面,它是按照视图名称的字母顺序来处理的,若视图存在依赖,在导入过程中就会报错。前面已经用python写了一个,但在使用过程中,遇到xfffd编码,python的pymysql会直接崩溃。发现golang没有这个问题,正好用go重写,来熟悉golang。

ubuntu下安装java10

2018-05-19
阅读 1 分钟
5.1k
最近需要用java,已经使用ubuntu和node.js多年,一装才知道java9已经不被支持了,度娘搜不到想要的信息,最后在添加java8的ppa的时候,仔细看了一下信息,给出了java10的相关信息,记录如下:

用python解决mysql视图导入导出依赖问题

2017-12-15
阅读 3 分钟
4.8k
navicat是mysql可视化工具中最棒的,但是,在处理视图的导入导出方面,它是按照视图名称的字母顺序来处理的,若视图存在依赖,在导入过程中就会报错。这个问题一直困绕我,一度因为我使用docker来部署mysql而绕过了这个问题。最近不得不直面这个问题,因此,写了一个小工具来解决它。

用python写通用restful api service(二)

2017-12-09
阅读 6 分钟
7.6k
今天项目已经能够做一个简单的后端服务了,在mysql中新建一个表,就能自动提供restful api的CURD服务了。 关键点 根据REST的四种动词形式,动态调用相应的CURD方法; 编写REST与基础数据库访问类之间的中间层(baseDao),实现从REST到数据访问接口之间能用业务逻辑处理; 编写基础数据库访问类(dehelper),实现从字典...

用python写通用restful api service(一)

2017-12-04
阅读 3 分钟
13.8k
一直在用node.js做后端,要逐步涉猎大数据范围,注定绕不过python,因此决定把一些成熟的东西用python来重写,一是开拓思路、通过比较来深入学习python;二是有目标,有动力,希望能持之以恒的坚持下去。

python读excel写入mysql小工具

2017-11-16
阅读 2 分钟
4.5k
背景 需要导入全国高校名录到数据库,从教委网站下到了最新的数据,是excel格式,需要做一个工具进行导入,想试用一下python,说干就干。 库 xlrd : excel读写库 pymysql : mysql数据库驱动库,纯python打造 re : 正则表达式库,核心库 前两个用pip轻松完成安装,本人是在mac pro是进行的,过程很顺利,以前在mac上装mys...

基于react-native & antd-mobile进行三端开发

2017-07-23
阅读 3 分钟
13.5k
要做移动端应用,同时要适配ios、android和微信。搜索、试验、思考...几天内进行了好几轮,最终决定采用react-native & antd-mobile来实现我们的目的。

reactjs前端实践|第四篇:TodoList示例rudex、immutable-js

2017-05-07
阅读 4 分钟
4.5k
单一数据源(整个应用的 state 被储存在一棵 object tree 中,并且这个 object tree 只存在于唯一一个 store 中)

reactjs前端实践|第三篇:TodoList示例事件、state、props、refs

2017-04-27
阅读 4 分钟
3.6k
Todo List示例,未使用redux。内容涉及到展示组件与容器组件的合理使用,事件处理,参数传递,控件访问,组件功能设计等方面。其中遇到的坎,设置输入焦点,由于使用了styled-components而有不同;每个组件应试包含哪些state,是否应该进行状态提升;子组件如何向父组件传递数据。

reactjs前端实践|第二篇:单页应用示例路由及样式的使用

2017-04-25
阅读 4 分钟
5k
简单单页应用,使用react-router v4.1.1,styled-components来实现。应用功能:三个导航标签(Home,Stuff,Contact),点击标签切换页面内容。

reactjs前端实践|第一篇:调色板示例组件的使用

2017-04-24
阅读 3 分钟
6.2k
最近终于开始折腾前端,经过大量的阅读和研究,决定使用react.js及相关产品来架构我的前端技术。我本是个纯后端,喜欢算法,几年前,发现了node.js,因为它开源,底层是C++,正中我下怀,呵呵!

基于Debian系统安装node运行环境(docker、canvas)

2017-03-02
阅读 3 分钟
4.5k
因为我们的系统使用了canvas插件,这个插件依赖库比较多,安装较为麻烦,还好ubuntu与debian是一个系列的,有ubuntu下的经验,处理起来还是有信心的。

YouCompleteMe unavailable : requires Vim 7.4.143

2016-12-23
阅读 1 分钟
8k
ubuntu 14.05 安装完YouCompleteMe后不生效,提示:YouCompleteMe unavailable : requires Vim 7.4.143经过检索与查询,ubuntu自带的vim为7.4.50,需要安装最新的vim。在stackoverflow上查到更新方案如下:

俄罗斯方块游戏自动机

2016-05-29
阅读 5 分钟
6.5k
《用electron制作俄罗斯方块游戏》 后续文章,智能程序玩俄罗斯方块游戏。 背景 前不久用ES6完成了基本的俄罗斯方块游戏,今天已经完成了一个初步的智能算法,可以自动玩俄罗斯方块了,让自己的想法朝实现更近了一步。 效果图 第一次运行,消除了1398行,窃喜!最高记录3676行。 程序结构 主要关注智能算法,结构简单化...

用electron制作俄罗斯方块游戏

2016-05-21
阅读 7 分钟
7.9k
在折腾ES6,突然想起大学时用c语言写过俄罗斯方块,本项目中主要是利用ES6的Class特性进行面向对象编程。项目采用node.js v6.2.0 + electron v1.1.0 进行桌面开发,能跨所有平台运行。

华容道游戏(下)

2016-05-02
阅读 6 分钟
5.5k
华容道游戏看似简单,但求解需要设计的数据结构比较复杂,还牵涉到棋类游戏的棋局判断,所以整个过程还是挺费劲的。我尽量用面向对象的思想来进行封装,整个过程将分成几个部分记录下来,今天是最后一部分,棋局的广度搜索。

华容道游戏(中)

2016-04-29
阅读 5 分钟
6.4k
华容道游戏看似简单,但求解需要设计的数据结构比较复杂,还牵涉到棋类游戏的棋局判断,所以整个过程还是挺费劲的。我尽量用面向对象的思想来进行封装,整个过程将分成几个部分记录下来,今天是第二部分,棋局处理Zobrist算法原理及实现。

华容道游戏(上)

2016-04-29
阅读 5 分钟
7.8k
华容道游戏看似简单,但求解需要设计的数据结构比较复杂,还牵涉到棋类游戏的棋局判断,所以整个过程还是挺费劲的。我尽量用面向对象的思想来进行封装,整个过程将分成几个部分记录下来,今天是第一部分,数据结构的定义与初始化。

数独求解(javascript实现)

2016-04-24
阅读 5 分钟
11.4k
数独游戏,经典的为9×9=81个单元格组成的九宫格,同时也形成了3×3=9个小九宫格,要求在81个小单元格中填入数字1~9,并且数字在每行每列及每个小九宫格中都不能重复。

遗传算法解背包问题(javascript实现)

2016-04-22
阅读 5 分钟
7.9k
“物竞天择,适者生存”,遗传算法就是借鉴生物体自然选择和自然遗传机制的随机搜索算法。算法的关键点有:基因的选择与编码、适应度评估函数与三个遗传算子(选择、交叉和变异)的设计。

妖怪和和尚过河问题(javascript实现)

2016-04-11
阅读 4 分钟
5.8k
此题作者实现得过于复杂,我将初始状态定义为:[3,3,0,0,true],释义:依次表示,此岸和尚数量、此岸妖怪数量、彼岸和尚数量、彼岸妖怪数量、船在此岸否。有了以上定义,完全可以将这个题目看成与上一章桶等分水那个题目是一样的问题,两岸是两个“桶",和尚和妖怪是"水","水"在两个”桶“中回来倒,最后全部倒到彼岸那个...

三水桶等分8升水(javascript实现)

2016-04-10
阅读 4 分钟
7.1k
有三个容器分别是三升、五升和八升的水桶,其中容积为八升的水桶装满了水,其余两桶为空。水桶没有刻度,除这三个桶外不能使用其它容器,将8升水等分为两份4升的水。