昨天我的一个在上海工作的学生在QQ上问了一个问题,今天才看到,现将我的回复发上来,也争取一下大家的意见,怎样才算掌握了一项技术,或者说怎么才能学会一项技术?
马** 17:25:44
leo 你好,上网很少能碰到你,现在有个问题比较困惑:
怎样才算掌握了一项技术,或者说怎么才能学会一项技术?也许这些问题有点可笑,但还是希望能听一听你的指点 。
Leo 08:37:09
根据我的理解,针对一项技术的学习使用可以分为了解、熟悉、掌握、精通4个层次。
第一层次:了解。即知道是什么,知晓这个技术的概念、基本原理、定义、方法,而且自己能够独立的做一个DEMO程序。比如了解Hibernate就是知道Hibernate是一个Java数据持久化的一个框架,通过O/R Mapping实现,封装了数据的DAO操作,可以方便的切换数据库等,并且完成了一个1:n关系表的CRUD操作。
Leo 08:40:39
第二层次:熟悉。就是已经知道为什么要使用这个技术,他用来解决什么问题的,并且已经在一个项目中熟练的使用这个技术。比如说Hibernate出现的背景就是解决关系数据库和OO编程中的障碍,使用户不必关心数据持久化的问题,能够完全使用OO的编程思想,精力放在业务处理代码的编写上,自己也可以在项目中熟练的使用Hibernate 。
Leo 08:45:01
第三层次:掌握。知道这个技术在什么情景下可以使用,以及怎么用,什么情况下不能使用。比如Hibernate做统计分析和批量操作都不是很方便,那么大规模的数据操作并不适用,比若说银行和电信的大数据处理就不适合;同时要清楚Hibernate怎么用,比如Hibernate有一些缺点,怎么去解决,比如怎么解决延迟加载,怎么进行性能优化,怎么进行缓存,怎么进行各类事务处理,如何与各种框架集成使用等。
Leo 08:48:31
第四层次:精通。在掌握的基础上知道这个技术为什么在某种情况、某种场合要这么用,比如说Hibenate在分布式开发中,如果是WebService下要使用独立的DTO进行数据封装,不能使用POJO,而在RMI的情况下就可以使用POJO,并且POJO要序列化。同时了解在这两种情况下,都有哪些问题和替代技术,他们的优缺点是什么。或者如何去修改Hibernate的源代码来解决一部分问题 。
Leo 08:48:52
我的理解就是这样的,可能不是很正确哦。呵呵……
Leo 08:54:13
关于怎么才能学会一项技术,我想比较快捷的方式就是有人引导一下,能带着你达到了解的程度。就是告诉你Hibernate是什么东西,基本原理是什么,并帮你把环境搞起来,做一个例子让你对一个技术有一个基本的了解。当然也可以自己去学,买一本书,或者在网上查一下,找到一个入门教程,跟着教程做一遍,也能达到了解的程度。前种方式可能需要2个小时到半天,后者根据个人能力和获取资料程度可能需要半天甚至一周,根据个人学习能力了。但前者要注意不要过于依赖指导,要自己去实践,一定要自己在一个新的环境下独立的完成一个DEMO的编写。
Leo 08:57:28
当然如果一个技术不准备去用,只是想了解做到这个了解的程度就可以了。但如果想用,就至少要达到熟悉的地步,这个时候最好就能找一本书,找到API文档,把HIBERNATE的相关技术都熟悉起来,最好的方式就是做一个项目了,所以建议对一项技术达到了解就可以了,用的时候再去熟悉,同一个技术做过两个项目以后就要很好的总结一下这个技术,争取达到掌握的地步。如果用这个技术做个几个项目,并由你来负责项目持久层技术或做架构设计的话,一般需要精通的地步。
Leo 08:58:10
以上是我的一点拙见了,希望对你能有所帮助,以后有什么问题多交流 。
抛了块砖头 ,大家拿玉来砸我吧!嘿嘿……
分享到:
相关推荐
- **特色**:该论坛汇集了大量的Java技术讨论帖,覆盖了从基础到高级的各个层次,非常适合初学者提问和学习。 2. **Java世纪网**(http://www.java2000.net/) - **特色**:提供丰富的Java编程教程和技术文档,...
本文将详细介绍一系列针对不同层次学习者的Java学习网站及论坛,帮助读者更好地掌握这门语言。 ### 一、官方与权威学习资源 #### IBM DeveloperWorks - **网址**: <http://www-900.ibm.com/developerWorks/cn/...
### 如何学习Java技术 ...此外,不断地查阅官方文档和其他权威资料也能帮助你保持对新技术的敏感度和适应能力。最后,记住学习是一个终身的过程,始终保持好奇心和求知欲是你成为优秀Java开发者的关键。
根据给定的信息,我们可以整理出一系列与Java学习相关的网站资源,这些资源可以帮助初学者到高级开发者深入了解Java技术栈。下面将详细介绍每个网站及其提供的服务。 ### 1. The Source for Java Technology ...
12. **Java EE**:如果深入,笔记可能会涉及Java服务器端技术,如Servlet、JSP、JDBC数据库操作,甚至EJB和Spring框架的基础知识。 13. **JVM内存模型**:讲解Java虚拟机的工作原理,包括堆内存、栈内存、方法区、...
可以通过阅读官方文档、参加技术社区讨论、关注最新的技术趋势等方式来保持对新技术的敏感度。此外,还可以尝试学习其他编程语言或技术栈,如C++、UNIX等,这不仅能够拓宽知识面,还能加深对JAVA的理解。 #### 六、...
- **推荐理由**:适合希望获取经典技术文章的Java学习者。 16. **DevX (http://www.devx.com/java)** - **特点**:DevX维护的Java技术文章网站。 - **推荐理由**:适合希望获取技术文章与教程的Java开发者。 17...
《Java核心技术卷二》作为Java程序员和爱好者的重要参考资料,第八版对JDK6.0的新特性进行了详细阐述,同时对原有章节内容进行了更新和调整,删除了一些过时内容,并新增了部分章节。该书旨在帮助读者深入理解和掌握...
这些资源涵盖了从基础到进阶的不同层次,对于初学者或是想要深化Java技能的人来说都非常有用。 ### Java学习资源概览 #### 1. Java/J2EE/JSP - **概述**:Java/J2EE/JSP是Java开发中的核心部分,主要涉及到Java...
本资料包“数据挖掘实用机器学习技术与JAVA代码”正是为那些想要学习或提升数据挖掘技能,特别是用Java实现机器学习算法的初学者而准备的。 首先,我们要理解机器学习是数据挖掘的一个关键部分,它让计算机能够通过...
通过上述推荐的学习资源,我们可以看到Java的学习路径不仅包括基础语法的学习,更重要的是对相关技术栈的掌握和实践能力的培养。例如,理解XML、SOAP、UDDI等Web服务标准对于从事企业级应用开发的人来说是非常重要的...
从给定的文件信息中,我们可以提炼出一系列与Java学习及面向对象编程(Object-Oriented Programming,简称OOP)相关的关键知识点。以下是对这些知识点的详细解析: ### 面向对象编程概述 面向对象编程是一种被广泛...
总的来说,"Java核心技术第7第8版原书代码"是学习和提升Java技能的宝贵资料,无论你是初学者还是经验丰富的开发者,都可以从中获益。通过深入研究这些代码,你可以更好地掌握Java的核心技术,为你的编程生涯打下坚实...
《Java核心技术 第九版》是Java编程学习的重要参考资料,尤其对于初学者而言,它提供了全面且深入的Java基础知识。本书详细介绍了Java语言的核心概念和技术,包括面向对象编程、类库、API以及最新的Java特性。 一、...
《Java核心技术》是Java开发者必备的经典教程之一,涵盖了Java编程的基础到高级概念。该书分为两卷,卷I主要关注基础知识,包括语法、类、对象、接口、异常处理、输入/输出、多线程等内容。这里我们将深入探讨卷I中...
根据提供的文件信息,本文将围绕“Android开发关键技术之旅:Java程序员快速学习通道”这一主题进行深入探讨,并结合Java编程背景,解析与Android开发相关的重点技术和实践路径。 ### Android开发的关键技术概览 #...
本部分内容汇总了多个提供JAVA学习视频教程的网站链接,涵盖从基础到高级的不同层次。 #### 1. 北风网 (ibeifeng.com) - **简介**:北风网是提供IT培训课程的专业平台之一,其JAVA学习资源非常丰富。 - **特色课程...
《Java核心技术 卷1》是Java编程学习的经典之作,它主要面向的是初学者以及对Java基础知识掌握不牢固的开发者。这本书全面深入地介绍了Java语言的基础概念和技术,为读者提供了扎实的理论基础和实践经验。卷1通常...
- **简介**: 该网站提供了丰富的Java技术文章、教程以及开发者的交流论坛,适合初学者到高级开发者各个层次的学习需求。 **1.2 Java2000** - **网址**: http://www.java2000.net/ - **简介**: 提供了大量的Java编程...
4. Udemy(https://www.udemy.com/topic/java-programming-language/):Udemy上有许多付费和免费的Java课程,由经验丰富的讲师教授,涵盖不同层次的学习需求。 5. Coursera...