让你如绅士般基于描述编写 Python 命令行工具的开源项目:docopt
在本系列前面四篇文章中,我们介绍了 argparse 的方方面面。它无疑是强大的,但使用方式上略显麻烦。需要先设置解析器,再定义参数,再解析命令行,最后实现业务逻辑。 而今天要介绍的 docopt 则是站在一个全新的视角来审视命令行。你可曾想过,一个命令行程序的帮助信息其实已然…
深度预警:深入理解HBase的系统架构
HBase的构成物理上来说,HBase是由三种类型的服务器以主从模式构成的。这三种服务器分别是:Regionserver,HBaseHMaster,ZooKeeper。其中Regionserver负责
一览GitHub上最受程序欢迎的5大Java开源项目
GitHub上有很多Java项目。(准确地说,大概是744K个)。但是开发人员最兴奋的是哪些项目?今天,小编列举了GitHub上一些最流行的Java项目。从Mockitos到Guava,以及java-
Docker 容器环境下 Node.js 应用程序的优雅退出
Docker 容器环境下 Node.js 应用程序的优雅退出,也就是在程序意外退出之后服务进程要接收到 SIGTERM 信号,待当前链接处理完成之后再退出,这样是比较优雅的,但是在 Docker 容器中实践时却发现容器停掉时却发生了一些异常现象,服务进程并没有接收到 SIGTE…
如果有人问你 JFinal 如何集成 EhCache,把这篇文章甩给他
废话不多说,就说一句:在 JFinal 中集成 EhCache,可以提高系统的并发访问速度。 可能有人会问 JFinal 是什么,EhCache 是什么,简单解释一下。 JFinal 是一个基于Java 语言的极速 Web 开发框架,用起来非常爽,谁用谁知道。EhCache 是…
Python 从入门到精通:一个月就够了!
选自Medium,作者:Jhankar Mahbub,机器之心编译,参与:王子嘉、Geek AI。 要知道,一个月是一段很长的时间。如果每天坚持用 6-7 小时来做一件事,你会有意想不到的收获。 现在,我们先将月计划细化成周计划。 第五天:数据结构(6 小时):栈,队列,字典,…
国庆佳节第四天,谈谈我月收入增加 4K 的故事
在我下定决心改变的这将近 1 年的时间里,遇到了很多很多有故事的人,以及有趣的事。自我的认知改变特别大!尤其是收入,比去年同时期增加了 4K。 4K,可能也就买 100 斤猪肉。但是对于身处九朝古都——洛阳的我来说,算得上一笔可观的收入了。强调一下,洛阳是一个不折不扣的三线城市…
免费申请 HTTPS 证书,开启全站 HTTPS
HTTP 报文以明文形式传输,如果你的网站只支持 HTTP 协议,那么就有可能遭受到安全攻击。你可以使用 Google 浏览器打开一个 HTTP 协议网站,会发现 Chrome 在网址的左边将这个网站标记为不安全。 HTTPS 为 HTTP 报文提供了一个加密传输的通道,这样攻…
为什么要将局部变量的作用域最小化?
明人不说暗话啊。这篇文章的灵感来源于《Effective Java》,这本书我买了有好长好长一段时间了,书页都已经泛黄,烙下了时间的痕迹,但我仍然还没有把这本书读完。说来惭愧啊。 为什么呢?总感觉这本书的中文翻译有点拙劣,读起来烦闷枯燥。明明感觉作者说得非常有道理,但就是提不起…
教你用开源 JS 库快速画出 GitHub 章鱼猫
在上一篇文章我们介绍了 Zdog 如何使用,接下来这篇文章我将带领各位利用 Zdog 画出一个 GitHub 章鱼猫(和官方的还是有些差别的)。 通过上面的动画,我们可以对 GitHub 章鱼猫进行分析,给我们最直观的就是 7 部分。头部、脸、眼睛、鼻子、嘴巴、胡须、耳朵。 头…
foreach是循环结构还是函数?
foreach是循环结构还是函数?
《HelloGitHub》第 42 期
分享 GitHub 上有趣、入门级的开源项目。 这是一个面向编程新手、热爱编程、对开源社区感兴趣 人群的月刊,月刊的内容包括:各种编程语言的项目、让生活变得更美好的工具、书籍、学习笔记、教程等,这些开源项目大多都是非常容易上手,而且非常 Cool。主要是希望大家能动手用起来,加…
面试官:兄弟,说说基本类型和包装类型的区别吧
六年前,我从苏州回到洛阳,抱着一幅“海归”的心态,投了不少简历,也“约谈”了不少面试官,但仅有两三个令我感到满意。其中有一位叫老马,至今还活在我的手机通讯录里。他当时扔了一个面试题把我砸懵了:说说基本类型和包装类型的区别吧。 我当时二十三岁,正值青春年华,从事 Java 编程已…
JVM 性能调优实战之:一次系统性能瓶颈的寻找过程
原文出处:Defonds玩过性能优化的朋友都清楚,性能优化的关键并不在于怎么进行优化,而在于怎么找到当前系统的性能瓶颈。性能优化分为好几个层次,比如系统层次、算法层次、代码层次…JVM的性能优化被认为
java new一个对象的过程中发生了什么
来自:java一日一条java在new一个对象的时候,会先查看对象所属的类有没有被加载到内存,如果没有的话,就会先通过类的全限定名来加载。加载并初始化类完成后,再进行对象的创建工作。我们先假设是第一次
一件事,做得快,还是好?
前段时间读 Jeff Atwood 的一篇博客,里面有一段话说得蛮好的:“沿着那条路冲下去,一定要快,如果有什么挡住了去路,绕开它。” 这段话的弦外之音就是在说:做一件事,不要刻意追求完美、极致,而是要追求快速地迭代。 大家都知道,Google Chrome 浏览器的迭代速度非…
学Python,从列表推导到zip()函数,这五种技巧应知应会
选自towardsdatascience,作者:Peter Nistru,机器之心编译,参与:思。 机器之心已经介绍过很多 Python 教程,从非常齐备的长教程:一文掌握 Python 关键代码,到一些好玩的小技巧:Python 技巧 101,它们从不同的层面安利着 Pyth…
Node.js 服务 Docker 容器化应用实践
本篇不会讲解 Docker 命令的使用、安装等,因为在之前一篇文章 一文零基础教你学会 Docker 入门到实践 中也已经讲解的很详细了,不清楚的可以点击链接回头在重新看下,本篇重点是介绍 Node.js 项目如何进行 Docker 容器化及一些实践优化,还有一些常见的问题,当…
使用 Fabric 自动化部署 Django 项目
在上一篇教程中,我们通过手工方式将代码部署到了服务器。整个过程涉及到十几条命令,输了 N 个字符。一旦我们本地的代码有更新,整个过程又得重复来一遍,这将变得非常繁琐。 使用 Fabric 可以在服务器中自动执行命令。因为整个代码部署过程都是相同的,只要我们用 Fabric 写好…
GitHub上还有这些超有意思的项目合集
没有1K以上的星星都不好意思推荐给大家!林子大了,啥项目都有,这里给大家搜罗了10个Github上有趣的项目。如果你就着辣椒食用本文,一定会激动的流下泪来......1.一行代码没有|18kstars