`
ww2
  • 浏览: 418063 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

保持你对Java的敏感度——了其然,知其用,研其究,发其思

阅读更多

 

保持你对Java的敏感度

              ——了其然,知其用,研其究,发其思

 <!----><o:p></o:p>

作者:胡长城(银狐999james999

主页:http://www.javafox.org

信箱:james-fly@vip.sina.com

 <o:p></o:p>

 <o:p></o:p>

       我大声的呼喊,希望更多的java开发者明白“了其然,知其用,研其究,发其思”。我们不仅需要探索技术,更需要探索思想······

 <o:p></o:p>

       这算是小议学习java的浮躁心态http://www.csdn.net/develop/article/21/21764.shtm 的兄弟篇。原本是打算写其它的,写到后来,有了这样的一些感悟,整理了一下而成。

 <o:p></o:p>

       先说个发生在自己身上的事情吧:

       2003的整个下半年的私人时间里更多是偏重workflow方面的理论和技术,却忽略了新知识的更新。偶然的机遇,却发觉MDA和AOP已经成长起来,而我却几乎一无所知。那几天一直在责问自己,“为什么我不知道呢”“为什么我没有关注呢”。<o:p></o:p>

    但是,当我花了一些时间看AOP的资料的时候,却突然反问自己“我为什么要知道呢?”。对,我只需要简单了解,或者说,我只需要稍稍的了解这AOP可以解决什么问题。如果这个新生物不是我所急需的,或者说起所解决的问题不是我目前所碰到的问题,我为什么需要去花时间钻研呢?<o:p></o:p>

    接下来的几天,我放弃了对aop的进一步钻研。仅仅只是将这个概念和可以解决的问题留在了大脑中。看到了吧。这样,我就可以省下一些时间,更多的投入到我的workflow钻钻研中了。<o:p></o:p>

 <o:p></o:p>

       因为这件事情,我考虑了几天。考虑为什么会出现这样情况,考虑如何解决这种问题。于此,便有个这篇感悟。

 <o:p></o:p>

其实,多数有几年经验的java工程师,会在突然的一瞬间感悟:自己对新知识反映变得越来越迟钝。蓦然回首,突然会发觉短短的半年,又出现了很多新的概念,很多新的api。但是,更多的时候,我们不得不摇摇头——新知识太多了,我们学不完啊。<o:p></o:p>

也许大家都想到了以前IT很奇怪的状况:旧人比不过新人。(还好,这两年状况好多了)。虽然一方面是“精力”问题,但是对新事物的敏感度降低,我想也是一方面。<o:p></o:p>

 <o:p></o:p>

Java这一两年的发展,远比前几年要迅猛的多。不论信息流通量,还是知识广度,都较前几年要大。下面这张图示根据自己的一些接触和经验画的Java(J2EE)发展图。仅属于个人观点,难免有不妥之处。中间不包含J2ME方面的,我对J2ME的领域不熟悉。<o:p></o:p>

<!----><v:shapetype o:spt="75" coordsize="21600,21600" stroked="f" id="_x0000_t75" filled="f" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path gradientshapeok="t" o:extrusionok="f" o:connecttype="rect"></v:path><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype><v:shape type="#_x0000_t75" id="_x0000_i1026" style="WIDTH: 369pt; HEIGHT: 203.25pt"></v:shape>

    如果把Java的发展比作一条流淌的大河,那么那些新知识(应用概念,技术标准等等),就象一条条汇流的旁支。大家都知道,在汇流的地方,总汇或多或少激起“急流”,激起“漩涡”,激起“波涛”。当然,汇流的越多,越频繁,反映也就越激烈。<o:p></o:p>

 <o:p></o:p>

       那么我们如何能够比较良好的解决自己的Technology问题呢?这就是我这几天思索的核心问题。下面就说说得自己的一些看法:

       其实,这也是对新知识一个把握度的问题,总的来说,分为四种层次:了其然,知其用,研其究,发其思。

       了其然:对最近新出现的理念技术能够有所了解,简单知道其可以解决什么问题,分析一下是否最近自己所需要应用,或可被更好的利用。

       知其用:知道如何应用这门新技术。简单的应用一般花费不少时间,但是想复杂的应用,需要耗费的时间和精力可就多了。如果把握不好,盲目的应用和学习,会浪费不少时间。

       研其究:对新技术新理念研究其深层次的原理,框架,结构。

       发其思:这是最难的一层,首先需要有研其究的基础,这本身就是一个高难度的事情。而研究之后,能够发散思维,扩充或本土化改造,则更是艰巨的事情。

<v:shape type="#_x0000_t75" id="_x0000_i1025" style="WIDTH: 185.25pt; HEIGHT: 188.25pt"></v:shape>

 <o:p></o:p>

       所以,做好“了其然”对大多数java爱好者来说,是个很关键的问题。做好并不意味着了解的多。每个开发者首先需要对自己所从事的行业,爱好,领域有所分析。这样当理念或技术推陈出新后,能够很迅速的辨别出那些该被重点关注,那些该被一般关注,哪些应该被尝试使用,那些需要深层次的研究······也就是说,不能够“了其然”,怎能够“知其用”和“研其究”。

       这样做的目的无非两个:

(1)       保持自己对新知识新理念新技术的关注

(2)       将有限的时间有效合理的利用,用管理学的角度叫做:资源合理分配。

 <o:p></o:p>

说实在,真的很希望更多的java开发者能够达到“发其思”。中国的软件业需要更多的敢于“研其究”“发其思”的人才,需要更多坚持走在Technology道路上的研究人才。

 

分享到:
评论

相关推荐

    Jill——Java编写的Lua脚本引擎

    Jill是一个用Java语言实现的Lua脚本引擎,它为Java应用程序提供了一种高效且灵活的方式来运行Lua代码。Lua是一种轻量级的、解释型的脚本语言,因其简洁的语法和强大的功能在游戏开发、配置管理、系统脚本等领域广泛...

    使用java+OpenCV进行图片对比并标记差异部分

    通过调整阈值,你可以控制识别差异的敏感度。 在实际应用中,你可能还需要考虑其他因素,如图像预处理(例如灰度化、直方图均衡化)、使用更复杂的相似性度量(如结构相似性指数(SSIM))或者利用OpenCV的特征匹配...

    安卓Andriod源码——NetPayClinet2.5forjava.zip

    源码可能包含了SSL/TLS用于数据传输安全,以及如RSA、AES等加密算法对敏感信息进行加密。 - 对于支付验证,可能使用了签名机制,确保交易的完整性和不可篡改性。 4. **Java在Android中的应用**: - Android SDK...

    银行业务管理系统_java毕业设计_java系统_java项目_bank_银行_

    【Java毕业设计——银行业务管理系统】是针对计算机科学与技术专业的学生进行的一项实践性学习任务,旨在提升学生的软件开发能力和对Java编程语言的理解。在这个项目中,学生将使用Java语言来构建一个完整的银行业务...

    微机课程设计——温度和压力的检测

    热敏电阻是一种对温度敏感的电阻元件,温度变化会导致其阻值显著改变。 在微机系统中,温度传感器采集到的模拟信号需经过模数转换器(ADC)转化为数字信号,以便微机进行进一步处理。微机通过读取ADC的数据,可以...

    source901——my

    【描述】"其他人没有用的"这部分表明这个"source901——my"可能包含了一些特定的、个性化的代码或配置,这些内容可能与特定业务流程、工作环境或系统设置紧密相关,因此对外部用户来说可能难以理解和应用。...

    Java程序员面试宝典

    首先,"程序员的七种武器"通常指的是编程者必备的技能和素质,可能包括扎实的编程基础、良好的问题解决能力、持续学习的态度、团队协作精神、对新技术的敏感度、项目管理技巧以及优秀的沟通能力。这些都是在面试中...

    Java集成第三方推送(极光推送)——代码篇

    下载极光推送的Java SDK,并将其导入到你的项目中。如果是Maven项目,可以在pom.xml中添加依赖。确保SDK版本与你的项目兼容。 4. **初始化推送服务** 在Java后端服务启动时,需要初始化JPush客户端,使用AppKey和...

    出租车java.rar

    《出租车管理系统——基于Java技术的实现》 在信息技术飞速发展的今天,出租车管理系统的出现极大地提高了城市交通行业的运营效率和服务质量。本系统采用Java编程语言进行开发,充分体现了Java的跨平台特性和强大的...

    Java card 开发标准

    本标准——Java Card PKI接口规范,详细定义了如何在Java Card平台上实现公钥基础设施(PKI)系统,为开发者提供了构建安全应用程序的基础。 #### 二、Java Card Protection Profile Collection Version 1.1 本版本...

    java毕业设计-汽车租赁系统

    《Java毕业设计——汽车租赁系统》 在信息技术日益发达的今天,Java作为一款广泛应用的编程语言,被广泛应用于各种领域的软件开发,其中就包括汽车租赁系统。本项目以Java为技术核心,旨在实现一个功能完善的汽车...

    学生信息管理系统 java

    《学生信息管理系统——基于Java技术实现》 学生信息管理系统是一种广泛应用的信息管理软件,它主要用于教育机构,如学校或培训机构,来高效地管理和处理学生的基本信息、成绩、出勤等数据。在信息技术高度发展的...

    Java健身俱乐部管理系统(Client + Server)

    《Java健身俱乐部管理系统——构建CS模式的业务运营平台》 Java健身俱乐部管理系统是一款采用Java语言开发的客户端-服务器(Client-Server)模式的应用程序,旨在为健身俱乐部提供全面的业务管理解决方案。它不仅...

    面向对象七大原则——肖文斌.pdf

    文档中还有提及到Java中的XML处理,这涉及到如何用XML API(如SAX、DOM)解析XML文档,并使用XML的DTD进行结构验证。这表明肖文斌强调了在面向对象设计中数据格式和协议的处理是至关重要的。 肖文斌的这些讨论不仅...

    基于JSP技术的猎头公司管理软件的设计和实现——内部事务部分(源代码+论文).zip

    《基于JSP技术的猎头公司管理软件设计与实现——内部事务部分》 本文将深入探讨如何利用Java的JSP(JavaServer Pages)技术来设计并实现一款针对猎头公司的内部事务管理软件。该软件旨在优化猎头公司的日常工作流程...

    齐鲁软件大赛一等奖——防盗星

    "齐鲁软件大赛一等奖——防盗星"是一个在IT领域内获得高度认可的项目,它主要集中在Android平台上的防盗应用开发。这个项目在齐鲁软件大赛中荣获一等奖,显示了其技术实力和创新性。作为一款防盗应用,它可能包含了...

    依赖包——侧滑

    这个库提供了一些自定义选项,比如滑动模式(覆盖还是替换)、触摸屏边缘的敏感度以及动画效果等。`slidingmenu_demo`这个文件很可能是包含了一个演示如何使用`SlidingMenu`库的示例项目,我们可以从中学习到具体...

    java SSH框架信贷系统

    Java SSH 框架是Java开发企业级应用的三大核心框架——Spring、Struts和Hibernate的简称。这个“java SSH框架信贷系统”项目是基于这三个框架构建的一个信贷管理系统,主要目的是为了教学和学习。SSH框架的集成使得...

    安卓Android源码——吹一吹效果源码.zip

    为了提供最佳用户体验,你需要对阈值进行调整,以确保吹气动作的敏感性和误触率之间的平衡。同时,考虑到不同设备的传感器灵敏度可能不同,最好能在多种设备上进行测试。 通过以上步骤,我们可以实现"吹一吹"效果...

Global site tag (gtag.js) - Google Analytics