《像计算机科学家一样思考Java》—— 读后总结
本书属于入门级的Java书籍,与其他的向编程思想、核心技术不同的是,这本书不是按部就班的讲解java变成知识,而是随着语言的深入慢慢增加知识点。

这本书以一个语言开发者的角度,深入浅出的讲解了Java语言的机制。
比如语言最基本的变量和方法,到后续的深入,功能的增加,逐渐的加大难度与知识点。
本书内容

程序语言
一门编程语言,在学习之前要看它是高级语言、还是低级语言。低级语言更接近计算机底层,但是不容易编写和理解,比如汇编。还要看它是解释型的还是需要编译的。比如html,css都是属于解释型的,你提供一种解释的机制,不论在哪里都可以被执行。但是需要编译的语言就不同了,你需要它对应的编译器,才能把它转化成可执行的文件,比如C语言,Java等等。
学习过程
语言中基本的内容都是相同的,
比如创建对象或者变量(大同小异,可能关键字不同;但是背后的原理,比如存储运算的机制,也是不同的,深入了解对学习语言很有帮助。但是初学者不比关注这些细节。),比如循环判断等等。
这些简单的内容基本就可以处理80%的日常业务代码。
剩下的就是一个高级特性,比如JS有它的原型和闭包,Java有结合设计模式衍生的一些高级框架工具,这些都是后续深入了解的内容。
了解基本内容后,就可以深入它的特性了。
比如Java讲究一种面向接口的封装,那么什么是接口呢?接口也是一种抽象类,但是其中的方法必须要被继承。而且没有具体的含义,它更适合作为一种规范。细节的处理交给实现类去实现。
比如一些关键字,static,final。这些声明的对象和方法,变量有什么特点?
比如一些高级容器,ArrayList,HashMap,其实常用的也就是这俩...
比如一些常见的文件操作,Excel,txt,word,pdf等等
比如如何设计一套组件,让其拥有一定的扩展性与可用性,那么就需要多学习设计模式以及高级框架。
像Java这种语言,最大的好处就是人多,开源的工具包很多,基本你能想到的代码,都已经存在了。需要学习的就是如何使用别人的锤子就行了。
最后为了掌握一门语言,还要学习底层的处理机制——JVM。就像之前博问中说的,一个赛车手了解发动机的原理,如果不了解,一样能开车;但是如何想要在合适的时机加速和减速,那么这就是必须要掌握的技能了。
《像计算机科学家一样思考Java》—— 读后总结的更多相关文章
- 我的第一本docker书-阅读笔记
花了三四天看完了我的第一本docker书,话说书写的还是挺简单易懂的.与传统的VM,VirtualBox,或者与那种内核虚拟的xen,kvm相比,docker作为一种容器的虚拟方式,以启动进程的方式来 ...
- 《第一本docker书》—— 读后总结
关于docker 这本书其实并没有读完,只不过最近工作比较繁忙,也无心再看这些用不到的书.以后要是工作需要,再仔细学习吧. 这次的阅读算是达到目的了,对docker有了一定的了解.它的作用.意义以及大 ...
- 第一本Docker书读书笔记
日常使用命令 1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q) 如果想要删除所有container的话再加一个指令: ...
- 《第一本Docker书》
Docker简介 Docker依赖写时复制(copy-on-write),使修改应用程序非常迅速. Docker推荐单个容器只运行一个应用或进程,鼓励面向服务的架构和微服务架构. Docker的核心组 ...
- 第一本docker书 学习笔记(二)
#安装docker的先决条件 运行64位CPU构架的计算机(docker目前不支持32位的cpu) 运行LUFSinux3.8或者更高版本内核 内核必须支持一种合适的存储驱动,例如: device M ...
- 《第一本Docker书》学习笔记——第3章 Docker入门
3.1 确保Docker已经就绪 查看docker是否正常工作: sudo docker info 3.2 运行我们的第一个容器 现在,让我们尝试启动第一个Docker容器.我们可以使用docker ...
- 《第一本docker书》- 第一章笔记
环境: Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-30-generic i686) 第一章: 1 Docker客户端和服务器 2 Docker镜像 添加一个文件,执行一 ...
- 《第一本docker书》第4章 使用docker镜像和仓库 读书笔记
docker最底端是一个引导文件系统,即bootfs. 第二层是root文件系统rootfs,位于引导文件系统之上. 在传统的Linux引导过程中,root文件系统会最先以只读的方式加载,当引导结束并 ...
- 第一本docker书,,持续更新中
1.查看应用是否在docker中部署成功 需要确认curl已安装 whereis curl sudo apt-get -y install curl curl localhost:8081 如果成 ...
- 第一本docker书 学习笔记(一)
Docker的核心组件: Docker客户端和服务端 Docker镜像 Registry Docker容器 # Docker客户端和服务端 docker 是一个 C/S架构程序.客户端只需要向dock ...
随机推荐
- POJ 2653 Pick-up sticks (线段相交)
题意:给你n条线段依次放到二维平面上,问最后有哪些没与前面的线段相交,即它是顶上的线段 题解:数据弱,正向纯模拟可过 但是有一个陷阱:如果我们从后面向前枚举,找与前面哪些相交,再删除前面那些相交的线段 ...
- mongodb提示api-ms-win-crt-runtimel1-1-0.dll缺失的解决方案
mongodb提示api-ms-win-crt-runtimel1-1-0.dll缺失的解决方案 官方最新版的mongodb需要: VC++2015 RC x64的支持,否则会报出
- ctf汇总
IDF实验室:牛刀小试 IDF实验室:倒行逆施 linux shell 常用指令 汇编笔记 堆栈溢出
- 在HyperlinkButton的URL地址里附加多个参数(以http get的方式)
1.使用 Uri(string uriString,UriType type)创建Uri对象:new Uri("/navigatingPage?key1=value1&key2=va ...
- JS操作Json
因为我水啊 所以我就要手打一下 熟悉一下 ===== JSON 全称 JavaScript Object Notation(标记) 一种轻量级的数据交互格式,采用完全独立于语言的文本格式 同事JSON ...
- VB6+Winsock编写的websocket服务端
早就写好了,看这方面资料比较少,索性贴出来.只是一个DEMO中的,没有做优化,代码比较草.由于没地方上传附件,所以只把一些主要的代码贴出来. 这只是服务端,不过客户端可以反推出来,其实了解了webso ...
- Debian 8 jessie, OpenSSH ssh connection server responded Algorithm negotiation failed
安装了debian 8.5 就出问题了. root@debian8:~# lsb_release -aNo LSB modules are available.Distributor ID: Debi ...
- Mybatis添加到Spring
一.准备工作: 1.1 添加相应的jar包依赖: 这里用到了两个jar包,一个是mybatis的,另一个是mybatis-spring的,代码如下: 1 2 3 4 5 6 7 8 9 10 < ...
- nfs配置注意点
#ip与括号之间不能有空格,不加rw参数时挂载的目录是只读的 /eqp/export/ 10.10.30.0/24(rw,sync,no_root_squash) #更改目录所属的组和所属的用户(nf ...
- Swift小练习-引导页
任何一门语言,只要长期不用就会忘掉,得时不时的敲敲小项目,练练手; let scrollViewBG = UIScrollView.init(frame: SLScreenRect) let imag ...