所谓“平台”就是能够独立运行并自主存在,为其所支撑的上层系统和应用提供运行所依赖的环境。 (来自百度百科)
越来越多的平台出现了
1. 操作系统层面: PC, MAC, IOS, Android,
2. 技术体系层面: HTML5, Flash
3. 语言层面: java, .net, python
4. 业务开放平台: webbo, qq, baidu, taobao 开放平台
5. ....
每个大公司都在制造自己的大平台, 各方各面的大平台
很多程序也在不断完善着自己的产品, 在每个平台上, 推出自己的产品
如:
1. 很多云盘都在不断扩充自己的战线, 支持着越来越多的平台
2. 音乐听歌软件,也是pc, mac, web, ios, mp3, 甚至不少开放平台上
------------------------
继续:
1. 如果有着各色各样的虚拟机,模拟器, 我们就可以将另一个平台的软件迁移至新的平台
2. 但是移植并不是那么容易的,很多软件移植时,必须作更改,甚至是界面,操作上的更改
3. 平台的差异同时也决定着移植的难度, 如PC上软件,迁移至触摸屏上
4. 当然:平台的迁移也有着自己的复杂度
考虑一类迁移
1. FC游戏机上软件的迁移,我们会统称这类软件为模拟器,我们会建立各种各样的模块器
2. windows上的模拟器,mac上,flash的,html5版的
3. 我们不需要,一个游戏一个游戏的迁移, 我们只需要一个模拟器就可以了
--------------------------
然后:
1. 各色各样的模拟器出现了
2. FC的,GBA的,DOSBOX, 然后是IOS的
3. 最重量级的, 就是虚拟机了, 直接模拟硬件,连各类操作系统也模拟了
好了
1. 你可以在一个终级模拟的PC上玩着,各色各样的终端的产品
2. 现在触模的笔记本也出来,你可以模拟更多的终端了
3.
---------------------------
1. 突然想通了GOOGLE的本质,google就是想在web上,搭建着更加终极的终端,其它终端能干的事,他也要做出来,做不出来,就模拟一个终端出来
2. 想想这个可能性:
a) web版linux
b) web版模拟器,有flash版本的,也有nacl版本的
c) web版远程连接,有vnc, 有RDP的,还有chrome与chrome的
d) web版的云盘,相当于硬盘
e) web版的操作系统, chromeOS
f) web版的。。。。
3. 一流的企业做平台啊~~~
-----------------------------
1. 我们经常在代码中,设计一些中间层,借此来统一各类解决方案
2. 如JDBC接口的出现,就是JAVA当年为了统一存取各种关系数据库
3. 而这样一来,带来了相当多的好处,上层使用方面了,中间层可以各类扩展,底层也有一依据,大家都很愉快
4. 同时,成功与失败都在于接口的设计的好与坏
5. 类似这样的设计有很多:opengl, 各类图片视频格式,tcp/ip, 等等。。
6. 硬件也是同理的,像USB, wifi, 都是这样的例子
---------------------------------------------
用于实际中
1. 我们平时的软件开发过程中,也需要加入这样的思考
2. 一是采用业界通入的解决方案,这样会有很多的第三方的技术,工具支持
3. 二是从中抽象出自己的中间平台来,让别人帮你丰富起来
4. 在中间平台上,作更多的文章
----------------------------------------------
平台的成功与失败
1. 平台的成功有时不在于平台的技术实力,接口的完善
2. 更多的还是在于,支持者的实力,以及平台对应工具的实力了
3. 只有用户看到平台真正带来的好处,才会明白过来
举例:
1. 之前还是ant+cvs的年代的时候,并没有感觉到,会被新的maven+svn取代,但是周边工具丰富起来时,慢慢的大家也就接受了
2. 再想想现在的git与svn,有人喜欢有人讨厌,但git支持的人多,有很多人共同努力,替代svn估计也是迟早的事情了
3. 等到svn最后一个让你挽留的特性也被git模仿超越的时候,你就会改变你的想法了
4. 早点尝试,多学习下,对你有好处
5. 更多的趋势正在进行,你捕捉到了吗? 要不要提前学习下
------------------------
有人说,变化每天都在继续,说不定,将来谁笑到最后
而且变化那么多,哪有办法都学的过来,实在太多了
提高自己的开发效率,从手头相关的工具,框架,平台开始吧
1. IDE,开发语言,编程框架,浏览器,操作系统,文件共享,版本管理,知识管理
2. 太多的基础平台,多研究下,改进下效率吧
3. 如果有兴趣,可以找一个方向,大胆深入底层去看看
4. 别忘了,找志同道合的人去一起研究
越来越多的平台出现了
1. 操作系统层面: PC, MAC, IOS, Android,
2. 技术体系层面: HTML5, Flash
3. 语言层面: java, .net, python
4. 业务开放平台: webbo, qq, baidu, taobao 开放平台
5. ....
每个大公司都在制造自己的大平台, 各方各面的大平台
很多程序也在不断完善着自己的产品, 在每个平台上, 推出自己的产品
如:
1. 很多云盘都在不断扩充自己的战线, 支持着越来越多的平台
2. 音乐听歌软件,也是pc, mac, web, ios, mp3, 甚至不少开放平台上
------------------------
继续:
1. 如果有着各色各样的虚拟机,模拟器, 我们就可以将另一个平台的软件迁移至新的平台
2. 但是移植并不是那么容易的,很多软件移植时,必须作更改,甚至是界面,操作上的更改
3. 平台的差异同时也决定着移植的难度, 如PC上软件,迁移至触摸屏上
4. 当然:平台的迁移也有着自己的复杂度
考虑一类迁移
1. FC游戏机上软件的迁移,我们会统称这类软件为模拟器,我们会建立各种各样的模块器
2. windows上的模拟器,mac上,flash的,html5版的
3. 我们不需要,一个游戏一个游戏的迁移, 我们只需要一个模拟器就可以了
--------------------------
然后:
1. 各色各样的模拟器出现了
2. FC的,GBA的,DOSBOX, 然后是IOS的
3. 最重量级的, 就是虚拟机了, 直接模拟硬件,连各类操作系统也模拟了
好了
1. 你可以在一个终级模拟的PC上玩着,各色各样的终端的产品
2. 现在触模的笔记本也出来,你可以模拟更多的终端了
3.
---------------------------
1. 突然想通了GOOGLE的本质,google就是想在web上,搭建着更加终极的终端,其它终端能干的事,他也要做出来,做不出来,就模拟一个终端出来
2. 想想这个可能性:
a) web版linux
b) web版模拟器,有flash版本的,也有nacl版本的
c) web版远程连接,有vnc, 有RDP的,还有chrome与chrome的
d) web版的云盘,相当于硬盘
e) web版的操作系统, chromeOS
f) web版的。。。。
3. 一流的企业做平台啊~~~
-----------------------------
1. 我们经常在代码中,设计一些中间层,借此来统一各类解决方案
2. 如JDBC接口的出现,就是JAVA当年为了统一存取各种关系数据库
3. 而这样一来,带来了相当多的好处,上层使用方面了,中间层可以各类扩展,底层也有一依据,大家都很愉快
4. 同时,成功与失败都在于接口的设计的好与坏
5. 类似这样的设计有很多:opengl, 各类图片视频格式,tcp/ip, 等等。。
6. 硬件也是同理的,像USB, wifi, 都是这样的例子
---------------------------------------------
用于实际中
1. 我们平时的软件开发过程中,也需要加入这样的思考
2. 一是采用业界通入的解决方案,这样会有很多的第三方的技术,工具支持
3. 二是从中抽象出自己的中间平台来,让别人帮你丰富起来
4. 在中间平台上,作更多的文章
----------------------------------------------
平台的成功与失败
1. 平台的成功有时不在于平台的技术实力,接口的完善
2. 更多的还是在于,支持者的实力,以及平台对应工具的实力了
3. 只有用户看到平台真正带来的好处,才会明白过来
举例:
1. 之前还是ant+cvs的年代的时候,并没有感觉到,会被新的maven+svn取代,但是周边工具丰富起来时,慢慢的大家也就接受了
2. 再想想现在的git与svn,有人喜欢有人讨厌,但git支持的人多,有很多人共同努力,替代svn估计也是迟早的事情了
3. 等到svn最后一个让你挽留的特性也被git模仿超越的时候,你就会改变你的想法了
4. 早点尝试,多学习下,对你有好处
5. 更多的趋势正在进行,你捕捉到了吗? 要不要提前学习下
------------------------
有人说,变化每天都在继续,说不定,将来谁笑到最后
而且变化那么多,哪有办法都学的过来,实在太多了
提高自己的开发效率,从手头相关的工具,框架,平台开始吧
1. IDE,开发语言,编程框架,浏览器,操作系统,文件共享,版本管理,知识管理
2. 太多的基础平台,多研究下,改进下效率吧
3. 如果有兴趣,可以找一个方向,大胆深入底层去看看
4. 别忘了,找志同道合的人去一起研究