019年12月,一群编程零基础的小伙伴们成立了Python学习小组,69名学员从此夜以继日地奔赴学习的征程。一个月过去了,从在屏幕上用最简单的语句打印出“Hello, Python; Hello, World”开始,我们逐步地学习Python语法,学习操作列表、字典,学习For,While,If语句,现在遇到了第一个难点:类。通过研读、练习、交流、讨论,作为程序界的小白,我们逐步地理解了类的概念,明白了面向对象与面向过程编程的差异,以下是我们的小小心得,与大家分享:
编程基本思想
现实世界中,每个复杂的事务都可以拆分为多个组成部分,其中的每一部分就可称之为对象。比如要实现一个很大很复杂的项目,我们可以把项目拆分成不同的组成部分,然后分别对不同部分通过编程实现,最终再把各个部分组装起来完成整个项目。这让我们能够从整体上来控制项目,从而让程序开发更有效。比如汽车制造,汽车厂所做的仅仅是各个部件的组装和匹配,而各个部件的生产是由相对专业的厂商完成。如果需要研发新型号汽车,整车厂所考虑的是如何对各个新式的零部件进行新的组装和匹配,而不是从头到尾重新生产一辆汽车。
面向对象的编程
VS
面向过程的编程
面向过程编程是针对一个需求的具体实现过程,但是对于大型项目的复杂需求,一步一步的做,这种编程效率显然是低下的。
面向对象编程则是对项目进行拆分后(一般按照功能拆分),分别实现,再将各个对象组装起来。因此简单的小程序使用面向过程方法编程更适合。面向对象的编程特性是易维护(可读性高),效率高,质量高(重用性),扩展性好(高内聚,低耦合)。对象
通俗的讲,对象就是事物,一个公司、一个部门、一个人,甚至一本书都可以是一个对象,程序员可以自由决定把什么作为对象。
比如eHR系统,需要对组织架构,员工进行管理,所以使用的对象可能是公司,部门,岗位,员工,等等。对象可大可小,可复杂也可简单,如果仅仅是做一个考勤系统,员工这个对象一定要比eHR系统中的员工对象简单。
类
现实世界中,类代表一组有共同特性的事物,把不同对象之间的共性抽象出来,就形成类的概念。比如说男人、女人可以抽象成人这个类;处长、秘书可以抽象成员工类。至于类如何去抽象,粒度的粗细,这是一个需要在学习和实践中摸索的过程。
好了,今天内容就到这里,我继续敲代码去 |
| [url=]
[/url]
|
|
|