感觉自己的架构水平好弱,请问有没有推荐的最佳实践教材?

2017-01-03 10:30:44 +08:00
 mokeyjay

我是个普通的 PHP 码农,正式工作一年多一点了

框架熟练 CI ,会用 yii2 、 TP3/5

做的项目越多、越大,就感觉自己的架构水平越辣鸡;代码能写、能用,各种编程基本概念都懂,但就是不知道怎么合理运用它们。

例如让我做个 xx 系统,需求我都明白了,但我总觉得自己写出来的代码不够优雅,尤其是如何划分一些类以及类之间的继承、抽象关系上,要么就是写着写着耦合度又提高了;在数据表设计上也是这样,属于那种 道理我都懂,但就是不知道怎么去做 的感觉

所以我想问下各位,有没有那种用实际(或虚拟)案例来做分析,教授如何优雅划分类、设计表这样的教材?载体不限,书籍视频都可以,收费也行

7543 次点击
所在节点    程序员
62 条回复
misaka19000
2017-01-03 12:25:33 +08:00
写 PHP 不就是图快吗,还要啥自行车
glasslion
2017-01-03 12:38:17 +08:00
同推荐 企业应用架构模式, 以及其作者 Martin Fowler 的博客
jwdstefanie
2017-01-03 12:42:15 +08:00
一年。。 PHP 。。。谈架构。。
hantsy
2017-01-03 12:48:04 +08:00
语言只是工具,架构方案与语言关系不是特别大。现在 PHP 中的 ZF , Symfony 框架,甚至 PSR (命名都是 Copy JSR )都是从 Java 中获得灵感。

不要为了什么追求架构,模式,想尽办法去看书,去套用。哲学上这叫形而上学,大部分情况下把简单的事情搞复杂。

多写写代码,多进行实践,回过头来再去看看那些架构和模式,比较一下自己之前的方法,或许有顿悟的感觉,以后再应用就轻松得多。
FrankFang128
2017-01-03 12:49:01 +08:00
Unix 编程艺术
zhidian
2017-01-03 12:51:59 +08:00
《重构》。
bk201
2017-01-03 12:53:43 +08:00
一直以为 php 和 jsp 一样,怎么快怎么来
myoula
2017-01-03 13:02:36 +08:00
github 是最好的学习材料 多看看别人的 code
但也不要太过于追求架构,如果跟同事一起开发,同事为了改代码,打开 7 , 8 个文件才找到真正实现的地方,估计心理要骂娘了。
phpdever
2017-01-03 13:49:37 +08:00
《架构即未来》
Time2
2017-01-03 13:54:52 +08:00
同 lz 差不多情况, 不过现在看框架的 源码,收获很大啊。
ubear1991
2017-01-03 13:58:38 +08:00
一年。。。
yangxiongwei
2017-01-03 14:01:08 +08:00
一年,还是做 php 的,谈啥架构?

能快速出活就 OK 了,要啥自行车?
zuston
2017-01-03 15:27:16 +08:00
@peinhu 太偏颇了吧
mokeyjay
2017-01-03 15:43:13 +08:00
@misaka19000
@jwdstefanie
@zuston
不好意思,我虽然是个普通的 PHPer ,但还是比你们有点志向的
jswh
2017-01-03 15:49:13 +08:00
这种事情,真的需要场景和老师,比较经验向我觉得。多看看别人的源码吧。
chnhyg
2017-01-03 17:16:32 +08:00
架构这个东西不是刻意就能学来的,工作中项目中可以多思考,而不仅仅是完成任务就行了。
a15819620038
2017-01-03 17:25:15 +08:00
架构?还是结构?

我猜楼主想问的是『怎么在代码里把类组织好』。

除了多写,额,多写也没用,得看写什么东西。

多造轮子,从零早起,慢慢就有感觉了。
zuston
2017-01-03 17:43:29 +08:00
@mokeyjay 写 php 几年,现在也写 python,java,scala ,何来比我有志向,哪看出来的? laravel 的架构同时也是模式复用的结果, java 也有,语言之争也没啥意思。我是没看懂你 @我干嘛?
huijiewei
2017-01-03 17:48:41 +08:00
架构和语言无关
架构是一步一步演进出来的

加油吧,先从重构做起,先把代码做到可测试化
yura93
2017-01-03 17:52:03 +08:00
架构要结合业务吧,适合业务场景的架构才是好的

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

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

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

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

© 2021 V2EX