如果你从事编译器或解析器的开发工作,你可能对lex和yacc不会陌生,PLY是David Beazley实现的基于Python的lex和yacc。作者最着名的成就可能是其撰写的Python Cookbook, 3rd Edition。我因为偶然的原因接触了PLY,觉得是个好东西,但是似乎国内没有相关的资料。于是萌生了翻译的想法,虽然内容不算多,但是由于能力有限,很多概念不了解,还专门补习了编译原理
介绍 你有没有觉得世界越来越多的是关于技术,而你已经在某种程度上被甩在了后面? 你有没有想去做一个网站,但是却从未有过足够的动力去开始吗? 你有没有想过软件世界太过复杂,即使你想做一些属于自己的东西? 好的,我们跟你讲一个好消息!编程没有看上去那幺复杂,我们将给你展示它是多幺的有趣。 本教程不会神奇地将你转变为程序员。 如果你想变得擅长于此,你需要数月乃至数年的时间去学习和练习。 但是我们想展示给
Babel 是一个通用的多用途 JavaScript 编译器。通过 Babel 你可以使用(并创建)下一代的 JavaScript,以及下一代的 JavaScript 工具。 作为一种语言,JavaScript 在不断发展,新的标准/提案和新的特性层出不穷。 在得到广泛普及之前,Babel 能够让你提前(甚至数年)使用它们。 Babel 把用最新标准编写的 JavaScript 代码向下编译成可以
欢迎! 欢迎学习使用Ionic 2 制作移动应用!本书会教会你关于Ionic 2的一切知识,从基础入门到制作应用发布到App商店。 阅读本书的人们也许角度会有所不同,有些人已经熟悉Ionic 1,有些人已经在开始体验Ionic 2,有些人可能都不知道。 无论你在哪一个水准,可能都不重要。因为本书所有课程都解释得明白彻底,没有对Ionic的任何猜测。 同时本书不介绍HTML,CSS和JavaScri
etcd 是一个分布式一致性键值存储,用于共享配置和服务发现,专注于: 简单: 良好定义的,面向用户的API (gRPC) 安全: 带有可选客户端证书认证的自动 TLS 快速: 测试验证,每秒 10000 写入 可靠: 使用Raft适当分布 etcd是Go编写,并使用 Raft 一致性算法来管理高可用复制日志。
Tornado 是一个基于Python的Web服务框架和 异步网络库, 最早开发与 FriendFeed 公司. 通过利用非阻塞网络 I/O, Tornado 可以承载成千上万的活动连接, 完美的实现了 长连接, WebSockets, 和其他对于每一位用户来说需要长连接的程序. Tornado 可以被分为以下四个主要部分: Web 框架 (包括用来创建 Web 应用程序的 类, 还有很多其它支持
欢迎阅读 “Rust 程序设计语言”,一本介绍 Rust 的书。 Rust 是一门帮助你编写更快、更可靠软件的编程语言。高层工程学与底层控制在其他编程语言设计中往往是相互矛盾的;通过平很强大的技术能力与优秀的开发体验,Rust 提供了控制底层细节(比如内存使用)的选择,并免受通常随之而来的所有烦恼。 Rust 因多种原因适用于很多开发者。让我们讨论一些最为重要的群体。 Rust 被证明是可用于大型
Pholcus(幽灵蛛)是一款纯Go语言编写的高并发、分布式、重量级爬虫软件,支持单机、服务端、客户端三种运行模式,拥有Web、GUI、命令行三种操作界面;规则简单灵活、批量任务并发、输出方式丰富(mysql、mongodb、csv、excel等)、有大量Demo共享;同时她还支持横纵向两种抓取模式,支持模拟登录和任务暂停、取消等一系列高级功能。 源码地址:https://github.com/h
很高兴能向大家介绍 Gradle, 这是一个构建系统, 我们认为它是 java ( JVM ) 世界中构建技术的一个飞跃. Gradle 提供了: 一个像 Ant 一样的非常灵活的通用构建工具 一种可切换的, 像 maven 一样的基于合约构建的框架 支持强大的多工程构建 支持强大的依赖管理(基于 ApacheIvy ) 支持已有的 maven 和 ivy 仓库 支持传递性依赖管理, 而不需要远程
也许有很多同学上过 C/C++ 的课后,可以完成一些简单的编程练习,又能在一些网站刷题,但对于如何开发有实际用途的程序可能感到束手无策。本教程希望能以一个简单的项目开发形式,让同学能逐步理解如何从无到有去开发软件。 为什么选择 JSON?因为它足够简单,除基本编程外不需大量技术背景知识。JSON 有标准,可按照标准逐步实现。JSON 也是实际在许多应用上会使用的格式,所以才会有大量的开源库。 这是
作者根据 Robert C. Martin 《代码整洁之道》总结了适用于 JavaScript 的软件工程原则《Clean Code JavaScript》。 本文是对其的翻译。 不必严格遵守本文的所有原则,有时少遵守一些效果可能会更好,具体应根据实际情况决定。这是根据《代码整洁之道》作者多年经验整理的代码优化建议,但也仅仅只是一份建议。 软件工程已经发展了 50 多年,至今仍在不断前进。现在,把
TLS很有用 一般来说,大家会觉得 TLS 是典型的系统工程问题,通常只有要写 HTTPS server 的人才会关注。可实际上 TLS 设置和公司的域名相关,和公司打算提供 的 Web 服务相关,是 CEO 或者至少 CTO 应该了解的。 我曾经以为干机器学习的研究员们一辈子也不需要碰 HTTPS —— 写 demo 的话写 一个 HTTP 服务就好了。可是最近二十年来机器学习技术的发展,大都是
JavaScript30 是什么? JavaScirpt30 是 Wes Bos 推出的一个 30 天挑战。项目免费提供了 30 个视频教程、30 个挑战的起始文档和 30 个挑战解决方案源代码。目的是帮助人们用纯 JavaScript 来写东西,不借助框架和库,也不使用编译器和引用。 官网的 slogan 如下: Build 30 things in 30 days with 30 tutori
Clojure(读作 “Closure”)是 Rich Hickey 发明的一门 Lisp 方言, 它是一门通用编程语言但是着重于函数式编程. Clojure 本身编译到 JVM Bytecode 运行, 而 ClojureScript 编译到 JavaScript 运行. ClojureScript 在不可变数据和 DSL 构造方面的优势使之非常适合配合 React 进行编程和优化, 同时静态分
身为 Ruby 开发者,有件总是令我烦心的事——Python 开发者有一份好的编程风格参考指南(PEP-8)而我们永远没有一份官方指南,一份记录 Ruby 编程风格及最佳实践的指南。我确信风格很重要。我也相信像 Ruby 这样的黑客社区应该可以自己编写这梦寐以求的文档。 这份指南开始是作为我们公司内部的 Ruby 编程指南(由我所写的)。后来,我决定把成果贡献给广大的 Ruby 社区,况且这个世界