“实现能力”与“设计能力”

nicrosoft于 2001.8.17 (http://www.sunistudio.com/nicrosoft/

我见过太多的代码(我自己以前也是),只注重实现功能。国内绝大多数的程序员都以为实现了就成功了。在开始敲键盘之前,有多少人想过即将被创建的代码会有多少的可维护性?是准备创建用完就扔的代码,还是需要不断升级、改进的代码?如果是需要长期被维护、改进的代码,在最初的时候,如果只是注重实现,而忽略整体框架的设计,那么最终等待程序员的只是无数的bug和灾难。

其实,相对来说,实现是简单的。你能够实现的东西都是基于平台或者特定软硬件环境的。你所实现的,只是因为平台提供给了你这样的功能而已,这个实现并不是你创造出来的。而框架的设计就需要相当的经验。没有人可以一开始就完成一个优秀的框架。

在一次工作中,要为Delphi写几个简单组件,组件类之间有继承关系(很简单,只有两层而已)。对于这个非常微小的“框架”,在最初有了“想当然”的设计之后,就开始动手写代码了。完成父类层的组件后,在写派生类的组件时,才发现当初的“设计”存在问题。那时我奇怪自己当初怎么会有那么奇怪的想法,构建这样的框架。在写到派生类组件时,才发现有些东西是那么的理所当然,而在最初设计的时侯的想法却与之相反!于是,重新构建这些代码,幸好,代码量不大,即使重写,也没有花费多少时间。

我想说的是,即使一个那么简单的框架,我是在第三次重写后,才将其确立下来。同时,获取了宝贵的经验。设计的难处在于,人的思维习惯是从下往上,逐步抽象的。但是,在类的框架设计中,去需要从上往下的设计,也就是逐步细化。而一旦在原始类(如:VCL的TObject)的设计上存在问题的话,那么随着类层次的展开,问题将会逐步放大,最后可能会导致整个框架的崩溃。这就要求设计者具有丰富的经验!

我从不相信程序员的寿命只到35岁,也许35岁以后,实现能力(其实就是工匠能力)有下降的可能,而设计能力是随着经验的增加不降反升的。这才是最宝贵的。

国外的软件开发小组,一般的骨干都是40岁上下的人,那些才是大师级的程序员,而所谓的过了35岁就不能当程序员的程序员根本没有资格被称为程序员。

而软件工程是要将程序员变成编码员,变成流水线上的一环,设计工作由专门的设计师完成(如框架设计师)。也许,分工细化是趋势,但是,我们是满足于做编码员还是希望成长为设及师,取决于我们的眼光及努力。

放开眼光,而不是将自己局限于、沉迷于“实现高手”。实现能力是基础,有一定的实现能力才可能成长,但是,它只是必要条件,而不是充分的。否则,就象爬到山腰就以为自己到了山顶,停滞不前了。那么,你只可能是编码员,你的程序寿命也只到 35岁。

努力积累经验,并且要学会积累经验。有句话说得好,聪明人与笨人的区别并不在于其不犯错误。真正的区别在于,聪明人不会两次犯同样的错误。

  • 0
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

<p> <br /> </p> <p style="color:#333333;"> <strong>Elasticsearch 简介</strong> </p> <p style="color:#333333;"> ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 </p> <p style="color:#333333;"> <br /> </p> <p style="color:#333333;"> <strong>elasticSearch 的使用场景</strong> </p> <p style="color:#333333;"> 1、在海量数据前提下,对数据进行检索。比如:京东,淘宝等电商项目 </p> <p style="color:#333333;"> <br /> </p> <p style="color:#333333;"> <strong>课程目标:</strong> </p> <p style="color:#333333;"> 1. 了解企业级搜索引擎 </p> <p style="color:#333333;"> 2. 安装elasticsearch {linux 系统} </p> <p style="color:#333333;"> 3. 安装kibana并利用kibana对Elasticsearch 索引中的数据进行搜索、查看、交互操作 </p> <p style="color:#333333;"> 4. 项目实战{ELK} </p> <p style="color:#333333;"> <br /> </p> <p style="color:#333333;"> <strong>课程目录:</strong> </p> <p style="color:#333333;"> 01 课程介绍<br /> 02 elasticsearch 简介<br /> 03 elasticsearch 使用场景<br /> 04 安装elasticsearch 之前先安装jdk<br /> 05 安装elasticsearch<br /> 06 测试elasticsearch是否安装成功 <br /> 07 安装kibana<br /> 08 elasticsearch 基本认识 以及添加索引和删除索引<br /> 09 elasticsearch 添加查询数据<br /> 10 elasticsearch 修改删除数据<br /> 11 elasticsearch 有条件的查询<br /> 12 分词子属性fuzzy查询<br /> 13 elasticsearch 过滤使用<br /> 14 elasticsearch 排序分页<br /> 15 elasticsearch 如何查询指定的字段<br /> 16 elasticsearch 高亮显示<br /> 17 elasticsearch 聚合<br /> 18 elasticsearch mapping 概念<br /> 19 elasticsearch 的中文词库<br /> 20 elasticsearch 中文词库安装测试<br /> 21 elasticsearch 中文词库的使用案例<br /> 22 elasticsearch 自定义词库配置<br /> 23 安装nginx 配置中文词库<br /> 24 测试elasticsearch 自定义中文词库<br /> 25 搭建项目父工程<br /> 26 搭建项目bean-interface-common<br /> 27 搭建search 的service web 项目<br /> 28 测试项目是否能elasticsearch联通<br /> 29 创建数据库并搭建首页<br /> 30 数据上传功能的实现类完成<br /> 31 数据上传控制器完成<br /> 32 dubbo 介绍以及安装zookeeper<br /> 33 将数据从mysql 上传到elasticsearch 中<br /> 34 elasticsearch查询功能分析<br /> 35 编写业务需求的dsl 语句<br /> 36 编写输入参数返回结果集的实体类<br /> 37 实现类编写<br /> 38 编写实现类中dsl 语句<br /> 39 返回集结果转换<br /> 40 结果测试<br /> 41 测试通过输入查询条件并将数据显示到页面 </p>
相关推荐
<p> <strong><span style="font-size:16px;color:#337FE5;"><b><a target="_blank" href="https://edu.csdn.net/bundled/detail/308"></a><a target="_blank" href="https://edu.csdn.net/bundled/detail/308"><span> </span></a></b></span></strong> </p> <p class="ql-long-39788408" style="font-size:11pt;color:#494949;"> <strong><b><strong><a class="ql-link ql-size-12 ql-author-39788408" href="https://edu.csdn.net/bundled/detail/298" target="_blank">[本课程属于AI完整学习路线套餐,该套餐已“硬核”上线,点击立即学习!]</a></strong> </b></strong> </p> <p class="ql-long-39788408" style="font-size:11pt;color:#494949;"> <br /> </p> <p> <strong><span style="font-size:16px;color:#337FE5;"><img src="https://img-bss.csdnimg.cn/202011090216454206.png" alt="" /><br /> </span></strong> </p> <p> <strong><span style="font-size:16px;color:#337FE5;"><br /> </span></strong> </p> <p> <strong><span style="font-size:16px;color:#337FE5;">【为什么要学习深度学习和计算机视觉?】</span></strong> </p> <p> <span style="font-family:"background-color:#FFFFFF;">AI人工智能现在已经成为人类发展中最火热的领域。而计算机视觉(CV)是AI中最热门,也是落地最多的一个应用方向<span style="font-family:"background-color:#FFFFFF;">(人脸识别,自动驾驶,智能安防,车牌识别,证件识别)</span>。</span><span style="font-family:"background-color:#FFFFFF;">所以基于人工智能的计算视觉行业必然会诞生大量的工作和创业的机会。如何能快速的进入CV领域,同时兼备理论基础和实战能力,就成了大多数学习者关心的事情,而这门课就是因为这个初衷而设计的。<br /> </span> </p> <p style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <br /> </p> <p style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span style="font-size:16px;color:#337FE5;"><strong>【讲师介绍】</strong></span> </p> <p style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span style="font-size:16px;color:#337FE5;"><strong>CH<strong><span style="font-family:"color:#222226;font-size:16px;background-color:#FFFFFF;font-weight:700;">ARLIE 老师</span></strong></strong></span> </p> 1、人工智能算法科学家<br /> 2、深圳市海外高层次人才认定(孔雀人才)<br /> 3、美国圣地亚哥国家超算中心博士后<br /> 4、加利福尼亚大学圣地亚哥全奖博士<br /> 5、参美国自然科学基金(NSF)及加州能源局 (CEC)资助的392MW IVANPAH等智慧电网项目<br /> 6、21篇国际期刊文章(sci收录17篇),总引用接近1000<br /> 7、第一作者发明专利11份<br /> <p> <br /> </p> <p class="ql-long-24357476" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span style="font-family:"color:#337FE5;"><span><span style="font-size:16px;"><strong>【推荐你学习这门课的理由:</strong></span><span style="color:#E53333;font-size:16px;"><strong>知识体系完整+丰富学习资料】</strong></span></span></span> </p> <p class="ql-long-24357476" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span class="ql-author-24357476" style="font-family:""></span> </p> <p class="MsoNormal" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> 1、本课程总计9大章节,是一门系统入门计算机视觉的课程,未来将持续更新。 </p> <p class="MsoNormal" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span>2</span>、<span>课程从计算机视觉理论知识出发,理论结合实战,手把手的实战代码实现(霍夫变换模板匹配,</span><span>AlexNet OCR</span><span>应用</span><span>,VGG</span><span>迁移学习,多标签分类算法工程)</span> </p> <p class="MsoNormal" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span>3</span>、<span>带你了解最前沿技术,</span><span>各类型算法的优点和缺点,掌握数据增强,</span><span>Batchnormalization, Dropout</span><span>,迁移学习等优化技巧,搭建实用的深度学习应用模型</span> </p> <p class="MsoNormal" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <span>4</span>、学习完后,你将具有深度学习计算视觉的项目能力,比如大学生学完可以具备独立完成机器视觉类毕业设计能力,在求职过程中可以体系化的讲解机器视觉核心知识点,初步达到人工智能领域机器视觉工程师的水平 </p> <span style="color:#222226;font-family:PingFangSC-Regular, "font-size:14px;background-color:#FFFFFF;"></span> <p style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <br /> </p> <p class="ql-long-24357476" style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;"> <strong><span style="color:#337FE5;font-size:16px;">【学完后我将达到什么水平?】</span></strong> </p> <p class="ql-long-24357476"> <span>1、<span style="font-family:"">零基础入门计算视觉,学习掌握并应用从经典图像处理到深度学习分类任务的要点知识</span></span> </p> <p class="ql-long-24357476"> <span>2、<span style="font-family:"">掌握数据增强,迁移学习等优化技巧,搭建实用的深度学习应用模型</span></span> </p> <p class="ql-long-24357476"> <span>3、<span style="font-family:"">学习完课程,可以独立应用多个经典算法和深度学习算法</span></span> </p> <p class="ql-long-24357476"> <span>4、<span style="font-family:"">以</span><span style="font-family:"">大学毕业设计,面试找工作为目标,</span><span style="font-family:"">手把手带大家编程,即使没有太多计算视觉的背景知识也可以循序渐进完成课程,获得实战项目的经验</span></span> </p> <p class="ql-long-24357476"> <br /> </p> <p class="ql-long-24357476"> <span style="color:#337FE5;"><b><span style="background-color:#FFFFFF;color:#337FE5;"><span style="font-size:16px;color:#337FE5;">【面向人群】</span></span></b></span> </p> <p class="ql-long-24357476"> <span>1、对AI感兴趣,想要系统学习计算机视觉的学员</span> </p> <p class="ql-long-24357476"> <span>2、<span style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;">需要毕业设计的大学生</span></span> </p> <p class="ql-long-24357476"> <span>3、<span style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;">做图像分析或相关数据分析的研究生</span></span> </p> <p class="ql-long-24357476"> <span>4、<span style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;">准备面试计算视觉和深度学习岗位的应聘者</span></span> </p> <p class="ql-long-24357476"> <span>5、<span style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;">希望在项目中引入计算视觉</span><span style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;">/</span><span style="font-family:"color:#222226;font-size:14px;background-color:#FFFFFF;">深度学习技术的开发人员</span></span> </p> <p class="ql-long-24357476"> <br /> </p> <p class="ql-long-24357476"> <b><span style="font-family:"font-size:16px;background-color:#FFFFFF;color:#337FE5;"><span style="font-size:16px;color:#337FE5;">【课程知识体系图</span><span style="font-size:16px;color:#337FE5;">】</span></span></b> </p> <p class="ql-long-24357476"> <span><b><img src="https://img-bss.csdnimg.cn/202007140746422581.png" alt="" /></b></span> </p> <p class="ql-long-24357476"> <span><b><br /> </b></span> </p> <p class="ql-long-24357476"> <span style="font-size:16px;color:#337FE5;"><b>【实战项目】</b></span> </p> <p class="ql-long-24357476"> <b><img src="https://img-bss.csdnimg.cn/202007150352244062.png" alt="" /><img src="https://img-bss.csdnimg.cn/202007150517376530.png" alt="" /></b> </p> <p class="ql-long-24357476"> <br /> </p>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值