《像计算机科学家一样思考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 ...
随机推荐
- Server.MapPath()
./当前目录/网站主目录../上层目录~/网站虚拟目录 如果当前的网站目录为E:\wwwroot 应用程序虚拟目录为E:\wwwroot\company 浏览的页面路径为E:\wwwroot\co ...
- Git小记
Git简~介 Git是一个分布式版本控制系统,其他的版本控制系统我只用过SVN,但用的时间不长.大家都知道,分布式的好处多多,而且分布式已经包含了集中式的几乎所有功能.Linus创造Git的传奇经历就 ...
- 基于ThinkPHP3的微信平台开发_1
微信公众平台是个好东西,具体的就不说了,我直接说技术>_< 下图为目录结构一览: 微信开发 - 文件目录结构 平台功能: 此次开发的平台是面向多微信公众号.微信多公众号主(下面简称号主)的 ...
- WebViewJavascriptBridge使用说明(iOS)
由于现在很多产品都是有安卓版跟ios版,就意味着同一样东西要出两套,由两组人去完成,不仅增加了开发成本,也大大加剧了维护成本.聪明的coder想出了跨平台的思路,用html写页面,分别用webview ...
- OCIEnvNlsCreate 失败,返回代码为 -1,但错误消息文本不可用
通过Navicat for Oracle能连接成功,增删改查正常,可一用到ADO.NET就报这个错误. 原来我一开始是用“管理员”方式安装的Client,后来用“InstantClient”方式重装就 ...
- Python框架之Tornado(三)请求
概述 本篇就来详细介绍tornado服务器(socket服务端)是如何接收用户请求数据以及如果根据用户请求的URL处理并返回数据,也就是上图的3 系列所有步骤,如上图[start]是一个死循环,其中利 ...
- Agile
I think Agile development methodologies is something we get from our practice. It can be just acknow ...
- indexOf、instanceOf、typeOf、valueOf详解
1.indexOf() 该方法用来返回某个指定的字符串值在字符串中首次出现的位置. 语法:indexOf(searchvalue,fromindex);两个参数,参数一表示查询的字符串值,参数二可选表 ...
- webpack配置ES6 + react套装开发
配置ES6 1.安装插件: babel-loader,babel-preset-es2015,babel-preset-react. 2.添加配置文件中部分内容: { test: /\.js$/, l ...
- OUTLOOK 发生错误0x8004010D
问题: outlook 2003 在接收邮件时报错: “正在接收”报告了错误(0x8004010D):“在包含您的数据文件的驱动器上,磁盘空间不足.请清空“已删除邮件”文件夹或删除某些文件以释放 ...