当前位置:首页 > 每日看点

作为一名5年以上开发经验的jaer,你为什么放弃ja?

卡卷网2年前 (2025-01-11)每日看点352

你要相信,在知乎上,每一个ja黑都曾经是ja红。

我本来挺喜欢ja的,在大学的时候ja只是一门选修课,但由于热爱,我当年硬是自学掌握了这门语言,并且ja网络编程写了一个war3的对战平台。

前面几份工作也是ja找的,甚至包括进入阿里。作为知乎某非著名ja黑子,很多人跑来跟我对线,说我对ja一窍不通,我内心平静的像一池粪坑,你扔个砖头,希望听到一声水花,那只能抱歉了,最多几个咕咕的泡泡再冒一团臭不可闻的气味。所以别来跟我对线自讨没趣。

我是什么时候对ja失望的呢?正是进入了阿里。我发现我甚至看不太懂这些人写的ja代码。一开始我以为是我太菜了,后来接触多了我才反应过来。这些人写ja是的啊。

注解滥用

一个函数上面20+个注解,就问你怕不怕?这种代码神仙能吗?我不否认某些注解确实好用,如switch的注解,这个阿里人应该都用过,在一个静态局部变量上面使用switch的注解,变量就会自动进入switch开关配置平台,可以直接在平台上面修改,甚至不需要先在平台上面注册这个开关。但特么还有很多是业务部门自己的自作多情,封装的狗都不用的逻辑,也要封装一个注解出来,调试一下,简直。

炫技

我曾经在阿里见过最炫技的代码是这样:

pulicList<User>getUsers(mapqueryMap){ Stringsql=SqlFactory<User>().where(queryMap).getSQL(); retn(List<User>)newProcRunner().execute(sql,User.class); }

很清爽吧?我第一次见到的时候,也觉得这位作者是个人才,代码写的如此清爽,直到某天我发现它的查询总是有点偏差,但偏偏代码就这么少,那问题一定出在sql对吧,我熟练的Ctrl按住,鼠标点击SqlFactory的时候,发现是一个intece,行,难不倒我,我开始查找所有的实现类,发现没有一个类是明确impl了这个intece的。我查遍了整个项目都没有。你仔细看那个where就应该猛的有一种不好的感觉,这玩意八成压根就是动态的,不然怎么解决注入问题?也就是说这个sql压根就不是模板,而是运行时动态生成一条拼接好的sql,如果想看一下逻辑,那抱歉,恐怕又是一堆又臭又长的ast生成逻辑。。当然我不否认这位哥的技术修为,但是cornercase是需要持续打磨的,这种只管生不管养的项目也多的一逼。

复杂度失控

代码clone下来,IDEA全程红色波浪线,它自己分析分析着就卡死了,完全提示不了任何代码,写ja没有代码提示,那代码还能写?什么代码复杂到IDE都无法分析了?那是人能?最无厘头的是几乎每行代码都异常标红,但是你点击run,居然可以跑,他,居然可以跑!是不是贼恶心?我的不想再看到任何一行ja代码,我感觉我已经ptsd了。

自作多情

学人家C/C++,玩接口和实现分离成两个项目,向slf4j看齐,觉得我出标准,各位来实现,可是我自始自终也没看到你的第二种实现呀?反而是搞一大堆间接依赖,冲突不断,整天都在解决依赖风暴。他两个项目依赖第三方类库,版本还不一样,这没5年脑血栓干不出来这个事儿。

还有那种强行fluentapi,起来的要掉不少头发呢,动不动十几二十个方法的串联。这导致你要修改其中之一,它后面的整个链条上面所有节点全部改一遍,这种事情我在阿里里面的时候,碰到不下于10次。这种代码那简直堪。你别说你看的开源也是这种哈,人家那都是uilder模式,是平级的,就最后一个节点才是作。而不是链条上每个节点的出参是后一个节点的入参这种。

每次打开一个ja文件,看到里面的人自以为是的“封装”,那已经不是代码了,每一行分明写着:“你也配写Ja?”,“小子退后,我要开大了”,“我若不这么写,你怎么会知道老子高考675?”。

我每一天都想逃离这种环境,的,这种玩了命要在一门静态编译型语言里面搞动态化又不肯直接上动态语言的精神氛围。所以我开始寻找脱离写ja的机会,直到我去了阿里云,在里面写go,那简直是我在阿里最愉快的时光了,到不是说阿里云全是go,其实还是有很多写ja的,但重要的是我开始写go了。尽管go某些设计简直逼死强迫症,甚至语义都无法一。如:result,err:=://xxx.xxx(),iferr!=nil判断完了,某些情况下你还是需要判断result。

但,我不在乎,我不用写ja了。很开心。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/8749.html

分享给朋友:

相关文章

怎么用游戏搬砖挣钱呢?

怎么用游戏搬砖挣钱呢?

今天,我把我多年操作的经验分享出来,以供各位老板们学习借鉴,胆小的老板就离开吧,心里承受能力太弱了,会刷新你的认知的。 有些新人在计算收益的时候,会以机器数来计算,其实是有误区的, 比如,一台机器一个月搞400元,平均每天搞13元钱,搞上1…

台积电通知其中国客户,从下周开始,所有 7nm 及以下芯片出货将停止。如何看待这一行为?

台积电通知其中国客户,从下周开始,所有 7nm 及以下芯片出货将停止。如何看待这一行为?

我说美国快要没招了,你信么? 这次台积电宣布停止向中国大陆客户供应7纳米及更先进AI芯片,再加上前段时间台积电对华为的制裁,我们基本可以认为,台积电在高端芯片领域,已经彻底把大陆给拉黑了,这也意味着中美芯片战已经到了最关键的时刻,一旦我们克…

WordPress建站同时面向B端和C端,有什么好的解决方案?

这个很容易实现呀,只不过需要自己开发,整体用权限管理就可以实现了,B端和C端是不同用户权限,C端能看到的菜单入口和B端不一样就行了。技术层面实现没问题的,只不过就是看你们的技术能力和投入了 ,这样的需求应该没有现成的开源插件。只能找人定制开…

有哪些网站,一旦知道,你就离不开了?

有哪些网站,一旦知道,你就离不开了?

这六个网站,一旦用过,基本上是离不开了。都是我超爱的一些网站,基本上每天都用。 1 地图生成器 第一个,我要给大家推荐的是地图生成器。可以下载到各省,各市,各县的svg格式的地图素材。 这些素材导入PPT中都是可以编辑的。 可以单独更改颜色…

为什么现在 AI 已经没啥热度了?

从改名叫大模型那一刻,懂行的就已经放弃了,剩下资本和无知网友还有点后劲 所谓大模型,本质就是一个更大、更快数据库的传声筒。更大更快本身确实很厉害,但依然只是传声筒,和AI根本不沾边 数据库之外仍然一无所知,甚至数据库之内的输出逻辑还要依赖大…

离线可否搭建 GitLab 环境?

离线可否搭建 GitLab 环境?

背景:为什么要使用GitLab CI/CD? 统一工作流程:GitLab CI/CD 为开发、测试和运维团队提供了一个统一的工作流程。开发人员提交代码后,测试人员可以清楚地看到代码的构建和测试情况,运维人员也可以了解软件的部署进度。例如,在…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。