本文主要是介绍Arya小科普 | 硬件软件基础知识 Java语言的前世今生 James Gosling老爷子的小故事 Java下载 和 IDEA工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
1.从硬件到软件的计算机基础知识;
2.Java之父的小故事;
3.Java语言的前世今生,及其特点;
4.Java下载 和 IDEA工具;
硬件和软件
键盘就是硬件, 操作系统就是软件。
硬件:设备和计算机打交道
软件:客户需求
芯片和CPU
苹果M1芯片,是迄今为止5纳米工艺的技术巅峰。晶体管最高到达1140亿个。
CPU是芯片的逻辑单元,芯片性能越好,CPU的运算效率和速度就越高。
所有的程序最终不管怎么样,都会交给CPU执行。
硬盘
1、我们存储的小电影,图片,代码等就静静的躺在硬盘上。 硬盘一般也叫做外存储器,是计算机主要的存储媒介之一。
2、硬盘一般可以分两类,一是固态硬盘(SSD),二是机械硬盘(HDD),SSD要比HDD速度快的多。
内存
1、计算机所有程序要运行,都会在内存中加载。(包括我们自己白那些的Java程序,网页程序,桌面客户端程序等…)
2、内存的主要作用是帮助CPU做数据运算的,只要计算机运行一次,CPU就会把需要的数据送到内存中进行运算。
3、从速度上来说,就近原则,谁离CPU最近,传送的速度就越快。但计算机一旦关闭,内存中的数据会全部消失。
硬件和软件
在计算机中,软件和硬件缺一不可。硬件是身体,软件是灵魂。硬件是物质层面,软件是信息层面。计算机在工作过程中,软件运行的基础依赖于硬件
1、软件是一种逻辑的产品,与硬件有本质的区别
硬件是看得见、摸得着的物理设备。在研制硬件产品时,人的生产性活动表现在把原材料转变成有形的物理产品。
而软件产品是以程序和文档的形式存在,通过在计算机上运行来体现他的作用。
在研制软件产品的过程中,人们的创造活动表现在要抽象出问题的模型,然后根据模型写出程序,最后经过调试、运行程序得到求解问题的结果。整个生产、开发过程是在无形化方式下完成的,其能见度极差,这给软件开发、生产过程的管理带来了极大的困难。
2、软件质量的体现方式与硬件不同
硬件产品设计定型后可以批量生产,通过质量检测体系可以得到保障。但是生产、加工过程一旦失误,硬件产品可能就会因为质量问题而报废。而软件产品不能用传统意义上的制造进行生产,就目前软件开发技术而言,软件生产还是“定制”的,只能针对特定问题进行设计或实现。
设计出来的软件即使出现质量问题,产品也不会报废,通过修改、测试,还可以将“报废”的软件“修复”,投入正常运行。可见软件的质量保证机制比硬件具有更大的灵活性。
3、软件产品的成本构成与硬件产品不同
硬件的成本构成物质占了相当大的比重。就硬件产品生存周期而言,成本构成中设计、生产环节占绝大部分,而售后服务只占少部分。软件生产主要靠脑力劳动。软件产品的成本构成中人力资源占了相当大的比重。
4、软件产品的失败曲线与硬件产品不同
硬件产品存在老化和折旧问题。当一个硬件部件磨损时可以用一个新部件去替换他。硬件会因为主要部件的磨损而最终被淘汰。对于软件而言,不存在折旧和磨损问题,如果需要的话可以永远使用下去。但是软件故障的排除要比硬件故障的排除复杂得多。软件故障主要是因为软件设计或编码的错误所致,必须重新设计和编码才能解决问题。
软件在其开发初始阶段有很高的失败率,这主要是由于需求分析不切合实际或设计错误等引起的。当开发过程中的错误被纠正后,其失败率便下降到一定水平并保持相对稳定,直到该软件被废弃不用。在软件进行大的改动时,也会导致失败率急剧上升。
5、大多数软件仍然是定制产生的
硬件产品一旦设计定型,其生产技术、加工工艺和流程管理也就确定下来,这样便于实现硬件产品的标准化、系列化成批生产。,硬件的作用发挥又依赖于软件,所以他们俩是相辅相成的。
编译过程
Java之父James Gosling老爷子
James Gosling老爷子
James Gosling(詹姆斯·高斯林 )是一名软件专家。
955年5月19日出生于加拿大,Java编程语言的共同创始人之一,一般公认他为“Java之父”。
1977年获得了加拿大卡尔加里大学计算机科学学士学位。
1983年获得了美国卡内基梅隆大学计算机科学博士学位。
开源:
底层代码给你,你可以研究……
我认为一门语言的诞生都是解决了特定场景下的问题,如果不注重体验 ,不降低学习成本,一味地追求测试基准数据和噱头就一定没有前途。优秀的语言和框架都特别重视运营和体验。
早年经历
- 12岁的时候,精通计算机,喜欢玩游戏,但市面上游戏机稀缺, 已经能设计电子游戏机。
- 大学时期,天文物理系担任程式开发工读生,1977年获得了加拿大卡尔加里大学计算机科学学士学位。
- 1981年他开发了Unix上运行的Emacs类编辑器GoslingEmacs(以C语言编写)。
- 1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作。
- 由于在公司不受重用(估计受不到资本家压迫),选择转至Sun公司:
这在后来被公认为他一生最精明的决定之一。在几年的蛰伏后,他终于找到了能让自己翱翔的那片天空。
1990年,他与他的团队合作开发“绿色计划”,后来发展一套语言叫做“Oak”,这也就是被后人所熟知的那个“优秀,稳定而出众”的Java的雏形。
工作履历
- 2009年四月,Sun被甲骨文公司并购。高斯林于2010年四月时宣布从甲骨文公司离职。
Through some odd twists in the road over the past year, and atardisencountered along the way, I find myself starting employment at Google today. One of the toughest things about life is making choices. I had a hard time saying “no” to a bunch of other excellent possibilities. I find it odd that this time I’m takingthe road more travelled by, but it looks like interesting fun with huge leverage. I don’t know what I’ll be working on. I expect it’ll be a bit of everything, seasoned with a large dose of grumpy curmudgeon.
在过去的一年中,在道路上出现了一些奇怪的曲折一路走来,我发现自己今天开始在谷歌工作。生活中最艰难的事情之一就是做出选择。我很难对其他许多优秀的可能性说“不”。我觉得奇怪的是,这一次我走的是人迹罕至的道路,但它看起来很有趣,有着巨大的影响力。我不知道我将要做什么。我想这将是所有的东西中的一部分,带有大量暴躁的脾气。
- 2011年3月29日,高斯林在个人博客上宣布将加入Google。
- 2011年8月30日,加盟一家从事海洋机器人研究的创业公司Liquid Robotics,担任首席软件架构师。负责传感器软件开发和自主导航设计,数据中心海量数据处理。
Java语言 VS 其他语言
Java竞争对手
Java的优点
1、跨平台
写的代码可以在各个操作系统上运行。 技术支持是JVM(java虚拟机)。
-面试:JVM内存调优
因为有jvm,所以java跨平台。
跨平台的价值点:节约其它的重复开发成本。
2、面向对象编程语言(站在软件设计角度,站在人类思想角度),相对于面向过程(站在计算机维度思考问题)。
Java平台技术体系
面向对象优点
简化开发。
面向对象很难用一句话来概括,越精确的定义,背后的复杂度就越高。
广义上:
- 面向对象是一种编程思想,基本原则是抽象出对象共同的属性和行为,封装到类里面
- 面向对象编程三大核心:封装,继承,多态
- 面向对象的商业价值:简化开发,利于维护,方便团队分工协作。
Java下载 和IEDA工具初识
下载Java
官网:https://www.oracle.com/java/technologies/downloads/
官网下载的话,一般会比较慢,因为是国外的网站。如果觉得慢的话,可以通过其他网站下载。
不同操作系统的JDK版本不一样,注意不要下载错了!!!以Windows操作系统为例,下载64为的jdk-8u321-windows-x64.exe。如果操作系统是32位的,就下载jdk-8u321-windows-i586.exe。
目前市场用的最多的就是jdk-8
注册账号
进行下载
IEDA编程工具
ntelliJ IDEA是一款功能强大,符合【人体工程学】的 JVM IDE。
IntelliJ IDEA简称IDEA,它是 JetBrains 公司下的Java集成开发环境,在业界被公认为是最好的Java开发工具之一;
JetBrains是捷克的一家软件公司,该公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主,旗下开发了多款软件开发工具;
官方网站:https://www.jetbrains.com/
Intellij IDEA工具已经有很长的历史了,2001年1月发布IntelliJ IDEA 1.0版本,只是一直没有被大量使用;
IntelliJ IDEA以前是收费软件,不过在2009年以后开始推出了免费的社区开源版本;
目前IntelliJ IDEA有免费的社区版(功能相对较少),和收费的旗舰版(功能比较全面);
来自官网:
Why IntelliJ IDEAEnjoy Productive JavaEvery aspect of IntelliJ IDEA has been designed to maximize developer productivity. Together, intelligent coding assistance and ergonomic design make development not only productive but also enjoyable。
版本
IntelliJ IDEA 分为“旗舰版”和“社区版”;
旗舰版(Ultimate Edition)为收费版本,功能强大,有30天免费试用期;
社区版(Community Edition)为免费版本,功能较旗舰版少了很多,可一直免费使用;
一般地,IntelliJ IDEA 大版本为一年迭代一次,大版本下的小版本迭代时间不固定,快则一个月,慢则两至三月迭代一次;
目前最新版本为:IntelliJ IDEA 2022.3.1
IDEA工程结构
工作空间 : 存放代码的目录。
项目结构
项目结构总览
Java基本语法结构
基本语法
语法
分析
打印语句
代码规范
总结
1.从硬件到软件的计算机基础知识;
2.Java之父的小故事;
3.Java语言的前世今生,及其特点;
4.Java下载 和 IDEA工具;
这篇关于Arya小科普 | 硬件软件基础知识 Java语言的前世今生 James Gosling老爷子的小故事 Java下载 和 IDEA工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!