为什么前端后端都要学好⾯向对象编程思想?
⼀⾯向对象和⾯向过程
前端js编程和及后端php编程,⼤体上有“⾯向过程”和“⾯向对象”两种开发思路。
网络前端需要学什么简单业务需求使⽤“⾯向过程”思路倒是不错,简单快捷。然⽽随着业务逻辑增加,功能扩展及维护,慢慢会发现,之前的⾯向过程开发思路,渐渐不好使了。曾经遇到⼀个项⽬,多城市选择,既可以选择省,也可以选择市,但最多只能为3个,且不能重复。当时js⽤的就是⾯向过程⽅式写的,外加封装⼏个函数。但越往后,越发现,这种代码思路,后期维护,功能扩展,简直就是⼤坑。⽐如客户之前已经多城市选择,如何编辑;假如⼀个页⾯多个地⽅都要⽤到多城市选择;假如⼿机端,pc端都要⽤到多城市选择;假如现在不再是三个,⽽是不限制个数,⼜该怎么做……后来再改起来,真是⼀句话”那滋味,那酸爽,谁⽤谁知道“……
总结起来就是,⾯向过程思路编程,不容易形成系统或架构,后期维护功能扩展成本较⼤,特别是解决代码重⽤以及“耦合”问题上,⾯向过程有些乏⼒。这些问题都可以通过⾯向对象编程解决,类,对象,继承,多态……个⼈感觉,php⾼阶阶段就是架构能⼒,架构离不开设计模式,设计模式正需要⾯向对象思想。我想java语⾔之所以常年位居前世界最流⾏语⾔榜,跟它本⾝⼀上来就是⾯向对象思想密不可分。⽽且⼀般情况下,功能复杂的js插件,库,往往跟⾯向对象思想密不可分。
所以,前后端编程都有必要深⼊研究⾯向对象思想。
⼆ php基于⾯向对象学习提升
《深⼊php⾯向对象模式与实践》⼀书中推荐php程序员学习路线是:
1.php⼊门基础(语法,常⽤函数和扩展);
2.⾯向对象的php
3.⽹站软件架构设计(设计模式/框架等)
4.⽹站物理层次架构设计(分布式计算,存储,负载均衡,⾼可⽤性等)
备注:实际中这些阶段和⼯作是交织在⼀起的。
三引申js⾯向对象提升
由上⾯扩展,个⼈感觉js提升路线⼤体为:
1.js基础(语法,常⽤函数,包括jquery常⽤语法,基础)
2.js⾯向对象(深⼊理解js对象继承等概念,封装库,插件)
3.js设计模式(⼤型复杂应⽤,框架)
4.物理层次架构设计(性能,内存,效率等)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论