Levon's Blog

微信: L6241425

1. Npm 介绍

npm 是 Node 的模块管理器,功能极其强大。它是 Node 获得成功的重要原因之一。

npm 不需要单独安装。在安装 Node 的时候,会连带一起安装 npm。但是,Node 附带的 npm 可能不是最新版本,最好用下面的命令,更新到最新版本。

1
npm install npm@latest -g 

上面的命令中,@latest 表示最新版本,-g 表示全局安装。所以,命令的主干是 npm install npm,也就是使用 npm 安装自己。之所以可以这样,是因为 npm 本身与 Node 的其他模块没有区别。

阅读全文 »

1. Nodejs 的诞生

话说有个叫 Ryan Dahl 的歪果仁,他的工作是用 C/C++ 写高性能 Web 服务。对于高性能,异步 IO、事件驱动是基本原则,但是用 C/C++ 写就太痛苦了。于是这位仁兄开始设想用高级语言开发 Web 服务。他评估了很多种高级语言,发现很多语言虽然同时提供了同步 IO 和异步 IO,但是开发人员一旦用了同步 IO,他们就再也懒得写异步 IO 了,所以,最终,Ryan 瞄向了 JavaScript。

因为 JavaScript 是单线程执行,根本不能进行同步 IO 操作,所以,JavaScript 的这一 “ 缺陷 “ 导致了它只能使用异步 IO。

选定了开发语言,还要有运行时引擎。这位仁兄曾考虑过自己写一个,不过明智地放弃了,因为 V8 就是开源的 JavaScript 引擎。让 Google 投资去优化 V8,咱只负责改造一下拿来用,还不用付钱,这个买卖很划算。

于是在 2009 年,Ryan 正式推出了基于 JavaScript 语言和 V8 引擎的开源 Web 服务器项目,命名为 Node.js。虽然名字很土,但是,Node 第一次把 JavaScript 带入到后端服务器开发,加上世界上已经有无数的 JavaScript 开发人员,所以 Node 一下子就火了起来。

阅读全文 »

前两年折腾过亚马逊的免费一年aws,后来发现速度很慢就弃用了。俗话说免费的是最贵的,但是google注册之后直接给300刀,货真价实的钱可以用来买服务器,简直不要太好用!

观看1080p无压力

1
阅读全文 »

最近准备开发一个GUI程序, 考察了一些能选用的技术, 在windows下有多门语言可以选择(包括易语言哈哈).

但是最初的想法是不仅要快捷开发而且最好跨平台, 跨平台基本没得选了只能用qt了, 但短时间内用c++开发还是没有勇气的, 于是举棋不定选python.

1. 下载 qt designer

因为 Qt Creator实在太大了, 选用Qt Designer.下载链接: https://build-system.fman.io/qt-designer-download

安装成功后, 最好设置Appearance里为 Dockerd Window, 要不然很别扭

阅读全文 »

在Python中,安装第三方模块,是通过包管理工具pip完成的。用pip一个一个安装费时费力,还需要考虑兼容性。我们推荐直接使用anaconda,这是一个基于Python的数据处理和科学计算平台,它已经内置了许多非常有用的第三方库,我们装上Anaconda,就相当于把数十个第三方模块自动安装好了,非常简单易用。

anaconda 是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。anaconda 利用工具/命令 conda 来进行 package 和 environment 的管理,并且已经包含了Python和相关的配套工具。

这里先解释下conda、anaconda这些概念的差别,详细差别见下节。

  1. anaconda

anaconda 则是一个打包的集合,里面预装好了 conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。

阅读全文 »

如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?

这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境。

1. 安装使用virtualenv(推荐使用virtualenvwrapper)

首先,我们用pip安装virtualenv:

1
sudo pip3 install virtualenv

然后,假定我们要开发一个新的项目,需要一套独立的Python运行环境,可以这么做:

阅读全文 »

Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。

阅读全文 »

当你执行 EXPLAIN SELECT … 时,MySQL 内部的查询优化器 (Query Optimizer) 会开始工作。它会分析你的 SQL,评估多种可能的执行路径(比如,使用索引 A、使用索引 B、或者干脆全表扫描),并基于一个成本模型 (Cost Model) 来选择它认为总成本最低的那个计划。EXPLAIN 就是将这个最终选定的计划以表格形式展示给你。

阅读全文 »
0%