如何成为技术大牛?

如何学习一门新的技术?
阶段一:
1、确定自己的技术方向
a、深入思考这个世界未来的技术走向,进而确定自己未来的技术优势
b、对编程产生兴趣,并试着从兴趣出发去做些什么
2、学习任何一个新技术,都找一下以下材料,原因:尽可能建立一个全视角,这样学习和解决bug都比较快
a、下载官方文档(获取翻译版文档学习会比较快一点)
b、检索在这个领域中的顶尖牛人,以及他们的技术经验博客,以便在实践过程中,解决特定问题
c、去买这个技术方向上,特别重要的好书,系统的知识框架
d、寻找那些带有注释的代码案例,拿到代码示例特别重要,因为需要通过模仿来学习
3、确定你要在自己的哪个项目上实践这个新技术,由此获得全身心投入的学习动力
a、确定自己的项目主线,清晰地知道自己学习的技术点,不论合适,都在全身心投入。
b、系统地学习及实践整个新技术 
c、与其他程序员交流,看看是否有共同合作实现及学习新技术的机会      
4、通过自己的磕磕碰碰,将新技术实现
a、学习新的技术,尽可能按照顺序,一步一步仔细耐心地完成每个步骤。
b、跳步骤,常常会出错,因为你不熟练,会遗漏细节,对于逻辑性更高的事物更是如此。
c、倘若逻辑足够严谨,bug出现的概率就能减少很多。
5、技术实现了之后
a、研究一下,新技术都运用了什么概念
b、考虑新技术的使用场景,扩大技术的使用范围
c、考虑新技术的同时,也要考虑新技术的局限性。
d、进行大量的项目模仿学习
6、总结
a、起源:为什么会出现这种技术?有什么好处?它解决了什么问题?
b、原理:这门技术的源头是哪里?即第一性原理是什么?如何从第一性原理发展成现在的原理?
c、概念本质:核心概念有哪些?相关概念有哪些?抽象地看,这些概念的本质是什么?
d、应用:技术的应用
e、场景:各行各业的应用场景
f、常规用法&特殊用法:场景的具体用法:常规用法、特殊用法
g、相关技术迭代优化:技术内部迭代的历史、技术外部迭代状况

阶段二:
1、对照:多看看别人的代码,他们在实现新技术的过程中,与你有什么不同?哪种做法更好?吸取那些非常棒的设计与写法

阶段三:
1、考虑这个新技术的底层知识与底层实现原理是什么,必须去看源码,以便获得个人技术设计方面巨大的提升

阶段四:
1、尝试自己封装这个新技术的框架,即尝试自己去写这个技术的底层实现

大牛的底层核心竞争力
1、学会如何检索文档和问google,这是是高级程序员的核心技能
2、API文档怎么看才学得比较快?
学习任何接口,都应该去了解api文件,形成整体的对一个类、一个接口的大概认识
3、扎实计算机基础知识
    a、计算机科学、网络、操作系统
    b、数据结构与算法
    c、java虚拟机等底层知识
    d、扎实逻辑学知识、扎实数学知识
    e、扎实每门语言的必备要素(变量、运算符等)、重视基础概念(例如:生命周期与作用域的概念)
    f、重视编程思想的实现:设计模式、编程思想
4、学习至少六种编程语言(大神的建议)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章