城市直播房产教育博客汽车
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

工作六年后,我对软件开发的认知转变

10月10日 壹世缘投稿
  前言
  大家好,在下蛮咕咕(我是鸽王),好久不见啊。
  最近我司已经放假过年了,在家里就不免会多逛一些稀奇古怪的网站,通过阮一峰的每周新闻,发现了一篇比较不错的英文文章。
  里面的大部分观点我都比较认同,在这里做了一个比较接地气的翻译,分享给大家。
  正文
  在软件产业工作六年后,我对软件行业的一些想法发生了改变。
  以下这些观点是我以前内心比较矛盾,但是现在坚信的事情:
  当你工作在一个开发人员众多且拥有不同开发水平的小组中,使用强类型语言显然更为合适。
  站会(敏捷开发中的站立会议)对于跟进团队中新手的进度来说,非常有用。
  敏捷开发中的迭代复盘会,是有其意义的,前提是为了纠正过往迭代的失误(比如发现一些这样做真蠢!的故事),而不是在一些‘敏捷大师’的教条下,浪费大家的时间。
  软件架构比任何东西都要重要。一个好的抽象,就算是实现的比较拉胯,对于代码来说伤害非常小。但是如果没有好的抽象,就算实现的再漂亮,那也是在堆屎,对代码伤害极大。
  Java并不是那么烂(译者注:看来大佬对Java怨念颇深)。
  炫技的代码通常并不是好代码,一个清晰明了的代码比任何代码都好。
  你永远想象不到垃圾代码能写的多么奇葩。
  所谓的最佳实践(BestPractise)通常是有特定背景的,不具有广泛的适用性。盲目地追随他们会使你成为一个蠢货。
  在不需要的时候强行去设计高度可伸缩的系统,会让你成为一个糟糕的工程师。
  代码静态分析是很有用的。
  DRY(Dontrepeatyourself)不要造轮子:通常是用于避免一个特定的问题,而不是作为一个终极目的,所以不要盲目追求没有重复。
  通常情况下,RDBMS(关系数据库)优于NoSql(特指非关系数据库)。
  函数式编程仅仅是另一种编程手法,而不是灵丹妙药。
  以下是我这一路以来了解到并认可的观点:
  第一,YAGNI(非必要时不加入新代码),其次,SOLID(面向对象设计),第三,DRY(不要重复造轮子),按照这个优先级去写代码。
  铅笔和纸是最好的编程工具,而且经常会用到。
  用纯粹性换取实用性通常是个不错的选择。
  往项目中增加更多的技术框架,通常不是个好选择。
  直接与客户交谈总是能在更短的时间内,通过更高的准确性来暴露更多的软件问题。
  可伸缩性这个词在软件工程师的头脑中有一种神秘而令人震惊的力量。仅仅这一句话就能把他们搞的心力憔悴。
  尽管被称外人称为工程师,但大多数开发人员的决定都是根据个人喜好或者看心情,没有数据的支持。
  有90,甚至93的项目经理明天可能就会消失,并且并不会造成影响,甚至会提升效率。(译者注:这个原文意思不知道我理解的对不对)
  在完成了100多次面试之后,我依然不知道如何让面试变得更好,。(译者注:面试很难真正看清一个人的开发水平)
  以下是这么多年来我依然不变的观点:
  过分强调代码风格、规则或其他细节的人是极端分子,毫无意义。
  代码覆盖率对于提升代码质量没有丝毫帮助。
  在大多数情况下,大应用(Monoliths)的效果是很好的,并不一定要细分成非常复杂的微服务。
  无脑信奉TDD(测试驱动开发)的人是最糟糕的,他们脆弱的小脑袋无法处理不同工作流程的存在。
  在10年后,让我们再看看,这些观点是否会发生变化。
  英文原文
  SoftwaredevelopmenttopicsIvechangedmymindonafter6yearsintheindustry。
  ThingsInowbelieve,whichpastmewouldvesquabbledwith:
  Typedlanguagesarebetterwhenyoureworkingonateamofpeoplewithvariousexperiencelevels
  Standupsareactuallyusefulforkeepinganeyeonthenewbies。
  Sprintretrospectiveshavetheirplacesolongastheyreforactualcoursecorrection(i。e。holyshit,thatwentpoorly!)andnotsomegodawfulagilescummasterdrivenwasteofeveryonestime
  Softwarearchitectureprobablymattersmorethananythingelse。Ashittyimplementationofagoodabstractioncausesnonetharmtothecodebase。Abadabstractionormissinglayercauseseverythingtorot。
  Javaisntthatterribleofalanguage。
  Clevercodeisntusuallygoodcode。Claritytrumpsallotherconcerns。
  Badcodecanbewritteninanyparadigm
  Socalledbestpracticesarecontextualandnotbroadlyapplicable。Blindlyfollowingthemmakesyouanidiot
  Designingscalablesystemswhenyoudontneedtomakesyouabadengineer。
  StaticanalysisisusefulDRYisaboutavoidingaspecificproblem,notanendgoaluntoitself。Ingeneral,RDBMSNoSqlFunctionalprogrammingisanothertool,notapanacea。
  OpinionsIvepickedupalongtheway
  YAGNI,SOLID,DRY。Inthatorder。
  Pencilandpaperarethebestprogrammingtoolsandvastlyunderused
  Tradingpurityinexchangeforpracticalityisusuallyagoodcall
  Addingmoretechnologyisrarelyagoodcall
  Talkingdirectlytothecustomeralwaysrevealsmoreabouttheproblem,inlesstime,andwithhigheraccuracy
  Thewordscalablehasamysticalandstupefyingpoweroverthemindofthesoftwareengineer。Itsmereutterancecanwhipthemintoadepravedfrenzy。Grimactionshavebeenjustifiedusingthisword
  Despitebeingcalledengineers,mostdecisionarepurecargocultwithnobackinganalysis,data,ornumbers
  90maybe93ofprojectmanagers,couldprobablydisappeartomorrowtoeithernoeffectoranetgaininefficiency。
  Afterperformingover100interviews:interviewingisthoroughlybroken。Ialsohavenoideahowtoactuallymakeitbetter。
  Oldopinionsunchanged:
  Peoplewhostressovercodestyle,lintingrules,orotherminutiaareinsaneweirdos
  Codecoveragehasabsolutelynothingtodowithcodequality
  Monolithsareprettygoodinmostcircumstances
  TDDpuristsarejusttheworst。Theirfraillittlemindscantprocesstheexistenceofdifferentworkflows。
  Wellseewhichofthesehaveflippedorchangedatyear10。
  小尾巴
  之前也翻译过一篇比较经典的外文文章,感兴趣的朋友可以回看下之前的文章:
  通俗易懂的生产环境Web应用架构介绍
  参考
  https:chriskiehl。comarticlethoughtsafter6years
  关注我
  我是一名奋斗在一线的互联网后端开发工程师。
  主要关注后端开发,数据安全,边缘计算等方向,欢迎交流。
  各大平台都能找到我
  微信公众号:后端技术漫谈
  Github:qqxx6661
  CSDN:蛮三刀把刀
  知乎:后端技术漫谈
  掘金:蛮三刀把刀
  腾讯云社区:后端技术漫谈
  博客园:后端技术漫谈
  BiliBili:蛮三刀把刀
  原创文章主要内容
  后端开发实战
  后端技术面试
  算法题解数据结构设计模式
  生活趣闻
  个人公众号:后端技术漫谈
投诉 评论 转载

再丢脸的事,也要和孩子站在一起,这是相互信任的根本家长作为一个成年人,常常不能理解自家孩子是怎么想的,就算是自己一手带大的孩子,孩子的很多行为也是家长不能想象的到的。因为孩子在很多时候,他说不清楚,所以说很难好好说话,于……免费桌面宠物手机桌面宠物APP想要让自己的手机桌面充满生机吗?那么不如使用免费桌面宠物领养一只可爱萌宠吧!海量Q萌宠物任你挑选,且类型相当丰富,覆盖了各大动漫、游戏角色,同时更有该角色的精美壁纸等你设置!不……新闻2020年11月4日家政行业早报家政要闻1、重磅:国家十四五规划发布!这些行业,或将成为未来就业风口据光明日报11月4日和新华社北京(白阳、王鹏、曹典新华社)11月3日电,11月3日,《中共中央关……越优秀的人越让人舒服今天,让我对园长妈妈有着更进一步的崇敬。上午班级上户外公开课时,期间有个互动环节,需要小朋友去,邀请在场的听课老师来躺在草地上充当障碍物。有孩子跑过去邀请园长妈妈来……妈妈有这种好身材,生出来的宝宝更加聪明,还真有科学依据有些家长觉得宝宝生下来聪明与否,可能跟家长的遗传因素有关,又或者和孩子后期成长中的营养有关。当然家长认为的这些是毋庸置疑的,宝宝生下来聪明与否除了跟家长认知的遗传和营养有关之外……工作六年后,我对软件开发的认知转变前言大家好,在下蛮咕咕(我是鸽王),好久不见啊。最近我司已经放假过年了,在家里就不免会多逛一些稀奇古怪的网站,通过阮一峰的每周新闻,发现了一篇比较不错的英文文章。……孩子的自主能力教育听我说儿子,快点哈,不要迟到啊!嗯!早晨起床吃早餐,儿子慢慢咀嚼中。看着时间哈!嗯嗯!继续慢慢咀嚼中。知道什么是快点吗?我提高了声音。知道了!他的声音比我的还大。‘好的,大……宝宝蚊虫叮咬后肿得很大怎么办?宝宝蚊虫叮咬后肿得很大怎么办?宝宝被蚊子叮咬后肿得很大,可以用清水或肥皂水清洗被叮咬部位、冷敷,可外涂炉甘石洗剂等止痒处理,必要时就医治疗。宝宝皮肤薄、血液循环较好……夫妻分床睡代表什么?谢邀。个人认为夫妻分床感情一定是岀了问题。既就是有原困的分床,也一定会影响夫妻的感情。夫妻一定是要睡在一起的,睡前的心交流,性交流很重要。睡前十分钟才是夫妻真正身心放松的时刻,……乡下奶奶家住一个月,娃从露西变翠花,网友太真实了文小雪妈妈爷爷奶奶的爱,不仅是一种亲情,也是一种回忆近些年来,老人带娃逐渐成为一种趋势,年轻父母忙于工作没有时间,照顾孩子的重任就落在了老人身上。虽然这种模式被很多……卵黄囊是什么意思?卵黄囊是什么意思?卵黄囊是妊娠囊内的一种膜状囊结构,位于原始消化管腹侧,为胚胎发育提供营养。妊娠早期,卵黄囊大于胚胎,胚胎贴在卵黄囊上,随着胚胎长大,胚胎和卵黄囊分……东北的冬天,自然风光vs人造美景学问分享官东北的冬天。有数不尽的美景。冰雪覆盖的山川河流。挂满枝头的树挂、冰雕。开在冰面上罕见的冰凌花。这些都是大自然最无私的馈赠。真的是鬼……
高血脂患者哪些食物要少吃?远离这5种食物,吃多了血脂会更高如果你在外出差,男人有以下五种行为,证明他心里有你无凉鞋,不夏日!穿上这些舒适吸睛的凉鞋,秒变小区蕞靓的娃河南一姐弟俩吵架,姐姐哭着向妈妈哭诉,网友打弟弟要趁早培养孩子孝敬父母的习惯真实案例解析,家装做全屋整装效果会更好吗?大鹏教育紧跟时代进程下的教育2021年独生子女补贴新政策电动车严查已启动,三四轮车想要合法不被罚,有3点要做到熊磊直播卖瓷器,堂嫂直播卖红薯,杜新枝直播卖什么?准妈妈做胎梦,是胎宝宝在向自己做暗示吗?胎梦对孕妈有影响吗?锦江区15所公办园新招学位1000,预计最早明年春季开学
琬琰是什么意思琬琰词义解释内衣种错误穿法最伤胸部感悟美好甄宓为什么是洛神(曹睿为什么养男宠)2022年中国石墨烯行业产业链上中下游市场分析热议聚热点网 生活笑话多聚美优品是假货吗(唯品会的东西是正品吗)猪肉市场调查报告精选多篇过年元龙:故事明明那么普通俗套,为何会让我们那么“上头”?热评聚 老人不宜多服维生素评估产品转化前,先评估促活策略

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找江西南阳嘉兴昆明铜陵滨州广东西昌常德梅州兰州阳江运城金华广西萍乡大理重庆诸暨泉州安庆南充武汉辽宁