3000字编程入门--附带Java学习路线及视频
Title: 编程入门
GitHub: BenCoper
Reference: 尚硅谷-2019
Study: 文字版+视频+实战(第一个自学的网站)
Explain: 文末附带Java学习视频以及项目实战
1.简介
计算机包括硬件(hardware)和软件(software)两部分。硬件包括计算机中可以 看得见的物理部分。而软件提供看不见的指令。这些指令控制硬件并且使得 硬件完成特定的任务。
- 程序设计
定义:创建(或开发)软件。软件包含了指令,告诉计算机做什么。
应用场景:软件遍布我们周围。除了个人计算机,飞机、汽车、手机甚至烤 面包机中,同样运行着软件。
- 程序设计语言
软件开发人员在称为程序设计语言的强大工具的帮助下创建软件。
2.计算机硬件
总线

硬件

冯·诺依曼体系结构是现代计算机的基础,现在大多计算机仍是冯·诺依曼计算机的组 织结构,只是作了一些改进而已,并没有从根本上突破冯体系结构的束缚。冯·诺依曼 也因此被人们称为“计算机之父”。
中央处理器
- 中央处理器(Central Processing Unit,CPU)是计算机的大脑。它从内存中获取指令,然 后执行这些指令。

- 包括:控制单元(control unit)和算术/逻辑单元(arithmetic/login unit)。
控制单元:用于控制和协调其他组件的动作。
算术/逻辑单元:用于完成数值运算(+、-、*、/)和逻辑运算(比较)。
每台计算机都有一个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给 定的时间段内执行的指令就越多。速度的计量单位是 赫兹(Hz),Hz相当于每秒1个脉 冲。随着CPU速度不断提高,目前以千兆赫(GHz)来表述。
最初一个CPU只有一个核(core)。核是处理器中实现指令读取和执行的部分。一个多核 CPU是一个具有两个或者更多独立核的组件。可提高CPU的处理能力。
存储设别
内存中的信息在断电时会丢失。那我们可以考虑将程序和数据永久的保存在存储设备上。当计算机 确实需要这些数据时,再移入内存,因为从内存中读取比从存储设备读取要快得多。
存储设备主要有以下三种:
磁盘驱动器: 每台计算机至少有一个硬盘驱动器。硬盘(hard disk) 用于永久的保存数据和程序。

光盘驱动器: CD的容量可达700MB。 DVD的容量可达4.7GB

USB闪存驱动器: Universal Serial Bus,通用串行总线。可以使用USB将打印机、鼠标、外部硬盘驱动器连接到计算机上。

内存
比特(bit)和字节(byte)
在讨论内存前,先清楚数据是如何存储在计算机中的。
计算机就是一系列的电路开关。每个开关存在两种状态:关(off)和开(on)。如果电路 是开的,它的值是1。如果电路是关的,它的值是0。
一个0或者一个1存储为一个比特(bit),是计算机中最小的存储单位。
计算机中是最基本的存储单元是字节(byte) 。每个字节由8个比特构成。
计算机的存储能力是以字节和多字节来衡量的。如下:
千字节(kilobyte,KB) = 1024B
兆字节(megabyte,MB) = 1024KB
千兆字节(gigabyte,GB) = 1024MB
万亿字节(terabyte,TB) = 1024GB
内存(也叫 Random-Access Memory,RAM):由一个有序的 字节序列组成,用于存储程序及程序需要的数据。
一个程序和它的数据在被CPU执行前必须移到计算机的内存中句号
每个字节都有一个唯一的地址。见右图。使用这个地址确定 字节的位置,以便于存储和获取数据。
一个计算机具有的RAM越多,它的运行速度越快,但是此 规律是有限制的。
内存与CPU一样,也构建在表面嵌有数百万晶体管的硅半导 体芯片上。但内存芯片更简单、更低速、更便宜。

输入和输出设备
- 常见的输入设备:键盘(keyboard)和鼠标(mouse)
- 常见的输出设备:显示器(monitor)和打印机(printer)

通信设备
- 计算机可以通过通信设备进行联网。
- 常见的设备有:
- 拨号调制解调器:使用的是电话线,传输速度可达56 000bps(bps:每秒比特)
- DSL(数字用户线):使用的也是电话线,但传输速度叫上面的快20倍
- 电缆调制解调器:利用有线电视电缆进行数据传输,通常速度比DSL快。
- 网络接口卡(NIC):将计算机接入局域网(LAN)的设备。局域网通常用于大学、 商业组织和政府组织。速度甚至可达1000Mbps 。
- 无线网络:在家庭、商业和学校中极其常见。计算机可通过无线适配器连接到局域 网或internet上。
3.计算机发展史上的鼻祖
计算机诺贝尔奖
最近半个世纪以来,世界计算机科学界的重大进步,离不开图灵等人的 理论奠基作用和多方面的开创性研究成果。图灵是当之无愧的计算机科 学和人工智能之父。甚至认为,他在技术上的贡献及对未来世界的影响 几乎可与牛顿、爱因斯坦等巨人比肩。
图灵论文中的“用有限的指令和有限的存储空间可算尽一切可算之物” 理论让当时所有的科学家震惊
美国计算机学会(ACM)的年度“图灵奖”,自从1966年设立以来, 一直是世界计算机科学领域的最高荣誉,相当于计算机科学界的诺贝尔 奖。至今,中国人只有姚期智院士获该奖项。

计算机之父
20世纪最重要的数学家之一,在现代计算机、博弈论、核武器 和生化武器等诸多领域内有杰出建树的最伟大的科学全才之一, 被后人称为“计算机之父”和“博弈论之父”。
计算机基本工作原理是存储程序和程序控制,它是由世界著名 数学家冯·诺依曼提出的。最简单的来说,冯诺依曼理论的要点 是:数字计算机的数制采用二进制;计算机应该按照程序顺序 执行。
同样有着“计算机之父”称号的冯·诺依曼的助手弗兰克尔在一 封信中写到:“……计算机的基本概念属于图灵。按照我的看 法,冯·诺依曼的基本作用是使世界认识了由图灵引入的计算机 基本概念……”

4.操作系统
- 操作系统(Operating System)是运行在计算机上的最重要的程序,它可以管理和控制计算机的活动。
- 硬件、操作系统、应用程序和用户之间的关系如下图。

5.万维网
万维网(World Wide Web,www,环球信息网)常简称为Web,发明者蒂姆·伯纳 斯·李。分为Web客户端和Web服务器程序。 WWW可以让Web客户端(常用 浏览器)访问浏览Web服务器上的页面。 是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样“资 源”;并且由一个全局“统一资源标识符”(URI)标识;这些资源通过超文本传输协议(Hypertext Transfer Protocol)传送给用户,而后者通过点击链接来获得资源。 www.sina.com

万维网是无数个网络站点和网页的集合,它们在一起构成了因特网Internet最主要的部分(因特网也包括电子邮件、Usenet以及新闻组)。它实际上是多 媒体的集合,是由超级链接连接而成的。我们通常通过网络浏览器上网观看的, 就是万维网的内容
6.Java职业发展与提升
阿里等级划分

常见码农爬上之路

附:Java成长路线图

附:Java学习视频链接(bilibili)
- Java核心语法
- 数据结构与算法
- 数据库MySQL
- 前端HTML5+CSS3
- JavaWeb
- SSM框架
- SpringBoot免费版--付费版(微人事作者:松哥)
- 微服务SpringCloud
- 工具-各种中间件(雷哥)
附:Java实战项目推荐(精益求精)
免费版
springboot+layui+mybatisplus+shiro仓库管理系统
springboot+layui+mybatisplus记账本小练习
付费版
6.结语
- 付费版内容酌情购买(目前我自己购买了JavaWeb版天猫商城+个人博客+微人事)--强烈安利一波
- 免费版来自B站用户贡献(拒绝白嫖下次一定,反正我是....)
- 越努力越幸运--大家一起加油
- 我怕挨打--饶过我吧

3000字编程入门--附带Java学习路线及视频的更多相关文章
- 从入门到精通,Java学习路线导航
引言最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧. Ja ...
- 从入门到精通,Java学习路线导航(附学习资源)
原文链接:https://blog.csdn.net/qq_42453117/article/details/100655512 引言 最近也有很多人来向我"请教",他们大都是一些 ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- java学习路线(好资源大家分享)
对于入门java将近两年的时间,曾经迷惘过,一直想知道java的具体学习路线,看过了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,发现没有一个符合我个人需求的学习路线,根 ...
- 【Todo】Java学习路线(方向指导)
在网上搜了下Java学习路线(关键词:学习,因为众所周知,实践出牛人,在平时工作不怎么深入的情况下,才强调学习的方向的重要性 ^_^) 发现下面知乎这个回答写的真好.mark如下: https://w ...
- 【强烈推荐】可能是最适合你的 Java 学习路线和方法
如遇链接无法打开,建议使用 https://github.com/Snailclimb/JavaGuide/blob/master/docs/questions/java-learning-path- ...
- Java学习路线【转】
Java学习路线[转] 第一阶段:JavaSE(Java基础部分) Java开发前奏 计算机基本原理,Java语言发展简史以及开发环境的搭建,体验Java程序的开发,环境变量的设置,程序的执行过程,相 ...
- 最新java学习路线:含阶段性java视频教程完整版
最新java学习路线:带阶段性java视频教程版本 第一阶段:Java基础 学习目标: 掌握基本语法.面向对象.常用类.正则.集合.Io流.多线程.Nio.网络编程.JDK新特性.函数式编程 知识点细 ...
- 一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)
这是一篇针对Java初学者,或者说在Java学习路线上出了一些问题(不知道该学什么.不知道整体的学习路线是什么样的) 第一步:Java基础(一个月左右) 推荐视频: 下面的是黑马内部视频,我比较推荐的 ...
随机推荐
- Scarpy框架安装教程
在一切之前,建议升级pip,如果版本太低,安装会失败 升级pip命令: python -m pip install --upgrade pip 如果上面的命令不能用,用下面这个 easy_instal ...
- Selenium的Web自动化测试(送源码)
8.1 Selenium自动化测试准备 1.Selenium介绍 Selenium是一个Web开源自动化测试框架,页面级操作,模拟用户真实操作,API从系统层面触发事件. Selenium 1.0 ...
- UMD: 通用模块规范
既然CommonJs和AMD风格一样流行,似乎缺少一个统一的规范.所以人们产生了这样的需求,希望有支持两种风格的“通用”模式,于是通用模块规范(UMD)诞生了.
- mingster.com
Good to Great: Why Some Companies Make the Leap... and Others Don'tby Jim Collinshttp://rcm.amazon.c ...
- charles添加https支持
- -scp Linux之间复制文件和目录
scp 简介 scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速 ...
- Flutter Widgets 之 BottomNavigationBar 和 BottomNavigationBarItem
注意:无特殊说明,Flutter版本及Dart版本如下: Flutter版本: 1.12.13+hotfix.5 Dart版本: 2.7.0 BottomNavigationBar 和 BottomN ...
- 【快速上手】Git的使用教程
创建Git仓库 git init 查看当前仓库情况 git status 添加修改 git add (file) or git add . 查看未提交的修改 git diff 撤销提交操作 git r ...
- Ubuntu 16.04 apt 国内源
一.推荐几个 Ubuntu 16.04 国内的 apt 源 1. 阿里源 # deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (2 ...
- iOS Swift 开发语言之初接触,纯代码创建UIView,UITableView,UICollectionView
1. 初始化Label设置AttributeString override func viewDidLoad() { let label = UILabel(frame:CGRect(x:,y:,wi ...