React Native入门

React Native是Facebook推出用JavaScript开发iOS和Android应用框架,它跟Cordova和Titanium等用JavaScript创建原生应用的框架有本质的不同,React Native通过编译出来的包就是个原生应用而不是嵌入Web的hybrid应用。所有它的性能比其它开发原生应用的JavaScript框架高出很多。

Build native mobile apps using JavaScript and React

React Native实现一套机制用于JS层于原生模块层通信。(详细介绍文章

Service Worker入门指南

Web网页在离线情况下你是什么也做不了的,Service Worker是Web前端又一次离线情况下保证用户体验的尝试。

Service workers 本质上充当Web应用程序与浏览器之间的代理服务器,也可以在网络可用时作为浏览器和网络间的代理。

Service workers特点:

  • 独立于页面业务逻辑的脚本,它运行在浏览器的后台拥有自己的线程,它无法直接访问DOM。
  • 常用于缓存不经常变更的静态资源和数据。
  • 拦截页面脚本发起的fetch。对于拦截的fetch,你可以转发也可以自定义对其做出响应。
  • 只能在HTTPS协议的页面中进行注册!

PM2实用手册


PM2是Node.js生成环境中的进程管理工具,自带负载均衡功能。
它支持特性有:文件配置、集群模式、热加载、日志管理、系统监控、支持Docker、 启动脚本…等。

Nginx入门指南

Nginx [ engine x] 是一款HTTP请求服务器反向代理服务器,它还是邮件代理服务器和一个通用的TCP/UDP代理服务器。它是有俄罗斯人Igor Sysoev开发。

Nginx主要用于Web服务、反向代理或负载均衡服务、前端业务数据缓存服务。

Python-Logging

Python提供了功能强大且灵活的日志系统模块logging。根据业务需求可以根据自定义的日志事件等级做对应的处理。

Flask-SQLAlchemy

SQLAlchemy是一个ORM(对象关系映射)。基于对目标数据库的原生SQL的抽象,提供了一串和数据库引擎一致的API。这一列表中包括MySQL,PostgreSQL,和SQLite。这使得在你的模型和数据库间交换数据变得轻松愉快,同时也使得诸如换掉数据库引擎和迁移数据库模式等其他事情变得没那么繁琐。

Flask-SQLAIchemyFlask使用SQLAlchemy插件。它为SQLAlchemy设置了许多合理的配置。它也内置一些session管理,这样你就不用在应用代码处理一些基础的事务。

Flask介绍

Flask是Python微框架,基于WerkzeuyJinja2实现。

Flask不包含数据库层,也不会包含表单库或是这个方向的其他东西。Flask建立在Werkezug和Jinja2的桥梁,前者实现一个合适的WSGI应用,后者处理模板。Flask也绑定了一些通用的标准库包,比如logging。其他所有一切取决于扩展。

systemd-单元

一个单元文件可以描述如下内容之一:.service系统服务、.mount挂载点、.socketssockets、.device系统设备、.swap文件路径、.target启动目标、.timersystemd管理的计时器。

systemd介绍

systemd 是一个 Linux 系统基础组件的集合,提供了一个系统和服务管理器,运行为 PID 1 并负责启动其它程序。功能包括:支持并行化任务;同时采用 socket 式与 D-Bus 总线式激活服务;按需启动守护进程(daemon);利用 Linux 的 cgroups 监视进程;支持快照和系统恢复;维护挂载点和自动挂载点;各服务间基于依赖关系进行精密控制。systemd 支持 SysV 和 LSB 初始脚本,可以替代 sysvinit。除此之外,功能还包括日志进程控制基础系统配置维护登陆用户列表以及系统账户运行时目录和设置,可以运行容器和虚拟机,可以简单的管理网络配置、网络时间同步日志转发和名称解析等。

Chocolatey-windows包管理器

Chocolatey是一个windows平台的包管理器,它就像是windows平台的apt-get或yum。它被设计成分散的框架,用于快速安装你所需要的软件和工具。它是建立在PowerShell的NuGet基础架构上。

Markdown手册

概述

Markdown是一种标记语言,Markdown语法目标是:成为一种适用于网络的书写语言。

Scrapy入门

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序。
其最初是为了页面抓取所设计的,也可以应用在获取API所返回的数据或者通用的网络爬虫。

Python爬虫入门

爬虫是获取互联网数据技术的拟物称呼。现在流行用python来实现爬虫,因为python提供了很多好用的官方库和第三方库方便爬虫技术的实现。Node.js也是可以用来实现爬虫的。

Python入门

python主要用途是网页爬虫,大数据分析,人工智能。

变量和数据类型

python中变量就一个变量名,变量名必须是大小写英文、数字和下划线的组合,不能用数字开头。
python中数据类型有:整数、浮点数、字符串、布尔值、空值(None)、List、Tuple、Dic、Set

Mongoose 入门

Mongoose 是一款优雅的基于node.js的monodb对象模型库。
它帮助开发者摆脱了MongoDB繁琐的collection、document操作。提高了开发效率和灵活性。

vscode使用技巧

512px-Visual_Studio_Code_1.35_icon.svg.png

vscode(Visual Studio Code)目前最流行的前端开发工具,它的强大的插件生态和快捷键的操作方式大大的提高了我们生产效率.so,本文记录下vscode常用的一些特性.

Throttle和Debounce

函数节流(Throttle)和函数防抖(Debounce)是在业务开发中经常会用到的一种代码优化方式.它们可以节省计算资源,提升应用的性能和可靠性.

Throtter Function 和 Debounce Function 本质上一种高阶函数,在时间轴上控制函数调用频次.

ES6中的Symbol

Symbol是ES6开始新增的基本数据类型(primitive data type).它最大的特点是每一个Symbol([description])函数返回symbol类型的值是唯一的.它可以作为对象的key以避免key冲突.

1
2
3
4
5
6
7
8
9
10
11
12
const symbol1 = Symbol(); // 可以不传任何参数
const symbol2 = Symbol(42);
const symbol3 = Symbol('foo');

console.log(typeof symbol1);
// expected output: "symbol"

console.log(symbol3.toString());
// expected output: "Symbol(foo)"

console.log(Symbol('foo') === Symbol('foo'));
// expected output: false

JavaScript Code Test

为什么需要测试

随着Web应用越来越复杂,它出错的可能性就会加大。为了保证应用不会出问题,我们需要一遍又一遍手动去点击UI界面检测我们代码是否正常。
这种手动方式耗时又不可靠。通过编写测试代码,可以提高我们编码质量,降低出错可能性。