在用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. 20135319zl软件破解报告

    编写一个简单的C程序.要求只有输入a,才能通过. 现在,使用objdump –d po反汇编这个程序 找到main函数,可以发现movb $0x61,0x1f(%esp)这句语句中是将字符a(对应0x ...

  2. 音视频处理之FFmpeg+SDL+MFC视频播放器20180411

    一.FFmpeg+SDL+MFC视频播放器 1.MFC知识 1).创建MFC工程的方法 打开VC++ 文件->新建->项目->MFC应用程序 应用程序类型->基于对话框 取消勾 ...

  3. EMF的安装及用例

    转: EMF的安装及用例 本人正在开发专门针对计算机视觉领域的DSL(这是一个和某公司合作的项目),欢迎各位朋友一起交流学习! 一.简介 EMF是一个建模框架和代码生成工具,用于构建基于结构化数据模型 ...

  4. salt源码安装

    salt是什么? 一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯. salt底层采用动态的连接总线, 使其可以用于编配, 远 ...

  5. HDU--4768

    题目: Flyer 原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4768 分析:二分.只需要注意到最多只有一个为奇数,则可以首先求出学生获得的总的传单 ...

  6. 支付宝当面付功能demo运行解读

    下载java版本的sdk的demo: 然后拷入idea中: 准备工作: (1)验签工具下载:蚂蚁金服上面下载: https://openclub.alipay.com/read.php?tid=955 ...

  7. 梯度提升树GBDT算法

    转自https://zhuanlan.zhihu.com/p/29802325 本文对Boosting家族中一个重要的算法梯度提升树(Gradient Boosting Decison Tree, 简 ...

  8. Azure 上SQL Database(PaaS)Time Zone时区问题处理(进阶篇)

    通常ISV在面对本地客户时对时间相关的处理,一般都时区信息都是不敏感的.但是现在云的世界里为了让大家把时间处理的方式统一起来,云上的服务都是以UTC时间为准的,现在如果作为一个ISV来说就算你面对的客 ...

  9. Python【读写Json文件】

    indent=10:缩进10个空格

  10. Ubuntu 18.04设置dns

    最近使用了最新版的ubuntu 18.04运行一些服务,然后发现服务器经常出现网络不通的情况,主要是一些域名无法解析. 检查/etc/resolv.conf,发现之前修改的nameserver总是会被 ...