T之家(www.ithome.com):关于编程里的那些ABC......
本文主要是一篇基础类整理文章,按照26个字母的排序,整理出一些在编程上比较重要的工具、框架、语言等等。
A- Angular.JS如果被设计用来构建Web应用程序的话,那就和HTML没什么区别了。它是一款开源JavaScript函式库,由Google和它的社区来维护,用来协助单一页面应用程式运行的。它的目标是透过MVC模式(Model-View-Controller)功能增强基于浏览器的应用,使开发和测试变得更容易。函式库读取包含附加自定义(标签属性)的HTML,遵从这些自定义属性中的指令,并将页面中的输入或输出与由JavaScript变量表示的模型绑定起来。这些JavaScript变量的值可以手工设置,或者从静态或动态JSON资源中获取。
Angular.JS是建立在这样的信念上的:即声明式编程应该用于构建用户界面以及编写软件构建,而指令式编程非常适合来表示业务逻辑。Angular.JS最引人注目的特征就是它的双向数据绑定功能,这样可以大大减少你在必要代码上的编写数量,Coder Factory最先向澳大利亚提供Angular.JS课程。
B- Booststrap是一个用于响应式前端开发的框架,最主要是应用在移动Web App上面。它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。Bootstrap一经推出后颇受欢迎,一直是GitHub上的热门开源项目,包括NASA的MSNBC(微软全国广播公司)的Breaking News都使用了该项目。
Bootstrap是基于jQuery框架开发的,它在jQuery框架的基础上进行了更为个性化和人性化的完善,形成一套自己独有的网站风格,并兼容大部分jQuery插件。
C- CSS是Cascading Style Sheet的缩写,中文名称是层叠样式表,又称串样式列表、层次结构式样式表文件,一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言,由W3C定义和维护。目前最新版本是CSS2.1,为W3C的推荐标准。CSS3现在已被大部分现代浏览器支持,而下一版的CSS4仍在开发过程中。
CSS最重要的目标是将文件的内容与它的显示分隔开来。在CSS出现前,几乎所有的HTML文件内都包含文件显示的信息,比如字体的颜色、背景应该是怎样的、如何排列、边缘、连线等等都必须一一在HTML文件内列出,有时重复列出。CSS使作者可以将这些信息中的大部分隔离出来,简化HTML文件,这些信息被放在一个辅助的,用CSS语言写的文件中。HTML文件中只包含结构和内容的信息,CSS文件中只包含样式的信息。
D- DRY是Don't repeat yourself的简称,一个规则,实现一次(one rule, one place)是面向对象编程中的基本原则,程序员的行事准则。旨在软件开发中,减少重复的信息。
DRY的原则是──系统中的每一部分,都必须有一个单一的、明确的、权威的代表──指的是(由人编写而非机器生成的)代码和测试所构成的系统,必须能够表达所应表达的内容,但是不能含有任何重复代码。当DRY原则被成功应用时,一个系统中任何单个元素的修改都不需要与其逻辑无关的其他元素发生改变。此外,与之逻辑上相关的其他元素的变化均为可预见的、均匀的,并如此保持同步。违反DRY原则的解决方案通常被称为WET,指代“Write everything twice”。
E- Elegant每一个代码都应该是优雅、简洁的。其实编写程序的过程就像是一种艺术,也许有些人会问你:“如果可以编写有效代码的话,为什么还要编写优雅代码呢?”然而,我们认为提供优雅代码的标准首先这个目的就是比较好的,因为它会带领程序员编写出更加简明的、可维护的代码。
你应该永远记住:读代码比写代码更重要。我猜你不想让你的同事花整个周末的时间来搞懂你的代码到底是什么意思吧!所以多花一点时间让代码更漂亮!
F- Flash是由Adobe开发出来的用于创建动画视频、图形和互联网应用程序的。就像你刚从一个粗略的网站上看到的一部电影一样,都是通过Adobe Flash播放器播放的。尽管有很指责说Flash很耗资源且不安全,但是绝大多数网站上一直在使用它。
或许你已经听说了Steve Jobs拒绝将Flash用在苹果设备上,如果真的有所说的那样的缺点,或许只是Steve Jobs和Flash之间的个人恩怨,那样我们可能永远不会发现Flash的伟大之处。即使HTML5被预测为Flash的即将继承者,但是Flash仍然值得我们多看它几眼。
G- GitHub是每一位编码人员的最好的朋友。拥有超过1150万个仓库的GitHub是这个世界上最大的代码托管网站。GitHub包含社交网络功能允许开发人员将他们的项目整合到一起,这样一来的话就能在对开源软件以及私人项目的维护产生重大意义。
GitHub提供免费和付费计划,只需选择你所需要的东西。有趣的是:GitHub是建立在Ruby on Rails基础上的,Coder Factory可以教你框架。
H- Hydra code是一段不能修复的代码,就像古希腊怪物每个脖子上都生出两个头,最后都被Hercules砍掉了。代码有的时候就像这个一样,即使你修复了一个bug之后,又会出现很多个bug,所以,除了重写整个代码以外,你别无选择。
I - Graphic User Interface图形用户界面,这是一种自我解释。图形用户界面估计是你看到最多的也是互动最多的一部分。第一个GUI是在Stanford Research Institute发明的,后继开发是由Xerox PARC施行的。在参观完Xerox之后,Steve Jobs首次将GUI技术用在了Apple Lisa和Macintosh上面,在当时来说这是一次革命创举。
Bill Gates发布Windows GUI之后,看看下面这段有趣的对话,Steve:“你偷了我们的技术!”Bill回应:“我想我们两个都有一个叫做Xerox的非常富有的邻居,但是当我跑到他的房间里想要偷走电视机的时候,我发现你已经把电视机偷走了。”哈哈哈
J - Javascript是一个动态的编程语言(尤其是在客户端),可以让你在不用刷新网页的情况下更新网页内容。虽然Angular.js是一个相当不错的框架,但它是建立在JavaScript这个基础之上的。
JavaScript最先是由Netscape开发的,用来对抗和Microsoft进行的浏览器之战。现在的Javascript已经出现在高级App开发课程里面了。
K - Donald Knuth是一个很有趣的IT专家,它也是我们很喜欢的书《The Art of Computer Programming》的作家。现在他是Stanford University的名誉教授,也是公认的“算法分析之父”。
L- Libraries代码类库是实现行为的一个收集,这里面有一个接口用来调用行为。估计这么说的话听起来还是比较复杂的。基本上可以这么理解:通过类库这种方式将这些代码组织起来,这样就可以被很多没有什么关系的程序调用了。于是,用户只需要知道类库的界面就行了,而不是内部的逻辑结构。
M- MongoDB是一种文件导向数据库管理系统,由C++撰写而成,以此来解决应用程序开发社区中的大量现实问题。2007年10月,MongoDB由10gen团队所发展。
MongoDB可以从开放源代码来建构与安装,更常见的是安装binary文件,目前有Windows,Linux,OS X和Solaris版本。许多Linux套件管理系统现在已包含了MongoDB的套件,包括CentOS和Fedora,Debian和Ubuntu。MongoDB已经被一些重要的网站所采纳了,例如Ebay,Craigslist甚至是New York Times。
N- Nopping是一个用于区分输出的编辑器,来源于NOP(no-operation),这是编程行业里的行话——小睡一下。每个人时不时的都需要休息一下,现在就NOP一下吧!
O- Object面向对象的编程是一个范例,代表这一概念所描述的对象的属性和方法改变。对象通常是类的实例,设计应用程序已达到彼此交互设计的目的。许多主要的编程语言如C++、Java、Ruby和PHP都是面向对象的。
P - Push推动基础的交流来描述一个互动请求,这首先是出版商发起的,例如这些需求都是来自服务器而不是来自客户端的推送。
Q- Quality代码质量是一个广义上的术语,每个程序员都有自己的不一样的定义。我们通常比较乐于将代码质量描述为易读的、可测试的、灵活的、依赖关系小、顺从的,还有就是经济的。这一原则被称为LTFCE。
R- Ruby on Rails是一个使用Ruby语言写的开源Web应用框架,严格按照MVC结构开发的。在2005年左右由David Heinemeier-Hansson开发出来的。它努力使自身保持简单,来使实际的应用开发时的代码更少,使用最少的配置。Rails的设计原则包括“不做重复的事”(Don't Repeat Yourself)和“惯例优于设置”(Convention Over Configuration)。
Ruby on Rails是一种结合Ruby语言与Rails平台的一种网页编程语言,Ruby语言以自然、简洁、快速著称,全面支持面向对象程序设计,而Rails则是Ruby广泛应用方式之一,在Rails平台上设计出一套独特的MVC开发架构,采取模型(Model)、外观(View)、控制器(Controller)分离的开发方式,不但减少了开发中的问题,更简化了许多繁复的动作。
S- Scaffolding框架是一个技术,用在MVC框架上,例如Ruby on Rails。通过Scaffolding基架,开发者可以详细说明一个数据库到底是怎么运作的。允许你生成代码,例如使用非常简化的方法来读取、创建或删除数据库条目。Scaffolding基架基于数据库架构生成网页模板的过程。在ASP .NET中,动态数据使用基架来简化基于Web的UI的生成过程。用户可以通过这种UI来查看和更新数据库。
T- Alan Mathison Turing(又译阿兰·图灵,1912年6月23日-1954年6月7日),被认为是计算机科学的保护神,但是,他是一个永远也得不到公正宣布的圣人。他是英国数学家、逻辑学家,他被视为计算机科学之父。
图灵对于人工智能的发展有诸多贡献,例如图灵曾写过一篇名为《机器会思考吗?》(Can Machines Think?)的论文,其中提出了一种用于判定机器是否具有智能的试验方法,即图灵测试。至今,每年都有试验的比赛。此外,图灵提出的著名的图灵机模型为现代计算机的逻辑工作方式奠定了基础。
U- Usability可用性测试是一个很有存在意义的任务,在你的App出现在众人面前之前必须要经过可用性测试。你的代码也许很优雅、质量很高、不会重复,但是要是它的可用性不过关的话,那么一切都是扯淡。你想让你的App尽可能的用户友好型的,那么用户是不会让你的产品埋没的。
一个最常见的技术测试就是A/B testing,这种方法就是用两种不同的介绍方式将产品介绍给不同的用户,并且监视结果。效果最好的那个才会被采纳。
V - for View对于外观、模型、控制器来说,它们就是实现用户界面的样品。这里面的核心部件就是Model,其包括App数据,商业逻辑规则和产品功能。View是实际产出,也是你的用户在浏览器里最想看到的。Controller接收输入并将其转换成命令传送给Model或者是View。
W- W3C是World Wide Web Consortium的缩写,是Web上主要的国际标准组织,由互联网的发明者Tim-Berners Lee创建并由其领导,W3C是World Wide Web的监护者。
X- Experience很多人都认为他们能学习代码并能做得很好,就像Mark Zuckerberg一样。事实是:作为一个开发者,根本没有停下来学习的时候。科技技术改变的速度很快、很迅速,也就是说,在你的整个职业生涯里你必须抓住机会不断学习新的知识。
Y - Yoda Yoda条件是一个编程术语,用来编写一个表达的两个部分,而这个表达是一个典型条件语句顺序的颠倒表达方式,就像“learn to code you should, young padawan”。
Z- Konrad Zuse当然,在这个综合性的列表上,我们没办法将Konrad Zuse排除在外。他是一位德国科学家,创造出了第一台可编程的计算机——Turing-complete Z3。在第二次世界大战之后,IBM选择了它的专利,这也是他的工作第一次被德国以外的国家所认可。
本文主要是根据26个字母的排序来整理了在编程方面比较重要的知识点供你参考。如果有什么好的建议可以在下面的评论出写出来。
、clip-path属性
clip-path 属性非常有趣,它允许我们使用 CSS 创建不同类型的复杂形状(椭圆、圆形、多边形和其他不同的形状)。
该属性可以帮助我们通过定义显示元素的哪些部分来创建复杂的形状。clip-path 可以采用不同的值,例如形状函数和剪辑源。我们可以在 MDN 文档上了解有关该属性的更多信息。
这是一个代码语法示例:
clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
如果我们想使用属性 clip-path 轻松创建复杂的形状,我强烈建议使用名为 clip-path-maker 的工具。它是 100% 免费的,允许我们使用拖放功能创建形状。创建形状后,该工具会自动为我们生成 CSS 代码。
2、writing-mode 属性
CSS writing-mode 属性允许我们定义文本行是垂直还是水平布局。除此之外,它还允许设置块的前进方向。
所有主流浏览器都支持该属性,并且可以采用以下值:
horizontal-tb, vertical-rl, vertical-lr, sideways-rl, and sideways-lr
这是一个代码示例:
可曾想过:
为何地球可以孕育生命?
为何中东地区战事不断?
世界之最喜马拉雅山如何形成?
地球为何不像月球那样陨石坑遍布?
地壳含量只有0.0068%的铜元素,为何可以大规模富集成矿?
……
想要解释以上的问题,笔者接下来要谈论的这个话题,或许能给你一些启迪。
我们知道,世界上有诸多国家、种族、文化等等,尽管这些不同群体之间有种种差异,但是最根本的一点不会改变,那就是——我们居住在同一个地球。
可是,你真正了解地球吗?你认为,地球是活的吗?你脚下站立的坚实土地,一直都在那里吗?
由生物课的学习,我们知道地球上有四个圈层——水圈、生物圈、大气圈和岩石圈,地球上有丰富多彩的生命形式。其实,地球不但是生命的载体,地球本身也生机勃勃。
你可曾想过,就像人类的新陈代谢,地球也有自己的生命循环。地球的生命循环,是通过板块的形成与消亡实现的。
首先,什么是板块?
我们一般认为全球现在共有12个板块,其中以大陆为主,涉及少量海洋的版块有欧亚板块、北美版块、南美板块、非洲板块、阿拉伯板块以及南极洲板块;以海洋为主的板块有太平洋板块、菲律宾海板块、印度-澳大利亚板块、加勒比板块以及在东太平洋地区的纳兹卡板块和可可斯板块等。
全球的板块划分
有了板块的概念,下面我们来穿越时空,看看地球上的板块活动是如何逐渐被人类认识的。
古人是怎么认识世界的呢?
其实啊,古人对于世界版图的认识与现今相差甚远。从古早的地图中我们也可以看到这一点。最早航海时代的地图上,充满未知的区域和怪异的生物。除了描绘出的海岸线,还会有一些图腾。分别表示着西风、东风、海怪等。
古人的奇怪地图
比如,亚里士多德的时代,埃及往南,就是世界的尽头。在他们看来,印度是最东方的国度。
古希腊人眼中的世界
后来呢,人们从海岸线的吻合性上,可以隐约认识到南美和非洲可能原先是一个整体。在这个认识上面,我们熟悉的魏格纳并不是第一人。
看,新证据的发现带来了什么?
在19世纪晚期,澳大利亚地质学家Edward Suess注意到在印度、澳大利亚、南非和南美发现的古生代晚期的植物化石有相似之处,同时,他还在这些南部大陆岩石上发现了冰川的痕迹。这些植物化石在煤层中形成一个独特的植物群,而在地质记录中,这层煤层正好位于冰川沉积物的上方。这个植物群被称为舌羊齿属植物群,与同一块大陆北部同时代煤层中的植物群有显著不同。
煤层当中的植物化石证据
由此发现,Suess提出了关于超级大陆的理论。他认为这些南部陆块最早是由大陆架连接起来的,曾经,植物和动物可以通过大陆架进行迁移。
在1910年,美国地质学家Frank Taylor也发表了一个小册子,他在里面对大陆漂移提出了自己的看法。他认为大陆的横向移动导致了山脉的形成;他还认为大陆是在巨大的潮汐力下分裂开来的。这么大的潮汐力从哪来呢?Frank认为:这巨大的潮汐力,是由于地球在100个百万年前捕获了月球而产生的。当然,他的解释在现在看来并不正确。但是他对洋中脊形成的假说给后人很多启发。【大西洋的洋中脊于1872-1876年间被英国科学考察发现,Frank认为是由于古大陆的分开形成现在的大西洋。】
新的假说出现了!
现在我们要谈到的这个人大家都很熟悉。阿尔弗雷德魏格纳,一位德国气象学家,因为大陆漂移学说的贡献被世人铭记。在他有划时代意义的著作《The Origin of Continents and Oceans(大陆与海洋的起源)》(于1915年出版)当中,魏格纳提出:现在我们看到的所有的大陆最早都是结合在一起的,成为一个超级大陆。他把这个超级大陆命名为泛大陆(Pangaea)。【古希腊语意思为“all land”】
大陆最早是结合在一起的
魏格纳找到了大量地质学的、古生物学的和气象学的证据来证明大陆漂移假说。然而,魏格纳的假说遭到很多质疑,主要因为他无法提出一个令人信服的机制来支持大陆漂移假说。
大陆漂移的动力来自哪里呢?
1928年之后,不幸的是,反对魏格纳的学说在北美成为了主流。为什么呢?因为在1928年,美国石油地质学家协会 (AAPG) 召开了一次国际研讨会,来讨论大陆漂移学说的正确性。尽管有种种证据支持大陆漂移学说的正确性,反对者还是占了多数。主要原因还是在于这个假说无法说明板块漂移的动力——主体由花岗岩形成的陆壳是如何能在更加致密的玄武岩组成的洋壳之上滑动的呢?
“可能”的动力机制(开个玩笑)
尽管如此,魏格纳的支持者之一,南非的一位地质学家Alexander du Toit,继续着魏格纳的工作。他又为大陆漂移学说提供了更多的证据。
大陆漂移说到底有哪些证据呢?
最初,地质学家注意到大西洋两岸的海岸线有着惊人的吻合度。之后,地质研究表明这些南方大陆在侏罗纪的石序及其相似,同时,山脉的契合度也被发现了。在海岸线处突然断裂的山脉可以在另一个大陆继续延伸。
海岸线惊人的吻合
关于冰川移动的痕迹也被发现了。通过植物化石和岩床上的痕迹,地质学家可以研究冰川的移动。如果假设大陆未曾移动过,我们就需要解释冰川是如何从海洋移到大陆,以及赤道上为何会有冰川的痕迹。
比较有说服力的证据来自化石,舌羊齿属植物的种子并不能传播很远,它的化石却在不同大陆同时期的地层都被发现。中龙属,一种二叠纪的淡水爬行动物(不能游过大海),它的化石在巴西和南美都有发现。证明这两块大陆在古生代末期是连接在一起的。
动物与植物化石证据
大陆确实移动了!
20世纪50年代开始兴起的地球磁极研究给了大陆漂移假说最令人信服的证据。那时,很多地质学家为了更好理解现今地球的磁场,正在研究古地磁的变化。这些研究导致了其他的发现。地质学家发现海底岩石非常年轻。正如魏格纳及其支持者说得那样,大陆确实移动了。
洋壳板块的年龄(红色最年轻,蓝色最老)
如何通过岩石研究地磁场呢?
我们知道岩浆冷却会形成岩石:当岩浆冷却达到居里温度,其中含有铁元素的矿物会顺着地磁场方向排列,就像岩石中有一个个小小的指南针一样,这里面就记载了当时地磁场的方向和强度。利用这一点,根据岩石的年龄,就可以确定当时地球的磁极的方向和岩石形成时的纬度。
地质学家经过研究年轻的和古老的岩石,发现岩石中记载的磁场显示了不同的取向。这有三种可能的解释:
一, 大陆没有移动,磁极移动了;
二, 磁极没有移动,大陆移动了;
三, 磁极和大陆都移动了。
最有可能的解释是磁极没有发生移动,大陆移动了。
虽然有着种种证据,大部分地质学家仍拒绝相信大陆移动过。直到20世纪50年代,由于美苏冷战的爆发,双方都开始了大规模海底探测工作。美国展开的海底探测工作得到了意想不到的科学发现。正是由于海底探测工作给出的关于大陆移动的明确证据,大陆漂移假说才得以被广泛接受。
海底探测得到的地磁条带变化
20世纪50到60年代,地质学家开始了海底测绘活动。结果是惊人的。测绘结果显示出一条长达65,000公里的海底山脉系统。这条海底山脉最知名一段的便是大西洋中脊(Mid-Atlantic Ridge),它把大西洋海床一分为二。
大洋中脊是海底雄伟的山脉
1962年,普林斯顿大学的Harry Hess提出了海床扩张理论。海床扩张理论指向了一个新的假说:大陆并没有在海床上移动,实际上大陆和海床是一起移动的。大洋中脊处岩浆上涌,不断形成新的海床,海床不断由洋脊向两边移动。
板块运动就像“传送带”一样
海底探测的结果支持了他的观点。最古老的海床只有180个百万年的历史,然而最古老的大陆的年龄可达39.6亿年。
对很多地质学家来说,这个结果是非常具有说服力的。海底钻探计划的结果又进一步证明了这个假说。由此,板块构造学说形成了。
什么是板块构造假说?
为何板块构造学说可以解释板块运动的机制?
板块构造学说是一个统一的学说,将地球看做一个活动的整体。
板块构造学说将地球看成这样一个模型:在固体地球上层,存在较刚性的岩石圈及其下较塑性的软流圈,并将地表附近较刚性的岩石圈划分为若干大小、厚度不一的板块,它们可以在塑性铰强的软流圈上进行大规模运移。
其中,海洋板块在洋脊处不断增生,在与大陆板块交界处不断俯冲到大陆板块之下。因此,板块内部相对稳定,板块边缘则由于相邻板块的相互作用构造活动较强烈。板块之间的相互作用控制了岩石圈表层和内部的各种地质作用过程,同时决定全球岩石圈运动和演化的基本格局。
这个机制就像一个传送带一样,我们来看图示:
较刚性的岩石圈及其下较塑性的软流圈
海洋板块在洋脊处不断增生
在与大陆板块交界处不断俯冲到大陆板块之下
不同板块之间什么关系呢?
根据板块之间相对运动方式的不同,可以将板块边界分为三种类型:
离散性板块边界:大洋脊轴部两侧板块相背运动,板块边界受到拉张而分离,软流圈物质上涌,冷凝形成新的洋底岩石圈。
汇聚型板块边界:即海沟附近的板块俯冲带或大陆板块之间的碰撞带。当大洋与大陆板块汇聚时,由于大洋板块密度较大,位置较低,故大洋板块总是俯冲到大陆板块之下,在地表形成海沟。当大洋板块不断俯冲到大陆板块之下,并在地表逐渐消失时,其后部的大陆板块就有可能与其他密度相近的大陆板块发生碰撞,从而产生强烈的构造变形、岩浆与变质作用,并形成山脉。强烈构造变形带就称为板块碰撞带。
转换型板块边界:即转换断层,其两侧板块发生水平剪切滑移。
不同板块边界如图示
地球板块经历了怎样的变化呢?
地球板块的变迁如下图
以上便是板块构造学说诞生的历史。我们可以看到,这样一个统一学说的诞生,经历了很长时间。其中,非常多的地质学家都做出了贡献。学习板块构造学说,就是学习人类了解地球的历史。
完
一、参考资料:
1. 《Plate Tectonics: A Unifying Theory》;
2. Wikipedia;
3. 地质出版社,《地球科学概论》。
二、图片来源:
1. https://lifepro.hk/
2. http://www.visualcapitalist.com/map-sums-economy-middle-east/
3. https://en.wikipedia.org/wiki/Himalayas
4. https://spaceplace.nasa.gov/craters/en/
5. https://www.pri.org/stories/2017-03-27/plate-tectonics-earth-may-have-been-covered-one-giant-shell
6. https://mantasticpursuits.com/interesting-historic-maps-world/
7. http://maritimehistorypodcast.com/ep-028-unlocking-the-pontus-euxinus/
8. https://he.wikipedia.org/wiki/%D7%A0%D7%93%D7%99%D7%93%D7%AA_%D7%94%D7%99%D7%91%D7%A9%D7%95%D7%AA
9. https://www.youtube.com/watch?v=MLTev3VK_oo
10. http://www.geologyin.com/2018/02/facts-about-pangaea-most-recent.html
11. http://mattashdown.wixsite.com/continental-drift/types-of-plates
12. https://www.pinterest.com/pin/258816309812773261/
13. https://www.brainpop.com/science/earthsystem/platetectonics/
14. https://www.youtube.com/watch?v=2uh8W4vGLQ0
15. http://www.mantleplumes.org/Cartoons.html
16. https://www.open.edu/openlearn/science-maths-technology/science/geology/plate-tectonics/content-section-2.3.1
17. http://www.earthbyte.org/Resources/Agegrid/1997/digit_isochrons.html
18. https://layers-of-learning.com/todays-science-lesson-on-plate-tectonics/
19. 动图来源:https://giphy.com
*请认真填写需求信息,我们会在24小时内与您取得联系。