小伙伴你的程序还是停留在糊墙吗?优化代码可以显示程序员的素质欧! 普及一下基础了欧: 一层for简写:y = [1,2,3,4,5,6],[(i*2) for i in y ]       会输出  [2, 4, 6, 8, 10, 12] ,标准形式为: [ 对i的操作 for i in 列表 ] 两层for循环:[对i的操作 for 单个元素 in 列表 for i in 单个元素], 例子: y_list = ['assss','dvv']  [print(i) for y in y_li…
优秀的Stoyan Stefanov在他的新书中(<Javascript Patterns>)介绍了很多编写高质量代码的技巧,比如避免使用全局变量,使用单一的var关键字,循环式预存长度等等. 这篇文章不仅仅从代码本身来考虑如何优化编码,也从代码的设计阶段来考虑,包括书写API文档,同事的review,使用JSLint.这些习惯都能帮助你编写更加高质量的.更易于理解的.可维护的代码(让你的代码在多年之后仍使你引以为傲). 编写可维护的代码 软件的BUG修复需要花费大量的精力.尤其当代码已经发布…
!如何组织css一:css的API 属于基础部分,这部分的能力用“对”和“错”来评判. 比如说把文字设置为红色,只能用color:red:这种写法是对的,其他任何写法都是错的. 二:css框架 不能用“对”和“错”来评判,我们会用“好”.“比较好”.“很烂”.“非常棒”这样的字眼来评判. 按功能划分:控制字体的css集中在font.css文件里. 控制颜色的css集中在coloor.css文件里. 控制布局的css集中在layout.css文件里. 按区块划分:将头部的css放在head.css…
    如何写出高质量的技术博客?答案是:如果你想,就一定能写出高质量的技术博客.看起来很唯心,但这就是事实.有足够愿力去做一件目标明确,有良好反馈系统的事情往往很简单.就是不停地训练,慢慢地,你自己就能找出规律和技巧.所以,要写出高质量的技术博客,首先要解决为什么要写的问题. 为什么要写 我一直很喜欢的一个学习方法是 Learning by teaching 一个课题,如果你能给不懂的人解释清楚,说明你对这个课题的理解足够深入.把一个课题展开来写,你可能会发现某些方面你还写不清楚,这往往说明你…
前言 团队协作开发中,必然存在着不同的代码风格,并且诸如 http body close,unhandled error 等低级错误不能完全避免.通过使用 ci lint 能够及早的发现并修复问题,提高代码质量和幸福感. 目前主流的工具是 golangci-lint,里面集成了许多的 linters,安装及使用看官网文档即可,非常详细易读,本文主要是配合一些样例代码来分析一下相关 linters 的功能. linters deadcode 检查未使用的代码 var a = 100 func fo…
至少很长一段时间内,我个人用的一直是pycharm,也感觉挺好用的,也没啥大毛病 但是pycharm确实有点笨重,啥功能都有,但是有很多可能这辈子我也不会用到,并且pycharm打开的速度确实不敢恭维,即使固态硬盘也只能快了那么一丢丢.所以就尝试了很多IDE工具,最终选择了Sublime我也相信,通过我的介绍,你也会爱上它的. 首先其他语言有的sublime也必须得有,并且更好用,主要有: 集成代码分析 代码的自动补全 git功能的集成 Sublime command-line 工具 不过上述的…
Python开发者用Pythonic这个形容词来描述具有特定风格的代码.这种风格是大家在使用Python语言进行编程并相互协作的过程中逐渐形成的习惯.那么,如何以改风格完成常见的Python编程工作呢?本节将会回答这个问题. 第一条:确认自己所用的Python版本 第二条:遵循PEP8风格指南 第三条:了解bytes.str与unicode的区别 第四条:用辅助函数来取代复杂的表达式 第五条:了解切割序列的方法 第六条:在单次切片操作内,不要同时指定start.end和stride 第七条:用列…
Python提供了一些工具,使我们可以把软件部署到不同的环境中.它也提供了一些模块,令开发者可以把程序编写的更加健壮.本章讲解如何使用Python调试.优化并测试程序,以提升其质量与性能. 第五十四条:考虑用模块级别的代码来配置不同的部署环境 第五十五条:通过repr字符串来输出调试信息 第五十六条:用unittest来测试全部代码 第五十七条:考虑用pdb来实现交互调试 第五十八条:先分析性能,然后再优化 第五十九条:用tracemalloc来掌握内存的使用及泄露情况 第五十四条:考虑用模块级…
用Python可以很容易就能写出并发程序,这种程序可以在同一时间做许多间不同的事情.我们也可以通过系统调用.子进程(subprocess)及C语言扩展来实现并行处理. 第三十六条: 用subprocess模块来管理子进程 第三十七条:可以用线程来执行阻塞式I/O,但不要用它做平行计算 第三十八条:在线程中使用Lock来防止数据竞争 第三十九条:用Queue来协调个线程之间的工作 第四十条:考虑用协程来并发的运行多个函数 第四十一条:考虑用concurrent.futures来实现真正的平行计算…
CleverCode在实际的工作也写过一些低效率的sql语句.这些语句会给数据库带来非常大的压力.最基本的表现就是sql语句执行慢,后来逐渐的去优化和尝试. 总结了一些高质量的sql语句的写法.这里CleverCode总结一下分享给大家. [ CleverCode发表在csdn博客中的原创作品.请勿转载.原创地址:http://blog.csdn.net/clevercode/article/details/46341147] 1 建议一:尽量避免在列上运算       尽量避免在列上运算,这样…