计算机硬件(1):计算机简介

计算机硬件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k9Sjf69R-1625494945519)(G:\1. books\5. notebooks\markdown\image-20210703112519297.png)]

1. 电脑需要电流直接控制
2. 操作系统帮助用户将底层的实现细节实现好

内核(程序)对计算机硬件进行直接控制

有了内核之后,可以不需要直接使用电流对底层硬件进行驱动,程序相对简单了好多。
但是对于一些非专业人士,还是有很大的难度进行使用

因此,假如内核有 10万 个功能,我们可以将其进行分类包装,进行简化接口,进而形成了系统接口(简易程度再次加大)==》完成了操作系统的实现

那么,可以继续往上进行封装,进行简化功能。到达了应用程序这一层

各类解释器将操作系统提供的接口进行了再次封装(对计算机专业人员友好,但是对于非专业人员依然很不友好)

再往上走,一些解释型开发的应用程序就可以说是为用户提供了一些应用程序封装功能,提供可视化接口


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rgiWZgwX-1625494945522)(G:\1. books\5. notebooks\markdown\image-20210703113942255.png)]

上图是我们科班人员需要学习的东西

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bCCeMwWY-1625494945523)(G:\1. books\5. notebooks\markdown\image-20210703114254732.png)]

项目开发的完整流程

在这里插入图片描述

# 流程化:(一般,可能是有所精简的)

一、需求分析阶段
    1、PM(产品经理):
     对市场进行调研,得到一些需求,之后再次对周围的人进行市场调研(比如:流程实现)

  2、产品内部评审: 提交给产品部分,对这些需求进行审核(是否是伪需求,还是真需求)
        不通过:则需求被打回,继续做专业化梳理
        通过,则继续下面的内容

    3、寻找技术相关的人才(UE, UI, RD,QA),再次探讨需求的可行性(技术的可行性),讲解产品的原型(样版)

    技术是否明确:确定明确:那么进行开发阶段;不明确,重新探讨

二、项目开发阶段(设计阶段 + 开发阶段)
	1. 分头行动,进行设计(下面三个大块,相互独立,是并联的,但是每一块儿是串联的)
		
		UE做交互设计
		UI根据UE做设计,页面风格
		FE做页面开发
		
		
		QA设计测试用例,进行评审
		
		RD人员设计技术方案、评审(多次讨论)
        RD排期:多个项目的优先级的划分,同时 QA 的排期也需要RD的排期来排期
        前后端开发定于好接口 & 各自开发 & 联调自测
        
三、项目测试阶段:
	前端和后端代码进行合并
	
	1、开发自测(项目内部进行测试)(code review)
		发现 bug 修改,确定没有什么问题之后,
	2、QA测试人员:对代码进行测试
		测试环境验证
		沙箱环境验证
		
		对bug进行修复
		
		(这一步可能需要反复进行bug发现和修改)
	
	3、产品进行第一次验收
	
        
四、项目上线阶段
	(一旦产品上线之后,OP, RD 等工作人员都在凌晨需要加班)
	上线计划的填写
	上线准备工作
	具体上线的步骤
	(一旦上线出现问题之后,如何进行回滚:出现问题之后,首先回滚到上一个版本,产品在背后将问题解决完成之后再上线)
	
	上线成功之后,上线功能回顾(再次测试),确定没有问题之后,产品进行第二次验收

	验收完毕 ,整个项目上线完成	
	
	OP人员需要监控好,计算机硬件、网络的稳定性、以及安全性

软件上线完成之后,运维人员的三大职责:
	整套体系结构:应用程序 --> 操作系统 --》计算机硬件--》网络--》安全 
	监控《== 保证应用程序 7*24*365(就是为了体现不间断) 天的不间断运行
	数据备份(异地备份, 一般会存在磁盘)
	优化: 优化操作系统(内核);优化硬件(加内存条,加硬盘等);多台计算机搭载一个应用程序

由于需求是不断进行变化的,因此需要不断地更新需求
	1~2weeks小版本的上线
	1~2months大版本的上线

原型草图:

在这里插入图片描述

1、 前端开发:
产品经理负责把控产品的整体质量,UE负责将产品经理脑中的初像的想法具体化,UI根据 UE的设计稿,将界面画出来(美观);之后将 UI 做好的图片,交给FE前端(根据 UI 的设计来实现前端开发)
		UI <---- UE 
		UE(User Experience)交互式设计:(交互)
			软件按钮触发之后,下一步跳转到的页面
			UE 不管页面的排版,只管,某个页面的大概区域应该有某个功能触发(一个软件打开之后,必须是可以关闭的,否则就被定性为一种病毒)
		UI(User Interface)设计师:将UE交互式设计的结果转换为一个一个好看的界面(美化)
			
			
		FE(Front-End)(前端开发):(web 客户端,app客户端,微信小程序)
			(应用程序若想在操作系统上面进行使用,需要和操作系统进行绑定)		
			(拓展:
				小米生态:以小米手机的操作系统为平台,上面绑定各种各样的应用程序)
				
2、 后端开发
		RD(Research and Develop) 后端开发 PM项目经理(PM项目经理是可以中途更换的,但是PM产品经理是不可以的 )
			前端触发响应,将请求发送给后端,后端接收到请求,将数据反馈给前端,在界面进行显示
			那么既然要进行沟通,就需要一些设计规范(接口的定义与调用)


		QA 测试人员: 
			功能测试,设计好的测试用例
		OP 运维人员(Operations)		Devops 自动化运维人员、		dba数据库运维人员
			设计好整套系统架构
			
		
		
一个较好的公司,在开发的过程中会存在下列的若干环境:(	OP管理下面环境)
	0. 个人电脑开发
	QA使用:	  1. 测试环境
				2. staging 环境(服务器)(与线上环境是1:1的):是对外宣传的环境
	3. 线上环境 =》直接和公网进行联通,用户使用的环境
	
	

服务器

一般是两个电源模块(两股电)

1、机架式服务器
2、刀片式服务器(服务器就是一块主板)主要是为了集群而生,离开了柜子之后不能单独运行
3、塔式服务器
去IOE运动:(三家公司进行垄断了)	去掉下面三家公司的产品

I:IBM:主要是服务器							--》 替换为Dell服务器、浪潮、云主机等

O: Oracle: 主要是数据库存储				 --》MySql(但是 MySql被 Oracle 所收购),所以就又出现了 marriadb

E:EMC:主要是存储							--》自定义的存储(ceph(块存储), nfs, swift(云计算中)对象存储)

Linux : Redhat linux 是做的不错的,是在开源linux的基础上完善了一些内容,进行收费,需要购买 license,从此用户就照着 Redhat linux 重新写了一个 centos 系统
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值