有人说过程序员和码农的本质区别就是程序员会不断探索提高生产力的方法。思维模式的转变是提高生产力的最好方式,但打磨我们的工具也是十分有意义的事,本文将从开发环境,自动化开发,开发工具等几个方面针对前端开发效率的提升和代码质量的提高来展开讨论。
每件事都是一个程序,开发也像程序一样,每个步骤都是一段代码,当开发规模随着文档、代码、需求而增加时,重复的步骤变得越来越多。此时,如果可以像抽象代码一样抽象出一些相同操作就可以大大提升开发效率。因此,出现了更多更优质的工具来代替人工做一些不断重复的开发以减少程序员的工作量。
继续阅读 »
分析:使用回溯法求解。为了提高搜索效率,在选择“分支”时应该挑选“分支因子”较小的子树优先搜索,下面的order函数即为此目的而设。它根据单词所含字母在全句中出现的频度以及单词的长度给单词打分,然后根据分值对单词进行排序(升序),排在最后的单词会被首先破译,接下来是排在倒数第二的单词,依次进行。如果不使用order函数对加密后的单词进行排序就直接尝试破译也是可以的,不影响程序的正确性,只是会降低时间效率(虽然在本题中,仍不会超时)。more
继续阅读 »
文/Robin
Instant Messaging,简称 IM,也就是「即时通信」,是一种通过网络进行实时通信的系统,允许两人或多人使用网络即时的传递文字消息、文件、语音与视频交流。
相比于邮件,IM 具有更高的通信效率,但是事情的处理效率未必比邮件高。在我的 MacBook 上,安装了如下的 IM:微信、Mixin Messenger、飞书、Signal、QQ、企业微信、Telegram、钉钉、WhatsApp、Wire,而且大部分都要每天都打开使用的。
纯粹的 IM,可能更关注通信本身,比如 Mixin Messenger、Signal、Telegram、WhatsApp、Wire。集大成的 IM,比如微信、飞书、钉钉
继续阅读 »
文/Robin
本站推广
币安是全球领先的数字货币交易平台,提供比特币、以太坊、BNB 以及 USDT 交易。
币安注册: https://accounts.binancezh.pro/cn/register/?ref=11190872
邀请码: 11190872
一 引子
有个知友邀请我回答问题,问道:「MySQL 每次查询一条数据查 10 次和一次查询 10 条数据效率有多少差距?」
总体上来说,一次查询 10 条数据效率是高于每次查询一条数据查 10 次的。但究竟差距多少,具体的数据很难说。这本来是一个很简单的问题,但我还是想亲身实践下,给以后碰到这个问题的朋友一点参考。我先做一个模拟,然后在文末给出一个分析。
继续阅读 »
content
{:toc}
起因
不知道大家是怎样安排自己的日常计划的,我习惯是建立一个仓库,按照年/周记录在 markdown 里,平时这个仓库也写点简单的 demo,目录类似如下:
bash
week
├── 2016
├── 2017
├── 2018
│ ├── 20180102.md
│ ├── 20180108.md
│ ├── 20180115.md
│ ├── 20180122.md
│ ├── 20180126.md
│ ├── ...
│ ├── ...
│ ├── ...
│ ├── 20181007.md
│ ├── pixi.md
│ ├── schedul
继续阅读 »
tbox之前提供的stackfull协程库,虽然切换效率已经非常高了,但是由于每个协程都需要维护一个独立的堆栈,
内存空间利用率不是很高,在并发量非常大的时候,内存使用量会相当大。
之前考虑过采用stacksegment方式进行内存优化,实现动态增涨,但是这样对性能还是有一定的影响,暂时不去考虑了。
最近参考了下boost和protothreads的stackless协程实现,这种方式虽然易用性和灵活性上受到了很多限制,但是对切换效率和内存利用率的提升效果还是非常明显的。。
因此,我在tbox里面也加上了对stackless协程的支持,在切换原语上参考了protothreads的实现,接口封装上参考了boost的设计,使得更加
继续阅读 »
闲话
最近偶尔被墙,不得已用了下 bing ,其搜索质量跟 google 相比差一两个档次(百度就更不用说),于是敲代码的效率严重下降。
唉,谁叫我是一个 google/stackoverflow 搬运工呢,要是哪一天完全翻不动,就不干程序员了!不过在此之前,我想着能留下点什么有用的给后人就好,所以写下这篇文章。
继续阅读 »
由于python实现了多线程的功能,现在为了提高计算机多核的效率,需要把多线程的程序修改成多进程的计算模式,但是发现进程和线程的执行还是有很大区别。也许之前的工作中没有关注过多线程和多进程的程序吧!
子进程和父进程的工作原理
在python中,使用os.fork()之后,在内存中把父进程的代码及内存分配情况拷贝一份生成子进程的运行空间,这样子进程的所有代码都与父进程一样,两个进程之间的运行是独立的,互不影响。
继续阅读 »
对于IDEA这样的神器,每个人都必然会有很多个性化的配置,那么如何在多台终端同步IDEA的配置呢?配合强大的坚果云同步功能来自动同步你的配置文件吧。另外坚果云免费版虽然对流量有限制,但是同步一个小小的配置文件夹还是足够了。
此方法也适用于JetBrains家的其它IDE系列产品,稍有不同之处请自行调整。
- IntelliJ IDEA,一套智慧型的Java整合开发工具,特别专注与强调程序员的开发撰写效率提升
- PHPStorm,PHP集成开发工具
- PyCharm,智能Python集成开发工具
- RubyMine,一个为Ruby和Rails开发者准备的IDE,其带有所有开发者必须的功能,并将之紧密集成于便捷的开发环境中
-
继续阅读 »
程序员在增长自身技术的同时,也应该改善下开发体验。
去繁从简是提升开发体验的一大要诀,很多IDE号称功能很强大,其实实际用到的却寥寥无几。而且响应速度极慢,一旦机子性能不好,就会严重拖慢开发效率,这也是我弃用IDE的原因,这里并不是说IDE不好,只是我个人观点。
继续阅读 »