# ay_content

acode: cn
scode: 1
title: 公司简介
titlecolor: #333333
author: admin
source: 本站
date: 2018-04-11 17:26:11
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-11 17:26:11
update_time: 2022-07-28 17:23:03
gtype: 4
content:
  &lt;p style=&quot;text-indent: 2em;&quot;&gt;&lt;span style=&quot;background-color: rgb(255, 255, 255); color: rgb(34, 34, 34); font-family: arial; font-size: 18px;&quot;&gt;软发科技专注于政企企信息化技术研发，公司拥有几十人的专业技术开发服务团队，200+定制软件开发实操经验，上线产品提供365天*24小时全天侯亲情式售后服务，做有情怀有担当的资深软件开发商。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-indent: 2em;&quot;&gt;&lt;span style=&quot;background-color: rgb(255, 255, 255); color: rgb(34, 34, 34); font-family: arial; font-size: 18px;&quot;&gt;公司创始人有连续12年的深耕软件定制开发经验，从项目的架构设计、开发管理、产品质量、安全体系、客户满意度等方面多维度的提升了软件开发的级别和水准，致力于成为政企信息化技术领域的标杆企业！&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-indent: 2em;&quot;&gt;&lt;span style=&quot;background-color: rgb(255, 255, 255); color: rgb(34, 34, 34); font-family: arial; font-size: 18px;&quot;&gt;我们致力于在智慧政务、智慧城市、智慧医疗、智慧社区、工业互联网、信息安全、大数据分析、智慧教育等领域为客户提供切实可行的技术方案和信息化产品。&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;text-indent: 2em;&quot;&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 28px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;&lt;span class=&quot;bjh-strong&quot; style=&quot;max-width: 100%; color: rgb(51, 51, 51); font-weight: 700;&quot;&gt;企业文化&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;软发，顾名思义，用软件谋发展，与客户意合一处，共赢未来！也就是软发始终坚持的服务宗旨，唯有众志成城，包容并进，和谐共赢，才能促进互联网产业健康蓬勃发展，从而更好服务于每一位客户，创造社会价值。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;我们致力于为员工提供一份满意和值得自豪的工作，我们致力于为客户提供一个全面和值得感动的服务，我们致力于为行业提供一套安全和值得应用的科技。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;我们致力于为用户提供一种智能便捷的操作体验。一群人、一件事、一辈子！为软发大家庭注入我们每一份力量，这就是我们软发人，我们掌握核心技术，我们为民族软件的发展向国际化努力奋进。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;&lt;span class=&quot;bjh-strong&quot; style=&quot;max-width: 100%; color: rgb(51, 51, 51); font-weight: 700;&quot;&gt;企业使命&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;做数智化转型践行者：&lt;/span&gt;软发人结合软件开发领域沉淀了十多年的技术能力，以技术为导向、融合大数据、智能产品与服务提供给全球客户，助力各行各业实现数字化到数智化的转型升级。&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;做信息化升级创作者：&lt;/span&gt;5G时代产业信息化升级大趋势，&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255);&quot;&gt;软发&lt;/span&gt;人始终坚持“以创新为驱动，以技术赋能商业”的研发理念，帮助企业向信息化时代迈进，用技术帮助企业实现利润的持续增长。&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;做技术化外包服务者：&lt;/span&gt;企业科技化是未来发展的必然趋势。&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255);&quot;&gt;软发&lt;/span&gt;人一直坚守开发技术外包，资源互补的服务理念帮助客户保持核心竞争优势、减少研发成本、提升企业的核心竞争力和价值。&lt;/p&gt;&lt;/div&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; text-indent: 2em; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;max-width: 100%;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style=&quot;text-indent: 2em;&quot;&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;

description:
  专注于各商业模式互联网技术研发，公司已经成为一家拥有几十人的专业技术开发服务团队，200+定制软件开发实操经验，上线产品提供365天*24小时全天侯亲情式售后服务，做有情怀有担当的资深软件开发商。创始人有连续12年深耕源码软件定制开发经验，从项目的架构设计、开发管理、产品质量、安全体系、客户满意度等方面多维度的提升了软件开发的级别和水准，致力于成为源码开发领域的标杆企业！


acode: cn
scode: 11
title: 联系我们
titlecolor: #333333
author: admin
source: 本站
date: 2018-04-11 17:31:29
ico: /static/upload/image/20220729/1659077166179003.png
description: 地址：河北省 衡水市 桃城区前进北大街 九州国际 创新创业基地402-403.电话：0318-5260919
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-11 17:31:29
update_time: 2023-03-07 14:06:54
gtype: 4
content:
  &lt;p&gt;地址：河北省衡水市桃城区大庆西路1199号京创控股大厦&lt;/p&gt;&lt;p&gt;电话：18631810187&lt;/p&gt;&lt;p&gt;&lt;iframe src=&quot;https://j.map.baidu.com/8c/cswf&quot; width=&quot;100%&quot; height=&quot;600&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;


acode: cn
scode: 3
title: 智慧政务项目
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 11:03:01
ico: /static/upload/image/20220716/1657940738307408.jpg
pics: /static/upload/image/20220716/1657940741516093.png
status: 1
istop: 1
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-11 17:43:19
update_time: 2022-07-16 11:05:48
gtype: 4
gid: 0
content:
  &lt;p&gt;智慧市政整体解决方案是依托智慧城管平台建设，拓展智慧市政综合监管平台，充分整合现有公用事业基础资源，借助移 动互联网、大数据、物联网、云计算等新技术，实现对城市路灯、排水、道桥、井盖、供水、供电、供气、供热等市政公用设施的实时监测、智能告警、巡查养护、高效派遣、长效考核，构建可持续的智慧市政综合监管新模式，有效加强对 市政设施权属单位、养护单位的监督、评价、考核，促进城市市政设施管理的精细化和智能化，提高公用事业的服务质量和群众满意度。&lt;/p&gt;

description:
  智慧市政整体解决方案是依托智慧城管平台建设，拓展智慧市政综合监管平台，充分整合现有公用事业基础资源，借助移 动互联网、大数据、物联网、云计算等新技术，实现对城市路灯、排水、道桥、井盖、供水、供电、供气、供热等市政公用设施的实时监测、智能告警、巡查养护、高效派遣、长效考核，构建可持续的智慧市政综合监管新


acode: cn
scode: 3
title: 软件与数字技术服务
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 11:02:48
ico: /static/upload/image/20220716/1657940557214256.jpg
pics: /static/upload/image/20220716/1657940562980113.png
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:06:15
update_time: 2022-07-16 11:06:08
gtype: 4
gid: 0
content:
  &lt;p&gt;中国数字经济的使能者，软发凭借规模化 、专业化和管控等优势，以数字化技术手段、专业技能和规范化操作向客户提供高质高效的客服服务 、数字内容服务和业务流程服务 。&lt;/p&gt;&lt;p&gt;凭借多年积累，软通动力为客户提供IT咨询，业务规划，行业解决方案，定制化开发与实施到系统维护服务的一站式全生命周期，价值链的IT解决方案服务，覆盖银行商，地产等众多行业。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  中国数字经济的使能者，软发凭借规模化 、专业化和管控等优势，以数字化技术手段、专业技能和规范化操作向客户提供高质高效的客服服务 、数字内容服务和业务流程服务 。凭借多年积累，软通动力为客户提供IT咨询，业务规划，行业解决方案，定制化开发与实施到系统维护服务的一站式全生命周期，价值链的IT解决方案服务，覆盖银


acode: cn
scode: 3
title: 智慧文旅
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 11:00:23
ico: /static/upload/image/20220716/1657940406596584.jpg
pics: /static/upload/image/20220716/1657940411167939.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:08:03
update_time: 2022-07-16 11:06:20
gtype: 4
gid: 0
content:
  &lt;p&gt;智慧文旅是利用物联网、云计算、大数据、人工智能技术打造的全域旅游数字化平台，通过“一个中心、三个平台、N个应用（即文旅大数据中心、服务平台、监管平台、运营平台及N个智慧生态应用）”构建全域智慧文旅体系。以“部门数据融合+行业数据贯通”为主线打造文旅大数据中心，以游客服务为核心建设服务平台，以部门管理为中心建设监管平台，以产业赋能为重心建设运营平台，全面实现全场景一条龙服务、数字化精准营销及智能化联动式监管。&lt;/p&gt;

description:
  智慧文旅是利用物联网、云计算、大数据、人工智能技术打造的全域旅游数字化平台，通过“一个中心、三个平台、N个应用（即文旅大数据中心、服务平台、监管平台、运营平台及N个智慧生态应用）”构建全域智慧文旅体系。以“部门数据融合+行业数据贯通”为主线打造文旅大数据中心，以游客服务为核心建设服务平台，以部门管理为中


acode: cn
scode: 3
title: 智造工业大数据分析平台项目
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 10:32:09
ico: /static/upload/image/20220716/1657940103184742.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:09:37
update_time: 2022-07-16 11:06:28
gtype: 4
gid: 0
picstitle: ,,
pics:
  /static/upload/image/20220716/1657940108692816.jpg,/static/upload/image/20220716/1657940111526134.png,/static/upload/image/20220716/1657940117283304.png

content:
  &lt;p&gt;智造工业大数据分析平台项目支持从一张图的角度，直观清晰的展示全县企业数据概况、亩产评价结果等， 直观反映企业数、企业占用资源、企业产出资源、企业资源配置情况，并通过一张图上的区域点击查看到某一个镇街的情况，为辅助领导决策、产业布局、工业企业转型升级提供科学精准数据支撑。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;text-align:center&quot;&gt;&lt;video class=&quot;edui-upload-video  vjs-default-skin   video-js&quot; controls=&quot;&quot; preload=&quot;none&quot; width=&quot;420&quot; height=&quot;280&quot; src=&quot;/static/upload/video/20220716/1657940094116011.mp4&quot;&gt;&lt;source src=&quot;/static/upload/video/20220716/1657940094116011.mp4&quot; type=&quot;video/mp4&quot;/&gt;&lt;/video&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  智造工业大数据分析平台项目支持从一张图的角度，直观清晰的展示全县企业数据概况、亩产评价结果等， 直观反映企业数、企业占用资源、企业产出资源、企业资源配置情况，并通过一张图上的区域点击查看到某一个镇街的情况，为辅助领导决策、产业布局、工业企业转型升级提供科学精准数据支撑。


acode: cn
scode: 3
title: 农产品溯源项目
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 10:31:57
ico: /static/upload/image/20220716/1657938688398001.jpg
pics: /static/upload/image/20220716/1657938693910752.png
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:10:46
update_time: 2022-07-16 11:49:55
gtype: 4
gid: 0
content:
  &lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;加强特色产业区域公共品牌建设。&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;加强特色产业区域公共品牌建设，依据实际情况培育 1 个区域公共&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;品牌。建立区域公用品牌授权管控体系，打通区域公用品牌授权企业应&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;用的服务机制，设立网货标准。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;建立起品牌响亮、管理严格、产品优良、&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;供应稳定、标准明晰、服务周到的网货供应体系。进行产销对接与集中&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;展示，拓宽网销渠道，提升深州农业种植业、文旅文化特色产业品牌的&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;影响力。建立农特产&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;品标准化流通规划，完善 8 个以上农产品企业标准&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;或地方标准。开展农村产品品质控制和标准化检测认证工作，建设深州&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;市农特产品溯源系统，在县域范围内引入 1-3 家企业、合作社等主体加&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;入溯源系统，&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;并取得销售成效，有力地推动农产品上行。&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;3.开展农产品质量安全体系建设。按照产品形态、包装形式、运输&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;仓储条件、相关业务流程等内容，明确技术要求和标准框架，完善标准&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;化流通器具和操作规程。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;建立抽查奖惩机制，设立快速检测点，推动农&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;产品质量安全检测机构和农业生产流通企业、新型农业经营主体、电商&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;平台、区块链追溯技术服务企业等加强合作，根据标准体系提供标准检&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;/span&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;测认证服务，&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;提高农村产品的品质控制和标准化水平。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;text-only&quot; style=&quot;white-space: pre;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220716/1657938636173196.jpg&quot; title=&quot;1657938636173196.jpg&quot; alt=&quot;318870534.jpg&quot;/&gt;&lt;img src=&quot;/static/upload/image/20220716/1657938639691204.png&quot; title=&quot;1657938639691204.png&quot; alt=&quot;6~2J7K$38$Q9HL][N{QP%35.png&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  PbootCMS是全新内核且永久开源免费的PHP企业网站开发建设管理系统，是一套高效、简洁、 强悍的可免费商用的PHP CMS源码，能够满足各类企业网站开发建设的需要。系统采用简单到想哭的模板标签，只要懂HTML就可快速开发企业网站。官方提供了大量网站模板免费下载和使用，将致力于为广大开发者和企


acode: cn
scode: 6
title: 智能制造
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 10:06:56
ico: /static/upload/image/20220716/1657937206275371.jpg
pics: /static/upload/image/20220716/1657937210468890.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:20:28
update_time: 2022-07-29 15:06:39
gtype: 4
gid: 0
content:
  &lt;p&gt;智能制造解决方案，以全面自研的IaaS、PaaS构建工业互联网基础平台，联合生态合作伙伴提供丰富的工业应用APP，实现设备、车间、企业、园区等制造产业链的全程智能化，优化企业生产效率，提高生产的灵活性和产品质量&lt;/p&gt;&lt;p&gt;在当今工业4.0时代，制造业企业面临数字化、智能化转型，通过新技术、新方案进行产业变革，完成新旧动能转换已成为行业大趋势。软发自主可控、业界领先的AI技术为抓手，以视觉与大数据作为切人点，为客户提供国际领先的工业视觉智能和工业数据智能的综合解决方案。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  智能制造解决方案，以全面自研的IaaS、PaaS构建工业互联网基础平台，联合生态合作伙伴提供丰富的工业应用APP，实现设备、车间、企业、园区等制造产业链的全程智能化，优化企业生产效率，提高生产的灵活性和产品质量在当今工业4.0时代，制造业企业面临数字化、智能化转型，通过新技术、新方案进行产业变革，完成新旧动能转换


acode: cn
scode: 6
title: 信息安全
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 09:56:37
ico: /static/upload/image/20220716/1657936588276004.png
pics: /static/upload/image/20220716/1657936591469852.png
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:23:34
update_time: 2022-07-29 15:06:30
gtype: 4
gid: 0
content:
  &lt;p&gt;网络安全产品系列：可全面有效地保护客户网络系统的安全，防止遭到入侵、泄漏和篡改等风险，大幅度地提高系统的安全性，为客户的敏感业务系统提供更可靠的安全保障。&lt;/p&gt;&lt;p&gt;云密码安全产品系列：以密码技术为核心，将密码应用与云计算技术深度融合，有效解决云计算场景中的各种安全威胁，从云服务域到云终端域，产品包含云密码卡、云密码机、云密码服务平台和云密码安全解决方案，助力客户构建合法合规的云计算安全体系架构，以满足云计算时代发展要求。&lt;/p&gt;&lt;p&gt;移动安全产品系列：产品包含安全硬件及解决方案，帮助客户构建全方位移动安全防护体系，有效解决移动互联网中身份认证、安全接入等问题。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  网络安全产品系列：可全面有效地保护客户网络系统的安全，防止遭到入侵、泄漏和篡改等风险，大幅度地提高系统的安全性，为客户的敏感业务系统提供更可靠的安全保障。云密码安全产品系列：以密码技术为核心，将密码应用与云计算技术深度融合，有效解决云计算场景中的各种安全威胁，从云服务域到云终端域，产品包含云密码卡、


acode: cn
scode: 6
title: 工业互联网
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 09:47:16
ico: /static/upload/image/20220716/1657937354169940.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:24:01
update_time: 2022-07-29 15:06:17
gtype: 4
gid: 0
picstitle: ,
pics:
  /static/upload/image/20220716/1657936415693297.png,/static/upload/image/20220716/1657937361455028.jpg

content:
  &lt;p&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Microsoft YaHei&amp;quot;; text-indent: 32px; caret-color: rgb(255, 0, 0); background-color: rgb(255, 255, 255);&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;工业互联网平台是面向制造业数字化、网络化、智能化需求，构建基于海量数据采集、汇聚、分析的服务体系，支撑制造资源泛在连接、弹性供给、高效配置的载体。工业互联网网络实现人、机器、车间、企业等主体以及设计、研发、生产、管理、服务等产业链各环节的全要素的泛在互联。&lt;/p&gt;&lt;p&gt;工业互联网主要应用于智能制造、油气生产、公用事业、大型工业能源管控中心等行业领域，各行业的解决方案完全基于互联网+工业模式进行升级和布局，服务于生产过程智能化、运维和服务智能化、产品智能化，未来可形成跨界融合的工业互联网生态，将新一代信息技术与制造业形成深度融合，为中国智能制造2025服务。&lt;/p&gt;&lt;p&gt;工业互联网平台包括边缘、平台（工业PaaS）、应用三大核心层级。其实工业互联网平台就是工业云平台的延伸发展，其本质是在传统云平台的基础上叠加物联网、大数据、人工智能等新兴技术，构建更精准、实时、高效的数据采集体系，建设包括存储、集成、访问、分析、管理功能的使能平台，实现工业技术、经验、知识的模型化、软件化、复用化，以工业APP的形式为制造企业提供各类创新应用，最终形成资源富集、多方参与、合作共赢、协同演进的制造业生态。&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 0px; margin-bottom: 0px; font-size: 14px; word-break: normal; overflow-wrap: break-word; padding: 0px; color: rgb(51, 51, 51); line-height: 26px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; letter-spacing: 1.5px; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/p&gt;

description:
  PbootCMS是全新内核且永久开源免费的PHP企业网站开发建设管理系统，是一套高效、简洁、 强悍的可免费商用的PHP CMS源码，能够满足各类企业网站开发建设的需要。系统采用简单到想哭的模板标签，只要懂HTML就可快速开发企业网站。官方提供了大量网站模板免费下载和使用，将致力于为广大开发


acode: cn
scode: 6
title: 智慧城市
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 10:10:10
ico: /static/upload/image/20221013/1665640540835179.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:24:25
update_time: 2022-10-13 13:55:42
gtype: 4
gid: 0
picstitle: ,
pics:
  /static/upload/image/20220716/1657935180137969.jpg,/static/upload/image/20220716/1657935187845322.png

content:
  &lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;新一代智慧城市综合信息服务与运营项目，是以网格化管理理念为核心，以云计算、移动互联网、物联网、大数据等新技术为手段，以智信平台、智云平台、全时空平台为基础，将精细管理的模式延伸到智慧城市的相关应用领域，如智慧城管、智能泊车、智慧管网、平安城市、智慧医疗、智能交通等，实现智慧城市各领域由粗放式管理到精细化管理转变。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;新型智慧城市的建设是在科学发展观的指导下,以创新为驱动,以人为本,借助新一代的物联网、互联网、云计算等先进的信息技术和城市管理技术深度融合为手段,对城市的基础支撑、资源环境、社会民生、产业经济、市政管理领域活动中的人物环境进行智慧化的感知、互联、协同和处理,从而创造出的一个和谐、安全、高效、幸福、持续发展的城市生态系统。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;网格化使政府各部门之间实质性的协调与联动成为现实,优化了城市综合服务管理流程和运行机制。网格化通过“网”与“格”将城市综合服务管理中的人、地、物、事、组织有效整合,构建了一个信息化、智能化、交互性的运行体系,实现了城市综合服务管理资源的有效整合,是一次政府基层治理模式的变革和突破。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;建设新型智慧城市,可以在不打破现有行政区划、管理格局和基层民主自治的前提下,通过一定的标准和要素将城乡社区（村）合理地划分为若干网格状的单元,最大限度地整合基层现有的服务管理资源,对网格实行全方位、精细化的动态管理,为网格居民提供多元多样、优质高效的服务。将上级部门在基层设置的多个网格整合为一个综合网格,依托村（社区）合理划分基本网格单元,统筹网格内党的建设、城市管理、综合治理、环境监管、应急管理等工作,实现“多网合一”。合理确定网格监管任务和事项,科学配置网格员力量,实行定人、定岗、定责。推进网格化服务管理标准化建设,提高网格管理规范化精细化水平。新型智慧城市可以实现城市精细化管理、社情民意及时收集、矛盾纠纷就地化解、降低刑事治安发案率、减少安全事故隐患、下降信访案件、健全基层管理、不断完善服务,以横扫城市治理的角度,增强政府部门信息化建设,提升公众满意度,是提升公众满意度的迫切需要。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 在城市运行工作中实施新型智慧城市,是提高城市治理效率的有效途径。建设“网格化+”新型智慧城市平台,实现市、区、专业工作部门和网格员四级联动的管理模式和信息资源共享系统,真正整合优化整合政府信息资源和政府数据库群,建立覆盖全时段全方位的精确、敏捷、高效、可视化的城市运行体系（城市大脑）,将有助于现有体制下城市运行机制的重新塑造。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 以人为本：以“为民、便民、惠民”为导向。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 统筹建设：强化对新型智慧城市建设工作的统一领导,统筹推进项目建设、资金管理和资源共享,注重节约,实现项目建设集约化、资源利用社会化。&amp;nbsp; 因城施策：依据城市战略定位、历史文化、资源禀赋、信息化基础以及经济社会发展水平等方面进行科学定位,合理配置资源,有针对性地进行规划和设计；&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 互联互通：围绕数据汇聚和流转,打通新型智慧城市建设各环节要素间的网络互联和信息互通,实现全省互联互通。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 共享协同：以集中、共享、开放为途径,推进跨层级、跨地域、跨系统、跨部门的数据共享和业务协同,实现城市管理、产业发展、社会保障、公共服务等多方面的协同发展体系,为社会公众提供用得上、用得起、用得好的信息服务。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 多元参与：开展智慧城市顶层设计过程中应考虑政府、企业、居民等不同角色的意见及建议。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 绿色发展：考虑城市资源环境承载力,以实现“可持续发展、节能环保发展、低碳循环发展”为导向。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 创新驱动：落实国家创新驱动发展战略,体现新技术在智慧城市中的应用,体现智慧城市与创新创业之间的有机结合,将智慧城市作为创新驱动的重要载体, 探索机制创新、理念创新、技术创新、应用创新和模式创新,驱动新型智慧城市健康发展。&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;注重实效：以提升政府治理能力和便民服务水平为导向,建设实用、好用的新型智慧城市项目,推进城市管理和便民服务水平稳步提升。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 结合本地实际情况,本着避免政府各级部门重复建设,减少信息化投资建设成本的原则,在充分共享和利用现有信息化资源和基础数据资源的情况下,围绕“一网、一库、一平台、一朵云”进行新型智慧城市的建设,打造政务高效、服务便捷、管理睿智的 “网格化+”新型智慧城市信息平台发展的新常态。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(76, 76, 76); font-family: 微软雅黑; font-size: 14px;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;

description:
  PbootCMS是全新内核且永久开源免费的PHP企业网站开发建设管理系统，是一套高效、简洁、 强悍的可免费商用的PHP CMS源码，能够满足各类企业网站开发建设的需要。系统采用简单到想哭的模板标签，只要懂HTML就可快速开发企业网站。官方提供了大量网站模板免费下载和使用，将致力于为广大开发


acode: cn
scode: 8
title: 发改委投资项目在线监管平台
titlecolor: #333333
author: admin
source: 本站
date: 2022-07-16 10:11:47
ico: /static/upload/image/20220716/1657937599682206.jpg
pics: /static/upload/image/20220716/1657937604307827.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2018-04-12 10:32:52
update_time: 2022-07-16 10:24:27
gtype: 4
gid: 0
content:
  &lt;p&gt;助力企业响应国家号召，完成项目审核全流程数字化转型，规避疫情防控时期面临的突发风险,跨责任单位连通全线投资平台审核机制，实现整体信息互联互通、线上共享、提升协作;依据发改局建立标准化业务流程与数据规范，实现多流程、多行业、多角色统一规范操作；实现对人员、文档、文件资源的动态管理;数字化标准流程，降低时间成本、人员成本、管理成本；大幅度提升操作效率与审核时效;预制标准化分析模板，在线处理数据，自动生成数据报表;实现投资项目数据留痕、全程监管，审核合理合规，降低项目失败率。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;/static/upload/image/20220716/1657938136355212.jpg&quot; title=&quot;1657938136355212.jpg&quot; alt=&quot;IMG20220617143426.jpg&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;text-align: right;&quot;&gt;&lt;span style=&quot;font-size: 10px;&quot;&gt;图片为现场培训照片，如有问题请联系作者&lt;/span&gt;&lt;/p&gt;

description:
  助力企业响应国家号召，完成项目审核全流程数字化转型，规避疫情防控时期面临的突发风险,跨责任单位连通全线投资平台审核机制，实现整体信息互联互通、线上共享、提升协作;依据发改局建立标准化业务流程与数据规范，实现多流程、多行业、多角色统一规范操作；实现对人员、文档、文件资源的动态管理;数字化标准流程，降低时间


acode: cn
scode: 9
title: 高级Linux运维工程师
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-15 17:14:48
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-15 17:15:35
update_time: 2022-07-15 17:15:35
gtype: 4
gid: 0
content:
  &lt;p style=&quot;line-height: 24px;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;line-height: 24px; font-family: 宋体;&quot;&gt;岗位职责：&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、负责公司服务器基础环境的部署、配置、日常巡检、维护、故障的应急响应和问题处理；&lt;/p&gt;&lt;p&gt;2、负责公司kvm虚拟化平台的管理工作，基础环境部署，性能容量管理，漏洞扫描、安全加固，保证其稳定、高效运行；&lt;/p&gt;&lt;p&gt;3、负责维护公司集中监控系统，根据业务需求调整监控策略、告警阀值，处理告警信息和问题跟踪；&lt;/p&gt;&lt;p&gt;4、编写系统维护文档，完善并更新运维流程文档；&lt;/p&gt;&lt;p style=&quot;line-height: 24px;&quot;&gt;&lt;span style=&quot;line-height: 24px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;line-height: 24px;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;line-height: 24px; font-family: 宋体;&quot;&gt;任职要求：&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、计算机等相关专业，本科以上学历，2年以上linux系统管理工作经验，经验丰富可适当放宽学历条件；&lt;/p&gt;&lt;p&gt;2、熟悉基础网络知识，熟悉TCP/IP协议工作原理，有大流量网站服务器管理经验者优先，熟悉自动化运维工具（三选一puppet/saltstack/ansible）优先；&lt;/p&gt;&lt;p&gt;3、熟悉linux系统高可用技术和负载均衡技术，熟悉WEB相关技术，包括Apache/Nginx/tomcat/squid 等应用程序的安装、配置和维护；&lt;/p&gt;&lt;p&gt;4、熟悉服务器硬件，具备排错及故障定位、处理的能力；熟练使用各种工具进行系统状态监控（cacti、Nagios、ganglia等），有虚拟化平台相关经验者优先（vmware/kvm/docker）；&lt;/p&gt;&lt;p&gt;5、有良好的沟通能力和团队合作精神，有强烈的事业心和责任感，工作细心，热爱学习和分享，具有RHCE、RHCA认证者优先；&lt;/p&gt;&lt;p&gt;6、熟练撑握shell/python/perl等1至2种语言。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;工作地址：&lt;/strong&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp;衡水市桃城区&lt;/p&gt;&lt;p&gt;&lt;br style=&quot;white-space: normal;&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  岗位职责：1、负责公司服务器基础环境的部署、配置、日常巡检、维护、故障的应急响应和问题处理；2、负责公司kvm虚拟化平台的管理工作，基础环境部署，性能容量管理，漏洞扫描、安全加固，保证其稳定、高效运行；3、负责维护公司集中监控系统，根据业务需求调整监控策略、告警阀值，处理告警信息和问题跟踪；4、编写系统维护


acode: cn
scode: 9
title: 技术支持
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-15 17:23:46
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-15 17:24:16
update_time: 2022-07-15 17:24:16
gtype: 4
gid: 0
content:
  &lt;p&gt;&lt;strong&gt;&lt;span style=&quot;font-family: 宋体;&quot;&gt;岗位职责：&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、 负责平台运营的业务支撑工作，保证平台业务稳定发展；&lt;/p&gt;&lt;p&gt;2、 参与和优化部门业务操作流程，保证团队协同工作；&lt;/p&gt;&lt;p&gt;3、 为用户提供平台业务咨询服务；&lt;/p&gt;&lt;p&gt;4、 受理客户投诉，在授权范围内予以解决；&lt;/p&gt;&lt;p&gt;5、 网络活动视频录像与剪辑，挖掘优秀作品,后台信息简单编辑处理；&lt;/p&gt;&lt;p&gt;6、 与公司其他部门配合工作。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;font-family: 宋体;&quot;&gt;任职要求：&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、 专科及以上学历，热爱互联网行业；&lt;/p&gt;&lt;p&gt;2、 较强的工作责任心，踏实勤恳，积极向上，性格开朗；&lt;/p&gt;&lt;p&gt;3、 形象佳，口齿伶俐，普通话标准；&lt;/p&gt;&lt;p&gt;4、 熟练使用电脑，经常上网，会使用office等相关办公软件；&lt;/p&gt;&lt;p&gt;5、 能适应白班、夜班倒班工作制；&lt;/p&gt;&lt;p&gt;注：根据个人能力和特长，公司给予更多的发展及晋升空间。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;工作地址：&lt;/strong&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;&lt;h2&gt;衡水桃城区&lt;/h2&gt;&lt;p&gt;&lt;br style=&quot;white-space: normal;&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  岗位职责：1、 负责平台运营的业务支撑工作，保证平台业务稳定发展；2、 参与和优化部门业务操作流程，保证团队协同工作；3、 为用户提供平台业务咨询服务；4、 受理客户投诉，在授权范围内予以解决；5、 网络活动视频录像与剪辑，挖掘优秀作品,后台信息简单编辑处理；6、 与公司其他部门配合工作。任职要求：1、 专科及以上


acode: cn
scode: 9
title: java开发工程师
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-15 17:24:26
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-15 17:26:51
update_time: 2022-07-15 17:28:03
gtype: 4
gid: 0
content:
  &lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;初级Java开发岗位职责：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;按照详细的设计，完成代码设计、代码编写；对自行编制完成的基础性代码进行调试及测试；&lt;/p&gt;&lt;p&gt;修复测试发现代码缺陷，确保质量；按照详细设计流程、计划，定时完成工作；辅助进行文档资料整理、收集资料。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;&lt;strong&gt;中级Java开发工程师任职要求：&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;2年以上Java或Java web开发经验；熟练使用Java后台技术；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;熟练使用HTML5、CSS等前端技术；熟练使用SQL语言；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;熟悉SpringMVC、SSM、Spring boot等Web框架；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;有较强的学习能力；有良好的创新精神和团队协作经验；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;高级Java开发岗位要求：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;5年以上软件研发经验，2年以上软件架构设计经验；&lt;/p&gt;&lt;p&gt;精通weblogic、jboss tomcat、websphere等应用服务器，精通linuxwindows系统上的安装部署、配置及性能调优；&lt;/p&gt;&lt;p&gt;掌握EJB、servlet、JSP等技术，掌握Spring MVC、dubbo、Spring boot、spring cloud、hibernate、MyBatis等开源框架；&lt;/p&gt;&lt;p&gt;掌握分布式开发经技术；熟练掌握HTML、CSS、Javascript等WEB页面设计与编程，熟悉AJAX；精通数据库技术，至少精通SQLServer/DB2/Oracle/MySql中两种数据库；精通OOD、OOP及软件架构设计模式，至少熟悉UML及Visio/Rational Rose/PowerDesigner中一种设计工具；熟悉软件工程思想与软件设计开发流程；&lt;/p&gt;&lt;p&gt;有Redis和MongoDB、Memcached应用经验优先；良好的沟通协调能力，具备良好的学习能力和潜力；&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  初级Java开发岗位职责：按照详细的设计，完成代码设计、代码编写；对自行编制完成的基础性代码进行调试及测试；修复测试发现代码缺陷，确保质量；按照详细设计流程、计划，定时完成工作；辅助进行文档资料整理、收集资料。中级Java开发工程师任职要求：2年以上Java或Java web开发经验；熟练使用Java后台技术；熟练使用HTML5


acode: cn
scode: 9
title: 信息审核员
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-15 17:29:09
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-15 17:29:28
update_time: 2022-07-15 17:29:28
gtype: 4
gid: 0
content:
  &lt;p style=&quot;white-space: normal;&quot;&gt;&lt;strong&gt;岗位职责：&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;1、根据业务规范对全平台音视图文内容进行审核、筛选及处理；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;2、对平台内容进行监管处理和备案，维持网络秩序；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;3、为用户提供平台业务咨询服务，保障产品活动顺利进行；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;4、受理客户投诉，在授权范围内予以解决；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;5、参与修订审核标准，优化审核流程与规范。&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;&lt;strong&gt;岗位要求：&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;1、大专以上学历，专业不限，有视频网站内容审核经验者优先；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;2、熟悉互联网信息安全，有敏感的风险意识，针对突发热点话题具备一定的判断处理能力；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;3、耐心、细致、踏实、严谨，具备高度的责任心和团队合作精神；&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;4、有一定沟通协调能力及组织领导力，能够承担一定的压力与挑战。&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;说明：上班时间遵从部门内部排班安排，能适应夜班。&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;岗位升值空间：组长、主管、平台运营专员、网络推广、音乐编辑…&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;white-space: normal;&quot;&gt;&lt;strong&gt;工作地址：&lt;/strong&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;&lt;h2 style=&quot;white-space: normal;&quot;&gt;衡水市桃城区&lt;/h2&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  岗位职责：1、根据业务规范对全平台音视图文内容进行审核、筛选及处理；2、对平台内容进行监管处理和备案，维持网络秩序；3、为用户提供平台业务咨询服务，保障产品活动顺利进行；4、受理客户投诉，在授权范围内予以解决；5、参与修订审核标准，优化审核流程与规范。岗位要求：1、大专以上学历，专业不限，有视频网站


acode: cn
scode: 4
title: 我区企业研发的产品入选《河北省疫情防控软件产品和信息技术服务解决方案推荐参考目录》
titlecolor: #333333
author: http://www.hengshui.gov.cn/art/2020/3/17/art_111_217881.html
source: http://www.hengshui.gov.cn/art/2020/3/17/art_111_217881.html
date: 2022-07-16 11:06:30
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-16 11:07:53
update_time: 2022-07-16 11:07:53
gtype: 4
gid: 0
content:
  &lt;p style=&quot;box-sizing: border-box;margin-top: 0px;margin-bottom: 0px;padding: 0px;font-family: 微软雅黑;color: rgb(51, 51, 51);font-size: 14px;line-height: 40px;text-indent: 32px&quot;&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;近日，我区威云公司自主开发的“威云疫情管控大数据平台”软件入选《河北省疫情防控软件产品和信息技术服务解决方案推荐参考目录》，是全市唯一一家被列入的科技中小型企业。&lt;/span&gt;&lt;br style=&quot;box-sizing: border-box;padding: 0px;font-size: 17px&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box;margin-top: 0px;margin-bottom: 0px;padding: 0px;font-family: 微软雅黑;color: rgb(51, 51, 51);font-size: 14px;line-height: 40px;text-indent: 32px&quot;&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;“威云疫情管控大数据平台”客户端是基于微信开发的小程序，无须安装，只需要扫描一次二维码，填写一次基础数据，即可使用本系统内的社区小区出入登记、企业复工申请管理系统、企业复工职工管控、学校复学管理，以及交通行业通行卡口管理、电子通行证、电子身份证管理等&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-size: 16px&quot;&gt;8&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;个功能模块，目前已在桃城区、安平、武邑、故城等多个小区进行试点试用。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box;margin-top: 0px;margin-bottom: 0px;padding: 0px;font-family: 微软雅黑;color: rgb(51, 51, 51);font-size: 14px;line-height: 40px;text-indent: 32px&quot;&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;据悉，威云公司是业内领先的党政、企业整体信息化解决方案提供商，是国家级科技型中小企业，先后研发了党政大数据分析平台、智慧党建、智慧街道、综合网格化管理、智慧园区、政府绩效等多个领域一系列产品，目前拥有&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-size: 16px&quot;&gt;30&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;余项自主研发的计算机软件著作权，通过了&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-size: 16px&quot;&gt;ISO9001&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;质量管理体系认证。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box;margin-top: 0px;margin-bottom: 0px;padding: 0px;font-family: 微软雅黑;color: rgb(51, 51, 51);font-size: 14px;line-height: 40px;text-indent: 32px&quot;&gt;&lt;span style=&quot;box-sizing: border-box;padding: 0px;font-family: 宋体;font-size: 16px&quot;&gt;来自：http://www.hengshui.gov.cn/art/2020/3/17/art_111_217881.html&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box;margin-top: 0px;margin-bottom: 0px;padding: 0px;font-family: 微软雅黑;color: rgb(51, 51, 51);font-size: 17px;line-height: 40px;text-indent: 2em&quot;&gt;&lt;br style=&quot;box-sizing: border-box;padding: 0px;white-space: normal&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  近日，我区威云公司自主开发的“威云疫情管控大数据平台”软件入选《河北省疫情防控软件产品和信息技术服务解决方案推荐参考目录》，是全市唯一一家被列入的科技中小型企业。“威云疫情管控大数据平台”客户端是基于微信开发的小程序，无须安装，只需要扫描一次二维码，填写一次基础数据，即可使用本系统内的社区小区出入登


acode: cn
scode: 8
title: 智慧油烟项目
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-16 11:08:01
ico: /static/upload/image/20220718/1658107450487664.png
pics: /static/upload/image/20220718/1658107453561183.png
description: 内容更新中
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-16 11:09:08
update_time: 2022-07-29 15:19:07
gtype: 4
gid: 0
content:
  &lt;p&gt;油烟在线监测系统是为满足环保行业特殊需求，利用物联网感知技术、GPRS无线通信技术等开发的一套高性能的集油烟监测、数据采集、数据传输为一体的系统。可对餐饮企业油烟排放浓度、净化器运行状态、风机运行状态等指标进行在线监控，可对油烟区域在线监控进行整体的数据管理、基础信息管理、监测数据展示及统计分析，从而将油烟治理设施工况数据与油烟浓度数据统一起来，为环保局提供直接有效且真实的油烟排放状况的专用油烟监测设备。&lt;/p&gt;&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658107224163816.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;ZWIN-YY08油烟在线监测仪为ZWIN-YY06油烟在线采集器的升级版本，由采集器主体、显示屏、油烟探头三部分组成。采集器集成GPRS无线通信模块（可选CDMA），采用实时在线、自动上报的方式工作。采集器带有油烟探头专用接口，用于连接探头。采集器通过控制探头采集油烟原始数据，读取探头采集到的原始数据，并进行综合计算，最终得到油烟浓度值，也可在显示屏上直接查看数据。油烟在线监控系统由实时数据监测、历史数据查询、基础信息管理、用户信息管理等功能组成，支持通过GIS地图定位展示各餐饮企业的实时监测状态。&lt;/p&gt;&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658107158719871.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;


acode: cn
scode: 8
title: 智慧扬尘项目
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-16 11:09:09
ico: /static/upload/image/20220718/1658106851864606.jpg
pics: /static/upload/image/20220718/1658106854131363.jpg
description: 内容待更新
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-16 11:09:41
update_time: 2022-07-29 15:19:17
gtype: 4
gid: 0
content:
  &lt;p&gt;扬尘在线监测管理系统平台为我司自主研发改善空气质量对颗粒物污染程度实时监控的解决方案，通过远程数据监测系统对污染区域实现实时有效的监管，将污染区域所采集的数据进行分析、整理，以报告、报表的形式展示，支持导出留存凭证及提供数据基础，清晰明了，将监测区域纳入监管范围，真正实现有效管理和标准化执法。数据分析设备管理系统管理数据修约实时监测。&lt;/p&gt;&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658106300188259.jpg&quot; title=&quot;1658106300188259.jpg&quot; alt=&quot;1658106172036.jpg&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;实时地图展示：系统内所有监测点位按所属行政区域进行归类和展示，电子地图确切的知道每个设备所在位置，通过点击电子地图上的设备图标就可以查看设备所带各项传感器采集的实时监测因子，方便用户直观查看区域内所有监测点的部署情况和环境质量状况。。实时数据：用户点击监测点位图标后系统自动显示站点名称、安装位置、点位负责人、发布时间、各项监测因子实时数据等信息，数值通过折线图与表示颜色搭配显示，直观展示站点当前污染情况，监测因子可以按照不同需求进行定制，显示时间段分为实时状态值、最近一小时值、最近24小时值等。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658106395178733.png&quot; title=&quot;1658106395178733.png&quot; alt=&quot;M6V{6{VU0NORI6C6W_M2)IR.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;扬尘在线监测平台系统—核心功能监测因子图形展示：数据展示支持折线图、柱状图、表格等多种形式，展示的内容为各项监测因子浓度的实时与历史分钟值、小时值，方便用户查看时间段内各项监测因子变化趋势，同时可以进行监测点位之间的各项参数的对比分析，用户可以自主设定展示的时间区间，导出打印时支持选用JPG图片、PDF、EXCEL、WORD文档多种格式。历史数据查询：系统提供历史数据查询功能，用户通过设置时间类型、站点、查询时间选项后，即可查看到所选择站点的历史数据信息，包括各项监测因子、数据更新时间等，查询结果支持选用EXCEL文档形式导出。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658106514152096.png&quot; title=&quot;1658106514152096.png&quot; alt=&quot;QJA}MXH_H1V(Z}([O2F1@ZW.png&quot;/&gt;&lt;/p&gt;


acode: cn
scode: 8
title: 智慧供热系统
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-16 11:09:42
ico: /static/upload/image/20220718/1658107936595284.png
pics: /static/upload/image/20220718/1658107941840013.png
description: 内容待填充
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-16 11:10:11
update_time: 2022-07-29 15:19:26
gtype: 4
gid: 0
content:
  &lt;p&gt;城市集中供热智能调度管理系统将先进的物联网技术、云计算技术、移动互联技术大数据技术、智能控制技术与热源、热网、热用户高度集成而形成的智能管理系统，它能够实现可观测（能够监测各区域供热锅炉运行状态）、可控制(能够控制所有设备的状态）、完全自动化(可自适应并实现自愈）和系统综合优化平衡（热源、热网和热用户之间的优化平衡)，帮助城市集中供热企业提高热力站、二次网和用户系统综合效率，降低一次投资和运营成本，增强企业管控信息化集成程度;实现整个热网安全稳定、节能降耗、经济运行。&lt;/p&gt;&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658107835794543.jpg&quot;/&gt;&lt;/p&gt;&lt;p&gt;通过信息定制，可用手机接收报警信息。&lt;/p&gt;&lt;p&gt;通过分析历史数据，预测负荷:可根据不同区域的供热系数调节相应区域供水流量，优化热网运行参数。&lt;/p&gt;&lt;p&gt;建立基于GIS地图城市热网管理信息系统，与监控调度系统无缝集成;通过地理系统实时查看各种生产数据，实现对城市热网综合管理;随时掌握全市输配系统的最新资料，供有关部门管理集中供热管网、规划设计、运行调度、决策使用。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220718/1658107866736603.jpg&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;


acode: cn
scode: 4
title: 改进软件开发过程的9种策略
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-25 21:26:01
status: 1
istop: 0
isrecommend: 1
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-25 21:31:08
update_time: 2022-07-25 21:31:08
gtype: 4
gid: 0
content:
  &lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;在今天的市场中，你是否希望击败你的竞争对手赢得竞争？最终的解决方案将是快速的软件开发。无论你的公司大小，拥有快速的软件开发将始终让你在竞争中处于领先地位。关于快速开发，你永远不要在软件质量上妥协，这将对公司的发展构成很大的威胁。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;软件开发涉及的过程是漫长而无止境的，即使已经拥有成熟的市场，也需要适当和持续的改进和维护，随着新的修复和改进，软件需要定期更新。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;根据Statista发布的报告，截至2021年底，软件开发收入达到2710亿美元。与2016年和2017年相比，软件开发行业的收入增长了14%和25%。本篇文章简要介绍了加快软件开发过程的可能方法。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;span style=&quot;font-size: 18px;&quot;&gt;&lt;strong&gt;决定软件开发速度的因素&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;在进入核心之前，让我们回顾一下在决定软件开发过程的速度方面起着至关重要作用的一些基本因素。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;开发中涉及的复杂性：它是决定软件开发过程速度的最重要的因素。开发过程中涉及的复杂性越高，项目发生延期的可能性就越高。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;开发团队的规模：与复杂性一样，参与软件开发过程的开发人员数量也会影响项目的完成速度。为了获得更好且快速的过程，整个开发团队应该有具备相应能力的人员。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;代码质量：拥有高质量的代码决定了软件的质量，但也需要更多的时间来编写。如果项目很大，编写高质量的代码肯定会拖慢项目完成速度。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;人为因素：人为因素在软件开发过程中的影响将在项目周转时间中发挥重要作用。与机器不同，开发团队不会每次都产生相同的准确结果。&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;span style=&quot;font-size: 18px;&quot;&gt;&lt;strong&gt;加快软件开发项目速度的可能方法&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;1.从一开始就建立明确的目标和客户需求&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;这是每个软件开发公司都应该遵循的最重要和最基本的步骤。作为一个开发人员，你需要更准确地找到客户的项目目标和需求。未能找到正确的目标可能会导致混乱和注意力转移。此外，它可能会导致项目的更多延迟。&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;从一开始就定义适当的项目目标将节省时间，而不是在以后纠正错误。因此，在开始开发过程之前，确保所有团队成员都了解项目的目标，以避免意外或者混乱。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;2.配备合适的开发人员&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;如果你计划开发一款优秀的产品，请为你的开发团队雇佣优秀的人才，因为与一个人的团队相比，拥有合适的团队总是能突破阻碍。为你的公司雇用一个有才华的软件开发团队是最具挑战性的任务和关键的投资。同时，你需要意识到，如果没有能开发优秀软件产品的顶级软件开发人员，你的公司不可能一夜之间取得成功。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;3.遵循行业最佳实践&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;要构建更好和更高质量的软件产品，你需要确保你的开发团队遵循行业的最佳实践。除此之外，你还需要为公司制定内部标准，并确保整个开发团队都遵循这些标准。你所在公司处理或将要处理的项目应遵守公司制定的标准和条款。通过这样做，你可以确保公司的所有员工都遵循同一标准要求。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;4.考虑将项目分成小组件&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;将整个项目分成更小的部分将使开发人员更容易管理。将小任务分配给截止日期较短的小团队将使你能够快速完成项目。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;5.采用DevOps和敏捷方法来更轻松、更快速地构建优质软件&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;在软件开发过程中使用DevOps和敏捷方法的公司将在今天的市场中获得许多好处和竞争优势。这些方法将使你能够交付高质量的软件以提高客户满意度。此外，这些方法将帮助你的产品更快地进入市场并改善利益相关者之间的沟通。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;6.使用测试驱动开发&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;测试驱动开发（TDD）通常被称为编写测试，它在加速软件开发过程中发挥着重要的作用。如果 TDD 被完美地实施，它将显著提高生产力并使开发人员/测试人员能够在早期开发阶段修复错误而迅速获得回报。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;7.使用正确的开发工具&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;为你的项目找到正确的开发工具集将极大地影响你的日常工作计划。必须根据需求选择工具，无论你需要全功能/高级功能，还是项目需要更简单的功能。此外，你需要考虑到项目开发过程中涉及的业务伙伴的因素。因为项目的每个团队成员在工作时如果感到舒适，这将提高生产力并避免团队中的挫败感。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;8.自动化以节省成本和时间&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;在构建软件时，引入自动化将显著提高生产力。自动化软件开发过程将减少人为干扰。它允许业务相关人员更多地关注生产力，而不是发现错误/质量。根据专家的观点，90%的软件成本与维护和更新有关。自动化软件开发过程产生更高的效率和高回报。除此之外，自动化缩短了开发过程的时间延迟和减少了开发人员。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;&lt;strong&gt;9.利用开源技术的好处&lt;/strong&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;利用开源软件可以解决许多技术问题，包括控制和节约成本。许多企业利用开源软件并充分利用它们。与从头开始开发定制软件相比，开源软件可以节省多少成本，可能会有一些争论。但是，毫无疑问，开源软件通过提供稳定的功能支持软件开发。近年来，开源软件市场的收入一直在急剧增长，这表明了开源软件对软件开发行业产生了多大的影响。&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;小结&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;有了正确的指导方针和充分的准备，软件开发过程永远不会变得复杂。始终保持敏捷，灵活，友好的工作态度，探索面向未来的技术，并实施成功的软件开发策略，以快速构建更好、更高质量的软件。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; text-indent: 2em;&quot;&gt;值得注意的是，除了上面提到的方法之外，还有其他几种方法可以开发软件。但是，不能保证相同的策略会为所有软件公司带来相同的结果。&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  在今天的市场中，你是否希望击败你的竞争对手赢得竞争？最终的解决方案将是快速的软件开发。无论你的公司大小，拥有快速的软件开发将始终让你在竞争中处于领先地位。关于快速开发，你永远不要在软件质量上妥协，这将对公司的发展构成很大的威胁。软件开发涉及的过程是漫长而无止境的，即使已经拥有成熟的市场，也需要适当和


acode: cn
scode: 4
title: 前端架构设计中如何做好技术决策？
titlecolor: #333333
author: 超级管理员
source: code秘密花园
date: 2022-07-26 10:00:14
ico: /static/upload/image/20220726/1658800831785108.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-26 10:00:59
update_time: 2022-07-26 10:00:59
gtype: 4
gid: 0
content:
  &lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;今天做了一个关于如何做架构设计的分享，其中有个很重要的问题就是如何更好的做技术决策，我针对我们前端团队整理了5条做技术决策的原则。&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;原则1: 遵守公认的好的设计原则，比如说：&lt;/span&gt;&lt;/h3&gt;&lt;ul style=&quot;padding: 0px; list-style-position: inside; list-style-image: initial; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;DRY - Don&amp;#39;t repeat yourself （不要重复自己）&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;KISS - Keep it Simple, Silly （让设计尽可能的简单）&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;YAGNI - You aren&amp;#39;t gonna need it （只做刚刚好的设计，不要过度设计）&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;… 其他&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;原则2: 找出最本源的需求，而不应该局限于当前的技术实现和资源&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;很多时候我们很容易被表面需求所误导，类似于乔布斯的名言：“如果亨利福特在发明汽车之前去做市场调查，他得到的答案一定是大家想要一辆更快的马车。”，如果我们在做设计和技术决策的时候，没有找出用户的真实需求，很容易就会在错误的方向上狂奔，做很多无用功！&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;要找出本源的需求，还是需要多问为什么，多和干系人沟通，少考虑技术细节，少被现有的技术所误导或局限。&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;案例：设计部门希望设计系统支持Angular&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;我们设计部门最近希望我们的设计系统提供&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本，因为当前只支持&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;React&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本。从这个需求来看，表面是是要我们开发&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本，其实如果仔细追问他们到底为什么需要&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本，是因为有一个团队还在用&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;，他们希望这个团队能用我们的设计系统，但是人家表示用不了。其实本源的需求是希望有更多的团队用设计系统，而不是要支持&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angualr&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;那要满足这个团队的这个需求，是不是非要做一个&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本不可呢？当然不需要，如果我能提供一个类似于&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;BootStrap&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;的&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;HTML&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;和&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;CSS&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本，其实他们一样能用起来，而这么做成本不高，并且别的团队也可以用。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; text-align: center; line-height: 1.75 !important;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220726/1658800831785108.jpg&quot; style=&quot;margin: 0px; padding: 0px; border: none; max-width: 100%; height: 295px; visibility: visible; width: 550px;&quot;/&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;原则3: 聚焦于 “收益”、“成本”和“风险”三者之间的平衡，而不是技术本身&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;每一次技术决策，其实本质上就是一次取舍（&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Trade-Offs&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;）&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; text-align: center; line-height: 1.75 !important;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220726/1658800831340826.png&quot; style=&quot;margin: 0px; padding: 0px; border: none; max-width: 100%; height: 296px; visibility: visible; width: 550px;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;每一次取舍（&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Trade-Offs&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;），本质上就是在“收益”、“成本”和“风险”三者之间的平衡&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;既然每一个决策都涉及到收益成本风险，那么就不能只看收益而无视成本和风险。就像前一个案例中提到的，设计部门考虑的是&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本带来的收益，但是他们却忽略了打造一套&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Angular&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;版本的设计系统所需要的成本，以及可能带来的巨大风险。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;所以在做技术决策的时候，理性的考虑一下 决策背后的收益、成本和风险的关系是很必要的，而不是仅靠喜好或者直觉来做决策。&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;原则4: 选择某个技术背后的生态系统而不是某个技术&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;这条原则特别适用于前端领域，在前端，各种新技术、框架、工具层出不穷，如果总是追新，或者被某个软文吸引轻易选择了某个技术，最终会带来巨大的成本。&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;案例：为什么我们从Preact迁移到React&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;在早些年的时候，我们前端选择了&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Preact&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;作为UI渲染技术，这有早年&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;React License&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;的原因，也有&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Preact&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;更小性能更好的原因。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;然而这些年在使用过程中，还是有很多不足的地方，核心原因都是生态不够好。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;比如说&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Preact&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;调试很麻烦，因为它不像&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;React&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;有一个强大的&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;DevTools&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;；比如说我们遇到过&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Preact&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;在服务端渲染的内存泄漏问题，如果像我们这样大规模访问量的用户多一点，可能早就有人踩过坑了，不需要我们去花很长时间定位并最终去解决这个问题；比如最近我们在集成&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Nextjs&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;，&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Nextjs&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;是完全为&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;React&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;设计的，对&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Preact&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;兼容性并不好。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;这样的案例还很多，所以选择技术，它背后的生态和社区活跃度很重要。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; text-align: center; line-height: 1.75 !important;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220726/1658800832213063.png&quot; style=&quot;margin: 0px; padding: 0px; border: none; max-width: 100%; height: 295px; visibility: visible; width: 550px;&quot;/&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;原则5: 不仅要考虑如何构建，还要考虑如何维护&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;这是一个常见的问题，很多人只管搭建新项目的时候爽，而不管后续维护是不是困难，用了一堆自己喜欢的新技术，最后难以维护。下一个人接手了，搞不好会推翻重写一遍，这样的循环一次又一次。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; text-align: center; line-height: 1.75 !important;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220726/1658800833744769.png&quot; style=&quot;margin: 0px; padding: 0px; border: none; max-width: 100%; height: 295px; visibility: visible; width: 550px;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;这样的错误我也常犯，比如2年前&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;React Hooks&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;刚出的时候，我就迫不及待用它来替代&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Redux&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;，结果上线后发现不好维护，有&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Bug&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;也不好定位，不像以前&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;Redux&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;&amp;nbsp;&lt;/span&gt;，数据流特别清晰，借助工具非常好重现和定位问题，最终上线没多久就改回去了。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;所以现在在做技术决策的时候，我们很注意的一个问题就是将来维护的时候是不是很麻烦。&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;包括我在代码审查的时候，有时候看到一些功能能运行的很好 PR，但是代码写的比较难懂的，或者没有遵守最佳实践的，只要是给未来的维护造成麻烦的，我都会毫不犹豫要求重写，避免增加未来的维护成本。&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;最后&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;上面就是我们现在实践的五个技术决策原则：&lt;/p&gt;&lt;ul style=&quot;padding: 0px; list-style-position: inside; list-style-image: initial; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;原则 1: 遵守公认的好的设计原则&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;原则 2: 找出最本源的需求，而不应该局限于当前的技术实现和资源&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;原则 3: 聚焦于 “收益”、“成本”和“风险”三者之间的平衡，而不是技术本身&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;原则 4: 选择某个技术背后的生态系统而不是某个技术&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;原则 5: 不仅要考虑如何构建，还要考虑如何维护&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;这些原则绝大部分时候都可以很好的帮助我们做出正确的决策，避免踩坑。但我也会一直在反思曾经做过的决策，对于做出的不太好的决策，会反过来考虑是否要修订这些原则，最终通过不断完善决策原则，帮助我和团队更好的做出技术决策。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  今天做了一个关于如何做架构设计的分享，其中有个很重要的问题就是如何更好的做技术决策，我针对我们前端团队整理了5条做技术决策的原则。原则1: 遵守公认的好的设计原则，比如说：DRY - Don&amp;#39;t repeat yourself （不要重复自己）KISS - Keep it Simple, Silly （让设计尽可能的简单）YAGNI - You aren&amp;#39;t gonna need


acode: cn
scode: 4
title: 这5个理由告诉你为什么要采用微前端架构
titlecolor: #333333
author: 超级管理员
source: 本站
date: 2022-07-26 10:01:01
ico: /static/upload/image/20220726/1658800960128074.jpg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: admin
update_user: admin
create_time: 2022-07-26 10:02:43
update_time: 2022-07-26 10:02:43
gtype: 4
gid: 0
content:
  &lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;微前端是一种前端开发的架构方法，已经变得越来越流行，这也预示着它很可能代表 Web 开发的未来。所以学习这种架构带来的好处对你的应用程序和开发团队是不言而喻的。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; text-align: right; line-height: 1.75 !important;&quot;&gt;&lt;img src=&quot;/static/upload/image/20220726/1658800960128074.jpg&quot; style=&quot;margin: 0px; padding: 0px; border: none; max-width: 100%; height: 352px; visibility: visible; width: 622px;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;本文将分享我和我的团队使用这种方法两年来的经验所得，以及帮助你分析在你的下一个项目中采用它的重要理由。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; line-height: 1.15; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;什么是微型前端架构？&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;在过去的几年里，IT公司已经开始将大型软件分解成更小的、更容易管理的模块。这种方法背后的想法是拥有许多可以独立开发、测试和部署的服务。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;这就是微服务架构在后台开发方面的作用。但同样的方法也可以应用于前端开发，它被命名为微前端架构。在 Martin Fowler 的官方网站上，微前端方法被定义为。&lt;/span&gt;&lt;/p&gt;&lt;blockquote style=&quot;margin: 5px 0px; padding: 1px 16px 1px 1em; quotes: none; background: rgb(242, 245, 249); color: rgb(129, 145, 152); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; border-left: 3px solid rgb(238, 238, 238); opacity: 0.6;&quot;&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background: none !important; color: rgb(51, 51, 51) !important;&quot;&gt;一种架构风格，将可独立交付的前端应用程序组合成一个更大的整体&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;这种前端开发的架构方法已经变得越来越流行，因为传统的单片式方法存在着众所周知的隐患。主要是因为前端软件往往增长迅速，而当使用单体架构时，一切都变得更加难以维护。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;另一方面，微前端使你有能力实现一个不太复杂和麻烦的架构。特别是，由于微前端的方法，你可以将整个应用程序分割成小的、独立的部分。然后，它们中的每一个都可以由不同的前端团队来实现，甚至可以使用不同的技术。这确保了与后端微服务架构相同的可扩展性、灵活性和适应性。此外，这种方法允许你在同一个网页上混合使用库或不同框架开发的微型前端组件。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;所以，微前端现在是IT界的一个趋势，而且这种方法正被越来越多的人采用。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;br style=&quot;margin: 0px; padding: 0px;&quot;/&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; line-height: 1.15; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;选择微前端的5个好处&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;使用微前端开发要了解这种前端开发方法的真正优势是什么。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;现在，让我们来看看使用它的五个最相关的理由，这些理由是我作为一个使用微前端工作了两年多的前端开发者的经验总结。&lt;/span&gt;&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;1、让开发者发挥最佳状态&lt;/span&gt;&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;我工作的团队由具有不同背景和技能的开发人员组成。有些是 React 的专家，有些更擅长 Vue.js 或 Angular ，有些人喜欢用 JavaScript 编码，有些人喜欢用TypeScript。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;最初，这种现象成为了团队发展的一个障碍。唯一的解决方案是找到共同点，尽管这种选择会迫使一些开发人员学习新技术，并失去他们的专业知识。因此，我们寻找解决方案，并决定采用微型前端架构方法。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;得益于此，我们能够将原来的团队分成多个团队，每个人都能在其中表现自己的最佳状态。这是因为不同的团队可以根据他们要处理的业务逻辑，在架构、测试和编码风格方面做出最佳决定。另外，这种方法本质上导致了代码和风格的隔离，使每个团队独立于其他团队。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;在最终结果方面，微前端也是有帮助的。这是我们的团队在完全接受这种方法后的体会和结论。事实上，有多个小团队可以自由使用他们喜欢的技术，这意味着他们本质上受到的限制更少，因此更有动力去写出更高质量的代码。&lt;/span&gt;&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;2、允许采用不同的技术栈&lt;/span&gt;&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;由于微型前端是由独立的小块组成的，所以每一个都可以使用不同的技术栈来实现。这是一个令人难以置信的巨大优势。首先，因为起始团队可以根据特定技术栈的专长分成许多小团队，这也尊重了单一责任原则。其次，由于许多技术栈会在同一个项目中使用，因此雇用新的开发人员变得更加容易。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;此外，微前端的方法实际上消除了对某一特定技术的锁定现象，至少它大大减少了这一现象。这是因为你的团队可以随时决定选择一个新的技术栈，而不必翻译以前开发的东西。另外，微前端架构所包含的每块内容肯定比前端单体要小，把它翻译成新的技术会花费更少的时间。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;自从我们的团队接受了微前端的方法，我们就被激励着去尝试新的技术、库和框架。事实上，每当你必须在你的应用程序中嫁接一个新的部分，你可以决定采用一个全新的技术栈。这代表了一个宝贵的机会，可以学习如何使用市场上的许多 JavaScript 框架。&lt;/span&gt;&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;3、开发和部署变得更快&lt;/span&gt;&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;通过采用微前端我们作为一个团队的前端开发过程得到了高度改善。主要原因是，我们现在不再有一个大的团队被迫处理不可避免的沟通开销，而是属于较小的独立团队，同时处理不同的功能，而不考虑实施细节。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;你可以想象，这也代表了在发布新功能时的一个巨大进步。主要原因是与大型单片机软件相比，构建小型微前端更快、更容易。因此，你的部署时间也会大大改善。事实上，每当一个团队完成了一个功能的工作，他们就可以在线部署，而不需要等待。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;换句话说，微型前端应用程序是基于独立的团队同时进行独立的功能工作。不得不说这是一个实现更高发布率的机会，特别是随着小团队数量的增加。&lt;/span&gt;&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;4、它使你的网络应用更易维护&lt;/span&gt;&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;如果你曾经处理过大型的应用程序，你就知道它们很容易变得难以维护，特别是当它们是单体的，而且必然会越来越大。而微前端是基于分而治之的方法，这意味着，如果你的网络应用程序选择这种架构，你可以使每一个业务需求更容易测试和维护。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;这一点我们的团队很快就学会了。测试大型单体应用是很有挑战性的，需要大量的时间，我们都知道这一点。但自从我们采用了微前端的方法，一切都变了。现在每个团队负责测试其开发的功能，这些功能远远小于一个完整的前端应用程序。这就加快了开发的速度。这加快了整个过程，使其更容易。因此，现在没有人害怕测试了。而且，每个独立的团队现在可以自由地采用他们喜欢的测试工具和技术。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;此外，处理小块的东西意味着理解正在发生的事情的流程变得更加实惠。这导致了建立在许多小部件上的网络应用程序更加可靠，并且在需要时容易被维护。&lt;/span&gt;&lt;/p&gt;&lt;h4 style=&quot;margin: 1.33em 0px; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.5 !important; font-size: 20px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;5、它代表了前端开发的未来&lt;/span&gt;&lt;/h4&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;根据《2020年微服务状况报告》，24%的开发人员已经使用了微前端。这意味着越来越多的公司正在利用这种方法的力量，预计几个流行的前端应用程序将在不久的将来采用这种方法。换句话说，当涉及到前端开发时，微前端可能代表下一步的首选。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;我的团队有机会处理这个问题，我毫不怀疑它代表了前端单体开发方法的自然演变。另一方面，它仍然是一个相对较新且有些不成熟的技术，还有很长的路要走。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;与此同时，Web 应用程序也在不断发展，但我和我的团队并不害怕说微前端是前端开发的自然演变。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 1em 0px; padding: 0px; line-height: 1.15; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; font-size: 24px !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; font-size: inherit !important;&quot;&gt;总结&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;在这篇文章中，我们根据我和我的团队两年来在日常工作中积累的经验，总结了采用微前端架构方法的五个最重要的原因。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; background-image: none !important; background-position: initial !important; background-size: initial !important; background-repeat: initial !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important;&quot;&gt;虽然没有后端开发中使用的微服务架构那么流行，但它背后的想法几乎是一样的。微前端架构现在成为趋势并不奇怪，它可能代表了前端开发的自然演变。这也是为什么了解它是不可缺少的，学习现在采用它的主要原因就是这篇文章的目的。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;原文标题：&lt;a target=&quot;_blank&quot; href=&quot;https://www.sitepoint.com/micro-frontend-architecture-benefits/&quot; style=&quot;margin: 0px; padding: 0px 0px 2px; text-decoration-line: none; color: rgb(51, 51, 51) !important; border-bottom: 1px solid rgb(51, 51, 51) !important;&quot;&gt;5 Reasons You Should Adopt a Micro Frontend Architecture&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; margin-bottom: 1em; padding: 0px; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Segoe UI&amp;quot;, Arial, Roboto, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, sans-serif; white-space: normal; line-height: 1.75 !important;&quot;&gt;原作者：Antonello Zanin&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  微前端是一种前端开发的架构方法，已经变得越来越流行，这也预示着它很可能代表 Web 开发的未来。所以学习这种架构带来的好处对你的应用程序和开发团队是不言而喻的。本文将分享我和我的团队使用这种方法两年来的经验所得，以及帮助你分析在你的下一个项目中采用它的重要理由。什么是微型前端架构？在过去的几年里，IT公司已


acode: cn
scode: 8
title: 亩均论英雄
titlecolor: #333333
author: 软发
source: 本站
date: 2022-07-27 09:37:30
ico: /static/upload/image/20220727/1658885925834143.jpeg
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: ruanfa
update_user: admin
create_time: 2022-07-27 09:45:03
update_time: 2022-07-29 15:18:55
gtype: 4
gid: 0
content:
  &lt;p&gt;&lt;img src=&quot;/static/upload/image/20220727/1658885925834143.jpeg&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; letter-spacing: 0.544px; background-color: rgb(255, 255, 255);&quot;&gt;在人们的传统印象中，“亩均”是农业生产领域的特有词汇。&lt;/span&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; letter-spacing: 0.544px; background-color: rgb(255, 255, 255);&quot;&gt;“亩产论英雄”，是将农业领域“亩产”概念引入工业领域，进行工业企业效益评价，实质是以最小的资源环境代价，获得最大的效益产出。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; letter-spacing: 0.544px; background-color: rgb(255, 255, 255);&quot;&gt;河北软发科技有限公司&lt;/span&gt;&lt;span style=&quot;background-color: rgb(255, 255, 255); font-family: arial; font-size: 18px; letter-spacing: 0.544px; color: rgb(0, 0, 0);&quot;&gt;建立以节约集约用地、节能降耗减排为重点的企业“亩产效益”导向、约束和评价机制，为开发指导思想；&lt;/span&gt;&lt;span style=&quot;background-color: rgb(255, 255, 255); font-family: arial; font-size: 18px; letter-spacing: 0.544px;&quot;&gt;企业“亩产效益”综合评价从基层探索走向了顶层设计，“亩产论英雄”与“创新论英雄”统一于“亩均论英雄”改革，成为快经企业济转型升级的一项关键举措。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-bottom: 25px; max-width: 100%; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); font-family: arial; letter-spacing: 0.544px; white-space: normal; background-color: rgb(255, 255, 255); outline: 0px; margin-top: 0px !important; padding: 0px !important; box-sizing: border-box !important; overflow-wrap: break-word !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;span style=&quot;max-width: 100%; outline: 0px; box-sizing: border-box !important; overflow-wrap: break-word !important;&quot;&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255);&quot;&gt;任何一项重大改革的成功，既要准确把握、正确回应时代命题，还要有切合实际、可操作性强的具体举措。“亩均论英雄”改革要取得预期效果，首先必须确定评价范围，并建立一套科学合理、便于落地的亩均效益评价标准体系。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(34, 34, 34); font-family: arial; font-size: 18px; letter-spacing: 0.544px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;/span&gt;&lt;img src=&quot;/static/upload/image/20220727/1658886294108498.jpeg&quot; title=&quot;1658886294108498.jpeg&quot; alt=&quot;11bd24411c81c5146201e4311257b03f.jpeg&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  在人们的传统印象中，“亩均”是农业生产领域的特有词汇。河北软发科技有限公司建立以节约集约用地、节能降耗减排为重点的企业“亩产效益”导向、约束和评价机制，为开发指导思想。企业“亩产效益”综合评价从基层探索走向了顶层设计，“亩产论英雄”与“创新论英雄”统一于“亩均论英雄”改革，成为快经企业济转型升级的一


acode: cn
scode: 4
title: 【设计模式】原来这就是原型模式
titlecolor: #333333
author: 软发
source: 本站
date: 2022-07-27 10:05:00
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: ruanfa
update_user: ruanfa
create_time: 2022-07-27 10:08:46
update_time: 2022-07-27 10:14:24
gtype: 4
gid: 0
content:
  &lt;section class=&quot;_editor&quot; style=&quot;margin-bottom: unset;&quot;&gt;&lt;br/&gt;&lt;section class=&quot;_sub_active&quot;&gt;&lt;h2 style=&quot;margin: 0px auto 2em; padding: 0px 0.2em; outline: 0px; font-size: 1.2em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; text-align: center; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; display: table; background: rgb(15, 76, 129); color: rgb(255, 255, 255); visibility: visible;&quot;&gt;原型模式介绍&lt;/h2&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63); visibility: visible;&quot;&gt;概述&lt;/h3&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;原型模式顾名思义，就是基于原型来创建对象，用人话说就是&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 1.4px; visibility: visible;&quot;&gt;一个对象的产生可以不由零起步，直接从一个已经具备一定雏形的对象克隆，然后再修改为所需要的对象。显而易见 ，&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 1.4px; visibility: visible;&quot;&gt;原型模式属于&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 1.4px; color: rgb(255, 41, 65); visibility: visible;&quot;&gt;创建型模式&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 1.4px; visibility: visible;&quot;&gt;，&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63); visibility: visible;&quot;&gt;使用场景&lt;/h3&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;如果对象的&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;visibility: visible;&quot;&gt;创建成本比较大&lt;/span&gt;，例如某个对象里面的数据需要访问数据库才能拿到；并且同一个类的不同对象之间差别不大（大部分字段都相同），这种场景下可以考虑使用原型模式达到提高程序性能的作用。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;我们可以通过一个业务场景来理解原型模式的应用，设计一个学生类，学生类主要的成员变量有名字name,班级classId, needExtraCourse,以及所学的课程 course，其中course需要通过rpc调用查询课程系统获取，这个耗时100ms。如果用&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;visibility: visible;&quot;&gt;普通的方式&lt;/span&gt;为该类创建同一个班的4个 对象，如下所示：&lt;/p&gt;&lt;span style=&quot;margin: 10px 8px; padding: 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(171, 178, 191); background: rgb(40, 44, 52); font-size: 14px; line-height: 1.5; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; overflow-x: auto; border-radius: 8px; visibility: visible;&quot;&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace; visibility: visible;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;visibility: visible;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;import&lt;/span&gt;&amp;nbsp;java.util.ArrayList;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;import&lt;/span&gt;&amp;nbsp;java.util.Date;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;import&lt;/span&gt;&amp;nbsp;java.util.List;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;visibility: visible;&quot;&gt;Student&lt;/span&gt;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;private&lt;/span&gt;&amp;nbsp;String&amp;nbsp;name;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;private&lt;/span&gt;&amp;nbsp;Integer&amp;nbsp;classId;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;visibility: visible;&quot;&gt;//是否需要额外多选课程&amp;nbsp;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;private&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;visibility: visible;&quot;&gt;Boolean&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;visibility: visible;&quot;&gt;needExtraCourse&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;visibility: visible;&quot;&gt;false&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;visibility: visible;&quot;&gt;//所学课程，需要通过rpc调用查询课程系统,耗时100ms&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;private&lt;/span&gt;&amp;nbsp;List&amp;lt;String&amp;gt;&amp;nbsp;course&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;visibility: visible;&quot;&gt;ArrayList&lt;/span&gt;&amp;lt;&amp;gt;();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #61aeee;visibility: visible;&quot;&gt;Student&lt;/span&gt;(String&amp;nbsp;name,&amp;nbsp;Integer&amp;nbsp;classId)&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;visibility: visible;&quot;&gt;throws&lt;/span&gt;&amp;nbsp;InterruptedException&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;visibility: visible;&quot;&gt;this&lt;/span&gt;.name&amp;nbsp;=&amp;nbsp;name;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;visibility: visible;&quot;&gt;this&lt;/span&gt;.classId&amp;nbsp;=&amp;nbsp;classId;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//超时模拟rpc调用获取课程信息初始化course&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Thread.sleep(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;100&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;course.add(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;语文&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;course.add(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;数学&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;course.add(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;英语&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//getter、setter、toString函数省略&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;PrototypeExample&lt;/span&gt;&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #61aeee;&quot;&gt;main&lt;/span&gt;(String[]&amp;nbsp;args)&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;throws&lt;/span&gt;&amp;nbsp;InterruptedException&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;long&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;start&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Date&lt;/span&gt;().getTime();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student1&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;张三&amp;quot;&lt;/span&gt;,&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student2&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;李四&amp;quot;&lt;/span&gt;,&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student3&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;王五&amp;quot;&lt;/span&gt;,&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student4&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;赵六&amp;quot;&lt;/span&gt;,&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;long&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;end&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Date&lt;/span&gt;().getTime();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;创建对象共花费了时间:&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;(end&amp;nbsp;-start)&amp;nbsp;+&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;&amp;nbsp;ms&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;******************【运行结果】******************&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;创建对象共花费了时间:&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;413&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;ms&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;只是创建了4个对象就花费了400多ms，这样成本也太大了，其实对于一个班级的学生，不考虑额外选修课程的情况下（needExtraCourse = false），所学的课程应该是完全一样的。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;因此可以用到今天介绍的&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;原型模式&lt;/span&gt;：&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;先用&lt;/span&gt;普通的方式创建一个对象，&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;然后&lt;/span&gt;从创建的对象中克隆出其它对象，&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;再修改&lt;/span&gt;其它对象的name字段即可。&lt;/p&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63);&quot;&gt;UML类图&lt;/h3&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 17px; letter-spacing: 0.544px; white-space: normal; background-color: rgb(255, 255, 255); text-align: center;&quot;&gt;&lt;img style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;border: 1px solid #eeedeb;vertical-align: bottom;box-sizing: border-box ;overflow-wrap: break-word ;background-color: #eeedeb ;background-size: 22px ;width: 545px ;height: auto ;background-position: center center ;background-repeat: no-repeat no-repeat ;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/ldJ288bl0qxHcy4msKPJGEzDssvE9M7DVw6Pk8vcLrswafg7E69v5cDEVkx3pvcibKBkswlV2Vy2kZwyrDic4B7w/640?wx_fmt=jpeg&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;UML 类图也比较简单，只有两个部分：&lt;/p&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: circle;&quot;&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;•&amp;nbsp;1.Cloneable接口&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;• 2.Student类，实现了Cloneable接口的原型对象，这个对象有个能力就是可以克隆自己。&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2 style=&quot;margin: 4em auto 2em; padding: 0px 0.2em; outline: 0px; font-size: 1.2em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; text-align: center; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; display: table; background: rgb(15, 76, 129); color: rgb(255, 255, 255);&quot;&gt;原型模式实现&lt;/h2&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;原型模式的实现方式有两种：&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;浅拷贝&lt;/span&gt;和&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;深拷贝&lt;/span&gt;。关于浅拷贝和深拷贝，可以阅读&lt;a target=&quot;_blank&quot; href=&quot;http://mp.weixin.qq.com/s?__biz=Mzg5NTEwNTk2MA==&amp;mid=2247484503&amp;idx=1&amp;sn=bd29d9dd7419b7bd6ef77a790b71706a&amp;chksm=c0142a90f763a386d8929ff191face7c6c56f5bbbfb1a95d5f202372db3d7578e26a68560dbf&amp;scene=21#wechat_redirect&quot; style=&quot;margin: 0px; padding: 0px; outline: 0px; color: rgb(87, 107, 149); text-decoration-line: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); cursor: pointer; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word;&quot;&gt;详解浅拷贝与深拷贝&lt;/a&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63);&quot;&gt;浅拷贝模式&lt;/h3&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;浅拷贝&lt;/span&gt;仅仅复制所考虑的对象，而&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;不复制它所引用的对象&lt;/span&gt;。Object类提供的方法clone只是拷贝本对象 ，&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff0000;&quot;&gt;其对象内部的数组、引用对象等都不拷贝&lt;/span&gt;，还是指向原生对象的内部元素地址，下面是浅拷贝原型模式实现的代码：&lt;/p&gt;&lt;span style=&quot;margin: 10px 8px; padding: 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(171, 178, 191); background: rgb(40, 44, 52); font-size: 14px; line-height: 1.5; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; overflow-x: auto; border-radius: 8px;&quot;&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//1原型类需实现Cloneable接口&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;implements&amp;nbsp;Cloneable&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//Student类的其余部分和上面例子一样&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;......................&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;Object&amp;nbsp;clone()&amp;nbsp;throws&amp;nbsp;CloneNotSupportedException&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;super.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;PrototypeExample&lt;/span&gt;&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #61aeee;&quot;&gt;main&lt;/span&gt;(String[]&amp;nbsp;args)&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;throws&lt;/span&gt;&amp;nbsp;InterruptedException,&amp;nbsp;CloneNotSupportedException&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;long&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;start&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Date&lt;/span&gt;().getTime();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student1&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;张三&amp;quot;&lt;/span&gt;,&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student2&lt;/span&gt;&amp;nbsp;=&amp;nbsp;(Student)&amp;nbsp;student1.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student2.setName(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;李四&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student3&lt;/span&gt;&amp;nbsp;=&amp;nbsp;(Student)&amp;nbsp;student1.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student3.setName(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;王五&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student4&lt;/span&gt;&amp;nbsp;=&amp;nbsp;(Student)&amp;nbsp;student1.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student4.setName(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;赵六&amp;nbsp;&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student1---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student1);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student2---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student2);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student3---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student3);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student4---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student4);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;long&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;end&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Date&lt;/span&gt;().getTime();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;创建对象共花费了时间:&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;(end&amp;nbsp;-start)&amp;nbsp;+&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;&amp;nbsp;ms&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//赵六选修了课程美术&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student4.setNeedExtraCourse(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;true&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student4.getCourse().add(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;美术&amp;nbsp;&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;
  赵六选修美术课后：&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student1---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student1);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student2---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student2);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student3---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student3);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student4---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student4);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;******************【运行结果】******************&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student1---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;张三&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student2---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;李四&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student3---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;王五&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student4---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;赵六&amp;nbsp;&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;创建对象共花费了时间:&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;130&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;ms&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;赵六选修美术课后：&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student1---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;张三&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语,&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;美术&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student2---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;李四&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语,&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;美术&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student3---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;王五&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语,&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;美术&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student4---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;赵六&amp;nbsp;&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;true&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语,&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff2941;&quot;&gt;美术&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;]}&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;可以看到，通过&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;原型模式&lt;/span&gt;的方式，同样是创建四个对象，&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;只花了100多ms&lt;/span&gt;，大大的提高了程序性能。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;但是这里还存在一个小问题：赵六比较好学，所以还选修了美术，但是通过程序的运行结果可以看到，明明只是赵六选修了美术，&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;但是&lt;/span&gt;其他三个同学的课表中也都出现了美术课 。这是因为浅拷贝虽然产生了两个完全不同的对象，但是对象中有对其他对象的引用（如这里的List）都指向同一个对象。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;为了解决这个问题，我们引入了&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;深拷贝模式&lt;/span&gt;。&lt;/p&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63);&quot;&gt;深拷贝模式&lt;/h3&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;深拷贝模式&lt;/span&gt;把要复制的对象&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;&quot;&gt;所引用的对象都拷贝了&lt;/span&gt;一遍&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.1em;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;span style=&quot;margin: 10px 8px; padding: 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(171, 178, 191); background: rgb(40, 44, 52); font-size: 14px; line-height: 1.5; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; overflow-x: auto; border-radius: 8px;&quot;&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;font-size: 12px;&quot;&gt;implements&amp;nbsp;Cloneable&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//Student类的其余部分和上面例子一样&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;......................&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #ff2941;font-size: 12px;&quot;&gt;&amp;nbsp;@Override&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;Object&amp;nbsp;clone()&amp;nbsp;throws&amp;nbsp;CloneNotSupportedException&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Object&amp;nbsp;object&amp;nbsp;=&amp;nbsp;super.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Student&amp;nbsp;student&amp;nbsp;=&amp;nbsp;(Student)object;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List&amp;lt;String&amp;gt;&amp;nbsp;newCourse&amp;nbsp;=&amp;nbsp;new&amp;nbsp;ArrayList&amp;lt;&amp;gt;();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Iterator&amp;lt;String&amp;gt;&amp;nbsp;&amp;nbsp;it&amp;nbsp;=&amp;nbsp;student.course.iterator();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while&amp;nbsp;(it.hasNext())&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;newCourse.add(it.next());&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student.course&amp;nbsp;&amp;nbsp;=&amp;nbsp;newCourse;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;object;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;PrototypeExample&lt;/span&gt;&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;void&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #61aeee;&quot;&gt;main&lt;/span&gt;(String[]&amp;nbsp;args)&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;throws&lt;/span&gt;&amp;nbsp;InterruptedException,&amp;nbsp;CloneNotSupportedException&amp;nbsp;{&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;long&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;start&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Date&lt;/span&gt;().getTime();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student1&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Student&lt;/span&gt;(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;张三&amp;quot;&lt;/span&gt;,&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student2&lt;/span&gt;&amp;nbsp;=&amp;nbsp;(Student)&amp;nbsp;student1.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student2.setName(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;李四&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student3&lt;/span&gt;&amp;nbsp;=&amp;nbsp;(Student)&amp;nbsp;student1.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student3.setName(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;王五&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;Student&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;student4&lt;/span&gt;&amp;nbsp;=&amp;nbsp;(Student)&amp;nbsp;student1.clone();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student4.setName(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;赵六&amp;nbsp;&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student1---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student1);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student2---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student2);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student3---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student3);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student4---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student4);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;long&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;end&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #c678dd;&quot;&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #e6c07b;&quot;&gt;Date&lt;/span&gt;().getTime();&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;创建对象共花费了时间:&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;(end&amp;nbsp;-start)&amp;nbsp;+&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;&amp;nbsp;ms&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #5c6370;font-style: italic;&quot;&gt;//赵六选修了课程美术&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student4.setNeedExtraCourse(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;true&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;student4.getCourse().add(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;美术&amp;nbsp;&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;
  赵六选修美术课后：&amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student1---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student1);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student2---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student2);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student3---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student3);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;quot;student4---&amp;gt;&amp;quot;&lt;/span&gt;&amp;nbsp;+&amp;nbsp;student4);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;******************【运行结果】******************&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student1---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;张三&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student2---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;李四&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student3---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;王五&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student4---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;赵六&amp;nbsp;&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;创建对象共花费了时间:&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff0000;&quot;&gt;135&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&amp;nbsp;ms&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;赵六选修美术课后：&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student1---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;张三&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student2---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;李四&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student3---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;王五&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;false&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语]}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;student4---&amp;gt;Student{name=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #98c379;&quot;&gt;&amp;#39;赵六&amp;nbsp;&amp;#39;&lt;/span&gt;,&amp;nbsp;classId=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #d19a66;&quot;&gt;1&lt;/span&gt;,&amp;nbsp;needExtraCourse=&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: #56b6c2;&quot;&gt;true&lt;/span&gt;,&amp;nbsp;course=[语文,&amp;nbsp;数学,&amp;nbsp;英语,&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: #ff0000;&quot;&gt;美术&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;]}&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;可&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.1em;&quot;&gt;以看到，&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.1em; color: rgb(255, 41, 65);&quot;&gt;深拷贝模式&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.1em;&quot;&gt;，修改一个对象的引用类型的成员&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.1em; color: rgb(255, 41, 65);&quot;&gt;不会再影响&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.1em;&quot;&gt;另外对象的该成员了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;本文源码地址：&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;https://github.com/qinlizhong1/javaStudy/tree/master/DesignPattern/src/prototype&lt;/span&gt;&lt;/p&gt;&lt;blockquote style=&quot;margin: 2em 8px; padding: 1em; outline: 0px; border-left: none; color: rgba(0, 0, 0, 0.5); font-size: 14px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-radius: 8px; background: rgb(247, 247, 247);&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; line-height: 1.75; font-size: 1em; letter-spacing: 0.1em; color: rgb(80, 80, 80);&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;本文示例代码环境：&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;操作系统：macOs 12.1&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;JDK版本：12.0.1&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;maven版本: 3.8.4&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); letter-spacing: 0.544px; white-space: normal; font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: center; background-color: rgb(255, 255, 255); line-height: 22.4px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 14.875px;line-height: 23.8px;&quot;&gt;—&amp;nbsp;&lt;strong style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;&gt;完&lt;/strong&gt;&amp;nbsp;—&lt;/span&gt;&lt;/p&gt;&lt;section style=&quot;margin: 0px; padding: 0px 10px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, &amp;quot;PingFang SC&amp;quot;, Cambria, Cochin, Georgia, Times, &amp;quot;Times New Roman&amp;quot;, serif; letter-spacing: 0.51px; word-spacing: 2px; background-color: rgb(255, 255, 255); line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.544px; color: rgb(53, 53, 53); font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(0, 0, 0); font-variant-numeric: normal; letter-spacing: 0.544px; text-align: center; line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.544px; color: rgb(89, 89, 89); text-align: left; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-variant-numeric: normal; letter-spacing: 0.544px; color: rgb(62, 62, 62); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; widows: 1; line-height: 23.8px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;&gt;&lt;section style=&quot;margin: 10px 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-align: center; line-height: 23.8px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; display: inline-block; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0.3em 0.5em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; display: inline-block; border-radius: 0.5em; color: rgb(255, 255, 255); background-color: rgb(249, 110, 87); line-height: 23.8px; font-size: 14px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;&gt;&lt;strong&gt;河北软发信息科技有限公司&lt;/strong&gt;&lt;/section&gt;&lt;/span&gt;&lt;/section&gt;&lt;section style=&quot;font-size: 14px; margin: -1em 0px 0px; padding: 20px 10px 10px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; border-width: 1px; border-style: solid; border-color: rgb(192, 200, 209); background-color: rgb(239, 239, 239); line-height: 23.8px;&quot;&gt;&lt;section class=&quot;mp_profile_qqmusic_wrp&quot; style=&quot;margin: 16px auto; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-size: 0px;&quot;&gt;&lt;div class=&quot;appmsg_card_context wx_profile_card js_wx_profile_card js_wx_tap_highlight wx_tap_card&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;br/&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;strong&gt;非科班大厂码农&lt;/strong&gt;&lt;div&gt;混迹于BAT的非科班程序员，以java为载体，介绍数据库、缓存、搜索引擎、设计模式、架构等技术栈，让我们从小白走向架构师~&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;公众号&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; white-space: normal; background-color: rgb(255, 255, 255); line-height: 22.4px; box-sizing: border-box; overflow-wrap: break-word;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 22.4px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 22.4px;&quot;&gt;&lt;section style=&quot;text-align: center; widows: 1; margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 22.4px;&quot;&gt;&lt;span style=&quot;color:#007aaa;font-family:微软雅黑&quot;&gt;&lt;span style=&quot;font-size: 12px; letter-spacing: 0.54px; word-spacing: 1px; caret-color: rgb(51, 51, 51);&quot;&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  原型模式介绍概述原型模式顾名思义，就是基于原型来创建对象，用人话说就是一个对象的产生可以不由零起步，直接从一个已经具备一定雏形的对象克隆，然后再修改为所需要的对象。显而易见 ，原型模式属于创建型模式，使用场景如果对象的创建成本比较大，例如某个对象里面的数据需要访问数据库才能拿到；并且同一个类的不同对象


acode: cn
scode: 4
title: 【底层原理】一层层剥开Linux文件系统的面纱
titlecolor: #333333
author: 软发
source: 本站
date: 2022-07-27 10:14:26
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: ruanfa
update_user: ruanfa
create_time: 2022-07-27 10:15:33
update_time: 2022-07-27 10:16:34
gtype: 4
gid: 0
content:
  &lt;section class=&quot;_editor&quot; style=&quot;margin-bottom: unset;&quot;&gt;&lt;br/&gt;&lt;section&gt;&lt;h2 style=&quot;margin: 0px auto 2em; padding: 0px 0.2em; outline: 0px; font-size: 1.2em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; text-align: center; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; display: table; background: rgb(15, 76, 129); color: rgb(255, 255, 255); visibility: visible;&quot;&gt;文件系统&lt;/h2&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63); visibility: visible;&quot;&gt;概述&lt;/h3&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;提到文件系统，Linux的老江湖们对这个概念当然不会陌生，然而刚接触Linux的新手们就会被文件系统这个概念弄得晕头转向，恰好我当年正好属于后者。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;从&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;windows&lt;/span&gt;下转到Linux的童鞋听到最多的应该是&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;fat32&lt;/span&gt;和&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;ntfs&lt;/span&gt;(在windows 2000之后所出现的一种新型的日志文件系统)，那个年代经常听到说“我要把C盘格式化成ntfs格式，D盘格式化成fat32格式”。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;一到Linux下，很多入门Linux的书籍中当牵扯到文件系统这个术语时，二话不说，不管三七二十一就给出了下面这个图，然后逐一解释一下每个目录是拿来干啥的、里面会放什么类型的文件就完事儿了，弄得初学者经常“丈二和尚摸不着头脑”。&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 17px; letter-spacing: 0.544px; white-space: normal; background-color: rgb(255, 255, 255); text-align: center; visibility: visible;&quot;&gt;&lt;img style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;vertical-align: bottom;box-sizing: border-box ;overflow-wrap: break-word ;visibility: visible ;width: 677px ;height: auto ;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/ldJ288bl0qxdFU72sqMMZMv1K3KK9zDRLLX3lgq7clAODgWI3nNjezYEnhwICAbIVNnAqmZkxJ828COFMTq8yA/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;本文的目的就是和大家分享一下我当初是如何学习Linux的文件系统的，也算是一个“老”油条的一些心得吧。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;“&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;文件系统&lt;/span&gt;”的主语是“文件”，那么文件系统的意思就是“用于&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;管理文件的&lt;/span&gt;(管理)&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;系统&lt;/span&gt;”，在大多数操作系统教材里，“&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;文件是数据的集合&lt;/span&gt;”这个基本点是一致的，而这些数据最终都是存储在存储介质里，如硬盘、光盘、U盘等。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;另一方面，用户在管理数据时也是文件为基本单位，他们所&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;关心的问题&lt;/span&gt;是：&lt;/p&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: circle;&quot;&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; visibility: visible;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;visibility: visible;&quot;&gt;• 1.我的文件在什么地方放着？&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; visibility: visible;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;visibility: visible;&quot;&gt;• 2.我如何将数据存入某个文件？&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; visibility: visible;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;visibility: visible;&quot;&gt;• 3.如何从文件里将数据读出来？&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; visibility: visible;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;visibility: visible;&quot;&gt;• 4.不再需要的文件怎么将其删除？&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;简而言之，&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;文件系统&lt;/span&gt;就是一套用于定义文件的命名和组织数据的规范，其&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);visibility: visible;&quot;&gt;根本目的是便对文件进行查询和存取。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;margin: 2em 8px 0.75em 0px; padding: 0px 0px 0px 8px; outline: 0px; font-size: 1.1em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255); line-height: 1.2; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; border-left: 3px solid rgb(15, 76, 129); color: rgb(63, 63, 63); visibility: visible;&quot;&gt;虚拟文件系统VFS&lt;/h3&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63); visibility: visible;&quot;&gt;在Linux早期设计阶段，文件系统与内核代码是整合在一起的，这样做的缺点是显而易见的。假如，我的系统只能识别ext3格式的文件系统，我的U盘是fat32格式，那么很不幸的是我的U盘将不会被我的系统所识别，&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;为了支持不同种类的文件系统，Linux采用了在Unix系统中已经广泛采用的设计思想，通过&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;虚拟文件系统VFS&lt;/span&gt;来&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;屏蔽&lt;/span&gt;下层各种&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;不同类型文件系统的实现细节和差异。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;其实VFS最早是由Sun公司提出的，其基本思想是将各种文件系统的公共部分抽取出来，形成一个抽象层。对用户的应用程序而言，VFS提供了文件系统的系统调用接口。而对具体的文件系统来说，VFS通过一系列统一的外部接口屏蔽了实现细节，使得对文件的操作不再关心下层文件系统的类型，更不用关心具体的存储介质，这一切都是透明的。&lt;/p&gt;&lt;h2 style=&quot;margin: 4em auto 2em; padding: 0px 0.2em; outline: 0px; font-size: 1.2em; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; text-align: center; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; display: table; background: rgb(15, 76, 129); color: rgb(255, 255, 255);&quot;&gt;ext2文件系统&lt;/h2&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;虚拟文件系统VFS是对各种文件系统的一个抽象层，抽取其共性，以便对外提供统一管理接口，便于内核对不同种类的文件系统进行管理。那么首先我们得看一下对于一个具体的文件系统，我们该关注重点在哪里。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;对于存储设备(以硬盘为例)上的数据，可分为两部分：&lt;/p&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: circle;&quot;&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;•&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: rgb(255, 41, 65);&quot;&gt;用户数据&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;：存储用户实际数据的部分；&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;•&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: rgb(255, 41, 65);&quot;&gt;管理数据&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;：用于管理这些数据的部分，这部分我们通常叫它元数据(metadata)。&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;我们&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;今天要讨论的&lt;/span&gt;就是这些&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;元数据&lt;/span&gt;。这里有个概念首先需要明确一下：&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;块设备&lt;/span&gt;。所谓块设备就是&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;以块为基本读写单位&lt;/span&gt;的设备，&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;支持缓冲和随机访问&lt;/span&gt;。每个文件系统提供的mk2fs.xx工具都支持在构建文件系统时由用户指定块大小，当然用户不指定时会有一个缺省值。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;我们知道一般硬盘的每个扇区512字节，而多个相邻的若干扇区就构成了一个&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;簇&lt;/span&gt;，从文件系统的角度看这个簇对应的就是我们这里所说块。用户从上层下发的数据首先被缓存在块设备的缓存里，当写满一个块时数据才会被发给硬盘驱动程序将数据最终写到存储介质上。如果想将设备缓存中数据立即写到存储介质上可以通过sync命令来完成。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;块越大存储性能越好，但浪费比较严重；块越小空间利用率较高，但性能相对较低。如果你不是专业的“骨灰级”玩儿家，在存储设备上构建文件系统时，块大小就用默认值。通过命令“tune2fs -l /dev/sda1”可以查看该存储设备上文件系统所使用的块大小：&lt;/p&gt;&lt;span style=&quot;margin: 10px 8px; padding: 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(171, 178, 191); background: rgb(40, 44, 52); font-size: 14px; line-height: 1.5; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; overflow-x: auto; border-radius: 8px;&quot;&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;[root&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;@localhost&lt;/span&gt;&amp;nbsp;~]#&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: rgb(255, 41, 65);&quot;&gt;tune2fs&amp;nbsp;-l&amp;nbsp;/dev/sda1&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;tune2fs&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1.39&lt;/span&gt;&amp;nbsp;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;29&lt;/span&gt;-May-&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2006&lt;/span&gt;)&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;volume&amp;nbsp;name:&amp;nbsp;/boot&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Last&amp;nbsp;mounted&amp;nbsp;on:&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;UUID:&amp;nbsp;6ade5e49-ddab-4bf1-9a45-a0a742995775&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;magic&amp;nbsp;number:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0xEF53&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;revision&amp;nbsp;#:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;&amp;nbsp;(dynamic)&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;features:&amp;nbsp;has_journal&amp;nbsp;ext_attr&amp;nbsp;resize_inode&amp;nbsp;dir_index&amp;nbsp;filetype&amp;nbsp;needs_recovery&amp;nbsp;sparse_super&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Default&amp;nbsp;mount&amp;nbsp;options:&amp;nbsp;user_xattr&amp;nbsp;acl&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;state:&amp;nbsp;clean&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Errors&amp;nbsp;behavior:&amp;nbsp;Continue&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;OS&amp;nbsp;type:&amp;nbsp;Linux&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Inode&amp;nbsp;count:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;38152&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Block&amp;nbsp;count:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;152584&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Reserved&amp;nbsp;block&amp;nbsp;count:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;7629&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Free&amp;nbsp;blocks:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;130852&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Free&amp;nbsp;inodes:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;38111&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;First&amp;nbsp;block:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Block&amp;nbsp;size:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Fragment&amp;nbsp;size:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Reserved&amp;nbsp;GDT&amp;nbsp;blocks:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;256&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Blocks&amp;nbsp;per&amp;nbsp;group:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;8192&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Fragments&amp;nbsp;per&amp;nbsp;group:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;8192&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Inodes&amp;nbsp;per&amp;nbsp;group:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2008&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Inode&amp;nbsp;blocks&amp;nbsp;per&amp;nbsp;group:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;251&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Filesystem&amp;nbsp;created:&amp;nbsp;Thu&amp;nbsp;Dec&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;13&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;00&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;42&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;52&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2012&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Last&amp;nbsp;mount&amp;nbsp;time:&amp;nbsp;Tue&amp;nbsp;Nov&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;20&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;10&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;35&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;28&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2012&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Last&amp;nbsp;write&amp;nbsp;time:&amp;nbsp;Tue&amp;nbsp;Nov&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;20&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;10&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;35&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;28&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2012&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Mount&amp;nbsp;count:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;12&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Maximum&amp;nbsp;mount&amp;nbsp;count:&amp;nbsp;-&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Last&amp;nbsp;checked:&amp;nbsp;Thu&amp;nbsp;Dec&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;13&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;00&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;42&lt;/span&gt;:&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;52&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2012&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Check&amp;nbsp;interval:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;&amp;nbsp;()&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Reserved&amp;nbsp;blocks&amp;nbsp;uid:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;&amp;nbsp;(user&amp;nbsp;root)&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Reserved&amp;nbsp;blocks&amp;nbsp;gid:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;&amp;nbsp;(group&amp;nbsp;root)&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;First&amp;nbsp;inode:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;11&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Inode&amp;nbsp;size:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;128&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Journal&amp;nbsp;inode:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;8&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Default&amp;nbsp;directory&amp;nbsp;hash:&amp;nbsp;tea&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Directory&amp;nbsp;Hash&amp;nbsp;Seed:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;72070587&lt;/span&gt;-1b60-42de-bd8b-a7b7eb7cbe63&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Journal&amp;nbsp;backup:&amp;nbsp;inode&amp;nbsp;blocks&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;该命令已经暴露了文件系统的很多信息，接下我们将详细分析它们。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;下图是我的虚拟机的情况，三块IDE的硬盘。容量分别是：&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;color: rgb(255, 76, 0);&quot;&gt;hda: 37580963840/(1024&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-style: italic;&quot;&gt;1024&lt;/span&gt;1024)=35GB&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;hdb: 8589934592/(1024&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-style: italic;&quot;&gt;1024&lt;/span&gt;1024)=8GB&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;hdd: 8589934592/(1024&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-style: italic;&quot;&gt;1024&lt;/span&gt;1024)=8GB&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 17px; letter-spacing: 0.544px; white-space: normal; background-color: rgb(255, 255, 255); text-align: center;&quot;&gt;&lt;img style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;vertical-align: bottom;box-sizing: border-box ;overflow-wrap: break-word ;width: 565px ;visibility: visible ;height: auto ;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/ldJ288bl0qxdFU72sqMMZMv1K3KK9zDROj76UL2g4B5ktTc4rZkntlr1n2O4iacWZlxKBct2EARKIpm7nECov1A/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;如果这是三块实际的物理硬盘的话，厂家所标称的容量就分别是37.5GB、8.5GB和8.5GB。可能有些童鞋觉得虚拟机有点“假”，那么我就来看看实际硬盘到底是个啥样子。&lt;/p&gt;&lt;section class=&quot;_editor&quot; style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-align: justify; white-space: normal; letter-spacing: 0.476px; text-size-adjust: auto; color: rgb(62, 62, 62); font-size: 14px; background-color: rgb(255, 255, 255); line-height: 24.8889px; font-family: 微软雅黑; border-width: 0px; border-style: none; border-color: initial;&quot;&gt;&lt;section style=&quot;margin: 2px auto;padding: 15px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word ;font-size: 12.25px;line-height: 21.875px;border-width: 2px;border-style: dashed;border-color: rgb(222, 220, 222);&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; line-height: 21.875px;&quot;&gt;&lt;strong style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 21.875px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;color: rgb(255, 41, 65);line-height: 21.875px;&quot;&gt;主角1&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;color: rgb(0, 0, 0);line-height: 21.875px;&quot;&gt;：西部数据 500G SATA接口 CentOS 5.5&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; line-height: 21.875px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;color: rgb(0, 0, 0);background-color: rgb(214, 214, 214);line-height: 21.875px;&quot;&gt;&amp;nbsp;实际容量：500107862016B = 465.7GB&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: center;&quot;&gt;&lt;img style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;vertical-align: bottom;box-sizing: border-box ;overflow-wrap: break-word ;width: 537px ;visibility: visible ;height: auto ;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/ldJ288bl0qxdFU72sqMMZMv1K3KK9zDRVnq2axB29B9V6PGdh7ybpzrAoXMjoxV2q1ebuQpqy6o9ibNmKTNWh2A/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); letter-spacing: 0.476px; text-size-adjust: auto; font-size: 14px; color: rgb(62, 62, 62); line-height: 22.4px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);font-family: 微软雅黑;font-size: 17.5px;line-height: 28px;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class=&quot;_editor&quot; style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-align: justify; white-space: normal; letter-spacing: 0.476px; text-size-adjust: auto; font-size: 14px; color: rgb(62, 62, 62); background-color: rgb(255, 255, 255); line-height: 24.8889px; font-family: 微软雅黑; border-width: 0px; border-style: none; border-color: initial;&quot;&gt;&lt;section style=&quot;margin: 2px auto;padding: 15px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word ;font-size: 12.25px;line-height: 21.875px;border-width: 2px;border-style: dashed;border-color: rgb(222, 220, 222);&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; line-height: 21.875px;&quot;&gt;&lt;strong style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 21.875px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;color: rgb(255, 41, 65);line-height: 21.875px;&quot;&gt;主角2&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;color: rgb(0, 0, 0);line-height: 21.875px;&quot;&gt;：希捷 160G &amp;nbsp;SCSI接口 CentOS 5.5&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; line-height: 21.875px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;color: rgb(0, 0, 0);background-color: rgb(214, 214, 214);line-height: 21.875px;&quot;&gt;实际容量：160041885696B=149GB&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: center;&quot;&gt;&lt;img style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;border: 1px solid rgb(238, 237, 235);vertical-align: bottom;box-sizing: border-box ;overflow-wrap: break-word ;background-color: rgb(238, 237, 235) ;background-size: 22px ;width: 547px ;height: auto ;background-position: center center ;background-repeat: no-repeat no-repeat ;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/ldJ288bl0qxdFU72sqMMZMv1K3KK9zDRWAEOoW3RicEvpuoDNLziav5khIFYlYc2qmBTpc4bJsaF5RPqgaQic4bWw/640?wx_fmt=jpeg&quot;/&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;大家可以看到，VMware公司的水平还是相当不错的，虚拟硬盘和物理硬盘“根本”看不出差别，毕竟属于云平台基础架构支撑者的风云人物嘛。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;以硬盘/dev/hdd1&lt;/span&gt;为例，它是我新增的一块新盘，格式化成ext2后，根目录下只有一个lost+found目录，让我们来看一下它的布局情况，以此来开始我们的文件系统之旅。&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; border: 1px solid rgb(238, 237, 235); vertical-align: bottom; line-height: 25.2px; box-sizing: border-box; overflow-wrap: break-word; background-color: rgb(238, 237, 235); background-size: 22px; visibility: visible; width: 566px; height: auto; background-position: center center; background-repeat: no-repeat;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1Lkzibg9D4fRh1dhHDRVqGBBqKH88UH7RjLGYJUw3wXia0jdORLN3WPEQ/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 20px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;对于使用了&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;color: rgb(255, 41, 65);&quot;&gt;ext2文件系统&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;的分区来说，有一个叫&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(255, 41, 65); font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 1.4px;&quot;&gt;superblock&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(63, 63, 63); letter-spacing: 1.4px;&quot;&gt;的结构&amp;nbsp;&lt;/span&gt;&lt;/span&gt;，&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;color: rgb(255, 41, 65);&quot;&gt;superblock的大小为1024字节&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;，其实ext3的superblock也是1024字节。下面的小程序可以证明这一点&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;：&lt;/span&gt;&lt;/p&gt;&lt;span style=&quot;margin: 10px 8px; padding: 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(171, 178, 191); background: rgb(40, 44, 52); font-size: 14px; line-height: 1.5; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; overflow-x: auto; border-radius: 8px;&quot;&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;stdio.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;linux/ext2_fs.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;linux/ext3_fs.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;main&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;int&lt;/span&gt;&amp;nbsp;argc,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;char&lt;/span&gt;**&amp;nbsp;argv){&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;sizeof&amp;nbsp;of&amp;nbsp;ext2&amp;nbsp;superblock=%d
  &amp;quot;&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;sizeof&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;struct&lt;/span&gt;&amp;nbsp;ext2_super_block));&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;sizeof&amp;nbsp;of&amp;nbsp;ext3&amp;nbsp;superblock=%d
  &amp;quot;&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;sizeof&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;struct&lt;/span&gt;&amp;nbsp;ext3_super_block));&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;******************【运行结果】******************&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;sizeof&lt;/span&gt;&amp;nbsp;of&amp;nbsp;ext2&amp;nbsp;superblock=&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;sizeof&lt;/span&gt;&amp;nbsp;of&amp;nbsp;ext3&amp;nbsp;superblock=&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;硬&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14.875px; letter-spacing: 0.476px; caret-color: rgb(34, 34, 34);&quot;&gt;盘的第一个字节是从0开始编号，所以第一个字节是byte0，以此类推。/dev/hdd1分区头部的1024个字节(从byte0~byte1023)都用0填充，因为/dev/hdd1不是主引导盘。superblock是从byte1024开始，占1024B存储空间。我们用&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14.875px; letter-spacing: 0.476px; caret-color: rgb(34, 34, 34); color: rgb(255, 41, 65);&quot;&gt;dd命令把superblock的信息提取出来&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14.875px; letter-spacing: 0.476px; caret-color: rgb(34, 34, 34);&quot;&gt;：&lt;/span&gt;&lt;/p&gt;&lt;span style=&quot;margin: 0px 0px 10.5px; padding: 10px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-align: justify; letter-spacing: 0.476px; text-size-adjust: auto; overflow: auto; font-size: 11.375px; line-height: 17.0625px; word-break: break-all; color: rgb(51, 51, 51); background-color: whitesmoke; border-width: 1px; border-style: solid; border-color: rgb(204, 204, 204); border-radius: 2px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 10.5px;line-height: 15.75px;&quot;&gt;dd &lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(0, 128, 0); font-weight: bold; line-height: 15.75px;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); line-height: 15.75px;&quot;&gt;=/&lt;/span&gt;dev&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); line-height: 15.75px;&quot;&gt;/&lt;/span&gt;hdd1 of&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); line-height: 15.75px;&quot;&gt;=./&lt;/span&gt;hdd1sb bs&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); line-height: 15.75px;&quot;&gt;=1024&lt;/span&gt; skip&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); line-height: 15.75px;&quot;&gt;=1&lt;/span&gt; count&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); line-height: 15.75px;&quot;&gt;=1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p style=&quot;margin-top: 20px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;上述命令将从/dev/hdd1分区的byte1024处开始，提取1024个字节的数据存储到当前目录下的hdd1sb文件里，该文件里就存储了我们superblock的所有信息，&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 1.4px;&quot;&gt;上面的程序稍加改造，我们就可以以更直观的方式看到superblock的输出了&lt;/span&gt;如下：&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style=&quot;margin: 10px 8px; padding: 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(171, 178, 191); background: rgb(40, 44, 52); font-size: 14px; line-height: 1.5; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; overflow-x: auto; border-radius: 8px;&quot;&gt;&lt;code style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 1.75; font-family: Menlo, &amp;quot;Operator Mono&amp;quot;, Consolas, Monaco, monospace;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;stdio.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;sys/types.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;sys/stat.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;fcntl.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;unistd.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;string.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;linux/ext2_fs.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;#&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(198, 120, 221);&quot;&gt;include&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(152, 195, 121);&quot;&gt;&amp;lt;linux/ext3_fs.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;int&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(97, 174, 238);&quot;&gt;main&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;int&lt;/span&gt;&amp;nbsp;argc,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;char&lt;/span&gt;**&amp;nbsp;argv){&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;sizeof&amp;nbsp;of&amp;nbsp;ext2&amp;nbsp;superblock=%d
  &amp;quot;&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;sizeof&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;struct&lt;/span&gt;&amp;nbsp;ext2_super_block));&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;sizeof&amp;nbsp;of&amp;nbsp;ext3&amp;nbsp;superblock=%d
  &amp;quot;&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;sizeof&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;struct&lt;/span&gt;&amp;nbsp;ext3_super_block));&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;char&lt;/span&gt;&amp;nbsp;buf[&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;]&amp;nbsp;=&amp;nbsp;{&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;};&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;int&lt;/span&gt;&amp;nbsp;fd&amp;nbsp;=&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;-1&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;struct&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;ext2_super_block&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;hdd1sb&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;memset&lt;/span&gt;(&amp;amp;hdd1sb,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;if&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;-1&lt;/span&gt;&amp;nbsp;==&amp;nbsp;(fd=open(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;./hdd1sb&amp;quot;&lt;/span&gt;,O_RDONLY,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0777&lt;/span&gt;))){&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;open&amp;nbsp;file&amp;nbsp;error!
  &amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;if&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;-1&lt;/span&gt;&amp;nbsp;==&amp;nbsp;read(fd,buf,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;)){&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;read&amp;nbsp;error!
  &amp;quot;&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;close(fd);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;memcpy&lt;/span&gt;((&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;char&lt;/span&gt;*)&amp;amp;hdd1sb,buf,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1024&lt;/span&gt;);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;inode&amp;nbsp;count&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_inodes_count);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;block&amp;nbsp;count&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_blocks_count);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Reserved&amp;nbsp;blocks&amp;nbsp;count&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_r_blocks_count);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Free&amp;nbsp;blocks&amp;nbsp;count&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_free_blocks_count);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Free&amp;nbsp;inodes&amp;nbsp;count&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_free_inodes_count);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;First&amp;nbsp;Data&amp;nbsp;Block&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_first_data_block);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Block&amp;nbsp;size&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;&amp;lt;&amp;lt;(hdd1sb.s_log_block_size+&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;10&lt;/span&gt;));&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Fragment&amp;nbsp;size&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1&lt;/span&gt;&amp;lt;&amp;lt;(hdd1sb.s_log_frag_size+&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;10&lt;/span&gt;));&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Blocks&amp;nbsp;per&amp;nbsp;group&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_blocks_per_group);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Fragments&amp;nbsp;per&amp;nbsp;group&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_frags_per_group);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Inodes&amp;nbsp;per&amp;nbsp;group&amp;nbsp;:&amp;nbsp;%ld
  &amp;quot;&lt;/span&gt;,hdd1sb.s_inodes_per_group);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;Magic&amp;nbsp;signature&amp;nbsp;:&amp;nbsp;0x%x
  &amp;quot;&lt;/span&gt;,hdd1sb.s_magic);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(230, 192, 123);&quot;&gt;printf&lt;/span&gt;(&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(152, 195, 121);&quot;&gt;&amp;quot;size&amp;nbsp;of&amp;nbsp;inode&amp;nbsp;structure&amp;nbsp;:&amp;nbsp;%d
  &amp;quot;&lt;/span&gt;,hdd1sb.s_inode_size);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;close(fd);&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(198, 120, 221);&quot;&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;}&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;******************【运行结果】******************&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;inode&amp;nbsp;count&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1048576&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;block&amp;nbsp;count&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2097065&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Reserved&amp;nbsp;blocks&amp;nbsp;count&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;104853&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Free&amp;nbsp;blocks&amp;nbsp;count&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;2059546&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Free&amp;nbsp;inodes&amp;nbsp;count&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;1048565&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;First&amp;nbsp;Data&amp;nbsp;Block&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Block&amp;nbsp;size&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;4096&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Fragment&amp;nbsp;size&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;4096&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Blocks&amp;nbsp;per&amp;nbsp;group&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;32768&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Fragments&amp;nbsp;per&amp;nbsp;group&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;32768&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Inodes&amp;nbsp;per&amp;nbsp;group&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;16384&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;Magic&amp;nbsp;signature&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;0xef53&lt;/span&gt;&lt;br style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;&quot;/&gt;size&amp;nbsp;of&amp;nbsp;inode&amp;nbsp;structure&amp;nbsp;:&amp;nbsp;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(209, 154, 102);&quot;&gt;128&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); letter-spacing: normal; text-align: left; font-family: Arial;&quot;&gt;可以看出，&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: normal; text-align: left; font-family: Arial; color: rgb(255, 41, 65);&quot;&gt;superblock&amp;nbsp;的作用&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); letter-spacing: normal; text-align: left; font-family: Arial;&quot;&gt;就是记录文件系统的类型、block大小、block总数、inode大小、inode总数、group的总数等信息。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;对于&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;ext2/ext3&lt;/span&gt;文件系统来说数字签名&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;Magic signature都是0xef53&lt;/span&gt;，如果不是那么它一定不是ext2/ext3文件系统。这里我们可以看到，我们的/dev/hdd1确实是ext2文件系统类型。&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;background-color: rgb(255, 127, 170);&quot;&gt;hdd1&lt;/span&gt;中一共包含1048576个inode节点(&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;inode编号从1开始&lt;/span&gt;)，每个&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;inode节点&lt;/span&gt;大小为&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;128字节&lt;/span&gt;，所有inode消耗的存储空间是1048576×128=128MB；总共&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;包含2097065个bloc&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;k&lt;/span&gt;，每个&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;block大小为4096&lt;/span&gt;字节，每32768个block组成一个&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;group&lt;/span&gt;，所以一共有2097065/32768=63.99，即&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(255, 41, 65);&quot;&gt;64个group&lt;/span&gt;(group编号从0开始，即Group0～Group63)。所以整个/dev/hdd1被划分成了64个group，详情如下：&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; text-indent: 21pt; line-height: 25.2px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; vertical-align: bottom; line-height: 25.2px; box-sizing: border-box; overflow-wrap: break-word; visibility: visible; width: 677px; height: auto;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1PoN5OibIylwwEvjoAEFUvY0V3mGvCu1qQWAgzvvxwx1Zb7ReF0azpGw/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-family: Arial; text-indent: 21pt; font-size: 12.25px; color: rgb(0, 0, 0); line-height: 19.6px;&quot;&gt;用命令tune2fs可以验证我们之前的分析：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; border: 1px solid rgb(238, 237, 235); vertical-align: bottom; line-height: 25.2px; box-sizing: border-box; overflow-wrap: break-word; background-color: rgb(238, 237, 235); background-size: 22px; visibility: visible; width: 677px; height: auto; background-position: center center; background-repeat: no-repeat;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1dWhkEpb9VEdZ2PUQsn0jSsyDHqCGrQUrDVICImyPicqoV5130piba2zQ/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 20px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; font-family: Arial; font-size: 12.25px; color: rgb(0, 0, 0); line-height: 19.6px;&quot;&gt;再通过命令dumpe2fs /dev/hdd1的输出，可以得到我们关注如下部分：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; border: 1px solid rgb(238, 237, 235); vertical-align: bottom; line-height: 25.2px; box-sizing: border-box; overflow-wrap: break-word; background-color: rgb(238, 237, 235); background-size: 22px; visibility: visible; width: 677px; height: auto; background-position: center center; background-repeat: no-repeat;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1RSe1iaUESKtNf3uzjmXJxpdS4nW1cbxsz5qgo0MST0abl0E59zeXZ9w/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 20px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(63, 63, 63); font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14px; letter-spacing: 1.4px; text-align: left;&quot;&gt;接下来以&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14px; letter-spacing: 1.4px; text-align: left; color: rgb(255, 41, 65);&quot;&gt;Group0&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(63, 63, 63); font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14px; letter-spacing: 1.4px; text-align: left;&quot;&gt;为例，&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14px; letter-spacing: 1.4px; text-align: left; color: rgb(255, 41, 65);&quot;&gt;主superblock&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(63, 63, 63); font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14px; letter-spacing: 1.4px; text-align: left;&quot;&gt;在Group0的block0里，根据前面的分析，我们可以画出主superblock在block0中的位置如下：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; border: 1px solid rgb(238, 237, 235); vertical-align: bottom; line-height: 25.2px; box-sizing: border-box; overflow-wrap: break-word; background-color: rgb(238, 237, 235); background-size: 22px; visibility: visible; width: 677px; height: auto; background-position: center center; background-repeat: no-repeat;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_jpg/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1AVRvKkDibAzSg6zRHWrSbud9Gu8ws3GaPRe8DdncGWvV6ydJLrBicPgw/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;因为&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;color: rgb(255, 41, 65);&quot;&gt;superblock&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;是如此之重要，一旦它出错你的整个系统就玩儿完了，所以文件系统中会存在磁盘的&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;color: rgb(255, 41, 65);&quot;&gt;多个不同位置会存在主superblock的备份副&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;本，一旦系统出问题后还可以通过备份的superblock对文件系统进行修复。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;第一版ext2文件系统的实现里，每个Group里都存在一份superblock的副本，然而这样做的负面效果也是相当明显，那就是严重降低了磁盘的空间利用率。所以在&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;color: rgb(255, 41, 65);&quot;&gt;后续ext2的实现代码&lt;/span&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(63, 63, 63);font-family: -apple-system-font, BlinkMacSystemFont, &amp;#39;Helvetica Neue&amp;#39;, &amp;#39;PingFang SC&amp;#39;, &amp;#39;Hiragino Sans GB&amp;#39;, &amp;#39;Microsoft YaHei UI&amp;#39;, &amp;#39;Microsoft YaHei&amp;#39;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;text-align: left;&quot;&gt;中，选择用于备份superblock的Group组号的原则是3的N次方、5的N次方、7的N次方其中N=0,1,2,3…。根据这个公式我们来计算一下/dev/hdd1中备份有supeblock的Group号：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; border: 1px solid rgb(238, 237, 235); vertical-align: bottom; line-height: 23.8px; box-sizing: border-box; overflow-wrap: break-word; background-color: rgb(238, 237, 235); background-size: 22px; visibility: visible; width: 189px; height: auto; background-position: center center; background-repeat: no-repeat;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_png/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1mQesUGNf0XLEr7BmOjYbI8UAzwXf4tXVu43chIWsDLMgKGoNLWtQhQ/640?wx_fmt=png&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 15px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;color: rgb(0, 0, 0);line-height: 19.6px;font-size: 14px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(63, 63, 63); font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 1.4px; text-align: left;&quot;&gt;也就是说Group1、3、5、7、9、25、27、49里都保存有superblock的拷贝，如下：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; vertical-align: bottom; line-height: 23.8px; box-sizing: border-box; overflow-wrap: break-word; visibility: visible; width: 493px; height: auto;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_png/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1ic8cCibbSOvWZr5PMJ51XKQP4PByDrjhKJXdcfUVTOYCgQ5eDM1lrujw/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 20px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 12.25px;color: rgb(0, 0, 0);line-height: 19.6px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(63, 63, 63); font-family: -apple-system-font, system-ui, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 14px; letter-spacing: 1.4px; text-align: left;&quot;&gt;用block号分别除以32768就得到了备份superblock的Group号，和我们在上面看到的结果一致。我们来看一下/dev/hdd1中Group和block的关系：&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;/span&gt;&lt;br style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-indent: 21pt; color: rgb(102, 102, 102); font-family: Arial; font-size: 15.75px; line-height: 25.2px;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0em; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); caret-color: rgb(34, 34, 34); font-size: 14.875px; letter-spacing: 0.476px; text-size-adjust: auto; text-align: center; line-height: 23.8px;&quot;&gt;&lt;img style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; vertical-align: bottom; line-height: 23.8px; box-sizing: border-box; overflow-wrap: break-word; visibility: visible; width: 583px; height: auto;&quot; src=&quot;https://mmbiz.qpic.cn/mmbiz_png/FWANMMXDrgLXmIKdfoONZ6plWiazMRrc1qKzh5wVOChceD6sgTUvhaxE8w12THPxePic3DWdS81F1gjl40vRY9Gg/640?wx_fmt=jpeg&amp;wxfrom=5&amp;wx_lazy=1&amp;wx_co=1&quot;/&gt;&lt;span style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(0, 0, 0); font-size: 12.25px; letter-spacing: 0.476px; text-align: justify;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;从上图中我们可以清晰地看出在使用了ext2文件系统的分区上，包含有主superblock的Group、备份superblock的Group以及没有备份superblock的Group的布局情况。存储了superblock的Group中有一个组描述符(Group descriptors)紧跟在superblock所在的block后面，占一个block大小；同时还有个Reserved GDT跟在组描述符的后面。&lt;/p&gt;&lt;p style=&quot;margin: 1.5em 8px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; text-align: justify; white-space: normal; background-color: rgb(255, 255, 255); font-size: 14px; line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;Reserved GDT的存在主要是支持ext2文件系统的resize功能，它有自己的inode和data block，这样一来如果文件系统动态增大，Reserved GDT就正好可以腾出一部分空间让Group descriptor向下扩展。&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; clear: both; min-height: 1em; color: rgb(34, 34, 34); letter-spacing: 0.544px; white-space: normal; font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; text-align: center; background-color: rgb(255, 255, 255); line-height: 22.4px;&quot;&gt;&lt;span style=&quot;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box ;overflow-wrap: break-word ;font-size: 14.875px;line-height: 23.8px;&quot;&gt;—&amp;nbsp;&lt;strong style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;&gt;完&lt;/strong&gt;&amp;nbsp;—&lt;/span&gt;&lt;/p&gt;&lt;section style=&quot;margin: 0px; padding: 0px 10px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; white-space: normal; font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, &amp;quot;PingFang SC&amp;quot;, Cambria, Cochin, Georgia, Times, &amp;quot;Times New Roman&amp;quot;, serif; letter-spacing: 0.51px; word-spacing: 2px; background-color: rgb(255, 255, 255); line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.544px; color: rgb(53, 53, 53); font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; color: rgb(0, 0, 0); font-variant-numeric: normal; letter-spacing: 0.544px; text-align: center; line-height: 28px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; letter-spacing: 0.544px; color: rgb(89, 89, 89); text-align: left; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 26.25px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-variant-numeric: normal; letter-spacing: 0.544px; color: rgb(62, 62, 62); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; widows: 1; line-height: 23.8px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;&gt;&lt;section style=&quot;margin: 10px 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; text-align: center; line-height: 23.8px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px 1em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; display: inline-block; line-height: 23.8px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0.3em 0.5em; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; display: inline-block; border-radius: 0.5em; color: rgb(255, 255, 255); background-color: rgb(249, 110, 87); line-height: 23.8px; font-size: 14px;&quot;&gt;&lt;section style=&quot;margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; line-height: 23.8px;&quot;&gt;&lt;strong&gt;河北软发科技有限公司&lt;/strong&gt;&lt;/section&gt;&lt;/span&gt;&lt;/section&gt;&lt;section style=&quot;font-size: 14px; margin: -1em 0px 0px; padding: 20px 10px 10px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; border-width: 1px; border-style: solid; border-color: rgb(192, 200, 209); background-color: rgb(239, 239, 239); line-height: 23.8px;&quot;&gt;&lt;section class=&quot;mp_profile_qqmusic_wrp&quot; style=&quot;margin: 16px auto; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; overflow-wrap: break-word; font-size: 0px;&quot;&gt;&lt;div class=&quot;appmsg_card_context wx_profile_card js_wx_profile_card js_wx_tap_highlight wx_tap_card&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;br/&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;strong&gt;非科班大厂码农&lt;/strong&gt;&lt;div&gt;混迹于BAT的非科班程序员，以java为载体，介绍数据库、缓存、搜索引擎、设计模式、架构等技术栈，让我们从小白走向架构师~&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;公众号&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  文件系统概述提到文件系统，Linux的老江湖们对这个概念当然不会陌生，然而刚接触Linux的新手们就会被文件系统这个概念弄得晕头转向，恰好我当年正好属于后者。从windows下转到Linux的童鞋听到最多的应该是fat32和ntfs(在windows 2000之后所出现的一种新型的日志文件系统)，那个年代经常听到说“我要把C盘格式化成ntfs格式，


acode: cn
scode: 9
title: 前端工程师
titlecolor: #333333
author: 软发
source: 本站
date: 2022-07-28 08:39:12
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: ruanfa
update_user: ruanfa
create_time: 2022-07-28 08:46:50
update_time: 2022-07-28 08:55:51
gtype: 4
gid: 0
content:
  &lt;div style=&quot;-webkit-tap-highlight-color: transparent; box-sizing: border-box; margin: 0px; padding: 0px; border: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;Lantinghei SC&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, &amp;quot;\\5FAE软雅黑&amp;quot;, STHeitiSC-Light, simsun, &amp;quot;\\5B8B体&amp;quot;, &amp;quot;WenQuanYi Zen Hei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; color: rgb(51, 51, 51); font-size: 14px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;岗位职责：&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;1、承担前端界面需求的分析、设计、开发、测试等工作，高质量完成需求交付；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;2、对前端代码持续进行重构优化，提升前端界面的可维护性、可扩展性和用户体验；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;3、承担前端界面相关的问题分析改进，性能优化等；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;4、对标网络自动驾驶目标、持续跟踪前端*新技术和发展趋势，支持业务和团队关键竞争力领先。&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;岗位要求&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;一、专业知识：&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;1、网络通信基本知识；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;2、具备数据库开发设计、高并发、微服务、分布式调度等经验者优先；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;3、具备服务化/微服务产品开发设计以及分布式系统开发设计经验者优先；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;二、业务技能：&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;1、精通HTML5、CSS3、ES6等Web前端基础知识，理解Node.js、npm、WebPack等机制；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;2、精通主流的前端框架React/angular/vue中的一种，浏览器开发者工具等；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;3、了解axios或者fetch等ajax知识，了解http，websocket等网络协议；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;4、熟悉常用的设计模式；有大型模块重构经验者优先；&lt;/span&gt;&lt;br style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Roboto, Arial, sans-serif; background-color: rgb(255, 255, 255);&quot;&gt;5、同时具备Web开发和后台Java开发技能者优先；&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;

description:
  岗位要求：1、熟练掌握HTML、CSS、JavaScript，对原生JavaScript、浏览器机制有深刻理解2、熟悉WEB标准，对相关兼容问题有深刻理解3、熟悉HTTP的基本工作原理4、熟练掌握ES6，对主流框架（vue）有相关开发经验等5、对WEB相关技术有浓厚兴趣，有较好的学习能力和强烈的进取心


acode: cn
scode: 4
title: 同样是营销，软发科技科普2B和2C营销区别是什么？
titlecolor: #333333
author: 软发
source: 本站
date: 2022-07-28 09:10:34
tags: 软发科技,河北软发
status: 1
istop: 0
isrecommend: 0
isheadline: 0
create_user: ruanfa
update_user: ruanfa
create_time: 2022-07-28 09:14:23
update_time: 2022-07-28 09:15:58
gtype: 4
gid: 0
content:
  &lt;p&gt;&lt;span style=&quot;font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0);&quot;&gt;营销发展至今，它的定义不断在迭代和更新。互联网时代，C端流量红利逐渐消退，不少企业转向B端服务。那么，2B和2C营销区别在哪里？软发科技的小编将从三个方面展开介绍。&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;营销就是创造、沟通、交付和交换对顾客、客户、合作伙伴以及社会有价值的市场供应物的活动、系列制度和过程。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;互联网进入下半场，C端流量红利逐渐消退，越来越多的大企业都把目光投向了B端服务。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;比如腾讯，2018年底，宣布“扎根消费互联网，拥抱产业互联网”，启动战略升级。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;然而，现在基本上都有一个共识：C端的营销套路，放到B端行不通。这是为什么呢？&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;作为一个从事过B端和C端营销的搬砖工，跟大家一起聊聊2B和2C营销的区别。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;一、首先来理解一下2B和2C&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;B2B(Business-to-Business)简单来说就是企业对企业，而B2C(Business-to-Consumer)企业对消费，当然现在也有C2C (Consumer -to-Consumer) 消费者对消费者。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;华为就是典型的2B和2C业务都覆盖的企业，华为运营商、华为企业业务都是面向2B的，而华为消费者业务就是2C的，面向最终的消费者。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;再比如百度，同样是云服务，百度智能云就是面向企业的，而我们常见的百度网盘就是2C。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;二、2B和2C相同点-业务的背后，本质都是人&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;无论2B还是2C业务，业务的背后都是人，营销的本质，是要基于顾客的需求，解决用户的痛点。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;span class=&quot;bjh-ul&quot; style=&quot;max-width: 100%; color: rgb(51, 51, 51); list-style-type: disc; display: block; line-height: 27px; padding-left: 26px;&quot;&gt;&lt;span class=&quot;bjh-li&quot; style=&quot;color: rgb(0, 0, 0); max-width: 100%; display: list-item; margin-bottom: 11px;&quot;&gt;都离不开对目标受众的分析和研究，挖掘用户的痛点和欲望，宣传产品独特的UPS。都要结合数据，持续分析推广的效果，找到应对特定用户群的打法。&lt;/span&gt;&lt;span class=&quot;bjh-li&quot; style=&quot;color: rgb(0, 0, 0); max-width: 100%; display: list-item; margin-bottom: 0px;&quot;&gt;都要利用好内容营销的手段和技巧，持续撬动用户。&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;bjh-p&quot; style=&quot;color: rgb(0, 0, 0); max-width: 100%;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;三、从4P的角度看2B和2C的差异点&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;不管怎么说，2B和2C营销还是不少区别：&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;从最基础的受众来讲，2B的受众更理性，考虑更全面，更倾向专业和可靠性，而2B的受众更多受感性驱动，更倾向性价比、愉悦性。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;从获客成本的角度，2B企业一个销售线索可能就高达好几百人民币，但2C的客户成本就要低得多。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;从决策周期的角度而言，2B企业的决策周期比较长，有时候甚至长达几个月，因为背后决策的人，往往是一个团队的评估；而2C，只需要打动你target的用户，甚至他们就可以当下决定是否进行购买了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;1. 产品&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;主要包括产品的实体、服务、品牌、包装。它是指企业提供给目标市场的货物、服务的集合, 包括产品的效用、质量、外观、式样、品牌、包装和规格, 还包括服务和保证等因素。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;回想一下，你想要买洗发水，走进一家连锁超市，很可能你在思考的问题是，我的发质已经受损了，是买沙宣，买潘婷，还是买飘柔呢？而你考虑的这三个，都是品牌。实际上他们都是宝洁公司旗下的产品。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;作为2C的用户，当买东西的时候，我们更多时候会为了品牌付费，关心的是这个品牌的知名度；但是公司业务中要采购产品的时候，决策的周期是很长的，我们更多时候会关心品牌背后的“企业”，以及提供的“服务”。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;考量的是不仅仅是品牌，更多的是产品、服务，甚至是企业本身，包括但不限于科技实力、信赖度、交付能力、以及售后服务。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;因此，在同样都要突出UPS产品独特卖点的情况下，在2C营销，品牌赢得消费者的心智，就很容易赢得消费者。但是2B的营销中，呈现更要多维度呈现公司的综合实力，产品的服务和保证方面有可信度。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;2. 价格&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;主要包括基本价格、折扣价格、付款时间、借贷条件等。它是指企业出售产品所追求的经济回报。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;夏日炎炎，你想要买手帕纸，但是又怕纸巾在脸上留下很多碎碎，第一反应是Tempo，怎么擦也不会破。拿起一包，7张*12包，标价9.9RMB。刚好放在旁边的维达在搞活动，12包，标价4.9RMB，原价6.9 RMB。转念一下，维达的质量也不错。于是拿下一条维达，为自己省下的钱，开心地买单了。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;消费者容易受到基本价格、折扣价格等因素，就见风使舵，从一个品牌转向另一个品牌。2C的营销中，利用好限时促销、特价活动、节日大促这些价格组合因素都可能会在短时间带来销量激增。但是对于2B的营销，更关注的是“成本”以及投资回报率；除了购买产品本身，还要考虑到产品后期的维护成本等等。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;因此，在2B营销中，营销人员需要传递产品的价值，直到客户感知到产品的价值，比如购买了产品之后，如何提高工作效率，节约时间成本，降低后期的维护成本，实现成本的优化，带来符合预期的投资回报率。而不仅仅侧重于，我的价格比竞争对手有优势。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;而在2C营销中， 核心也不是便宜，而是要满足用户“占便宜的感觉”，一个人可能买得起最新版的手机，但是在买低价值产品的时候，还是会在意1-2块钱的差价，而这关键就是在于“占便宜”的消费者心理。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;3. 推广&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;推广组合是指企业利用各种信息载体与目标市场进行沟通的传播活动, 包括广告、人员推销、营业推广与公共关系等等。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;推广渠道：2B和2C都可以通过线上和线下覆盖目标受众，但是2B的渠道可以更精准，并且更专业。2B线上可以侧重行业论坛、行业网站投放，而线下则可以通过展会、行业会议、年度伙伴大会等方式覆盖受众。但是2C产品的用户基数大，可结合特性的用户受众分析，多渠道覆盖。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;因此，在营销的推广组合中，2B营销的领域的专业性和销售人员的专业度，选择精准的渠道，事半功倍。而2C的领域，结合受众群体分析，多渠道广撒网覆盖。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;strong&gt;4. 渠道&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;地点通常称为分销的组合, 它主要包括分销渠道、储存设施、运输设施、存货控制, 它代表企业为使其产品进入和达到目标市场所组织, 实施的各种活动, 包括途径、环节、场所、仓储和运输等。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;想一想，你刚爬到山顶而带的水又喝完了，此刻的你非常想喝水，山顶有一个小亭子卖矿泉水，4块钱一瓶。在价格溢价合理的情况下，那么你可能根本不会考虑矿泉水的品牌就选择了购买。其实不难理解，消费者往往会因为便利，而选择了购买，因为即时购买可以满足它现阶段的喝水的渴望。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class=&quot;index-module_textWrap_3ygOc index-module_newStyle_lg-fl &quot; style=&quot;max-width: 100%; overflow-x: visible; font-size: 18px; line-height: 30px; color: rgb(34, 34, 34); margin-top: 24px; font-family: arial; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;因此，在2C的营销中，分销的渠道与易获得性有利于产品的推广。但是2B采购周期会相对比较长，比较不容易受到易获得性的影响，有完善的分销渠道，在营销宣传中是加分项。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0); max-width: 100%;&quot;&gt;&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style=&quot;max-width: 100%; color: rgb(0, 0, 0);&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;p style=&quot;overflow-y: auto; max-width: 100%; line-height: 30px; margin-top: 0px !important; margin-bottom: 0px !important; padding: 0px !important;&quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0); max-width: 100%;&quot;&gt;&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(153, 153, 153); font-family: arial; font-size: 18px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;

description:
  营销发展至今，它的定义不断在迭代和更新。互联网时代，C端流量红利逐渐消退，不少企业转向B端服务。那么，2B和2C营销区别在哪里？软发科技的小编将从三个方面展开介绍。营销就是创造、沟通、交付和交换对顾客、客户、合作伙伴以及社会有价值的市场供应物的活动、系列制度和过程。互联网进入下半场，C端流量红利逐渐消退，越


