小项目做了不少,大项目力不从心

2015-07-20 13:12:22 +08:00
 tdifg

身为软件专业的学生,现在在网络公司上班,工作上和业余会写写小工具(主要用python上学的时候用c,但只学算法)。现在一般工作上的问题都能很好的解决,但是一旦要写稍大点的项目就写的非常丑陋,最终只能是勉强能工作而已,后期想要拓展或维护也是根本不可能。
现在需要学习些什么呢?是读别人代码好点还是看看代码大全之类的书?
写代码主要还是兴趣驱动,因为实在不喜欢现在码农的感觉,想要更进一步。

4276 次点击
所在节点    程序员
17 条回复
ZackYang
2015-07-20 13:37:26 +08:00
10行代码的组织: 代码大全, 重构, 代码整洁之道
100行代码的组织: 设计模式(GoF)
>1k行代码的组织: 企业架构模式应用, 领域驱动设计
ZackYang
2015-07-20 13:38:07 +08:00
企业架构模式应用 -> 企业应用架构模式
6IbA2bj5ip3tK49j
2015-07-20 13:46:22 +08:00
@ZackYang 100行就要用设计模式了?!
yyfearth
2015-07-20 14:05:32 +08:00
@xgfan 我觉得应该是以xx行 为单位的来算的代码量
以十记……
以百计……
以千记……
这样比较符合
soli
2015-07-20 15:50:39 +08:00
可能你需要提高的是抽象能力。

站在比较高的角度,把问题尽量合理的抽象,花大部分时间去思考,然后再去动手。
vincenting
2015-07-20 16:33:25 +08:00
对自己代码嫌弃才是最大的驱动力。

---
常规做法就是重构与模式类的书,然后看别人源码,如果你觉得他用了 XXX 模式,就分析为什么用,你有没有更好的重构的方法,可以在保证代码短小的情况下易于拓展/维护。
hitsmaxft
2015-07-20 16:38:42 +08:00
@ZackYang 才1千行就谈企业级,太早了吧,一个库的代码量都不到,至少得5w 行以上+频繁迭代
tdifg
2015-07-20 16:39:48 +08:00
@vincenting 好的,不过现在相关的书貌似都是以java或c#为例来讲的,需要学习新语言吗
KingHL
2015-07-20 16:39:58 +08:00
python的话,需要可以的去使用设计模式吗,很多不都透明了吗?
tdifg
2015-07-20 16:40:40 +08:00
@KingHL 你这句话不通,念起来好难受
KingHL
2015-07-20 16:44:06 +08:00
@tdifg 不好意思 因为写了错别字,“python的话,需要刻意的去使用设计模式吗,很多不都透明了吗?”
vincenting
2015-07-20 17:22:04 +08:00
@tdifg java 很难么?只需要看懂他的 OOP 就行了。
tdifg
2015-07-20 17:27:00 +08:00
@vincenting 曾经考虑学过,一看一本入门书七百来页就吓着了,其中一大半是OOP。
ZackYang
2015-07-20 18:01:51 +08:00
@xgfan
@hitsmaxft

参考而已.
lujiajing1126
2015-07-21 08:20:32 +08:00
关键还是看业务的复杂性

个人觉得大部分几千行到几万行的量级,用好框架,加一些设计模式就能处理的不错

ddd一些是为了抽象更复杂的问题,构建领域模型
Rice
2015-07-21 10:04:03 +08:00
@tdifg 我倒想知道哪些领域的入门书没有几百页的。除了HTML没有别的吧?
就连javascript的入门书也有六百页呢。
tdifg
2015-07-21 11:37:17 +08:00
@Rice 嗯哪,只是看很多枯燥的理论会烦,打算学c#了

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

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

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

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

© 2021 V2EX