想成为IT大牛最快捷的方式就是看开源程序,那么看开源程序应该思考些什么问题呢?
①看程序中的变量,方法,参数,实现的接口,继承的类时要思考他们来自于哪里?
②程序调用执行的先后顺序是怎样的?
③它是怎样实现的这些参数的传递和方法的先后调用的?
④为什么要这么调用和传参,这么做的优缺点是什么?从中你学到了什么?
再高层次一点,你要了解他的架构是怎么样的,为什么要这样架构,他的工程结构是否合理,等等?
看开源代码绝不能仅仅停留在看懂代码这层上,你必须得看出开源人的编程思维和思想;要懂得人家这样编程的利弊,自己怎样将好的编程思路运用到自己的项目中去,自己是否有更好的思路?其实认认真真读懂一份开源代码比你泛读要好的多,有些人说是说自己看过多少项目,将其技术来也是侃侃而谈但是真正让他做个东西就尿了,为什么?了解浮于表面,不懂人家的编程思想导致的。
在深入研究计算机的某些个问题时很容易层层深究,比如你在一个类中使用某个参数时你会想他的来源;如果当他是另一个类中传过来的时候,你就会去看另一个类中的方法继承、接口调用,以及类中的具体细节;这样一路深究很容易就触及到支持你开发开发工具包中;当然进入到这个开发工具包中你就更晕了,那么你面临一个重要的抉择是接着往下走呢,还是不求甚解呢?接着往下走以为着需花费更多的时间和精力也不一定能得到你想要的结果,有可能你越走越远最终偏离了你的求知的初衷;总是选择不求甚解呢,那你可能永远没法提高成为大牛,应为你不懂的原理只会简单的实现起点就比这些大牛低了一级;这个时候的抉择应该是看你当时的时间安排,如果你有空那不妨深入研究研究,毕竟我们要知其然而知其所以然;如果没有那个时间那你可以先记下,等你有空的时候在来深究。有时候只是需要某些技术,你不必过于钻牛角尖。在科技企业工作不但要有快速学习新技术应用新技术的能力,还要有深入研究深挖技术实现的能力;快速学习的能力是为了适应企业快速发展的需求,但是深入研究的能力才是保持企业技术长远发展,是企业提升技术竞争力的关键。
分享到:
相关推荐
通过学习和实践,不仅可以提升PHP和uniapp的运用能力,还能掌握小程序的开发流程和技术要点,对于提升个人技能或者团队项目开发效率都有着显著的帮助。同时,开源的精神也鼓励更多人参与到软件开发的创新中来,推动...
本文将围绕这个开源项目,探讨其核心技术和开发要点。 1. **多媒体框架** PotPlayer的底层构建基于DirectShow框架,这是一个由微软提供的多媒体处理库,支持音频和视频的捕获、解码和渲染。了解DirectShow的工作...
腾讯的“海量之道”体现了其在大规模数据处理和应用管理上的经验总结,其中包含的要点有:小步快跑、先抗住再优化、边运营边重构边生活、每天弯腰每周搬家、大系统小做、干干净净、分SET部署、云中建设、云中发展和...
以上知识要点在Python爬虫开源项目代码中均有体现。通过阅读和分析这些项目的源码,不仅可以学习到具体的爬虫实现技巧,还能了解到在实际项目中如何解决各种问题。对于想要深入学习和提升Python爬虫技术的人来说,这...
该项目旨在为学习者提供一个实践的平台,帮助他们在实践中掌握Unity游戏开发的基本流程和技术要点。 #### 二、技术栈简介 1. **Unity版本**:本项目采用Unity5.4.1及以上版本进行开发。Unity5.4.1是Unity5系列中的...
通过研究这个开源项目"MOMO-master",开发者不仅可以学习到陌陌的核心功能实现,还能掌握移动社交应用开发的整体流程和技术要点,为自己的项目开发积累宝贵经验。同时,这也是一个实践和提升编程技能、团队协作以及...
通过对源代码的学习,学生可以深入理解项目管理系统的架构设计、数据库交互以及前后端通信等技术要点。 四、建站模板与系统集成 DooTask作为一个独立的项目管理工具,也可作为网站后台管理系统的一部分。其简洁的...
- **要点**: 积极参与开源项目,贡献自己的力量。 - **描述**: 参与开源项目不仅可以提升个人技能,还能建立广泛的人脉关系。 #### 19. 自我驱动学习 - **要点**: 培养自我驱动的学习习惯。 - **描述**: 编程是一项...
《C#网店开源软件eshop深度解析》 在IT领域,C#作为一种高效且功能强大的编程语言,被广泛应用于各种软件开发中。...通过深入研究eshop,我们可以更好地掌握C#的精髓,同时也能掌握构建电商系统的完整流程和技术要点。
通过本教程的学习,读者可以掌握使用TELEMAC-2D和BlueKenue进行不稳定流条件下洪水淹没分析的基本流程和技术要点。这些知识对于从事水文水资源管理、防洪减灾等领域的专业人士来说是非常有用的。此外,了解TELEMAC-...
这个开源项目集合提供了一系列的学习资源,旨在帮助开发者深入理解并掌握OpenGL的技术要点。 在Android平台上,OpenGL ES(OpenGL for Embedded Systems)是用于渲染2D、3D图形的标准API,它是OpenGL的一个子集,...
三、即时通讯技术要点 1. 消息推送:即时通讯的关键在于消息的实时推送,通过长连接(如WebSocket)保持客户端和服务端的持续通信,一旦有新消息,服务端可以立即推送到客户端。 2. 消息同步:为了保证多设备间的...
MIT开源电机AK80-6电机使用说明包含了电机的基本操作指南、详细接口说明以及通信协议等要点,下面是对这些内容的知识点总结。 ### 电机使用注意事项 - 必须在规定的工作环境和温度范围内使用电机,以保证电机的正常...
### 开源项目集合知识点概述 #### 一、小四轴飞行器 - **技术要点**: - 使用STM32F4芯片,该芯片具备强大的处理能力,支持Wi-Fi连接,能够实现通过Android手机进行控制。 - 设计强调科研价值及深度学习,适合有...
【描述】"共27页.pdf.zip"表明这是一个包含27页内容的PDF文档,可能包含了演讲摘要、讨论要点、嘉宾观点以及案例研究等丰富资料。文档被压缩存储,以.ZIP格式提供,这种压缩方式能够有效减小文件大小,便于传输和...
本文档总结了开源新一代NewSQL数据库架构设计与实践的要点,涵盖了开源软件发展、开源技术领域区分、开源数据库、开源软件服务商、云服务平台、企业应用软件开发商等方面的知识点。 一、开源软件发展 开源软件发展...
为了更好地理解STM32物联网实验平台的开发,接下来将详细阐述几个核心概念和设计要点: 1. STM32微控制器:STM32微控制器基于ARM Cortex-M系列处理器,拥有丰富的内置外设,如定时器、串口、模数转换器、数字模拟...
从提供的文件信息来看,文档涉及Java开源项目,包括Spring、Mybatis和Velocity等热门框架的中文资料。文件内容提到了Spring框架的多个版本,包括Spring 3.1的特性介绍以及IoC(控制反转)的概念。文档还提到了...