Java那些事儿 —— 写一篇妈妈也能看懂的Java学习笔记
小白也能看懂的Java学习笔记(因为我也是小白,所以写一点小白自己能看懂的东西)
这本笔记包括但是不限于Java知识,(做开发没多久感觉自己忘记的差不多了,最近又看了几本书,心血来潮写一个笔记)
写这个的目的意在自我复习,尽量让自己的学习过程变得有趣,还有就是希望借助大家的经验,纠正自己之前相关知识理解的偏差。
如果你和我一样是开发没多久或者是对Java感兴趣可以和我一起学习,我们共同进步!!!
PS:我会尽量用有趣的语言,夹带自己的一些理解,来记录学习相关的知识。 如果我的理解有问题,敬请大家斧正!!
让我们开始吧:第一章
一、浅显的认知与介绍:
(一)、what is Java? why is Java? (兴趣部分) :
还是老一套学习任何东西前都会问一嘴,玩意儿是啥?
也许,你问不同的人这样一个问题,或者打开不同出版社的相关JAVA的书籍去解答这个问题,大概率都会有这样一句话,或者都有这样一种表达:Java是由詹姆斯.高斯林(James Gosling )与伙伴共创的一种高级计算机语言,自1995年诞生至今经过了好几十个版本经久不衰。
(在此向Java之父致敬)
这句话确实没毛病,但是问题就是这句话好像太高级了,不太好理解。
如果我们想理解这话不妨先理解这样一个问题:
什么是计算机语言?
所谓:人有人语,牛有牛语,鸟有鸟语,语言就是意味着一种交流方式,或者说一种交流工具。说白了你想与牛交流就要用牛语,与鸟交流就要用鸟语,与鸟人交流就要用日语 。
那么计算机语言,故名思意就是与计算机交流的一种方式或者更贴切的说是一种工具(因为说人话,计算机可能听不懂)
那么为啥需要这种语言呢?
为了让他给我们干活呗。就像牛不是生下来就会耕地,计算机也不是造出来就会干活,他需要人"教",这就必然需要语言作为工具,达到”教“会它替我们干活的目的,随着时代的发展"教"计算机干活就慢慢形成了一种职业–程序猿,程序员们夜以继日榨干自己敲代码与计算机进行着交流,教会了计算机做很多事情,也达成了很多惊人的成就。
那么为啥说它高级呢?
实际上,就像人类语言一样,计算机语言也在不断演变,并逐渐走向成熟,它大概经历了这样几个过程
1、机器能明白,极少数人能明白,修改极其困难 (机器语言)
2、机器能明白,少部分人能明白,修改相对一般(汇编语言)
3、机器能明白,大部分人能明白,修改相对容易(高级语言)
Java就处在第三阶段,所以它高级,
为啥是Java?
因为我在复习 你感兴趣 咱共同进步 现在还有市场 over! (知道现在特别NB的Chart-GPT吗 没错 它是python写的)
(二)、什么是程序,程序是干嘛的,程序员是干嘛的? (小白理解)
上文说到,"教"计算机干活成为了一种职业–程序员 那他们天天开发,开发的是啥?实际上就是程序
开发就是写程序(小白的理解)
程序是什么?
程序是指一组指示计算机或其他具有信息处理能力装置执行动作或做出判断的指令,通常用某种计算机编程语言编写,运行于某种目标计算机体系结构上。
说人话就是:程序就是具有严谨逻辑的,能在一定装置上执行的一系列代码的组合 (包含相关的辅助文件)
那么程序是干啥的呢?
在我看来,程序的作用实际上是对各种数据,进行各种处理。
各种数据包括但不限于:数字、文字、图片、视频、音频
各种处理包括但不限于:展示、存储、传输、修改、删减
程序员是干嘛的?
我们每天打开各种App、各种网页,看到的各种画面、听到的各种声音…,都是对数据进行处理的结果,它们的背后都有着强大的程序与海量的数据做着支撑,而伟大的程序员始终在开发与维护它们,保证数据安全可靠无误的情况下,让程序能够稳定、持续、自动的对数据进行各种处理。我们就是要做这样一个事情,开发或者维护一个程序,实现各种功能,成为他们的一猿,前提是我们需要学习很多东西。
(三)、什么数据?(纯属废话)
相信大家在大学计算机理论基础课上,都了解过有关数据的概念,书上大概是这样写的:“数据是事实或观察的结果,是对客观事物的逻辑归纳,使用于表示客观实物的未经加工过的原始素材。”(略)
说实话,大家大可不必费劲理解这样一个抽象的概念。
首先,不是说我们没有表达数据就不存在,很多情况下只是我们没有将它们表达成数据。
其实数据与我们息息相关,就好比时间它就是一种数据,气温变化,人体激素水平,出门怎么走到能走到公交站,钱包余额都可以用数据清楚的表达出来。
(四)、一切的一切还要从数据说起(姑妄言之,姑妄听之):
上文我们大概聊了一下数据、程序、以及数据与程序的关系。
可见数据是整个体系的基础,可以说互联网职业,甚至于说信息时代。都是在对数据做文章,围绕这样一个关系,我们或许对互联网的各个行业有个大概的认识。
那么互联网中那么多职业,他们都在干什么呢?
为了方便大家理解,我们不妨假设你现在是老板,或者说是甲方爸爸,你现在已经租/买好了开发所需要的一切(电脑,服务器 …等等) 想要建立一个可以盈利的网站需要哪些类型的程序猿呢?
1、首先这个网站开始搭建之前,最重要的是获取数据,因为只有依靠这些数据你才赚取利益,它很可能来自其他网站、来自你的竞争对手或者合作方,爬虫工程师负责数据的采集与整理。他们类似于挖矿,帮你从各个地方收集整理你想要的数据。
2、经过他们的不断采集,现在你已经有了数据,那么就需要有个数据库来存储你的数据,但是只有数据库不行,不安全,这时你需要一个人来管理你的数据库,数据库管理员(DBA)对你的数据库进行管理保证的你的数据安全 (一般小公司都没有)。
3、现在你的数据安全的存储到了数据库里,并且爬虫工程师源源不断的给你提供数据,你已经有了可靠的数据做支撑现在要逐步实现盈利的目标,现在可以进行开发了,后端工程师开发程序,对这些数据进行计算。将这些存储在数据库中的数据,按照一定的规则取出传递添加与修改。
4、可是,后端提取出来的数据往往用户看的很不舒服,毕竟用户来你这个网站不能给他显示干巴巴的满屏数字吧,于是前端工程师诞生了,他们设计并调整数据展现形式,体现出网站的高端大气。
5、现在你的程序已经基本开发完成了,那么这些程序是否符合你的要求呢,你需要对它们进行测试,软件测试对开发的程序进行各种场景的测试,保证程序在已知的或可预测各种场景下能够稳定高效的循行,说白了就是别出bug.
6、好了,现在你拥有了美丽的页面、稳定高效的程序、可靠的数据资源。盈利只有还剩一步–上线,可是程序上线就结束了么,世界上总会有些未知的因素打扰它们运行。运维工程师,进行项目的上线部署 保证在各种突发情况下做出应急处理回复程序生产
以上是自身对各种职业的浅显理解:实际上在真实的开发场景中这些步骤往往都是同时进行的,此外这上面的每一个职业都需要大量的知识储备与行业经验才能做的好,当然光靠这些人也还是远远不够的。
标签:Java,计算机,理解,程序,笔记,开发,能看懂,数据 From: https://blog.csdn.net/weixin_51209652/article/details/139545108