用 Dominic Tarr 的话来说:“流是 Node 中最好的,也是最容易被误解的想法。”即使是 Redux 的创建者和 React.js 的核心团队成员 Dan Abramov 也害怕 Node 流。
这是一个移动端工程师涉足前端和后端开发的学习笔记,如有错误或理解不到位的地方,万望指正。 Node.js 是什么 传统意义上的 JavaScript 运行在浏览器上,这是因为浏览器内核实际上分为两个部分:渲染引擎和 JavaScript 引擎。前者负责渲染 HTML + CSS,后者则负责运行 JavaScript。Chrome 使用的 JavaScript 引擎是 V8,它的速度非常快。 Node.js 是一个运行在服务端的框架,它的底层就使用了 V8 引擎。我们知道 Apache + PHP 以及 J
1. 基本概念 1.1. 流的历史演变 流不是 Node.js 特有的概念。它们是几十年前在 Unix 操作系统中引入的,程序可以通过管道运算符(|)对流进行相互交互。 在基于 Unix 系统的 MacOS 以及 Linux 中都可以使用管道运算符(|),它可以将运算符左侧进程的输出转换成右侧的输入。 在 Node 中,我们使用传统的 readFile 去读取文件的话,会将文件从头到尾都读到内存中,当所有内容都被读取完毕之后才会对加载到内存中的文件内容进行统一处理。 这样做会有两个缺点: 内存方面:占用大量
流(Stream)是驱动 Node.js 应用的基础概念之一。它是数据处理方法,用于按顺序将输入读写到输出中。
其实 IO 也就是搬东西,包括网络的 IO、文件的 IO,如果数据量少,那么直接传送全部内容就行了,但如果内容特别多,一次性加载到内存会崩溃,而且速度也慢,这时候就可以一部分一部分的处理,这就是流的思想。
在Node.js中,流(Stream)是一种用于处理数据的抽象接口。它提供了一种有效的方式来读取或写入大量数据,而无需一次性将整个数据加载到内存中。
今天和大家来一起聊一个即将推出的跨 JavaScript 运行时的 Socket API 。
模块化是一种设计思想,利用模块化可以把一个非常复杂的系统结构细化到具体的功能点,每个功能点看作一个模块,然后通过某种规则把这些小的模块组合到一起,构成模块化系统。
临阵磨枪,不快也光。对于成功的编程面试来说,准备和知识面一样重要。准备使你有信心参加面试,而不用担心莫名的紧张情绪。如果第一次参加编程面试,这一点尤其重要。
Node.js,一个在开发者中口碑相传的JavaScript运行环境,以其单线程事件循环而著称。但你知道吗?在这个简单的架构之下,隐藏着强大的功能等待被发掘。今天,就让我们一起探索Node.js的五大特性,它们能极大地丰富你的开发体验,包括:
Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。Node.js 由Node.js Foundation(已与JS Foundation合并为OpenJS Foundation)持有和维护,亦为 Linux 基金会的项目。Node.js 采用 Google 开发的 V8 运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于资料密集的即时应用程序。
前几天,Node.js v18作为当前的稳定版本发布了。我们归纳了 v18 的一些更新。
在本文中,我们将探讨Node.js中的流概念,了解可用的不同类型的流(可读流、可写流、双工流和转换流),并讨论有效处理流的最佳实践。
刚开源不到一个月就获得了 19.5k star!看起来马上就会成为 Node.js 和 Deno 的一大竞争对手了!
Node stream 比较难理解,也比较难用,但 “流” 是个很重要而且会越来越常见的概念(fetch 返回值就是流),所以我们有必要认真学习 stream。
本项目为基于Hyperledger Fabric区块链的供应链资产跟踪解决方案,项目主要包括链码和Web应用两部分。Fabric链码采用GOLANG开发,负责维护资产的状态,后台为采用Node.js开发的Web应用,负责为用户提供访问区块链上资产的操作界面,例如资产的创建、所有权转移等操作。
今天和大家一起来聊聊最近又一个新发布的 JavaScript 运行时:WinterJS。
蚂蚁区块链合约平台支持 Solidity 智能合约,针对合约源代码的编译,可以直接通过蚂蚁区块链 Cloud IDE 合约开发环境进行合约编译、部署、测试和调试。 本文介绍由蚂蚁区块链平台提供的 Solidity 编译工具 solc-js 的 下载、安装 和 使用方式 。
Bun 是一个现代的JavaScript运行环境,如Node, Deno。主要特性如下: 启动速度快。更高的性能。完整的工具(打包器、转码器、包管理)。
很多刚接触区块链的开发者面临的问题,是如何上手实践基础的区块链应用开发技术,如何了解它的关键技术实践点。本文介绍如何采用Docker容器技术,快速构建私有节点的比特币测试网络(bitcoin-testnet),并结合Node.js程序语言例子,说明如何调用比特币钱包节点提供的RPC接口服务,实现涉及比特币区块链的具体应用功能。
本书作者死月是 Node.js 核心贡献者(Node.js Core Collaborator)之一,CNode 社区版主之一,杭州 Node Party 组织者之一,曾任大搜车无线架构组 Node.js 团队负责人;浙江大学工程硕士,退役 OI、ACM 选手。
Systemd (System Daemon),根据 Linux 命名惯例,字母 d 是守护进程 daemon 的缩写。如 Systemd 名字的含义一样,它作为 PID 1 进程,守护整个系统。Systemd 是一系列工具的集合,其作用也远远不仅是启动操作系统,它还接管了后台服务、结束、状态查询,以及日志归档、设备管理、电源管理、定时任务等许多职责。
2021年5月12日, stackblitz 团队在 谷歌 I/O 上提到了一下的内容:
Hyperledger Fabric使用Go语言编写,因此需要安装Go语言环境。可以使用以下命令安装:
https://hyperledger-fabric.readthedocs.io/en/release-1.2/peers/peers.html
Stream 中文翻译“流”。 其一个重要的的特点就是为按需处理,即“读一点数据处理一点数据”。 日常生活中最常见的“流”就是音视频流了。 当然,作为编程人员我们知道,除了音视频流,还存在字节流、比特流等。
内容 | Space-O Technologies 编译 | Aholiab 以太坊是区块链开发领域最好的编程平台,而Truffle是以太坊(Ethereum)最受欢迎的一个开发框架,最近营长也收到很多询问如何开发Dapp的咨询,这是我们营长今天打算介绍一下Truffle的原因。 俗话说,Talk is cheap,实战是最重要的事情,这篇文章不讲原理,只讲如何搭建环境,手把手教你运行第一个区块链程序(Dapp)。 什么是以太坊Dapp? 简单来说,以太坊Dapp是一个去中心化的web应用,这个应用可以被
Hyperledger Fabric是一种联盟区块链,Fabric区块链也支持智能合约,被称为链码(Chaincode)。Fabric链码就是一个标准的(运行在docker容器中的)操作系统进程,通过gRPC协议与Fabric节点通信。因此理论上可以使用任何语言开发Fabric链码。目前官方提供了三种开发语言的Fabric链码开发工具包:Go、Java和Node.js,本文将介绍如何使用node.js开发Fabric链码。
2006年秋天,Google 认为要运行现代 Web 应用,浏览器必须有一个性能非常强劲的 Java 引擎,于是开发了一个高性能的开源 Java 引擎,名为 V8。
其实智能合约一点都不智能,它只是开发好的一段程序部署在区块链上,我们可以调用其中的方法而已。
目前众多的山寨币都是基于以太坊开发出来的ERC 20标准代币,这也是为什么我要研究这个的原因,想看明白这些山寨币的潜在价值,从纯技术的角度来说,这些山寨数字货币似乎都没有太大的价值,因为随着以太坊工业级的开发平台形成,个人也可以开发和发行代币的,这篇文章就是要讲一讲如果使用Node.js,我们该怎么搞的问题。所以,从经济的角度来说,山寨数字货币存在极大的风险(发行方几乎0成本),那么现在市场上的溢价又是从哪里而来呢?从发行方想要用这个代币做什么事情而来,ETH生态你可以理解为“阿里巴巴”,众多的山寨数字货币,你可以理解为在“阿里巴巴”这个生态里的众多企业,有人发行了流量币,专门在电商领域里导流量来赚钱,而这个流量币是发行方用来募集资金所用,流量币的价值,在于发行方使用募集来的资金,去做这个导流的事情,这是一种通俗的讲法。
一个不想写后台的前端不是一个好全栈,前端也可以玩转区块链Web3.js开发。 老吴(北京志顶科技有限公司技术总监、区块链专家)针对前端工程师如何玩转Web3.js开发后端钱包这一主题,分享了自己开
这学期的安全学课程有个作业,内容是写一个软件实现 SHA3 Hash 值的快速计算。想一想老师这么安排,大致上也有一种推广新的密码学算法的意图。既然希望应用起来,天然跨平台的 Web 显然是一项非常具备优势的技术,想到 HTML5 有定义网页与文件系统交互的 File API 标准,而且很多浏览器已经实现,基于浏览器端,实现一个 Sha3 的在线哈希岂不是更好?
文章目录 npm 是什么? 安装 npm 更新 npm package.json 文件 package.json 如何创建 package.json 的内容 dependencies(生产环境)和 devDependencies(开发环境)的区别 指定安装包的版本 自定义 package.json 安装包文件 引用文件库 npm 是什么? npm(node package manager):node.js 的包管理器,用于node插件管理(包括安装、卸载、管理依赖等) ,npm 是随同 node.js 一
前面提到的fabric示例(如first-network和e2e-cli)都只是在单机上的简单测试,启动一个cli命令行容器来与网络成员节点进行交互,通过在cli容器中手动输入命令完成一系列操作。
本文我们会介绍Hyperledger Fabric的基础知识,并了解如何充分利用这个多功能的区块链框架。
Ganache 是以太坊开发领域的先驱,自 2016 年以来帮助 DApp 开发者和爱好者构建、测试和探索区块链。我们很高兴地宣布最新版本的 Ganache 发布了,分叉(fork)性能提高了 30 倍,并与 Infura 整合,允许你免费访问存档数据,重放历史交易。
关于区块链的技能掌握,提到最多的就是Go语言和C++、Java,但是很多人产生了歧义,认为只有这几种语言才可以,CDA数据分析研究院通过调查发现,实际并不是这样的。
随着 WebAssembly 在客户端的发展,WebAssembly 也正在从客户端发展到服务端,这与当年Java 的发展路径非常相似。
本文主要介绍用web3.js访问以太坊节点的几种方式,主要包括HTTP和Web两种访问方式。
如果你喜欢观看而不是阅读,这里有一个视频指南:https://www.youtube.com/embed/YjQj6uk9M98
在我们开始之前,如果你还没有这样做,你可能希望检查是否已经在开发区块链应用程序和/或运行Hyperledger Fabric的平台上安装了所有前提条件。
原作者 William Belk 编译 CDA 编译团队 本文为 CDA 数据分析师原创作品,转载需授权 2017 年哪些开源项目值得关注?让我们来看看 2017 年的 6 大热门开源项目。以下列表显示了开放源码社区在过去十年的发展程度。这里所有提及的项目(Lab41除外)均于 2014 年之后发布,而且每个项目都已在各自的社区中发挥重要作用。 TensorFlow Google 的 TensorFlow 于 2015 年发布,是一个可扩展的神经元机器学习库。使用TensorFlow,我们可以通过构建管
备受期待的 Deno 项目 终于发布了 1.0 版本!Deno 是由 Node.js 的创始人 Ryan Dahl 创建的,旨在解决他所说的“我为 Node.js 感到遗憾的十件事”。
最近报名参加了硅谷区块链举办的《智能合约开发课》第二期培训班,根据培训要求,不能透露课程的内容,但我会在steemit上不断地记录我的成长过程。 https://steemit.com/cn/@speeding/smart-contract-development0 Ethereum上的智能合约开发对Windows不太友好,培训课上的所有例子都是运行在老师提前安装好的一个Ubuntu虚拟机上,为了加深对课程的印象,我在Windows上把Truffle等安装过程跑了一遍。 一、几个术语介绍 ---- 1、
别人写好的、具有特定功能的、我们能直接使用的模块即第三方模块,由于第三方模块通常都是由多个文件组成并且被放置在一个文件夹中,所以又名包。
本文介绍了在开源界比较有名的六个项目。如果你对其中的某个项目不了解的话,赶快来学习一下吧。 今天,让我们一起来看一下2017年开源界的六个顶级玩家。下面列出的几个开源项目反映了开源社区在过去几年来发展
领取专属 10元无门槛券
手把手带您无忧上云