不一样的视角,程序员世界里的环保

摘要: 我们身边有很多可以做的技术环保工作。比如说,在Linux下少用root用户,SQL的时候,delete前先select,这样,你就不会做出一些让你后悔的事。不会让你重头来过,从而至少不会浪费电能。写代码的时候要很小心管理好内存,以及各种资源,和线程并发,组织好的你的代码中的业务逻辑,做好单元测试,自动化回归测试等。

我们身边有很多可以做的技术环保工作。比如说,在Linux下少用root用户,SQL的时候,delete前先select,这样,你就不会做出一些让你后悔的事。不会让你重头来过,从而至少不会浪费电能。写代码的时候要很小心管理好内存,以及各种资源,和线程并发,组织好的你的代码中的业务逻辑,做好单元测试,自动化回归测试等。这样你就可以少一点遇到BUG,在遇到BUG时少一些时间去做调查。操作电脑的时候少下一些破解软件,少访问一些奇怪的网站,这样,你就会少中一些病毒,少一些损失,少一些重做系统。一样可以节省电能,最重要的是可以节省你的很多时间,让你可以去做一些更有价值 的事情。
当然,除此之外,我们更应该做为一个大气的,高瞻的环保主义者,比如下面的事情:
拒绝IE6。如果你坚决不用IE6,并影响你身边的人,让他们升级IE6,尝试Chrome 或 Firefox,多告诉一下自己身边的朋友,怎么设计口令,怎么在互联网上保护自己的隐私和安全,怎么防木马,这样就能少一些问题,少装两次系统,就能省 一些电,也就能多一些时间去做一些更有意义的事。也是在为整个世界整个人类做贡献。
663b13384066059ff8e30365ab80d7c12d711a95
拒绝抄袭和山寨。如果你鄙视那些赤祼祼地抄袭者,不使用他们的产品,有的人会说你就是想标榜自己的高 尚,ZB,假高尚,大家会说你没有必要。其实并不是,你这样做,其实是为了“环保”,为了“保护一个健康的IT环境”,虽然你没有创新,但是你的行为却是在鼓励创新的环境,这样,如果当整个大环境都是在创新文化影响之下,才会更健康,技术人员也才会被尊重,而我们自己最终会受益。虽然只是抑制抄袭和山寨, 但是我们间接地为社会做了贡献。
43bfe5fac18bc222462f3b8ab986382d93a73e2b
拒绝浮燥。比如:浮燥地创业者们,被风投们一轮一轮地压榨。为了让风投满意,牺牲自己的初衷,去找水军刷排 名,去发垃圾邮件,去烧钱买吆喝,制造虚假的繁荣,等等。另外,少去追那些新的技术,少一些浮夸,不要开口闭口的就是海量数据,高性能,与其这样,还不如多静下心来研究一下那些十来年的技术,思考一下自己身边的问题,一步一步走踏实,少摔几个跟头,这样,你也就能 多一些能力,多一些自信,也就能多做一些事,多解决一些问题,你的职业生源走好了,也就很环保了。
445685757475155bce7f1930d07deb1859990d38
环保需求。当我们分析需求的时候,如果我们能做到不要像“这是到底是谁的错” 一文中那样的来者不拒,如果我们在面对需求能多问这样几个问题:为什么要有这样的需求?这个功能主要能解决什么样的问题?为什么不是另外那一种?可不可以简化一下?其实,我们并不需要创新,只需要真正地问好这几个问题,我们就可以少看着一些弯路,少一些苦逼的加 班,少一些内耗,少一些埋怨,也就可以为这个社会节省下一些资源,从而环保。
5d7ce8e28564874fb36d683603214c988cc7cac6
环保开发。当我们做设计写代码的时候,如果我们多花一些时间去思考一下,我们就可以少一些代码(参看“多一些时间少一些代码”)。 如果我们在一开始多思考一下,不要急着马上去用迭代的方式认识世界,多思考一下怎么把复杂的东西解藕,把复杂的东西简化,怎么做出一个优雅的设计,怎么让我们的程序少一些tricky的东西,怎么让我们的程序变得更简洁,更清楚,更直。
在一开始思考一下未来需求可能的变化,未来软件需要怎么测试,未来的系 统需要怎么的运维,那么,我们可以少一些返工,少一些重构,少欠一些债,少一些低级错误,少承担一些系统上线后的压力。那么,我们同样可以为这个社会节约 一些资源。说得再直白一点,你用更少的代码产生出更高的效益,少耗一些CPU,就能省一些电,间接地保护了环境。
原文链接

转载于:https://www.cnblogs.com/jzy996492849/p/6928870.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/395586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle 会话 lock,相克军_Oracle体系_随堂笔记014-锁 latch,lock

1、Oracle锁类型锁的作用latch锁:chain,链LOCK锁排他锁(X)共享锁(S)2、行级锁:DML语句事务锁TX锁的结构事务锁的加锁和解锁过程只有排他锁不影响读(CR块)3、表级锁:TM行级排他锁(Row exclusive)RX锁当我们进行DML时,会…

TIOBE 10月编程语言排行榜 : GO 问鼎本年度语言 ?

距离2016年度编程语言的公布只剩3个月了,谁将夺得桂冠? 与去年同期相比,2016年只有Go语言和Groovy语言的增长率超过了1%。 需要注意的是,Groovy语言2015年以一个爆炸性增长的收尾,所以到2017年1月左右的增长速度可能不…

使用 ReSharper,输入即遵循 StyleCop 的代码格式化规范

StyleCop 可以帮助强制执行代码格式化规范,ReSharper 可以帮助你更高效地编写代码。把两者结合起来,你便能高效地编写符合团队强制格式化规范的代码来。 本文就介绍如何使用 ReSharper 来高效地遵循 StyleCop 的代码格式化规范。 本文内容 安装插件 Styl…

C# 控件双缓冲控制 ControlStyles 枚举详解

ControlStyles 枚举.NET Framework 4指定控件的样式和行为。 此枚举有一个 FlagsAttribute 特性,通过该特性可使其成员值按位组合。 命名空间: System.Windows.Forms程序集: System.Windows.Forms(在 System.Windows.Forms.dll …

Java 9 将采用新的版本字符串格式

在现有的版本编码格式使用了两年之后,从Java 9开始,Java版本方案将根据业内软件版本编码的最佳实践进行修改。使用或解析Java版本字符串的应用程序开发人员要注意了,因为这种变化可以会影响他们的应用程序。 正如JEP 223所阐述的那样&#xf…

jQuery(爱前端)

一 jQuery 简介 官网:www.jquery.com 口号:写更少的代码,做更多的事情 jQuery 是一个快速、小型的、特性很多的JS库,它把很多事儿都变得简单。jQuery是免费的、开源的。 jQuery 是 DOM 编程领域的霸主,极大的简化了原生…

CentOS 7 firewalld使用简介

2019独角兽企业重金招聘Python工程师标准>>> Centos升级到7之后,发现无法使用iptables控制Linuxs的端口,google之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口: 1.快速使用说明 开启…

一个备份sql server文件.bak还原成两个数据库

一直对这个概念很模糊,今天具体一点。 备份文件只要是正常的.bak文件就好。 数据库>还原数据库 直接填写还原之后的文件名就行。 用一份备份文件还原两个一样的库,只是名称不一样。 转载于:https://www.cnblogs.com/Ly426/p/10209825.html

linux服务器防病毒,Linux系统中你不需要防病毒?_服务器评论-中关村在线

误区4:Linux是无病毒。Linux的安全性这么好,这是否意味着Linux是无病毒吗?现实:Linux是非常安全,并不是没有针对Linux方面的病毒。有许多针对Linux的已知病毒。但是几乎所有的已知病毒对于Linux在本质上都是非破坏性的…

python面向对象-1方法、构造函数

类是指:描述一种事物的定义,是个抽象的概念 实例指:该种事物的一个具体的个体,是具体的东西 打个比方: “人”是一个类。“张三”是人类的一个具体例子 在编程时也是同样的道理,你先自己定义一个“类”&am…

bzoj3503: [Cqoi2014]和谐矩阵

高斯消元解异或方程组。学了bitset。对比如下 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; #define REP(i,s,t) for(int is;i<t;i) #define dwn(i,s,t) for(int is;i>t;i--) #define clr(…

sys模块

与python解释器交互的模块 sys.argv 命令行参数List&#xff0c;第一个元素是程序本身路径 sys.exit(n) 退出程序&#xff0c;正常退出时exit(0),错误退出sys.exit(1) sys.version 获取Python解释程序的版本信息 sys.path 返回模块的搜索路径…

Oracle中SQL语句学习五(统计分组语句group by和having)

oracle&#xff08;41&#xff09; 在 应用系统开发中&#xff0c;进行需要统计数据库中的数据&#xff0c;当执行数据统计时&#xff0c;需要将表中的数据进行分组显示&#xff0c;在统计分组中是通过group by子句、分组函数、having子句共同实现的。其中group by子句用于指定…

做开发十年,我总结出了这些开发经验

本文由云社区发表,原文转载地址:https://www.cnblogs.com/qcloud1001/p/10218876.html 在一线做了十年的开发&#xff0c;经历了网易、百度、腾讯研究院、MIG 等几个地方&#xff0c;陆续做过 3D 游戏、2D 页游、浏览器、移动端翻译 app 等。 积累了一些感悟。必然有依然幼稚的…

2016年4月 TIOBE 编程语言排行榜

4月头条: Visual Basic 正在渐行渐远 COBOL, BASIC 和 FORTRAN 很长一段时间作为主力开发语言被使用。有很多软件使用这些语言来编写&#xff0c;并且发展的不亦乐乎。然而经过多年的发展&#xff0c;COBOL和FORTRAN逐渐被抛弃&#xff0c;而得益于微软的存在&#xff0c;BASIC…

基于zbus的MySQL透明代理(100行)

项目地址 https://git.oschina.net/rushmore/zbus 我们上次讲到zbus网络通讯的核心API&#xff1a; Dispatcher -- 负责-NIO网络事件Selector引擎的管理&#xff0c;对Selector引擎负载均衡 IoAdaptor -- 网络事件的处理&#xff0c;服务器与客户端共用&#xff0c;负责读写&am…

linux path环境变量起什么作用,shell基础(5)PATH环境变量的作用和使用方法

释放双眼&#xff0c;带上耳机&#xff0c;听听看~&#xff01;关于PATH的作用PATH说简单点就是一个字符串变量&#xff0c;当输入命令的时候LINUX会去查找PATH里面记录的路径。比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls这个命令根本不在这个两个目录下…

python3 自动打包部署war包

2019独角兽企业重金招聘Python工程师标准>>> 1 调用maven 命令打包 mvn -B -f D:/workspace/ksdcourse clean package 2 调用tomcat 部署war包 &#xff1b; 需要添加 CATALINA_HOME的环境变量 代码如下&#xff1a; #!/usr/bin/python3# -*- coding: utf-8 -*-impo…

day1作业二:多级菜单操作

作业二&#xff1a;多级菜单 &#xff08;1&#xff09;三级菜单 &#xff08;2&#xff09;可以次选择进入各子菜单 &#xff08;3&#xff09;所需新知识点&#xff1a;列表、字典 要求&#xff1a;输入back返回上一层&#xff0c;输入quit退出整个程序 思路&#xff1a; &am…

JDK源码分析(5)之 HashMap 相关

HashMap作为我们最常用的数据类型&#xff0c;当然有必要了解一下他内部是实现细节。相比于 JDK7 在JDK8 中引入了红黑树以及hash计算等方面的优化&#xff0c;使得 JDK8 中的HashMap效率要高于以往的所有版本&#xff0c;本文会详细介绍相关的优化&#xff0c;但是主要还是写 …