自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

老王的专栏

The dots will somehow connect in your future.

原创 批量停止docker的两种方式

假设要批量停止的docker名字前缀为xxx,则可以执行下面两条命令来停止。 方法一: docker stop $(docker ps -a | grep "xxx" | awk '{print $1}') docker stop 停止容器 $()...

2020-05-05 14:49:52 113 0

原创 Ubuntu 20.04上如何使用中文输入法?

目前sogou输入法好像还不支持20.04。 步骤如下: 1)安装中文语言包(不确定是否必须) 由于我装系统时,选择了安装English版本,所以先安装了一下中文语言包。 $ sudo apt-get update $ sudo apt-get install language-pa...

2020-05-01 13:03:51 2579 0

原创 Ubuntu安装简单三步

第1步:下载Ubuntu 到https://ubuntu.com/上下载Ubuntu镜像文件,我下载的是:ubuntu-18.04.4-desktop-amd64.iso。 第2步:制作安装盘(U盘) 找一个U盘,下载一个制作软件,我下载的是:rufus_v3.9.1624.zip。启动Ru...

2020-04-08 20:51:04 101 0

原创 module 'tensorflow' has no attribute 'contrib'

在新电脑上安装了tensorflow后(参考这篇),像以前一样,想验证一下object_detection接口能不能调用,结果各种问题,无奈又把anaconda和tensorflow安装了一遍,现在我的环境是这样的: python版本: tensorflow版本: jupyter n...

2020-02-24 09:51:04 4594 6

原创 Win10下安装TensorFlow

20190119首发于公众号,这篇基于tensorflow 2.0修改了一下。 安装Anaconda 我用的Anaconda(版本)是:Anaconda3-2019.10-Windows-x86_64.exe 创建虚拟环境 使用虚拟环境的一个好处是你可以在多个虚拟环境之间切换。运行Anac...

2020-02-21 10:00:35 148 0

原创 package.json是什么时候出现的

如果你从事前端开发,或者你的项目使用了某个前端框架,比如VUE,你一定见过package.json这个文件,我在想这个文件是什么时候添加进项目工程的?为什么需要这个文件,它有什么作用? 为了搞清楚这些问题,我开始查资料,然后呢,然后我发现自己对前端确实知道的很少。 为什么前端需要Node? ...

2020-01-05 18:46:45 122 0

原创 VSCode如何排除dist、.svn目录下的搜索结果

网上有人说修改File--Preferences--Settings--User--Files中的settings.json,但我试了没用,其实也可以直接在SEARCH结果中,点开配置项设置,如下图所示:

2019-12-28 13:53:01 519 0

原创 为什么需要使用webpack?

我们先看一下官网给的webpack的概念: 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。 官网我浏览过几次了,其实一直没明白为什么要使用webpack。文档上来就说是什么,而不说为什么,是不是显得没那么友好,可能编写文...

2019-12-25 22:21:42 146 0

原创 v-bind的用法、省略和class属性

首先应该知道HTML元素“属性”的概念: HTML中的元素是有属性的;这些额外的属性值可以配置元素或者以各种方式来调整元素的行为,进而满足用户所需的标准。 比如: .note { font-style: italic; font-weight:bold; } <div v-...

2019-12-11 11:03:40 167 2

转载 注意把事件追加在触发该事件的句柄之前

JS使用Image类、onload()事件实现图片加载时遇到的问题。 #扩展知识推荐: 使用图像 Using images Image对象

2019-12-03 09:03:51 31 0

翻译 怎么用JavaScript把一张图片装载进Canvas

JavaScript在今天的Web世界里有巨大的影响,Canvas是用JavaScript在网页上画图的一种元素。这篇文章里,我们将向你介绍,如何使用JavaScript将一张已存在的图片加载进canvas,这样我们就可以进一步进行图像处理和像素级操作了。 假设我们有一张图片,像下面这样: ...

2019-11-29 21:56:16 115 0

原创 安装OpenCV完结篇

有段时间没折腾OpenCV了,刚下载了最新版本,准备配置开发环境。但每次配置前都要去网上搜一下,心想要配置些什么呢?我想,如果一些东西总是忘记,就是还没完全理解它,今天就再梳理一下。 《Learning OpenCV》(第3版)有一节:Installation,就引用它里面的一句话开始吧: ...

2019-11-17 20:29:41 59 0

原创 webpack学习笔记1:Error: Cannot find module '@babel/core'

这两天想学一下webpack,搜了一下,感觉这篇文章不错:《入门Webpack,看这篇就够了》,就照着上面做。 下面记录我遇到的几个不同的地方: 1. 安装webpack-cli 文中提到可以使用配置文件来使用Webpack,当我执行npm start时提醒需要安装webpack-cli,y...

2019-11-17 15:08:28 175 0

原创 开始使用OpenCV4.0吧

去年,OpenCV我主要使用了两个版本:opencv-2.4.9和opencv-3.4.2。 换opencv-3.4.2,是为了使用其dnn模块加载深度学习模型,从而能够在C++应用程序中部署网络模型。然而,opencv-3.4.2对TensorFlow模型的支持很不够,一些例子模型可能还可以,...

2019-11-10 20:22:56 73 0

原创 再说Node.js模块的导入导出

之前已经写过好几篇笔记了,但好像还是没有完全搞清楚,因为每次都是一些具体的问题,没有形成系统、完整的理解,这篇应该也不系统,但还是想记录几个点: 1. CommonJS规范中加载模块就是加载该模块的module.exports属性 // classA.js class MClassA { ...

2019-11-05 22:17:52 151 0

原创 Vue学习笔记1:Vue.js的方便之处

我们用Vue.js是做界面的,有了界面,用户就可以与我们的产品交互,比如用户看到界面上有一些按钮,然后他选择一个点击了一下,这都是交互。用户都喜欢简洁、友好、漂亮、符合逻辑的界面,我们选择Vue.js去实现UI,就希望能做到这些。 还有,我们希望能方便的达到上述效果。举两个例子,了解一下Vue....

2019-11-03 16:16:50 63 0

原创 《JavaScript高级程序设计》学习笔记10:再说JSON

之前写过一篇关于JSON的笔记,现在看来当初根本没搞清楚什么是JSON。所以,即使是很简单的知识,很难一遍学会,需要两遍,甚至多遍,因为第一次往往受限于以往的经验(知识)。 比如,我会迷惑于“JSON对象”和“JavaScript对象”有什么区别、“JSON字符串”和“字符串”不一样吗?当纠结于...

2019-10-28 09:06:05 24 0

原创 Electron学习笔记2:electron安装失败、npm start启动缺少cli.js

全局安装时,无论是否指定镜像,都会报错: 搜了一下,应该是最新的Electron版本有问题。如果你也有类似的问题,可以试着这么安装: 1. 指定镜像。 可以搜索找到.npmrc文件,然后添加:electron_mirror="https://npm.taobao.org/mirro...

2019-10-27 13:44:56 638 2

原创 Electron学习笔记1:与Node.js、Chromium、V8的关系

想必你已经被Electron网站上醒目的一行字吸引过了:使用JavaScript,HTML和CSS构建跨平台的桌面应用。 用Electron开发的应用程序本质是一个Node.js应用程序,但它专注的不是Web服务器端,而是桌面应用,即用Web页面做界面。你能把它看作成一个被JavaScript...

2019-10-27 09:44:44 186 0

原创 C++反射和JavaScript实现

据说,C#和Java有根据类名(字符串)直接创建类对象的语法,而C++没有。C++的解决方案是什么呢?当然可以通过switch-case或if-else分支实现,看过《重构》的同学都知道,这是“坏味道”的代码。 MFC中有个“动态创建”的技术,一般是按这个思路去实现,只不过不会使用宏。思路是这样...

2019-10-10 08:45:53 40 0

原创 ES6 import/export的静态性和一一对应关系

这是最近第4篇JavaScript关于模块导出/导入的文章了。 之所以会对模块引用产生一些疑问,是因为刚开始用CommonJS的写法,即require/module.exports模块,而现 在改为用ES6的写法了,即import/export写法,而且ES6的写法有多种形式,头脑中有一些混淆。...

2019-10-09 11:12:11 113 0

原创 webpack让node.js支持import/export写法

import { EventEmitter } from 'events'; //const EventEmitter = require('events'); class MyEmitter extends EventEmitter { } con...

2019-10-08 17:12:26 222 0

转载 钩子的概念

这里有个很详细的教程,大家可以参考。

2019-09-30 11:32:19 47 0

原创 ES6语法之:异步、Promise

首先,为什么要使用异步? 我在一篇文章中看到这样的说法: 在JavaScript的世界中,所有代码都是单线程执行的。由于这个“缺陷”,导致JavaScript的所有网络操作,浏览器事件,都必须是异步执行。 说的更详细点,为什么单线程就需要异步呢?比如执行下面三个函数: fun1();...

2019-09-29 16:07:47 39 0

原创 ES6语法之:this的由来

今天在看阮一峰《ECMAScript 6入门》“Class的基本用法”这一章时,this关键字又引起我的注意,心想,JavaScript中的this和C++中的this一样吗? 我们先来看看传统面向对象语言C++中的this: #include <iostream> using ...

2019-09-23 22:27:54 49 0

原创 ES6语法之:解构赋值

首先要知道,这个用法有一套提取值的模式。解构就是“按照一定模式,从数组和对象中提取值”。 其次,了解一些使用场合,比如下面,一次从对象p取得两个值。 class Person { constructor() { this._age = 29; this._name = &...

2019-09-20 08:38:41 16 0

原创 ES6语法之:变量提升、块级作用域、六种声明变量的方法

阮一峰《ECMAScript 6入门》 中“let和const命令”一节中提到了变量提升的概念,这个在《JavaScript高级程序设计》中好像没有提到。 搜了一下,MDN web docs中提到: 您在ECMAScript 2015 Language Specification之前的Jav...

2019-09-19 08:47:47 60 0

原创 《JavaScript高级程序设计》学习笔记9:感受抽象

学过C语言或C++的同学可能很早就接触到一个名词:抽象数据类型,又名ADT(abstract data type)。 根据字面意思就知道,它是一种数据类型,就像基本数据类型int、char、double一样,某种数据类型的变量是用来存储数据的,抽象数据类型的变量也不例外,只不过它多了一种思想:数...

2019-09-11 22:54:01 37 0

原创 《JavaScript高级程序设计》学习笔记8:JavaScript是松散类型的

JavaScript让我喜欢的第一点是其松散类型的特点。(与C++比) ECMAScript的变量是松散类型的,所谓松散类型就是可以用来保存任何类型的数据。 var message = 'hi'; message = 100; 除了上面这个简单的例子,JavaScr...

2019-09-09 21:41:05 54 0

原创 《JavaScript高级程序设计》学习笔记7:确定的东西、上下文

函数的参数是按值传递还是按引用传递,这个问题是经常被讨论的。 ECMAScript中所有函数的参数都是按值传递的。 个人觉得,理解这类问题要抓住变的东西和不变的东西。不变的东西就是确定的规则和语法,比如. ECMAScript变量可能包含两种不同数据类型的值,基本类型值和引用类型值。基本类型...

2019-09-06 08:09:31 20 0

原创 《JavaScript高级程序设计》学习笔记6:由label标签理解break和continue

一页页的看书才发现有label语句这么个东东。书中给出的例子是这样的: var num = 0; outermost: for (var i = 0; i < 10; i++) { for (var j = 0; j < 10; j++) { if (i ...

2019-09-04 09:09:32 43 0

原创 《JavaScript高级程序设计》学习笔记5:JS也有位操作

我们知道「位操作」是偏底层的操作,JavaScript虽然是一门偏前端的语言,但也是支持位操作的。比如计算一个数值的二进制补码,跟我之前了解的一样: 1. 求这个数值绝对值的二进制码 2. 求二进制反码 3. 得到的二进制反码加1 而JavaScript有意思的地方是: ECMAS...

2019-09-02 22:34:00 27 0

原创 Mac VS Code快捷键(外接键盘)

1. 多行注释:Win + / 2. 格式化代码:Shift + Alt + F

2019-09-01 11:03:57 69 0

原创 《JavaScript高级程序设计》学习笔记4:类型转换

第3章讲了很多类型转换的内容。 先回忆一下C++这方面的知识。C++是强类型语言,所以写代码时,必须选择一种类型,为此,《C++ Primer》还给出了「如何选择类型」的建议,C++中类型转换的规则就取决于「类型所能表示的值的范围」,转换发生在算术类型之间。注意这里算术类型包括整型和浮点型,而整...

2019-08-31 10:38:45 24 0

原创 《JavaScript高级程序设计》中的那些「最」,更新...

1. Boolean类型是ECMAScript中使用得最多的一种类型。P26 2. Number类型应该是ECMAScript中最令人关注的数据类型了。P27 3. 一元操作符是ECMAScript中最简单的操作符。P36 4. 加法和减法这两个加性操作符应该说是编程语言中最简单的算术操作符...

2019-08-30 21:30:57 40 0

原创 tesseract编译成功了

之前,没有编译成功,然后放弃了。促使我再次去编译的原因是,我在Windows server 2008 R2系统上执行命令行时报错了。 后来发现,其实只要给系统装几个升级包就可以了,大家可以参考这里。 但还是记录一下编译的过程: 之前编译,基本是按这篇文章进行的。前面几步很顺利,到后面编译te...

2019-08-30 08:36:01 394 0

原创 《JavaScript高级程序设计》学习笔记3:块级作用域

第3章开始讲JavaScript的基本概念,编程语言的基本概念大都从变量、类型开始。 ECMAScript的变量是松散类型的,所谓松散类型就是可以用来保存任何类型的数据。 对于一直写C++的人来说,刚开始用JavaScript,这个“松散类型”是最让人舒服的。 3.1-3.3节让我印象最...

2019-08-29 22:05:29 31 0

原创 《JavaScript高级程序设计》学习笔记2:域

第2章是讲如何在HTML中使用JavaScript,这个话题是绕不开的,因为发明JavaScript正是为了解决Web页面的一些问题。 但这些内容貌似不会经常用到,而且显得老旧。甚至文中在介绍XHTML中JavaScript的用法时直接说: HTML5正快速地被前端开发人员采用,建议读者在学...

2019-08-28 22:13:32 26 0

原创 《JavaScript高级程序设计》学习笔记1:本质、历史和局限

第1章 JavaScript简介中说: 要想全面理解和掌握JavaScript,关键在于弄清楚它的本质、历史和局限性。 JavaScript出现早起,由于微软 Internet Explorer和Netscape Navigator的竞争,出现了JScript(后出现)、JavaScrip...

2019-08-27 22:00:29 24 0

原创 继续学习RPC

之前,稍微接触和学习了一下RPC的概念。 最近,又有了一些认识,记录一下。 首先,进程间为什么需要通信呢? 我做过很长一段时间单进程(多线程)桌面应用的开发,不同的进程一般在不同的机器上,也就是分属不同的应用程序。应用程序之间(进程之间)通信,通过网络(TCP、UDP)、串口(RS424、R...

2019-08-27 14:10:08 31 0

提示
确定要删除当前文章?
取消 删除