5种类型的程序员

在我的代码旅程和编程冒险中,我遇到过很多奇怪的敌人,以及陌生的盟友。我发现至少有五种不同类型的代码战士,有的人能成为并肩合作的战友,而有些人似乎只能衬托我的每一个计划。

不过,他们在软件开发这个万神殿中也有着自己的地位。如果没有这些不同编程风格的合理搭配,那么你的项目要么需要很长时间才能完成,要么不够稳定或过于完美。

擅于修修补补的程序员

这编码可能不漂亮,但它能工作啊!

这种家伙是公司的基础。当出现错误时,他能快速修复,并且从某种程度上说,不会再坏掉。当然,他不关心代码的外观和易用性,也不在乎其他任何琐碎的事情,他不会浪费时间在毫无意义的废话上面,喜欢直接就干好工作。要用这种人的话,最好的办法是指定一个问题,然后走开。

具有完美主义强迫症的程序员

你想对我的代码做什么?

这家伙并不关心代码的最后期限,也不在乎项目预算,因为这些和编程中的艺术形式相比,对他们而言都是微不足道的。当你终于接收到成品的时候,你除了屈服于这令人惊叹的完美又漂亮的代码之外,别无选择,而正是如此精致,以致于你想在上面做什么都是对这一杰作的亵渎。对于他的代码,只有他自己才有资格去改动。

反对编程的程序员

我是一个程序员。但我不写代码。

他的世界只有一个简单真理:笨蛋才写代码。既然别人已经做过这工作了,那就应该使用他们的代码。他会理直气壮地表示这种开发实践速度有多快,哪怕实际上他需要和其他程序员相同或更长的时间。但是,当你拿到项目的时候,可能实际只有20行代码,非常容易阅读。他可能速度并不非常快,代码也不高效和向前兼容,但是他完成任务所需要的努力一定是最少的。

草率的程序员

你想要什么?这不是起作用了吗?

这家伙不关心质量,因为那是别人的工作。他会快速完成交给他的任务。你可能不喜欢他的工作,其他的程序员也讨厌这样的代码,但管理层和客户喜欢。虽然他现在的代码会导致将来太多的痛苦,但他是保证在最后期限内完成任务的黑马,所以你无法奚落和嘲笑他(不管内心有多么想这么做)。

理论型程序员

好吧,这是一个可能性,但在实践中,这或许是一个更好的选择。

比起应该做什么,这家伙对其他可取的选择更感兴趣。他会花80%的时间茫然若失地盯着电脑想办法来完成任务,15%的时间用来抱怨不合理的期限,4%的时间用来改善选项,然后只有1%的时间放到写代码上。最后你接收到的工作永远伴随着那句“如果我有更多的时间,那么我一定能找到更好的方法来完成任务”。

你是哪一款?

就个人而言,我会将自己归类到完美主义者中。那么,你是哪一种类型的程序员呢?又或者你知道其他的程序员类型是我没有发现的?欢迎分享。

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

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

相关文章

html中怎么定义搜索框?html中search类型?

<!DOCTYPE html> <html><head><meta charset"utf-8" /><title>hello</title></head><body><form action"demo_form.php"method"get">请输入搜索关键字: <input type"search"…

ros(6) service server编程实现

创建代码 turtle_command_server.cpp /*** 该例程将执行/turtle_command服务&#xff0c;服务数据类型std_srvs/Trigger*/#include <ros/ros.h> #include <geometry_msgs/Twist.h> #include <std_srvs/Trigger.h>ros::Publisher turtle_vel_pub; bool pubC…

程序员要如何学英语?

一般来说&#xff0c;程序员可算是英语水平比较好的群体&#xff0c;因为在这个行业&#xff0c;英文资料是最全面、最及时&#xff0c;对英文资料的需求也最迫切的。就我观察&#xff0c;刚入门不久的程序员一般都能查阅英文文档&#xff0c;找到需要的信息。但是另一方面&…

Impala 查询导出到文本,本地系统

Hive查询导出到文本使用 insert overwrite local directory 在Impala中不支持&#xff0c;Impala使用&#xff0c;注意--output_delimiter与-B 一同使用&#xff0c;否则不生效 impala-shell -q "select birthday,b.uid from dw_crawler.bsl_weibo_article a,ods_xxx.…

html怎么设计自动出现提示的数据列表?怎么设计数据列表像百度一样怎么随用户输入而更新

<!DOCTYPE html> <html><head><meta charset"utf-8" /><title>hello</title></head><body><h2>输入查询的城市</h2><form autocomplete"on"><input type"text" id"s…

程序员从优秀到卓越的几点建议

和其他技术一样&#xff0c;编程也有层次阶段之分——业余爱好者、普通级别和专家级别。关于这个问题我问过很多很多次—— 如何从优秀到卓越&#xff1f;这是一个程序员应该扪心自问的最重要的问题。至少&#xff0c;在他们职业生涯的某些时候。 为了给出一个令人满意的答案&a…

ros(7)自定义service数据

创建Persom.srv 新建srv文件夹 在srv文件夹中创建Persom.srv&#xff0c;编辑文件 string name uint8 age uint8 sexuint8 unknown 0 uint8 male 1 uint8 female 2--- string result 修改package,xml add_service_files(FILESPerson.srv )generate_messages(DEPE…

Hive表 Parquet压缩 , Gzip,Snappy,uncompressed 效果对比

创建两张表&#xff0c;通过一种是parquet &#xff0c; 一种使用parquet snappy压缩 创建表 使用snappy CREATE EXTERNAL TABLE IF NOT EXISTS tableName(xxx string) partitioned by (pt_xvc string) ROW FORMAT DELIMITED FIELDS TERMINATED BY \001 STORED AS PARQUET TB…

html中怎么自动获得搜索文本框的光标焦点

<!DOCTYPE html> <html> <head> <meta charset"utf-8" /> <title>hello</title> </head> <body> <form action"demo_form.php"method"get"> <!--一个页面只能指定一个autofo…

ubuntu16.04 + kinetic +turtlebot2配置

安装ros-kinetic请参考ubuntu 16.0安装ros-kinetic 配置turtlebot2 1.更新 sudo apt-get update2.安装turtlebot相应的源 sudo apt-get install ros-kinetic-turtlebot ros-kinetic-turtlebot-apps ros-kinetic-turtlebot-interactions ros-kinetic-kobuki-ftdi ros-kineti…

Impala UDF - Impala调用Hive UDF函数

Impala 中运行 Hive UDF 场景&#xff1a;部分查询需要快速返回&#xff0c;使用Impala进行快速、复杂的查询 1.简单的UDF函数过滤&#xff0c;判断是否包含“好”字&#xff0c;返回boolean类型 import org.apache.hadoop.hive.ql.exec.UDF;/*** ClassName: UdfTest* Descri…

想要成为真正优秀的程序员是不是真的很难?

很多人认为要想成为一名优秀的程序员&#xff0c;那就需要一天24小时每天不断地编程——睁开眼睛要编程&#xff0c;闭上眼睛睡觉的时候还要梦到编程——我认为这是一种矫枉过正的方法。沿着这条路走&#xff0c;只会让你精疲力尽&#xff0c;犹如夸父逐日一般&#xff0c;死在…

Impala查询 - HDFS缓存数据

HDFS缓存数据命令 查看缓存池信息 hdfs cacheadmin -listPools -stats 查看已缓存的数据信息 hdfs cacheadmin -listDirectives -stats Impala表卸载缓存数据 alter table dw_crawler.bsl_zhongda_weibo_article_hive set uncached; 创建缓存池 hdfs cacheadmin -addPool a…

Turtlebot入门-配置网络

配置网络 在工作站和Turtlebot都要同步时钟 输入如下命令&#xff1a; sudo apt-get install chrony ntpdate sudo ntpdate ntp.ubuntu.com 2.获取Turtlebot和工作站的IP地址&#xff0c;在终端执行&#xff1a; ifconfig sudo service ssh status 如果显示ssh: unrecogn…

RTTI-运行时类型识别

RTTI 编辑RTTI&#xff08;Run-Time Type Information)&#xff0c;通过运行时类型信息程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型。中文名RTTI外文名Run-Time Type Information属 于程序函 数typeid目录 1 RTTI介绍 ▪ typeid函数 ▪ …

html怎样实现数据列表的下拉效果

目前支持浏览器&#xff1a;火狐、欧朋。。 谷歌不支持 <!DOCTYPE html> <html> <head> <meta charset"utf-8" /> <title>hello</title> </head> <body> <form action"testform.php"method&q…

Java 调用 Impala - JDBC 调用Impala

java通过JDBC 调用Impala服务 Maven项目中 pom.xml引用<dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>2.7.1</version></dependency><dependency><groupId>…

Linux 、shell 时间函数 - 获取七天前所在周

[rootiZj6c3ral1ugubn9usrsi8Z ~]# echo $(date -d -7day %Y%W) 201912

动态创建二维数组

int **p; p new int*[10]; //注意&#xff0c;int*[10]表示一个有10个元素的指针数组 for (int i 0; i ! 10; i) { p[i] new int[5]; } 这里是将p作为一个指向指针的指针&#xff0c;它指向一个包含10个元素的指针数组&#xff0c;并且每个元素指向一个有5个元素的数…

html上传文件

<!DOCTYPE html> <html> <head> <meta charset"utf-8" /> <title>hello</title> </head> <body> <form action"testform.php"method"get"> 请选择上传的多个文件&#xff1a;&l…