把代码写成艺术,真正体会面向对象编程思想
看到一个严厉的帖子,让自己害怕的瞬身颤抖...........
http://www.cnblogs.com/menglin2010/archive/2012/02/08/2342029.html
我们学的是面向对象编程的语言比如:java,c#,我们打着面向对象编程的旗号,却做着面向过程编程的工作
现在我们基本上去一个公司,上去就写代码,老板让我们新增功能,我们就开始写新的方法,做着面向过程编程,每个人都不断地向最初的净地里添自己的代码,最初的代码块就像一个公共厕所一样,每个人都自顾自的在里面拉屎,而没有人去维护清理打扫,最后臭气熏天,试想我们有没有真正用到面向对象语言的三大特性,封装,继承,多态,我想大部分人用到最多的就是实体类,实体类只是体现了封装的特性,继承没有体现出来,一龙生九子,九子各不同,老鼠的儿子会打洞的多态特性更没体现出来
我想当我们有一天从某个公司离职的时候,必须得把项目的所有文件交接给新的同事,他才能开展工作,肯定是边修改你的代码,边骂你,我想大家都知道修改别人的代码远比自己写的代码要痛苦的多,看到你那无数个文件里无数行代码都要痛苦死了,其实好的架构,只要告诉你接口,你只要去实现里面的细节就行了,根本不用管其他的文件或者代码
如果你还在做着面向过程编程,那么你永远前往不了架构师的道路,永远成长不了
转载于:https://www.cnblogs.com/silentNight/p/5475101.html
把代码写成艺术,真正体会面向对象编程思想相关推荐
- python完全支持面向对象编程思想_面向对象的编程思想和Python的类,访问和属性,继承...
本文将从访问限制,属性,继承,方法重写这几个方面继续介绍面向对象的编程思想和Python类的继承. 复制代码 一.访问权限: Python中在类的内部定义属性和方法,在类的外部是可以直接调用或进行访问 ...
- 代码写成这样,老夫无可奈何!
你见过最无可奈何的代码是什么? 今天,我就来总结一下我遇到过的一些神逻辑代码,不一定很全,但我真心写不出,真心让我自叹不如啊! 1.耍猴的最佳手段 还记得 XX 手机的抢购活动么,抢购按钮的代码类似是 ...
- Python将一行代码写成多行和把多行代码写成一行的方法
一行代码写成多行 1.使用反斜杠连接 a, b ,c = 1, \2, 3 2.直接换行使用小括号连接 a, b ,c = (1,2, 3) 3.对于字符串使用三个单引号 a = '''1 + 2 + ...
- 面向对象编程思想及入门知识
这几天在调程序,所以想写写自己对"面向对象编程"的一些理解,希望对打算入门计算机编程的同志们有所帮助.之前,好几个师弟问过我,C++与C有什么区别,学习面向对象语言需要掌握哪些基础 ...
- Java学习——面向对象编程思想
目录 一. 基本概念 二. 面向对象与面向过程的区别 三. 面向对象程序设计的类与对象 3.1 对象 3.2 类 四. 面向对象的四大特征 4.1 抽象 4.2 继承 4.3 封装 4.4 多态 1) ...
- JavaScript 面向对象编程思想简介
JavaScript 面向对象编程 JavaScript 执行过程 JavaScript 面向对象编程 面向对象介绍 什么是对象 什么是面向对象 程序中面向对象的基本体现 创建对象 简单方式 简单方式 ...
- JavaScript 面向对象编程思想
JavaScript 面向对象编程思想 什么是面向对象 面向对象不是新的东西,它只是过程式代码的一种高度封装,目的在于提高代码的开发效率和可维护性. 面向对象编程 -- Object Oriented ...
- 面向过程编程思想和面向对象编程思想
一.面向过程编程思想 百度百科这样解释: "面向过程"(Procedure Oriented)是一种以过程为中心的编程思想. 面向过程其实是最为实际的一种思考方式,就算是面向对象的 ...
- java 以一个例子来理解面向对象编程思想
在面向对象的编程中,面向对象的应用是检验你对现实中实际物体和及其关系的抽象能力.在实际编程过程中,你的能力并不是你掌握了多少新的技术,而是对你当前问题的认识的深度,当你理解的足够深的时候,你的框架就出 ...
- 我们程序员眼中的对象-看完华华的文章妈妈再也不担心我找不到对象了-Java面向对象编程思想理解系列(1)
大家好!!!我叫霜华,是一个帅到没天理 骚里骚气,热爱人生与绿色 是一个不像程序员的程序员 作为一个在java这门领域沉迷一年半的人,如今在技术栈广度和深度 还是业务能力在客观层面讲确实进步迅速 (可 ...
最新文章
- 人工智能将为传统制造业带来什么?
- Webpack学习-工作原理(上)
- 【JS】JS中数值型字符串相加变成拼接字符串的解决方法
- [源码]python Scapy Ftp密码嗅探
- pyecharts 应用4: 二维散点图
- 在项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果?
- 获取网络时间并刷新本地时间(源码2)
- 用VS Code打造最佳Markdown编辑器
- SAP Fiori Elements - how facet is loaded for my productive POC
- 云服务器上mysql数据库环境安装配置
- 用Pytorch实现逻辑回归分类
- Asp.Net Core发布绑定域名和端口
- mysql 1045 - Access denied for user 'root'@'*.*.*.*' (using password YES)
- 报表开发导出各种格式文件的API
- c++解释--百度百科
- jquery 日期选择器
- gcc include lib路径扩展
- 【中南林业大学第十一届校赛E:】砝码和天平(转化为进制问题+模拟进位)
- 登录Unity官方商店时提示Sorry, this link is no longer valid.(此链接已失效)
- 整合google,51ditu和mapbar的地图API
热门文章
- 文本主题模型之LDA(二) LDA求解之Gibbs采样算法
- Invalid escape sequence(valid ones are \b \t \n \f \r \ \' \\)
- sql优化-项目实战
- 怎样用sql语句复制表table1到表table2的同时复制主键
- U-Boot在FL2440上移植(四)----支持网卡DM9000和烧写yaffs文件系统
- Linux内核网络参数的意义及应用
- Android支付宝刷步数,支付宝运动怎么刷步数? 支付宝如何快速刷步数?
- python扩展库简介_NumPy简介-Python扩展程序库 -- NumPy-编程文章分享
- 简单理解编程语言的工作原理
- IDEA中.properties配置文件输入中文显示Unicode编码,本地编辑器,服务器打开显示Unicode编码问题解决方案