studyjava-zz
Java再回首,重新探索这个精彩的世界。
斯人已去,独探索矣。
背景
从事Android移动开发4年(Java语言),因朋友想转行(铁路),需要带他转行入门。
朋友是电脑小白,没有任何编程经验,也没有学习过任何编程语言,甚至对于电脑常识都一片空白。
基于这一点,朋友学习java需要花费更多的时间和精力,去理解编程中存在的深度与广度。
一些在我看来很简单的问题,朋友可能会觉得匪夷所思。
为了磨平双方存在的分歧,抵消在空间上和时间上的不一致,我建立了这个仓库,用来记录学习过程中的波澜壮阔。
计划
一、了解
- Java是什么?——java是一门编程语言,基于C++,摒弃糟粕,吸收精华,更方便程序员开发项目
- 为什么选Java?——java依然是最热门的开发语言,并且它的开源库特别多
- 怎么样使用Java?
二、内容
任何情况下,想要精通一门技术,必须先打牢基础。
java程序开发也是一样。
针对基础的学习,越扎实越能让开发显得驾轻就熟,而不会花费大量时间在层出不穷的问题上。
鉴于朋友的小白基础,原本想一起学习的《Java核心技术》,进行到第四章时,花费了大量的时间在解释术语和电脑常识上。
于是转而求其次,推荐朋友入手《Java从入门到精通》这本国人写的书,应该会有比较不错的入门体验。
等《Java从入门到精通》这本书大部分内容学习完毕,再转向《Java核心技术》当做基础知识巩固。
这样就相当于完成了最终的使命:带朋友入门。
至于以后的精通和进阶,是朋友自己的事情,我无法做到全程护航。
我唯一能做的是,传授一些开发经验,展示一些编程思想,让他少走弯路。
教科书
《Java从入门到精通》
通过对核心技术的遍历,发现小白很难掌握其中的精髓,因此转而从这本书入门
- [x] 浏览 第一章-第六章:这些内容比较基础,在核心技术中已有概念,这里只需要熟悉下就好
- [x] 学习 第七章、第八章、第九章:这部分的内容是核心,java的神秘面纱后面,最美妙的部分,需要熟悉和理解
- [x] 了解 第十章、第十一章、第十二章:属于小白的了解内容,可以不用花太多时间在上面
- [x] 阅读 第十三章、第十四章:这里不做过多深入,看看就好
- [x] 玩弄 第十五章、第十六章、第十七章:实战的主要部分,因此也需要学习,是检验学习成果的最佳途径
- [x] 知会 第十八章、第十九章、第二十章:属于有兴趣就玩玩,没兴趣就放着的部分
《Java核心技术》
阅读过第9版的第一遍,目前与朋友一起看第二遍
- [x] 通读 第一章、第二章:了解特性和历史,配置开发环境,写出第一行代码并成功运行
- [x] 关注 第三章:要求熟记这部分的内容,因为使用很频繁,但前期不讲究完全记忆,可以从后续学习中逐渐记忆
- [ ] 理解 第四章、第五章、第六章:初学者不要求完全掌握这部分内容,但从长远角度来看,这将是未来核心中的核心
- [ ] 训练 第七章、第八章、第九章:与实际操作相关,需要完全在操作中理解,只是单纯地看没有任何意义
- [ ] 跳过 第十章、第十一章、第十二章、第十三章:从移动开发角度来看,Java的图形化设计只有参考价值,没有学习的必要性
- [ ] 上手 第十四章:学习到这里,你应当有了初步的基础,可以上手开发一个大型项目(在这之前,也有小型的项目作业)
《Java编程思想》
由于我并未阅读过,因此给出的只能是建议
- [ ] 建议 核心技术学完第四章之后,来看看第一章、第二章,互相参考
- [ ] 建议 第三章、第四章,与核心技术的第三章一起看
- [ ] 建议 第五章、第六章、第七章,在核心技术看完并开发项目(我给的项目任务)一段时间之后,一起来看
- [ ] 建议 第八章、第九章、第十章,与核心技术中,对应相关的章节内容,结合一起来看
- [ ] 建议 第十一章到第二十一章,可以在开发项目(我给的项目任务)一段时间之后,一起来看
三、要求
没有对自身的要求,则只能称之为阅读,而不是学习。
作为一个学习者,要将阅读贯彻执行,从中得到知识点,光得到还不够,必须阐述自身的感悟,并作为笔记记录下来,才是一个真正的学习过程。
- 章节笔记:每一章每一节,遇到困惑,随时标记、提问;若有感悟,随时记录
- 结论笔记:针对部分内容(不限知识点)做一个小结,针对一段内容(不限章节)做一个总结
- 发布任务:有任务才有学习动机,一起制造问题、讨论问题、解决问题,从问题发掘内涵
- 代码提交:所有的读书笔记、学习源码、任务工程等,全部提交到这个仓库中
- 资料汇总:一起整理学习过程中,收集到的所有相关资料
四、其他
关于提问、日周月计划,以及其他相关问题的汇总:
- 简单的问题,在社交软件上,随时提问,抽空解答
- 复杂的问题,单独作为一个项目,通过远程桌面并录制教学视频的方式,进行解答
- 学习者要有每天的计划,授课者要有每周的计划,授课者根据学习者的空闲时间,合理安排教学课程表
- 每月月初,由授课者制定一些学习内容的大概计划,学习者参考后进行删减,可以也应该主动要求学习一些感兴趣的内容
- 请假需要在Issues中申请,互相批复
- 关键性问题,可以在Issues中提出,找一个合适的时机进行解答
- 对方新建的Issues必须在过期时,及时关闭
- 其他问题,未完待续