如何提高书写代码(编程)的能力?有无相关教程推荐?或经验分享?

2023-07-12 09:45:38 +08:00
 shinelamla
工作四五年了,最近做一些需求时,老觉得代码无从下手。实现方案是有的,但是如何组织代码,恰如其分地分层,封装,抽象代码这块还是经常纠结。

也看过一些设计模式,但是真正能结合到实际的很少。

看别人需求写的代码,又觉得别人好厉害,分层得当,保留了扩展性,但是如果让我从 0 开始写我是想不到这些的。

所以想请教下各位大佬,大家是怎么提高自己编写代码能力的?是否有相关的书籍 / 教程 / 经验 可以分享呀?

想突破下,不想经常纠结怎样写代码才比较顺畅了...
3904 次点击
所在节点    程序员
37 条回复
chendy
2023-07-12 09:50:10 +08:00
多看多写,量堆起来了能力也就上去了
给自己的代码加注释,看看能不能解释明白
尝试调整自己代码的结构,看看有没有优化空间
utfs8889
2023-07-12 09:55:07 +08:00
赞同楼上的,感觉是看得多,但是练得少了
把代码量提升上去就好
miaotaizi
2023-07-12 09:57:52 +08:00
比起写代码的能力, 还不如去提高 沟通能力, 需求分析能力

拓展性啥的, 清晰的业务逻辑面前一文不值
miaotaizi
2023-07-12 09:58:11 +08:00
@miaotaizi 在清晰的业务逻辑面前
lasuar
2023-07-12 09:59:26 +08:00
你既然看过了别人的好代码,为什么不尝试把其中好的模式用到自己的日常工作呢;对于设计模式,你看了也得用熟悉语言写出每个模式的 demo 呀,只有写过了才会产生记忆,才会在需要的时候记起来并且用上。
qloog
2023-07-12 09:59:53 +08:00
可以多看一些优秀的开源项目,学习下里面的分层设计以及为什么这么设计的原因。
version
2023-07-12 10:06:32 +08:00
在如今 ai 的加持下..怎么写业务逻辑代码.已经是很简单的事情.
微服务细分业务场景才是趋势....
整个框架基础代码可以搞设计模式...
具体业务实现..怎么方便怎么来..如果能调教 ai 写部分业务代码.那是最好的.也是未来趋势.
以前你是农民工..现在要往包工头发展才是主要路线..怎么去整合各种开源框架.服务.第三方 api..这样的经验才是重要的
以前追求精益求精.我这个墙体堆砌很平整.完美.不断精益求精...最终只会砌墙
但是后面发现..ai 加持下..机器人都砌墙都比你牛逼便宜了..
ai 下.编程语言基本没差别.也别纠结哪个语言好.哪个性能给力...
最终出货时间..出货成本.出货工期.才是未来趋势..现在还没到卷成本的时候..如果未来工作不好找的时候.编程就和搞硬件一样..拼命的抠成本.
WngShhng
2023-07-12 10:09:33 +08:00
这种情况,看下《代码大全》呗
ZGame
2023-07-12 10:15:27 +08:00
我觉得从可视化角度去抽象代码有奇效。比入假设,controller 层弄成可视化的话,会怎么做,保留哪些信息。以此类推
devilweime
2023-07-12 10:21:07 +08:00
分层才是关键,看下 DDD ,该用什么设计模式直接问 chatgpt ,回答的大差不差
yqf0215
2023-07-12 10:22:28 +08:00
写一个程序,例如后台管理系统,不停的升级功能,会遇到一些需求重复去写,这时候你就会想如何简化这些重复劳动,这时候就会理解设计模式了。
air8712
2023-07-12 10:36:04 +08:00
《重构》
《代码大全》
《编写可读代码的艺术》
《计算机程序的构造和解释》
Leviathann
2023-07-12 10:42:47 +08:00
DDD
idolud
2023-07-12 10:44:04 +08:00
面向 chatgpt 编程
FallenTy
2023-07-12 10:52:43 +08:00
代码量不够,写多了自然会感觉一些地方不对劲
veike
2023-07-12 11:02:51 +08:00
要具备抽象思想,学会如何构建模型,不管是整个系统还是系统的实现细节都要尽量减少耦合,提高内聚性。

不管是设计模式,还是做系统设计,还是做服务架构,都是围绕解耦展开的,解耦是为了后期更容易的扩展。
ifulikeweirdo
2023-07-12 11:16:23 +08:00
刚开始可以,先把代码写出来,写的过程中就会发现有些代码可以抽取出来公共使用,有些代码可以适当留个可扩展的地方,代码写多了就有感觉了
zeal7s
2023-07-12 11:20:26 +08:00
[除了 ECS ,还有什么游戏架构 - Bob Nystrom] https://www.bilibili.com/video/BV1Ch411A7vS/?share_source=copy_web&vd_source=786686888e54210f1b5e731efcb6ec33

视频不长,但是直击要点,对于优化代码结构非常有帮助,演讲者是《游戏编程模式》的作者
HunSiKing
2023-07-12 11:32:38 +08:00
我现在都是给 GPT 打辅助了.
它写完 , 我再改改
yule111222
2023-07-12 11:43:33 +08:00
很多人说多看多写,其实是需要先学习理论,不然看了也是自己瞎领悟,不知道什么是好代码和好代码的设计原则。
推荐《代码整洁之道》《重构》《架构整洁之道》
设计模式没多少用了,很多都落伍了,完全不需要用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/956053

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX