《像计算机科学家一样思考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 ...
随机推荐
- Java EE之数据库连接与插入
在这之前应该先: **保证项目中导入了mysql-connector-java-5.1.23-bin.jar **服务器上的数据库24小时连接成功: 1.在源包下新建一个普通的Java文件,取名为My ...
- KickStart 无人值守安装系统
一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...
- 1.Linux中安装LNMP过程
第一步安装mysql过程 安装包mysql-5.0.22.tar.gz,解压tar -zxvf mysql-5.0.22.tar.gz cd mysql-5.0.22 进行源码安装./configu ...
- Python学习日志(二)
在网易云课堂看到小甲鱼的python视频,想起以前看就是看他的视频学C的虽然后来不了了之都怪我自己啦,于是决定跟着这个视频来学python啦! IDLE IDLE其实是一个python shell , ...
- Spring Cloud 统一配置
http://blog.csdn.net/catoop/article/details/50955949
- Ubuntu14.04 64位机上安装cuda8.0 cudnn5.0操作步骤 - 网络资源是无限的
查看Ubuntu14.04 64位上显卡信息,执行: lspci | grep -i vga lspci -v -s 01:00.0 nvidia-smi 第一条此命令可以显示一些显卡的相关信息:如果 ...
- 解决Ubuntu安装openssh-server依赖问题
sudo apt-get install openssh-server 提示:openssh-server : 依赖: openssh-client (= 1:6.6p1-2ubuntu1) 解决 u ...
- spark 2.0 中 pyspark 对接 Ipython
pyspark 2.0 对接 ipython 在安装spark2.0 后,以往的对接ipython方法失效,会报如下错错误: 因为在spark2.0后对接ipython的方法进行了变更我们只需要在py ...
- 【转】iOS学习之适配iOS10
适配iOS10 2016年9月7日,苹果发布iOS 10.2016年9月14日,全新的操作系统iOS 10将正式上线. 作为开发者,如何适配iOS10呢? 1.Notification(通知) 自从N ...
- ZooKeeper个人笔记客户端watcher和AsycCallback回调
每一个Watcher具有如下属性: 1.KeeperState 2.EventType 3.path 4.process(WatchedEvent evnet)回掉方法 Watcher干嘛的?用户监听 ...