在用Mac进行开发之前,建议浏览以下几个概念。

1. 几个基础概念

- 计算机

  计算机(computer)俗称电脑,发明者是约翰·冯·诺依曼,计算机是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。没有安装任何软件的计算机称为裸机。可分为超级计算机、工业控制计算机、网络计算机、个人计算机、嵌入式计算机五类,较先进的计算机有生物计算机、光子计算机、量子计算机等。常用于科学计算、数据处理、自动控制、计算机辅助设计、人工智能、多媒体应用、计算机网络等。计算机由硬件系统和软件系统组成。

- 计算机硬件

  计算机硬件(Computer hardware)是指计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称。这些物理装置按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础。简言之,计算机硬件的功能是输入并存储程序和数据,以及执行程序把数据加工成可以利用的形式。在用户需要的情况下,以用户要求的方式进行数据的输出。从外观上来看,微机由主机箱和外部设备组成。主机箱内主要包括CPU、内存、主板、硬盘驱动器、光盘驱动器、各种扩展卡、连接线、电源等;外部设备包括鼠标、键盘等。
 

- 计算机软件

  计算机软件( Software,也称软件)是指计算机系统中的程序及其文档,程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。程序必须装入机器内部才能工作,文档一般是给人看的,不一定装入机器。软件是用户与硬件之间的接口界面。用户主要是通过软件与计算机进行交流。软件是计算机系统设计的重要依据。为了方便用户,为了使计算机系统具有较高的总体效用,在设计计算机系统时,必须通盘考虑软件与硬件的结合,以及用户的要求和软件的要求。

- 语言

  语言是指生物同类之间由于沟通需要而制定的具有统一编码解码标准的声音(图像)指令。

 - 自然语言:指一种自然地随文化演化的语言,比如汉语、英语、法语等

 - 机器语言:相对自然语言而言,指人和机器沟通的一种特殊语言,比如C、C++、Java、Python等

- 软件开发

  软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。

 - 软件:按照特定程序组织的计算机数据和指令的集合

 - 开发:软件的制作过程

- 人机交互

  人机界面(Human-Computer Interface,简写HCI):是人与计算机之间传递、交换信息的媒介和对话接口,是计算机系统的重要组成部分。目前为止,人机交互的发展经历了以下五个阶段:

 - 手工作业阶段

 - 作业控制语言及交互命令语言阶段

 - 图形用户界面(GUI)交互阶段

 - 网络用户界面交互阶段

 - 多通道、多媒体的智能人机界面(IUI)交互阶段

2. Java语言概述

- Java之父:詹姆斯·高斯林(James Gosling),1990年在加州和另外几个工程师一起开发了Java语言

- Java发展史:

  JDK(Java Development Kit)

  · 1.0.2

  · 1.1.1 -> 1.1.6 -> 1.1.7 -> 1.1.8

  · 1.2.1

  Java 2 SDK

  · 1.2.2

  · 1.3.0 -> 1.3.1

  · 1.4.0 -> 1.4.1 -> 1.4.2 -> 1.5.0(5.0)

  · 1.6.0(6.0) -> 1.7.0(7.0)-> 1.8.0(8.0)-> 1.9.0(9.0)

- Java语言的特点:

  简单性、面向对象、分布式处理、编译和解释性、高性能、结构中立、健壮性、稳健性、安全性、可移植性、开源、跨平台(write once, run anywhere)。

- Java语言的平台:

  · J2SE(Java 2 Platform Standard Edition)标准版

    是为了开发普通桌面和商务应用程提供的解决方案。该技术是其他两者的基础。

  · J2ME(Java 2 Platform Micro Edition)小型版

    是为了开发电子消费产品和嵌入设备提供的解决方案。目前用得少,多用Android、C/C++。

  · J2EE(Java 2 Platform Enterprise Edition)企业版

    是为了开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet、Jsp等,主要针对于Web应用程序开发。

补充:

(1)JDK、JRE、JVM三者的关系

  JDK(Java Runtime Environment)Java运行环境,JDK = JRE + Java开发工具(SDK)

  JRE(Java Runtime Environment)Java运行环境,JRE = JVM + 类库(Class Lib)

  JVM(Java Virtual Machine)Java虚拟机,需要说明的是JVM是Java语言实现跨平台和移植性的保障

(2)JDK的下载及开发环境配置

  详见另一篇博文:http://www.cnblogs.com/zjx2711904647/p/7735556.html

写在用Mac进行Java开发之前的更多相关文章

  1. mac下java 开发环境搭建

    mac配置java开发环境: jdk1.7 +sdk1.7+maven +tomcat   1.先安装jdk ,才能安装sdk . 2 mac中jdk1.7的默认位置:/Library/Java/Ja ...

  2. Mac配置Java开发环境

    笔者从Window上转到Mac上做开发,一切配置都要重新开始,开发环境配置介绍如下: 1. 下载JDK 从下面链接选择合适版本的安装包进行下载...笔者下载的是jdk-9.0.1 链接:http:// ...

  3. MAC 系统java开发环境搭建教程

    1.在安装JDK之前,先查看下自己电脑是否已经安装了JDK. 打开终端,输入java -version并回车.     从上图中可以看出我们已安装了,JDK 8.如果这个版本是你需要的版本,可直接看4 ...

  4. MAC系统 -java开发环境搭建

    MAC - java开发环境搭建 软件: jdk Intellij IDEA:java开发工具 maven:jar包管理 git :源码管理 sourceTree :源码管理GUI客户端 Studio ...

  5. 【工匠大道】Mac下Java开发环境配置简述

    本文地址 原文地址 分享提纲: 1. 下载JDK1.7 2. 配置java_home 3 .安装tomcat 4 .安装eclipse或者myeclipse 5.  mysql安装 破解版下载请参考M ...

  6. Mac下JAVA开发环境搭建

    最近开始学习JAVA, 首先配置下环境! 1.Mac自带的jdk版本老了,需要到oracle官网去下载新的jdk,具体下载那个版本看个人需求,然后安装.   安装完成之后打开Terminal, 执行命 ...

  7. 新到的Mac配置Java开发环境

    今天Mac到手,需要配置一些用到的开发环境,在这里做一些纪录. 1. 下载Eclipse,地址:http://www.eclipse.org/downloads/,因为个人需求,所以下载的是Java ...

  8. Mac os JAVA 开发环境配置简述

    本文原文来源:http://blog.csdn.NET/johnstrive/article/details/7791451 1.Mac 自带jdk1.6(本人的机器是这样至于新Mac自带的版本就不清 ...

  9. Mac下java开发环境的搭建与开发工具的安装

    一.安装JDK 1.根据你当前环境的需要,下载相应的JDK并安装,安装步骤与其他Mac软件安装方法相同,我安装的是jdk1.8.0_74.jdk,mac中jdk1.8的默认位置:/Library/Ja ...

随机推荐

  1. 【bzoj2780】 Sevenk Love Oimaster

    http://www.lydsy.com/JudgeOnline/problem.php?id=2780 (题目链接) 题意 给出很多主串和很多询问串,求一个询问串在多少主串中出现过 Solution ...

  2. Linux内核设计第六周学习总结 分析Linux内核创建一个新进程的过程

    陈巧然 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.实验过程 登陆实验楼 ...

  3. POJ.1067 取石子游戏 (博弈论 威佐夫博弈)

    POJ.1067 取石子游戏 (博弈论 威佐夫博弈) 题意分析 简单的威佐夫博弈 博弈论快速入门 代码总览 #include <cstdio> #include <cmath> ...

  4. sublime_Text3中snippet设置信息头(包括作者、日期)

    1.tool->new snippet(工具->新代码段) 创建一个新的snippet,并保存为author.sublime-snippet(最好在该目录(User)下再创建一个MySni ...

  5. Tensorflow训练神经网络

    以下代码摘自<Tensorflow实战Google 深度学习框架>. 由于这段代码包含了激活函数去线性化,多层神经网络,指数衰减学习率,正则化防止过拟合,滑动平均稳定模型等手段,涵盖了神经 ...

  6. D. Petya and Array 树状数组

    题意: 给出一个数组,元素有正有负有0,问其区间和小于 t 的子区间的个数. sum[ r ]-sum[ l-1 ]<t,其中sum是a的前缀和. 实现的方法就是从前往后对于每一个sum[ i ...

  7. Netlink 介绍(译)

    原文地址:http://people.redhat.com/nhorman/papers/netlink.pdf 译文: 1 介绍 在Linux和Unix的众多发行版中的网络配置功能, 都是编程者事后 ...

  8. js基础之DOM中document对象的常用属性方法

    -----引入 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问. 属性 1  document.an ...

  9. NATS_06:NATS队列验证与监控

    1. NATS 之 Queueing(队列)模式验证 主要以下讲的都是基于 NATS 服务已经开启了(没有开启的请运行:gnatsd 启动):还有请注意所有运行的 go 文件都是在 $GOPATH/s ...

  10. Java基础-IO流对象之打印流(PrintStream与PrintWriter)

    Java基础-IO流对象之打印流(PrintStream与PrintWriter) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.打印流的特性 打印对象有两个,即字节打印流(P ...