`
悲剧了
  • 浏览: 144297 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

开源源码阅读的一点感悟

 
阅读更多
java的强大之一就是开源的东西很多,但是开源的东西也存在以下问题
1:文档不全,资料全市e文,简单入门后不能深入--学习的难度
2:项目需求导致对这个开源的东西不仅停留在用,还要改造--项目实践使用的难度


    简单的入门之后,就要去读它的源代码,这是最直接的方式。大家都是coder,代码交流最顺畅,弥补上面提到的问题。

读源代码也带来了几个问题,我在这个过程中也是走了很多弯路。
   问题1:不是下载来源代码,看看文档就直接上去读,开源的东西基本都很大,除非是DButil那种东东,几个类倒是无所谓,比如struts2 tomcat 我以前以上去跟着兴趣走,到后买兴趣没了,累了,就不想读了,本来也很大,光靠激情是不行的
  经验1:项目要解决什么问题?你想直到什么高优先级问题?线索是什么(顺着什么去读,开始在哪)?涉及到什么类可以忽略,什么东西应该细看,里买细节很多,什么都想知道,什么也不知道。

  问题2:以前读过tomcat struts2的一些源码,但是感觉读过也就读过了,不去记录,不去分析,这个东西很容易忘记,如果项目中还没涉及到这方面的问题,是无聊或者是提高自己去读,那么没有一个评估于记录 ,最终效果不怎么理想,人很多时候是有惰性,必须形成一些可以追溯的东西,可以评估记录的东西,可以对比的东西。

   经验2:开源的东西读过之后,必须写日志,写记录,写分析,而且强迫自己要去理清除,写东西和别人交流本来也是一大乐趣,不然你怎么知道你看得怎么样,不交流很容易井低之蛙。



1
0
分享到:
评论

相关推荐

    Tomcat6_0_36 源代码 src

    《深入剖析Tomcat6.0.36源代码》 Tomcat6.0.36是Apache软件基金会的开源项目,作为一个轻量级的应用服务器,它广泛用于部署...通过仔细阅读和分析这些源代码,你将能够更好地驾驭Tomcat,成为真正的Java Web开发专家。

    读书笔记程序源代码android elipse

    标题中的“读书笔记程序源代码android elipse”指的是一个基于Android平台开发的读书笔记应用程序的源代码,这个程序可能用于用户记录、整理和管理他们在阅读过程中的笔记。它使用了Eclipse IDE(集成开发环境)进行...

    Python-markbj是一个开源的知识分享平台

    关于"markbj-master",这通常是一个Git仓库的主分支名,表明这是项目的主线源代码。在开源社区,开发者通过Git进行版本控制,"master"分支代表了项目的最新稳定版本。用户或开发者可以克隆这个仓库,然后在本地进行...

    安卓期末课程设计、一款大学生今日校园App 包含源代码、使用手册和心得体会

    10. **源代码和使用手册**:项目包含源代码意味着学生可以从代码中学习实际的实现细节。使用手册则提供了操作指南,帮助用户理解和使用这个App。 11. **心得体会**:这部分可能包含了开发者在项目过程中遇到的问题...

    微信小程序项目之加油站设计与实现(源码+说明).zip

    微信小程序项目之加油站设计与实现(源码+说明) 【项目技术】 微信开发者工具+java 【实现功能】 包括游客、会员和管理员。 游客功能: 游客是指没有注册的用户。打开加油站微信小程序首页后,可以查看所有的加油站...

    Blog-完整功能源代码_博客_

    博客系统是一种在线发布个人或团队思想、...通过学习和理解这个开源博客系统的源代码,开发者可以提升前后端开发技能,理解如何构建一个完整的Web应用,同时也可以根据需求对其进行定制,打造出独具特色的个人博客。

    电子书阅读器

    开源意味着其源代码对外公开,开发者和爱好者可以自由查看、修改和分享代码,促进了技术交流和创新。开源项目通常具有较高的灵活性和可扩展性,用户或开发者可以根据需求定制功能,或者贡献自己的改进和新功能。 综...

    Java开源的下一代社区平台Symphony.zip

    商业版:闭源,报价 ¥20000,请联系 QQ845765 进行细节咨询 商业版相比社区版具有如下优势: 更好的安全性 内置 CC 攻击过滤系统 更好的性能 数据内存缓存,数据预热系统 数据库索引优化脚本 ...

    手机版知了客户端.zip

    首先,开源项目意味着“手机版知了客户端”背后的代码对公众开放,允许开发者们查看、修改和分发源代码。这样的开放性不仅增加了软件的透明度,也促进了社区间的协作和创新。开发者可以根据自己的需求定制功能,或者...

    Nomad PIM-开源

    Nomad PIM的压缩包文件"nomadpim"可能包含了安装程序、源代码、文档和其他相关资源。为了开始使用,用户通常需要解压文件,然后根据提供的指南进行安装或编译。开源软件的用户往往需要有一定的计算机操作基础,但也...

    linux 课程设计(源码分析)

    通过分析Linux内核的源代码,不仅可以理解操作系统是如何管理计算机资源的,还能进一步了解Linux内核的启动过程。 #### 1.2 任务与分析 本节明确了本次课程设计的目标和分析任务,主要包括: - **代码分析**:重点...

    FDW.S BLOG源码_myblogs.zip

    FDW.S BLOG源码_myblogs.zip 是一个包含FDW.S个人博客的源代码压缩包。这个源码可能是一个开源的个人博客系统,用于展示作者的技术分享、生活感悟或者其他感兴趣的主题。通过分析和理解这个源码,我们可以学习到许多...

    git(入门级自己的小感悟)

    Git是分布式版本控制系统,它允许开发者在项目开发过程中跟踪和管理代码的变化,是软件开发团队协作的重要工具。GitHub则是基于Git提供的一项云服务,它不仅仅是一个仓库托管平台,还提供了丰富的社交编程功能,如...

    javaforkjoin源码-gitbook-BAT-interview:本文综合自己在一线互联网工作感悟,经验。记录开源框架的源码解读,数据

    源码 -- -- geomesa -- spring -- 算法 -- hbase -- 数据库 -- 高并发 [Java Memory Modle内存模型] [指令重排,可见性,原子性,顺序一致性] 并发同步处理 [乐观锁&悲观锁,重入锁&非重入锁,公平锁&非公平锁,锁...

    Family Connections-开源

    该项目以开源的形式发布,意味着源代码对公众开放,用户可以根据自己的需求进行定制和改进。 1. **开源软件的概念**: 开源软件是指其源代码可以被免费使用、修改、复制和分发的软件。Family Connections遵循这样...

    蓝杰学习笔记备份1

    笔记可能记录了作者在阅读和理解各种开源项目源码过程中的思考和感悟,包括但不限于常见的设计模式(如单例、工厂、观察者模式等)、数据结构与算法的应用、模块化和面向对象的设计原则。此外,对于特定语言如Java、...

    学习c++的50忠告—清华学生学习c++的感悟

    - **理解**:通过阅读源代码和不断实践来提高编程能力。 - **建议**:不要怕困难,坚持阅读和编写代码。 ### 15. 选择正确的资源 - **理解**:选择适合自己的学习资源很重要。 - **建议**:参考《Effective C++》...

    斯坦福大学redbase源码+实验报告+运行说明

    斯坦福大学的redbase是一款开源的数据库管理系统(DBMS),其源码对于学习数据库系统原理和实现具有极高的价值。通过对redbase源码的研究,我们可以深入理解数据库的核心机制,包括查询优化、存储管理、事务处理等...

    深呼吸日记本 v2.0

    源代码和源码的标签意味着这款应用提供了可供开发者研究和修改的原始编程语言文件。这对于开源社区和程序员来说是一个宝贵资源,他们可以学习应用的设计模式,优化性能,或者根据需要定制功能。源代码的开放性使得...

    java7源码-ReviewJavaFoundation:重温Java基础系列源代码

    java7 源码 转载请注明作者及出处: 本文出自的博客。 从事Java开发工作已近十...笔者开通了个人微信公众号【银河架构师】,分享工作、生活过程中的心得体会,填坑指南,技术感悟等内容,会比博客提前更新,欢迎订阅。

Global site tag (gtag.js) - Google Analytics