求求大佬教教如何gtac5300科学上网网>3<

&p&我就想知道有多少人曾经被这个视频感动。&/p&&a class=&video-box& href=&//link.zhihu.com/?target=https%3A//www.zhihu.com/video/930112& target=&_blank& data-video-id=&& data-video-playable=&true& data-name=&& data-poster=&https://pic3.zhimg.com/80/v2-700c29b93d80e52acc213423aecb053e_b.jpg& data-lens-id=&930112&&
&img class=&thumbnail& src=&https://pic3.zhimg.com/80/v2-700c29b93d80e52acc213423aecb053e_b.jpg&&&span class=&content&&
&span class=&title&&&span class=&z-ico-extern-gray&&&/span&&span class=&z-ico-extern-blue&&&/span&&/span&
&span class=&url&&&span class=&z-ico-video&&&/span&https://www.zhihu.com/video/930112&/span&
&/a&&p&&/p&
我就想知道有多少人曾经被这个视频感动。
&figure&&img src=&https://pic4.zhimg.com/v2-7b587a3cf53e52945fa5_b.jpg& data-rawwidth=&440& data-rawheight=&220& class=&origin_image zh-lightbox-thumb& width=&440& data-original=&https://pic4.zhimg.com/v2-7b587a3cf53e52945fa5_r.jpg&&&/figure&&p&2016年左右的时候读了周志明《深入理解Java虚拟机:JVM高级特性与最佳实践》,读完之后受益匪浅,让我对Java虚拟机有了一个完整的认识,这是Jvm书籍中最好的读物之一。&/p&&p&后来结合实际工作中遇到的问题,写了一系列关于Jvm的文章,其中开篇的几篇内容大部分参考于此书,后期加入自己一些实战的理解,转载了几篇高质量的文章,就形成了此系列读物。&/p&&p&&br&&/p&&figure&&img src=&https://pic2.zhimg.com/v2-a85000d72dcb6d03f59206bcd81c8f27_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&318& data-rawheight=&417& class=&content_image& width=&318&&&/figure&&p&&br&&/p&&p&在金三银四的跳槽季中,很多小伙伴们都已经蠢蠢欲动,将此系列文章整理出来,希望可以帮助到大家。&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3D41c46eceb2add54b7cde9eebchksm%3Debf6da61dcaadb5de716ce5fefe2b659d%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(一):java类的加载机制&/a&&/li&&/ul&&figure&&img src=&https://pic1.zhimg.com/v2-b902d18daf43e440a422_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&419& data-rawheight=&183& class=&content_image& width=&419&&&/figure&&p&第一篇文章讲的是Java类的加载机制,也是我在博客园最收欢迎的Jvm文章,读完之后你会了解什么是&b&类加载器&/b&、&b&类加载机制&/b&、&b&双亲委派模型&/b&等内容。&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3D8b69d833bbc805e63d5b2fa7cchksm%3Debf6da52dc815344add64af6fb78fee439c8c27b539b3c0e87d8fd516ae0a837%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(二):JVM内存结构&/a&&/li&&/ul&&figure&&img src=&https://pic2.zhimg.com/v2-054b668ec7bbdadad12ea6a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&636& data-rawheight=&388& class=&origin_image zh-lightbox-thumb& width=&636& data-original=&https://pic2.zhimg.com/v2-054b668ec7bbdadad12ea6a_r.jpg&&&/figure&&p&这篇文章描述了Java虚拟机的内存结构,内存每个区域作用,如何通过参数对各个区域进行控制。&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3Deac67baddfaf425dchksm%3Debf6da4fdca4acdba006bbdbd18cscene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(三):GC算法
垃圾收集器&/a&&/li&&/ul&&figure&&img src=&https://pic2.zhimg.com/v2-ce225dfeb9b5e3c4c70d36_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&476& data-rawheight=&342& class=&origin_image zh-lightbox-thumb& width=&476& data-original=&https://pic2.zhimg.com/v2-ce225dfeb9b5e3c4c70d36_r.jpg&&&/figure&&p&讲述了Jvm垃圾回收的&b&经典算法&/b&,以及各种垃圾&b&回收机制&/b&,&b&对象存活判断&/b&等。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3Ddfac0c25ae62%26chksm%3Debf6da41dcd53c19e75bac5a4d510bfa31cce2e4f6cb8%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(四):jvm调优-命令篇&/a&&/li&&/ul&&p&这篇文章讲述了如何通过Jvm命令去调优,各Jvm命令使用方法。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3Da2d7c9f2e73dfcc938a3ec934b3ad3a4%26chksm%3Debf6da2ddc81533beb5e6fb54c872b5fccabda7dee4073%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(五):Java GC分析&/a&&/li&&/ul&&figure&&img src=&https://pic1.zhimg.com/v2-54ec57bcb0d73babe1c54c_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&1080& data-rawheight=&324& class=&origin_image zh-lightbox-thumb& width=&1080& data-original=&https://pic1.zhimg.com/v2-54ec57bcb0d73babe1c54c_r.jpg&&&/figure&&p&这是非常有名的一张图,简单明了展示了GC日志的构成&/p&&p&文章介绍如何分析GC日志来诊断Java项目的运行状态,GC分析是生产调优的重要手段之一。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3De8d150bb760d0a92aada9d%26chksm%3Debf6da18dc81530eedeaff89d746cf48e7b2bdec602239faaeb4e8e490e0a0c327%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(六):Java服务GC参数调优案例&/a&&/li&&/ul&&p&一名网友根据GC日志,进行Jvm调优的经典案例&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3D39be119fdf3132240adc84a85bf8a054%26chksm%3Debf6da08dcdb6c07a123efdea7c78c0ae2f064cc577bd4%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(七):jvm调优-工具篇&/a&&/li&&/ul&&p&介绍了Jvm调优各种工具的使用&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3De083cc8b6ac3%26chksm%3Debf6daf9dc8153ef27ecd857e6ccda46dd2c28b8b3%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(八):jvm知识点总览&/a&&/li&&/ul&&p&如何你只是想通过面试,其实只要看一篇就够了,这篇文章将Jvm中的关键知识点进行了汇总。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3D51d2ed2bdd47f%26chksm%3Debf6daf5dccb88ca97621cfae5aeaaeec0a1ff63e16278fbea6afc9f0b%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(九):如何优化Java GC&/a&&/li&&/ul&&p&翻译自国外的一篇Java GC文章,文章详细描述几种GC调优的方式,值得借鉴。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3Db91f73ca%26chksm%3Debf6dad8dc8153cebb5a3cf95cee2fb9fb33c50d46c64f%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(十):教你如何成为Java的OOM Killer&/a&&/li&&/ul&&p&也是线上一场线上Jvm实战调优的经历,看着挺爽。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3Dafaf99f62b38b2f5c268%26chksm%3Debf6dad5dcce0201afe310bbb028a8fd9df7ecaf6ec7df5%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(十一):Java 8-从持久代到metaspace&/a&&/li&&/ul&&p&Java 8 Jvm内存变化&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3D2a2a64cec1c85bdeca76%26chksm%3Debf6dab5dc8153a31ccbd74f32ff0efc3bb108fac95b1dec85caa60%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Jvm系列(十二):Java 8的新特性—终极版&/a&&/li&&/ul&&p&杜琪翻译的 Java 8 的新特性。&/p&&p&&br&&/p&&ul&&li&&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI4NDY5Mjc1Mg%3D%3D%26mid%3D%26idx%3D1%26sn%3D7bb57b405e808cbchksm%3Debf6da6edc6ca644de17f32bbdc68cc55cd4bdad6d04dc69f592f51c%26scene%3D21%23wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&一个脚本引发的血案&/a&&/li&&/ul&&p&我们曾经线上出现事故后,定位分析的经历,结局出乎意料。&/p&&p&&br&&/p&&p&最后送给大家一个精美的Jvm ppt,到目前为止这是我见过介绍Jvm最漂亮的ppt,放两张截图给大家瞅瞅&/p&&p&&br&&/p&&figure&&img src=&https://pic4.zhimg.com/v2-dfc3b65b983a82ea507e2a_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&874& data-rawheight=&662& class=&origin_image zh-lightbox-thumb& width=&874& data-original=&https://pic4.zhimg.com/v2-dfc3b65b983a82ea507e2a_r.jpg&&&/figure&&figure&&img src=&https://pic4.zhimg.com/v2-39b48ce670c2edb15ba8cc1_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&870& data-rawheight=&651& class=&origin_image zh-lightbox-thumb& width=&870& data-original=&https://pic4.zhimg.com/v2-39b48ce670c2edb15ba8cc1_r.jpg&&&/figure&&p&此PPT长达46页,Jvm体系介绍非常完整,感兴趣的同学选择获取。&b&PPT获取方式&/b&,关注公号“IT轻社区(itmind)”,回复:&Jvm& 即可。&/p&&p&&a href=&https://link.zhihu.com/?target=http%3A//weixin.qq.com/r/6jk-Jy3EanAVrWlE92z4& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&weixin.qq.com/r/6jk-Jy3&/span&&span class=&invisible&&EanAVrWlE92z4&/span&&span class=&ellipsis&&&/span&&/a& (二维码自动识别)&/p&&p&最后做一个小调查,2018年你会跳槽吗?&br&&/p&&blockquote&&i&关于换工作你还有什么困惑也欢迎给我留言,我们一起讨论。&/i&&/blockquote&
2016年左右的时候读了周志明《深入理解Java虚拟机:JVM高级特性与最佳实践》,读完之后受益匪浅,让我对Java虚拟机有了一个完整的认识,这是Jvm书籍中最好的读物之一。后来结合实际工作中遇到的问题,写了一系列关于Jvm的文章,其中开篇的几篇内容大部分参…
''''''''''''''''' 以下所有文字均为答主手敲,转载请注明出处和作者 '''''''''''''''''' &br&&br&如有条件的话,可以遵循以下的步骤学习:&br&&br&1) 理解基本的语法,上机练习简单的操作&br&2) 反复阅读理解有经验人士的代码&br&3) 对于一些简单的需求,可以试着自己解决&br&4) 对于VBA而言,同一个目标可以有很多实现方法。故同样的需求,可比较别人的实现方法和自己的实现方法,并加以比较评判&br&5) 随着学习的深入,评判、重写自己的代码&br&&br&'''''''''''''''''''''''''''''''''''''''' 我是正文 ''''''''''''''''''''''''''''''''''''''''&br&&b&1. 一点历史&/b&&br&VBA,全称Visual Basic for Applications。从名称上看,至少包含了3个历史阶段的产物,依次是&br&- BASIC&br&- Visual Basic&br&- Visual Basic for Applications&br&&br&BASIC是一门古老的计算机语言,首次发表于1964年。BASIC语言贴近于英语语法,使用者也不需要对计算机硬件知识(尤其是内存管理)有很多了解,故对于非专业程序员,也能极为迅速的上手。使用BASIC,计算机上需要安装一个叫“BASIC解释器”的软件,将BASIC程序代码翻译为计算机能够识别的机器指令。同时,BASIC解释器通常带有一个文本编辑环境供输入代码。随着个人电脑的普及,BASIC解释器通常是作为预装软件出现,故用户开机就能用上BASIC。&br&&br&用于MITS Altair 8800型个人电脑的BASIC解释器是微软公司的第一个产品,由比尔盖茨等微软创始人亲自开发。此后,微软的DOS和Windows 3系列、Windows 9X系列都预装了BASIC解释器(称为QBasic)。从Windows 2000开始QBasic不再预装,但是QBasic仍然可以运行于Windows 10之上(只限32位)。&br&&br&&figure&&img data-rawheight=&915& data-rawwidth=&1136& src=&https://pic1.zhimg.com/50/4cbffa9eb8eb27bd9d171eb4ed57bcec_b.jpg& class=&origin_image zh-lightbox-thumb& width=&1136& data-original=&https://pic1.zhimg.com/50/4cbffa9eb8eb27bd9d171eb4ed57bcec_r.jpg&&&/figure&&i&QBasic 运行于Windows 10&/i&&br&&br&从BASIC的历史可以看出,这门语言本来就是为非计算机专业人士准备的,而且微软公司与之有不解的渊源。之后的发展也是如此。&br&&br&计算机软件进入到图形用户界面时代,微软公司开发了可以编写Windows图形应用程序的新语言Visual Basic以及对应的开发软件Visual Basic IDE(所以Visual Basic既指一门语言又指微软为此提供的开发软件)。新语言Visual Basic继承了BASIC语言的关键字和语法,仍然保持易学易用的风格。尽管Visual Basic解释器是Windows操作系统的一部分,然而想用Visual Basic开发软件,仍然需要独立购买和安装Visual Basic IDE。&br&&br&&figure&&img data-rawheight=&915& data-rawwidth=&1136& src=&https://pic2.zhimg.com/50/67a1eddad09c5f754ed2_b.jpg& class=&origin_image zh-lightbox-thumb& width=&1136& data-original=&https://pic2.zhimg.com/50/67a1eddad09c5f754ed2_r.jpg&&&/figure&&i&最后一个非.Net版本的 Visual Basic,即 &/i&&i&&i&Visual Basic &/i&6 (1998)运行于Windows 10&/i&&br&&br&1996年,微软开发了Visual Basic Scripting Edition(即VBScript)。顾名思义,VBScript适合快速书写类似批处理的脚本。VBScript的语法与Visual Basic一致。直到今天,Windows依然内置了VBScript解释器,以及能够直接解释文本代码的Windows脚本宿主。所以使用VBScript无需另外投资。&br&&br&微软的Office系列产品同样集成了VBScript解释器,并提供了语言操控Office软件本身的能力。这个VBScript被称之为Visual Basic for Applications(即VBA)。目前主要Office软件都集成了VBA的解释器和集成开发环境(类似于一个简化版的Visual Basic IDE)。换句话说不仅在Excel里,Word、PowerPoint也可以用VBA。VBA的运行环境称之为宿主(Host)。比如,你在Excel里面使用了VBA,那么Excel就是宿主。这个概念也适用于VBScript,对应的宿主可以认为是Windows本身(实际上是Windows的一个组件:Windows脚本宿主WSH)。&br&&br&那么从VBA的历史上我们可以看到,它实际上是由两部分组成的:一个是语言本身的特性,另外一个是宿主提供的功能。语言本身具有通用性,而宿主相关的部分和不同的宿主有关。这篇文章也会对应的分为两个部分,即通用的VBScript和Excel VBA。&br&&br&&b&2. 学习VBScript&/b&&br&&br&学习VBScript,你只需要Windows系统本身。我们使用的工具是系统自带的命令提示符、记事本和Windows脚本宿主。&br&&br&&b&2.1 环境&/b&&br&&br&首先我们建一个工作目录。以下两种操作均可:&br&1.新建一个文件夹,按住Shift然后鼠标右击,选择“在命令提示符中打开”&br&2.按Windows +R,输入cmd,回车。例如想建立的工作目录为 C:\Work,那么就输入&br&&div class=&highlight&&&pre&&code class=&language-bat&&mkdir C:\Work
&span class=&k&&cd&/span& C:\Work
&/code&&/pre&&/div&&br&以下假设我们的工作目录是C:\Work。&br&&br&接下来可以写程序了。在命令提示符下输入&br&&div class=&highlight&&&pre&&code class=&language-text&&notepad hello.vbs
&/code&&/pre&&/div&当记事本提示你创建新文件时,选择“是”&br&&br&比如我们写一个从1加到100的程序。在记事本里输入&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&dim&/span& &span class=&n&&i&/span&&span class=&p&&,&/span&&span class=&n&&sum&/span&
&span class=&n&&sum&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&
&span class=&k&&for&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&mi&&1&/span& &span class=&k&&to&/span& &span class=&mi&&100&/span&
&span class=&n&&sum&/span& &span class=&o&&=&/span& &span class=&n&&sum&/span& &span class=&o&&+&/span& &span class=&n&&i&/span&
&span class=&k&&next&/span&
&span class=&n&&wsh&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&n&&sum&/span&
&/code&&/pre&&/div&按Ctrl+S保存。&br&回到命令提示符,输入&br&&div class=&highlight&&&pre&&code class=&language-text&&cscript hello.vbs
&/code&&/pre&&/div&命令提示符会输出一些版本信息,然后会出现结果5050。如果嫌版本信息太罗嗦,就加一个/nologo的选项:&br&&div class=&highlight&&&pre&&code class=&language-text&&cscript /nologo hello.vbs
&/code&&/pre&&/div&因为Windows对扩展名为.vbs的文件进行了绑定,所以也可以直接运行&br&&div class=&highlight&&&pre&&code class=&language-text&&hello.vbs
&/code&&/pre&&/div&输出的形式略有不同,稍后解释。&br&&br&&b&2.2 基本语法&br&变量:&/b&与数学上的变量意义相同。变量用来存储数据。变量不得使用数字作为开头,原则上不要使用中文作为变量的名字。应使用字母和数字、下划线,例如sum、my_result_0等都可以。&br&&b&字面量&/b&:在代码中可见的数据,例如整数、小数和双引号包裹、可由任意字符组成的字符串。如100、&Hello&、&标题&等。&br&&b&运算:&/b&与数学上的运算意义相同。&br&&b&关键字:&/b&VBScript自带的命令符号,不得用于变量名称。VBScript不区分大小写。通常第一个字母大写。&br&&b&注释:&/b&单引号'直到行尾的所有内容,VBScript均予以忽略。&br&&br&&b&声明&/b&一个变量使用Dim关键字。尽管变量在第一次赋值的时候会自动声明,但努力养成明确声明变量的好习惯。&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&c&&'我是注释&/span&
&span class=&k&&dim&/span& &span class=&n&&x&/span& &span class=&c&&'声明了变量x&/span&
&span class=&k&&dim&/span& &span class=&n&&i&/span&&span class=&p&&,&/span&&span class=&n&&j&/span& &span class=&c&&'声明了变量i和j&/span&
&/code&&/pre&&/div&用操作符=给变量&b&赋值&/b&。=右侧的表达式将被求值,然后赋予=左侧的变量&br&可以把字面量、运算的&b&结果&/b&或者函数&b&返回&/b&的值赋给变量。=赋值只适用于整数、字符串等简单类型的赋值。&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&Option&/span& &span class=&n&&Explicit&/span& &span class=&c&&'强制要求变量使用之前必须声明&/span&
&span class=&k&&dim&/span& &span class=&n&&my_result&/span&
&span class=&n&&my_result&/span& &span class=&o&&=&/span& &span class=&mi&&1&/span& &span class=&c&&'赋予字面量1&/span&
&span class=&c&&'获得函数的返回值&/span&
&span class=&n&&my_result&/span& &span class=&o&&=&/span& &span class=&n&&InputBox&/span&&span class=&p&&(&/span&&span class=&s&&&输入一个数字&&/span&&span class=&p&&,&/span&&span class=&s&&&我的程序&&/span&&span class=&p&&)&/span&
&span class=&n&&my_result&/span& &span class=&o&&=&/span& &span class=&n&&my_result&/span& &span class=&o&&*&/span& &span class=&mi&&2&/span& &span class=&c&&'获得运算的结果&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&n&&my_result&/span&
&/code&&/pre&&/div&&b&函数&/b&与数学上的多元函数意义相同。函数需要零个或多个&b&参数&/b&,&b&返回&/b&一个运算的结果。上面的代码在调用一个函数InputBox,并赋予其2个字符串参数,以逗号隔开。当不需要返回值时,括号可以省略。&br&&br&InputBox是VBScript的内建函数,而这段代码最后的WScript.echo看起来也是个函数。即WScript.echo(my_result)的简写。这个“函数”并不是VBScript提供的,而是Windows脚本宿主的功能。不得不在这里介绍是因为需要有一个输出数据的方法,而输出数据的方法VBScript本身并没有提供。事实上Windows脚本宿主对WScript.echo的解释也有不同,当用cscript hello.vbs调用脚本宿主时,WScript.echo输出到命令提示符;当用wscript hello.vbs,或者直接运行hello.vbs时,WScript.echo表现为弹出对话框。&br&&br&前面提到的代码都是逐条执行的。而条件分支的含义是根据数据的不同而选择性的执行不同的代码。举例&br&&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&dim&/span& &span class=&n&&age&/span&
&span class=&n&&age&/span& &span class=&o&&=&/span& &span class=&n&&InputBox&/span&&span class=&p&&(&/span&&span class=&s&&&输入年龄&&/span&&span class=&p&&)&/span&
&span class=&k&&If&/span& &span class=&n&&age&/span& &span class=&o&&&&/span& &span class=&mi&&18&/span& &span class=&k&&Then&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&成年&&/span&
&span class=&k&&Else&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&未成年&&/span&
&span class=&k&&End&/span& &span class=&k&&If&/span&
&/code&&/pre&&/div&关键字 If-Then-Else-End If形成了两个分支,习惯上分支内部的代码最好给予一些空格缩进。If后面的语句是所谓条件表达式。整个表达式会被求值,若为Ture,则运行Then之后的语句后跳至End If,否则跳过Then后面的语句,直接从Else开始直到End If。如果没有Else分支,则直接跳至End If。故Else分支是可选的,当然可以有多个分支:&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&dim&/span& &span class=&n&&age&/span&
&span class=&n&&age&/span& &span class=&o&&=&/span& &span class=&n&&InputBox&/span&&span class=&p&&(&/span&&span class=&s&&&输入年龄&&/span&&span class=&p&&)&/span&
&span class=&k&&If&/span& &span class=&n&&age&/span& &span class=&o&&&&/span& &span class=&mi&&18&/span&
&span class=&k&&Then&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&少年儿童&&/span&
&span class=&k&&ElseIf&/span& &span class=&n&&age&/span& &span class=&o&&&&/span& &span class=&mi&&65&/span& &span class=&k&&Then&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&老年&&/span&
&span class=&k&&Else&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&其他&&/span&
&span class=&k&&End&/span& &span class=&k&&If&/span&
&/code&&/pre&&/div&实际上相当于嵌套的分支:&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&dim&/span& &span class=&n&&age&/span&
&span class=&n&&age&/span& &span class=&o&&=&/span& &span class=&n&&InputBox&/span&&span class=&p&&(&/span&&span class=&s&&&输入年龄&&/span&&span class=&p&&)&/span&
&span class=&k&&If&/span& &span class=&n&&age&/span& &span class=&o&&&&/span& &span class=&mi&&18&/span&
&span class=&k&&Then&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&少年儿童&&/span&
&span class=&k&&Else&/span&
&span class=&k&&If&/span& &span class=&n&&age&/span& &span class=&o&&&&/span& &span class=&mi&&65&/span& &span class=&k&&Then&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&老年&&/span&
&span class=&k&&Else&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&其他&&/span&
&span class=&k&&End&/span& &span class=&k&&If&/span&
&span class=&k&&End&/span& &span class=&k&&If&/span&
&/code&&/pre&&/div&&br&除了分支之外,某一段代码还可以反复执行。最简单的情况,例如打印5个&Hello&&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&dim&/span& &span class=&n&&i&/span&
&span class=&k&&for&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&mi&&1&/span& &span class=&k&&to&/span& &span class=&mi&&5&/span&
&span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&echo&/span& &span class=&s&&&Hello&&/span&&span class=&p&&,&/span&&span class=&n&&i&/span&
&span class=&k&&next&/span&
&/code&&/pre&&/div&关键字 for-to-next创建了一个&b&循环&/b&。循环变量i依次赋值为1、2、3、4、5,每次赋值后,for-next之间的代码都会完整执行一次。&br&&br&&b&2.3 获取帮助&/b&&br&以上只是谈到了VBScript最最基本的用法,能够覆盖大概60%的常用情景。但完整使用VBScript需要掌握80%的功能。&br&答主极为推荐的Tutorial是下面这个:&br&&a href=&//link.zhihu.com/?target=http%3A//www.csidata.com/custserv/onlinehelp/vbsdocs/VBSTUTOR.HTM& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&VBScript Tutorial&/a&&br&只需要阅读VBScript Basics的部分,就可以掌握80%。&br&如果遇到了非常疑难的问题,应该参考最权威的官方文档(MSDN):&br&&a href=&//link.zhihu.com/?target=https%3A//msdn.microsoft.com/en-us/library/d1wf56tt%2528v%3Dvs.84%2529.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&VBScript Language Reference&/a&&br&&br&&b&3. 学习Excel VBA&br&&/b&对于想要学习Excel VBA的非程序员朋友,可能遇到的最大的一个门槛就是“面向对象编程”的概念。但对于掌握VBA,对“面向对象编程”先能够理解到以下程度就基本OK了:&br&&br&我家有一只宠物猫。这里,宠物是一个&b&类(class)&/b&,我家的猫是这个类的一个&b&对象(object)&/b&。猫是白色的,白色就是这个对象的一个&b&属性(property)&/b&。我家猫去做绝育就是&b&设置(property set)&/b&该对象的另外一个属性。猫&b&吃&/b&罐头是在&b&执行&/b&该对象的一个&b&方法(method)&/b&。&br&&br&可以认为,Excel以类库(Class Library)的方式扩展了VBScript。在面向对象编程中,对于一个类库有两种使用的方式:1是对类进行&b&继承&/b&(例如,类“猫科动物”就是对类“哺乳动物”的继承);2是对类进行&b&例化&/b&而形成特定的&b&对象&/b&(例如,养一只猫)。对于Excel来说,绝大多数时候在使用第2种方式,即关心如何产生和使用对象。&br&&br&对于某种功能,Excel将其设置为属性还是设置为方法是有讲究的,通常来说,对象自身的特性(标题、尺寸)等会被设置为属性,而涉及对象与其他对象交互的功能会被设置为方法。并不是所有的面向对象系统都如此。&br&&br&本部分我们将设定一个简单的需求:在工作表中创建一个10x10的矩阵,每个元素都是1~100之间的一个随机整数。&br&&br&&b&3.1 环境&/b&&br&&br&有两种方式可使用Excel VBA,一个是使用Windows VBS引入Excel对象,一个是在Excel内部编程。前一种的好处是,因为程序在Excel外部,故可以连续处理多个Excel文件。后一种的好处是有一个集成开发环境(Excel VBE)可以使用,便于调试,缺点是代码分散,且Excel必须启用宏。&br&&br&下面分别讨论。&br&&br&&b&3.2 示例&/b&&br&&br&第一种方法,仍然使用本文第二部分的环境,用记事本新建一个文件,录入以下代码:&br&&div class=&highlight&&&pre&&code class=&language-vb.net&&&span class=&k&&Option&/span& &span class=&n&&Explicit&/span&
&span class=&k&&Dim&/span& &span class=&n&&app&/span&&span class=&p&&,&/span&&span class=&n&&workbook&/span&&span class=&p&&,&/span&&span class=&n&&sheet&/span&
&span class=&k&&Dim&/span& &span class=&n&&row&/span&&span class=&p&&,&/span&&span class=&n&&col&/span&
&span class=&k&&Set&/span& &span class=&n&&app&/span& &span class=&o&&=&/span& &span class=&n&&WScript&/span&&span class=&p&&.&/span&&span class=&n&&CreateObject&/span&&span class=&p&&(&/span&&span class=&s&&&Excel.Application&&/span&&span class=&p&&)&/span&
&span class=&n&&app&/span&&span class=&p&&.&/span&&span class=&n&&Visible&/span& &span class=&o&&=&/span& &span class=&k&&True&/span&
&span class=&k&&Set&/span& &span class=&n&&workbook&/span& &span class=&o&&=&/span& &span class=&n&&app&/span&&span class=&p&&.&/span&&span class=&n&&WorkBooks&/span&&span class=&p&&.&/span&&span class=&n&&Add&/span&
&span class=&k&&Set&/span& &span class=&n&&sheet&/span& &span class=&o&&=&/span& &span class=&n&&workbook&/span&&span class=&p&&.&/span&&span class=&n&&Worksheets&/span&&span class=&p&&(&/span&&span class=&mi&&1&/span&&span class=&p&&)&/span&
&span class=&c&&'10x10 random value&/span&
&span class=&k&&For&/span& &span class=&n&&row&/span& &span class=&o&&=&/span& &span class=&mi&&1&/span& &span class=&k&&To&/span& &span class=&mi&&10&/span&
&span class=&k&&For&/span& &span class=&n&&col&/span& &span class=&o&&=&/span& &span class=&mi&&1&/span& &span class=&k&&To&/span& &span class=&mi&&10&/span&
&span class=&n&&sheet&/span&&span class=&p&&.&/span&&span class=&n&&Cells&/span&&span class=&p&&(&/span&&span class=&n&&row&/span&&span class=&p&&,&/span&&span class=&n&&col&/span&&span class=&p&&).&/span&&span class=&n&&Value&/span& &span class=&o&&=&/span& &span class=&k&&CInt&/span&&span class=&p&&(&/span&&span class=&n&&Int&/span&&span class=&p&&((&/span&&span class=&mi&&100&/span& &span class=&o&&*&/span& &span class=&n&&Rnd&/span&&span class=&p&&())&/span& &span class=&o&&+&/span& &span class=&mi&&1&/span&&span class=&p&&))&/span&
&span class=&k&&Next&/span&
&span class=&k&&Next&/span&
&span class=&k&&Set&/span& &span class=&n&&sheet&/span& &span class=&o&&=&/span& &span class=&n&&workbook&/span&&span class=&p&&.&/span&&span class=&n&&Worksheets&/span&&span class=&p&&(&/span&&span class=&mi&&2&/span&&span class=&p&&)&/span&
&span class=&c&&'10x10 random value&/span&
&span class=&n&&sheet&/span&&span class=&p&&.&/span&&span class=&n&&Range&/span&&span class=&p&&(&/span&&span class=&s&&&A1:J10&&/span&&span class=&p&&).&/span&&span class=&n&&Formula&/span& &span class=&o&&=&/span& &span class=&s&&&=Int(Rand() * 100 + 1)&&/span&
&/code&&/pre&&/div&&br&“WScript.CreateObject(&Excel.Application&)” 是Windows脚本宿主提供的&b&方法(method)&/b&。&br&WScript就是&b&Windows脚本宿主对象&/b&,方法在本质上是这个对象的&b&成员函数&/b&。当你的电脑中安装了Excel之后,会在系统数据库中注册叫做Excel.Application这样一个服务。换句话说,WScript.CreateObject(&Excel.Application&)相当于“启动Excel这个软件”&br&&br&注意到这里使用了Set关键字而不是直接赋值,这其中的原因是=只适用于简单数值的赋值,但函数WScript.CreateObject(&Excel.Application&)的返回值是一个&b&对象句柄&/b&。凡对象句柄之间的赋值都要用Set。&br&&br&接下来设置这个app对象的属性Visible为True,意为把Excel程序显示出来。如果批量处理很多文件,则不用设置这个属性,程序将在后台运行,不会跳出很多Excel来。&br&&br&我们知道启动Excel时会自动新建一个工作簿(WorkBook),但编程创建的App对象不会自动创建工作簿。Excel中,已经打开的工作簿构成了一个&b&工作簿集合&/b&。在VBA里面多个同类的对象通常被归拢到一个集合(collection)当中,而集合本身也是一个对象。在Excel VBA中有各种各样的集合,工作簿集合、工作表集合、图形集合等。对于集合对象有一些统一的方法,例如Add方法的含义是,在该集合中添加一个对象,并返回它。那么Set workbook = app.WorkBooks.Add这句话执行后,Excel就创建了一个新的WorkBook,程序获得了一个workbook对象。&br&&br&每一个workbook对象在创立后,它的WorkSheets集合会自动添加3个工作表(如同Excel新建工作簿一样)可以通过调用worksheets方法来得到某个工作表。(注:Excel 2013以及后续,workbook对象在创立后只会自动添加一个工作表)&br&&br&对于第一个工作表,我们设置了两重循环为10x10的矩阵设置随机值。CInt()、Int()和Rnd()函数是VBScript内建函数,具体用法可查阅MSDN。对于第二个工作表,我们利用Excel自带的公式得到随机值。这就是所谓“达成同样的目标有不同的方法”。&br&&br&以上我们的代码都在Excel外部运行。Excel内部有VBA的集成开发环境,仍然以随机数为例:&br&&br&在Excel中按Alt+F11组合键呼出集成开发环境。左侧的工程管理窗口会列出所有打开的工作簿,每一个工作簿对应一个VBAProject。每个VBAProject下除了列出所有的工作表独有的代码之外,还有一个ThisWorkbook的项目文件,代表这个工作薄范围内的代码。除此之外,VBAProject还可能有窗体、用户自己开发的类等等。&br&&br&&figure&&img data-rawheight=&715& data-rawwidth=&969& src=&https://pic4.zhimg.com/50/c5b1ede4ce613966fbabf3_b.jpg& class=&origin_image zh-lightbox-thumb& width=&969& data-original=&https://pic4.zhimg.com/50/c5b1ede4ce613966fbabf3_r.jpg&&&/figure&&br&&i&Excel 2013 Visual Basic for Applications Develop Environment,与Visual Basic 6非常相似。&/i&&br&&br&&figure&&img data-rawheight=&702& data-rawwidth=&1038& src=&https://pic2.zhimg.com/50/208fee5deb746_b.jpg& class=&origin_image zh-lightbox-thumb& width=&1038& data-original=&https://pic2.zhimg.com/50/208fee5deb746_r.jpg&&&/figure&&i&Excel 2016 Visual Basic 编辑器(微软:对你们苹果用户做到这份儿已经够意思了,要啥自行车啊)。&/i&&br&&br&我们将代码放进ThisWorkbook中。这个代码被一个Sub子过程包裹,名字是我们自己起的。这段代码和刚才的代码稍有不同,首先,对于一个句柄变量,声明时最好指定它的类型,其次,由于代码已经位于Workbook内部,故无需创建Excel进程、也无需创建workbook对象。Worksheets成为“内建函数”。而CInt等VBScript内建函数此处仍可以使用。&br&&br&按F5,由于整个代码块只有一个子过程,该唯一子过程会立即执行。如果关闭了VBA集成开发环境,则可以在Excel菜单中执行“运行宏”来执行这段代码。&br&&br&最后,由于Excel的安全策略,含有代码的文件需要保存为.xlsm格式。&br&&br&&b&3.3 获得帮助&/b&&br&&br&学习Excel VBA较为正规的图书是 John Green的 &i&Excel 2007 VBA Programmer's Reference&/i&,中文版由Excel Home翻译为《Excel 2007 VBA参考大全》。这本书应至少阅读完前7章。阅读完前4章即可以尝试解决工作中遇到的问题了。&br&&br&MSDN的&a href=&//link.zhihu.com/?target=https%3A//msdn.microsoft.com/en-us/library/office/ff194068.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Object model reference (Excel 2013 developer reference)&/a& 相当于一本“词典”,经常翻阅非常有好处。&br&&br&&b&4 写在最后&br&&/b&&br&经常使用Excel的人士普遍对Excel公式掌握的出神入化,但Excel VBA却遵循着不一样的思维方式——它更接近于Excel软件自身的运行规律,而不是数据层面的特点。&br&&br&VBScript和Excel VBA的系统性非常强,一本系统性强、例子丰富的书籍必不可少,MSDN乃居家必备。&br&&br&当然搜索引擎也是一个好助手,把你的问题用英文表述直接Google,通常会获取丰富的答案。不能访问Google也很难科学上网的朋友可以试试 &a href=&//link.zhihu.com/?target=http%3A//aol.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&AOL - News, Sports, Weather, Entertainment, Local & Lifestyle&/a& ,aol的搜索后端是Google提供的。&br&&br&众所周知,百度的中文技术资源质量一向低下(&a href=&http://www.zhihu.com/topic/& class=&internal&&百度 - 话题精华&/a&),因此:&br&&br&&b&无论任何时刻都不要使用百度&/b&&br&&b&无论任何时刻都不要使用百度&br&&/b&&b&无论任何时刻都不要使用百度&/b&&br&&b&&b&无论任何时刻都不要使用百度&br&&/b&&/b&&b&&b&&b&无论任何时刻都不要使用百度&br&&/b&&/b&(特别重要的事情说5遍)&/b&
''''''''''''''''' 以下所有文字均为答主手敲,转载请注明出处和作者 '''''''''''''''''' 如有条件的话,可以遵循以下的步骤学习: 1) 理解基本的语法,上机练习简单的操作 2) 反复阅读理解有经验人士的代码 3) 对于一些简单的需求,可以试着自己解决 4) 对…
&p&2013年受一部关于Mozilla开发火狐浏览器的纪录片和我的计算机课老师影响入了编程坑&/p&&p&2014年受《Minecraft:Mojang的故事》影响开始做游戏&/p&&p&当时初中沉迷Minecraft,本来打算写个MOD然后跟同学们联机玩&/p&&p&当时设想的是:&/p&&blockquote&很多人在一定范围内互相追杀&br&捡物品然后拼成武器&br&捡零件拼载具&br&还要可以破坏地形和自定义地图&/blockquote&&p&但是我发现我当时用MC根本做不出这种玩法,便打算自己做一款&/p&&p&就这样,第一款游戏的设想成型了,起名字为《火花维度》&/p&&p&其中 “火花” 源自 Team Dakota开发的《&a href=&//link.zhihu.com/?target=https%3A//baike.baidu.com/item/%25E7%2581%25AB%25E8%258A%25B1%25E8%25AE%25A1%25E5%Ffr%3Daladdin& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&火花计划&/a&》&/p&&p&“维度” 是靠着Unity自带的cube 脑洞出来的&/p&&p&当初已经自学一个月Unity4.x的我不自量力地要做一款沙盒游戏&/p&&p&自那以后我一直再做一些现在看起来都很匪夷所思的东西...&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-65fe0fd6f7bcd75a38d2aa_b.jpg& data-caption=&& data-rawwidth=&678& data-rawheight=&285& class=&origin_image zh-lightbox-thumb& width=&678& data-original=&https://pic3.zhimg.com/50/v2-65fe0fd6f7bcd75a38d2aa_r.jpg&&&/figure&&p&2015年,初中毕业,我突然意识到:MDZZ我要做点什么了,否则高中就没时间做了&/p&&p&然后做了&b&第一版&/b& &b&自定义物品编辑器 [日]&/b&&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-3c63d85e0da_b.jpg& data-caption=&& data-rawwidth=&1024& data-rawheight=&640& class=&origin_image zh-lightbox-thumb& width=&1024& data-original=&https://pic4.zhimg.com/50/v2-3c63d85e0da_r.jpg&&&/figure&&p&然后又做了一些匪夷所思的东西&/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-46fb9c0ffde2b331cd1488_b.jpg& data-caption=&& data-rawwidth=&1157& data-rawheight=&640& class=&origin_image zh-lightbox-thumb& width=&1157& data-original=&https://pic2.zhimg.com/50/v2-46fb9c0ffde2b331cd1488_r.jpg&&&/figure&&figure&&img src=&https://pic3.zhimg.com/50/v2-fe752fbadf25_b.jpg& data-caption=&& data-rawwidth=&1170& data-rawheight=&640& class=&origin_image zh-lightbox-thumb& width=&1170& data-original=&https://pic3.zhimg.com/50/v2-fe752fbadf25_r.jpg&&&/figure&&p&现在看起来貌似是自定义飞船+空战,当时竟然能多能联机&/p&&p&之后&b&重做&/b&了第二版 &b&自定义物品编辑器&/b&&/p&&figure&&img src=&https://pic1.zhimg.com/50/v2-f2c7b59c2fdf4b4b9cbd09_b.jpg& data-caption=&& data-rawwidth=&1920& data-rawheight=&1080& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&https://pic1.zhimg.com/50/v2-f2c7b59c2fdf4b4b9cbd09_r.jpg&&&/figure&&p&高中入学前瞎做了一个宣传片扔到了Steam青睐之光 &b&[日]&/b&&/p&&p&(MDZZ为啥我当初买绿光授权是100刀啊?为啥别人都是国区20刀啊)&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-bfd6e73adf0a28_b.jpg& data-caption=&& data-rawwidth=&1600& data-rawheight=&1000& class=&origin_image zh-lightbox-thumb& width=&1600& data-original=&https://pic4.zhimg.com/50/v2-bfd6e73adf0a28_r.jpg&&&/figure&&figure&&img src=&https://pic4.zhimg.com/50/v2-e34c81a89a9f3e4dbbf5_b.jpg& data-caption=&& data-rawwidth=&1600& data-rawheight=&999& class=&origin_image zh-lightbox-thumb& width=&1600& data-original=&https://pic4.zhimg.com/50/v2-e34c81a89a9f3e4dbbf5_r.jpg&&&/figure&&p&之后就是&b&典型反面素材&/b&的绿光经历&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-533c57d9ea3f2bd74b67_b.jpg& data-caption=&& data-rawwidth=&275& data-rawheight=&844& class=&content_image& width=&275&&&/figure&&p&4个多月啊喂,后来我问其他开发者朋友他们花了多久,他们:7天啊&/p&&p&但是起码也是通过了青睐之光 &b&[日]&/b&&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-c80ff08ee5cc_b.jpg& data-caption=&& data-rawwidth=&640& data-rawheight=&869& class=&origin_image zh-lightbox-thumb& width=&640& data-original=&https://pic3.zhimg.com/50/v2-c80ff08ee5cc_r.jpg&&&/figure&&p&在这四个月内我&b&重做&/b&了&b&第三版&/b& &b&自定义物品编辑器
&/b&(找不到图了日后补&/p&&p&然后我因为不可抗拒因素3个月没碰电脑...&/p&&p&后来终于拿到了steam开发者授权 &b&[日]&/b&&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-cd2a00d48ce30d4c3afb3f_b.jpg& data-caption=&& data-rawwidth=&1239& data-rawheight=&577& class=&origin_image zh-lightbox-thumb& width=&1239& data-original=&https://pic4.zhimg.com/50/v2-cd2a00d48ce30d4c3afb3f_r.jpg&&&/figure&&p&之后又重做了&b&第四版自定义物品编辑器&/b&&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-e9f6925096cfed317430adf2_b.jpg& data-caption=&& data-rawwidth=&1649& data-rawheight=&869& class=&origin_image zh-lightbox-thumb& width=&1649& data-original=&https://pic4.zhimg.com/50/v2-e9f6925096cfed317430adf2_r.jpg&&&/figure&&figure&&img src=&https://pic2.zhimg.com/50/v2-3a8d93a933acc4951e8aff49089fbab6_b.jpg& data-caption=&& data-rawwidth=&1651& data-rawheight=&876& class=&origin_image zh-lightbox-thumb& width=&1651& data-original=&https://pic2.zhimg.com/50/v2-3a8d93a933acc4951e8aff49089fbab6_r.jpg&&&/figure&&figure&&img src=&https://pic2.zhimg.com/50/v2-ecfbacaf92_b.jpg& data-caption=&& data-rawwidth=&1636& data-rawheight=&861& class=&origin_image zh-lightbox-thumb& width=&1636& data-original=&https://pic2.zhimg.com/50/v2-ecfbacaf92_r.jpg&&&/figure&&figure&&img src=&https://pic1.zhimg.com/50/v2-0d9c04df4f0ccc4209d1_b.jpg& data-caption=&& data-rawwidth=&1654& data-rawheight=&875& class=&origin_image zh-lightbox-thumb& width=&1654& data-original=&https://pic1.zhimg.com/50/v2-0d9c04df4f0ccc4209d1_r.jpg&&&/figure&&p&高二,父母的意思是:游戏别做了,该准备高考了&/p&&p&所以做了一个很不好玩的生存机制就匆匆茫茫上了抢先体验 [日]&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-3abfa0d15326cdb_b.jpg& data-caption=&& data-rawwidth=&505& data-rawheight=&843& class=&origin_image zh-lightbox-thumb& width=&505& data-original=&https://pic4.zhimg.com/50/v2-3abfa0d15326cdb_r.jpg&&&/figure&&p&游戏销量当然不好,依然十分牵挂游戏导致成绩也下降了&/p&&p&又想向父母证明自己,就做出了成为火花维度一个污点的决定 - 入包&/p&&p&后来 粉枪(Pinkgun) 大佬告诉新游戏不应该入包 但是为时已晚&/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-9a00e1add70b498adfb7af02e401a344_b.jpg& data-caption=&& data-rawwidth=&814& data-rawheight=&684& class=&origin_image zh-lightbox-thumb& width=&814& data-original=&https://pic2.zhimg.com/50/v2-9a00e1add70b498adfb7af02e401a344_r.jpg&&&/figure&&p&但是父母看到我赚了那些钱,态度有所转变&/p&&p&便向父母请求了最后一个寒假去做游戏,做了Alpha1.2版本 [2017年2月]&/p&&p&又&b&重做了第五版自定义物品编辑器&/b&&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-7f273adc9ffcc30af9e369a8c316fab4_b.jpg& data-caption=&& data-rawwidth=&1920& data-rawheight=&1080& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&https://pic4.zhimg.com/50/v2-7f273adc9ffcc30af9e369a8c316fab4_r.jpg&&&/figure&&p&加入了随机地形之类的玩法&/p&&figure&&img src=&https://pic1.zhimg.com/50/v2-bfd85fcfbd12ffad8f667d9_b.jpg& data-caption=&& data-rawwidth=&600& data-rawheight=&311& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic1.zhimg.com/50/v2-bfd85fcfbd12ffad8f667d9_r.jpg&&&/figure&&figure&&img src=&https://pic3.zhimg.com/50/v2-352b8c9a82c6ecf6db4b992baf3aa762_b.jpg& data-caption=&& data-rawwidth=&600& data-rawheight=&314& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic3.zhimg.com/50/v2-352b8c9a82c6ecf6db4b992baf3aa762_r.jpg&&&/figure&&p&Alpha 1.2版本又加入了卡牌背景和表情,其中一个表情山寨了一下[滑稽],结果公关炸了&/p&&p&高二的小屁孩子哪懂公关是啥啊,然后便被说是卖表情的游戏...&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-8e71b8c533f45fa1ba0eefa_b.jpg& data-caption=&& data-rawwidth=&415& data-rawheight=&408& class=&content_image& width=&415&&&/figure&&p&再加上临近高三的压力&/p&&p&便有点抑郁了,辍学.不,转上了国际学校,出国。&/p&&p&现在国际学校也快结课了便有很多时间去写代码&/p&&p&最近开始&b&重做第六版自定义物品编辑器,不,这次是全部重做,删掉28GB的项目,从零开始&/b&&/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-e42b259eed6c0fa6b8b70cafebd88f8a_b.jpg& data-caption=&& data-rawwidth=&1920& data-rawheight=&869& class=&origin_image zh-lightbox-thumb& width=&1920& data-original=&https://pic2.zhimg.com/50/v2-e42b259eed6c0fa6b8b70cafebd88f8a_r.jpg&&&/figure&&hr&&p&这边是我的独立开发之路,一人行者,尽管走了很多弯路,但我会一直走下去。&/p&
2013年受一部关于Mozilla开发火狐浏览器的纪录片和我的计算机课老师影响入了编程坑2014年受《Minecraft:Mojang的故事》影响开始做游戏当时初中沉迷Minecraft,本来打算写个MOD然后跟同学们联机玩当时设想的是:很多人在一定范围内互相追杀 捡物品然后拼成武…
&p&推荐5部正经的大片,豆瓣评分全部在8分以上,质量很高,且其中不乏由真实故事改编,非常经典。&/p&&p&以及,最后有一个买5送1的神秘彩蛋,给你个小惊喜。&/p&&br&&p&&b&1、大空头 The Big Short (2015)&/b&&/p&&br&&figure&&img src=&https://pic1.zhimg.com/50/v2-b0ccf087b66c863c0949bbf9f8bd58cc_b.jpg& data-rawwidth=&855& data-rawheight=&1334& class=&origin_image zh-lightbox-thumb& width=&855& data-original=&https://pic1.zhimg.com/50/v2-b0ccf087b66c863c0949bbf9f8bd58cc_r.jpg&&&/figure&&br&&p&推荐理由:这种电影最怕“银行家们都是混蛋,百姓被剥削最可怜”这种道德指责。《大空头》很好地用末世来临的全景方式,展现了每个参与其中的人的行为。嬉笑怒骂插科打诨,恣意不羁剪辑凌厉。但是电影让人印象最深的,还是金融/经济危机的根源,就是大家普遍对资产基本面的忽视。遍地皆是低质量的房产贷款,但几乎所有金融机构和投资人却茫然无知,都期待房价会持续往天上飙升。对比国内的楼市,也颇有同样的担忧。&/p&&p&导演: 亚当·麦凯&/p&&p&主演: 克里斯蒂安·贝尔 / 史蒂夫·卡瑞尔 / 瑞恩·高斯林 / 布拉德·皮特&/p&&p&豆瓣评分:8.3&/p&&p&剧情简介:2008年全球金融危机,华尔街几位眼光独到的投资鬼才,在2007年美国信贷风暴前就看穿了泡沫假象,通过做空次贷CDS而大幅获益,成为少数在金融灾难中大量获利的投资枭雄。&/p&&br&&p&&b&2、大而不倒 Too Big to Fail (2011)&/b&&/p&&figure&&img src=&https://pic4.zhimg.com/50/v2-e9d402d7f4adfdebb2c1_b.jpg& data-rawwidth=&842& data-rawheight=&1251& class=&origin_image zh-lightbox-thumb& width=&842& data-original=&https://pic4.zhimg.com/50/v2-e9d402d7f4adfdebb2c1_r.jpg&&&/figure&&p&推荐理由:“大到不能倒”指向的公司,实际上是指当时世界上最大的保险集团AIG。本片是对2008年美国次贷危机一个最好的解读和演绎。它勾勒了中国政府在这场危机中扮演的冤大头角色,同时也交代了富豪巴菲特在美国金融领域里特殊又无人能及的地位。&/p&&p&导演: 柯蒂斯·汉森&/p&&p&主演: 詹姆斯·伍兹 / 约翰·赫德 / 威廉·赫特 / 艾米·卡尔森&/p&&p&豆瓣评分:8.2&/p&&p&剧情简介:影片背景是2008年的全球金融危机,以美国财政部长汉克·保尔森为主要线索,记录了在几周之内决定全球最大经济体命运的权力人物的决策与行动。为拯救全球经济,摆脱金融困境,不仅保尔森倾尽全力,美联储主席本·伯南克、纽约联邦储备银行行长蒂姆·盖特纳等人也动用了自己的私人关系和渠道。除此之外,沃伦·巴菲特、投资银行家、英国监管机构以及几乎所有的国会议员都参与到了这场没有硝烟的金融大战中。 &/p&&br&&p&&b&3、监守自盗 Inside Job (2010)&/b&&/p&&figure&&img src=&https://pic1.zhimg.com/50/v2-1de409adcbdea022b356c_b.jpg& data-rawwidth=&842& data-rawheight=&1251& class=&origin_image zh-lightbox-thumb& width=&842& data-original=&https://pic1.zhimg.com/50/v2-1de409adcbdea022b356c_r.jpg&&&/figure&&br&&p&推荐理由:窃钩者诛,窃国者侯。控制人类命运和生命财产的,似乎从来都是一帮衣冠楚楚的流氓和骗子。但从另个角度看,一部如此尖锐的暴露政府权钱交易的纪录片,都能评为奥斯卡最佳,可见美国的政治已是相当公开和透明,绝对不可想象这种事情会在贵国发生。&/p&&p&导演: 查尔斯·弗格森&/p&&p&主演: 马特·达蒙 / William Ackman / Daniel Alpert / Jonathan Alpert &/p&&p&豆瓣评分:8.7&/p&&p&剧情简介:2008年,全球金融海啸,多国陷入金融危机,损失高达20万亿美元,数以百万计人加入失业大军,甚至丧失家园……本片通过详尽的资料搜集,追访全球金融业界猛人、政客、财经记者,披露金融大鳄的崛兴之路,公开业内和学界贪污腐败的政策背后的惊人真相。&/p&&br&&p&&b&4、安然:房间里最聪明的人 Enron: The Smartest Guys in the Room (2005)&/b&&/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-fc703a22b39_b.jpg& data-rawwidth=&882& data-rawheight=&1251& class=&origin_image zh-lightbox-thumb& width=&882& data-original=&https://pic2.zhimg.com/50/v2-fc703a22b39_r.jpg&&&/figure&&br&&p&推荐理由:安然公司在2001年宣告破产之前,是世界上最大的电力、天然气以及电讯公司之一,公司连续六年被《财富》杂志评选为“美国最具创新精神公司”。然而真正使安然公司在全世界声名大噪的,却是2002年使这家公司在几周内破产的财务造假丑闻。该纪录片真实地还原了安然破产背后,血淋淋的资本运作。该经典案例对于投资人学习识别资产基本面陷阱,会有所启发。&/p&&p&导演: 亚历克斯·吉布尼 &/p&&p&豆瓣评分:8.5&/p&&p&剧情简介:记录华尔街有史以来最大的商业丑闻,揭露一群绝顶聪明的高阶经理人,如何将美国第七大企业搞挂,轻轻松松卷走十亿美金,让投资人血本无归,上万员工失去工作。 本记录片根据安然事件畅销书《The Smartest Guys in the Room》摄制,运用访谈画面、录音、企业内部数据制作而成,甚至揭露布什家族可能涉案的内幕。&/p&&br&&p&&b&5、华尔街 Wall Street (1987)&/b&&/p&&br&&figure&&img src=&https://pic3.zhimg.com/50/v2-cd41a597beef_b.jpg& data-rawwidth=&855& data-rawheight=&1251& class=&origin_image zh-lightbox-thumb& width=&855& data-original=&https://pic3.zhimg.com/50/v2-cd41a597beef_r.jpg&&&/figure&&br&&p&推荐理由:这是一部财经题材电影中的经典。电影中的游戏是这样的:你要么抛弃良知,要么出局;但如果你是圈子里的人,钱、妞、地位、名望,神马都有。直到今天这个游戏仍然在现实中继续。&/p&&p&导演: 奥利佛·斯通&/p&&p&主演: 查理·辛 / 迈克尔·道格拉斯 / 达丽尔·汉纳 / 塔马拉·图尼&/p&&p&豆瓣评分:8.1&/p&&p&剧情简介:美国华尔街股市大亨戈登·盖柯在金融界叱咤风云,人人敬畏。初出茅庐的纽约大学毕业生保罗·巴德野心勃勃,一个偶然的机会,他接触到盖柯,用一个股市内幕情报帮其赚了笔大钱而受到重用。直到在一场收购他父亲所工作的航空公司的过程中,贪得无厌的盖柯出尔反尔想要解散并卖掉它,这让尚有良知的巴德幡然醒悟。他利用盖柯教会他的一切股市战术,狠狠地反击了盖柯,帮助父亲拯救了蓝星航空。然而,因为违法操控股票内线交易,巴德不得不面临着冰冷的铁窗…… &/p&&br&&p&最后是一个彩蛋!&/p&&p&一部可以陪小朋友看的动画片!&/p&&p&毕竟……财商的培养要从娃娃抓起:&/p&&p&&b&巴菲特神秘俱乐部 Secret Millionaire's Club (2011)&/b&&/p&&br&&figure&&img src=&https://pic4.zhimg.com/50/v2-a78ced25e612dda87a9fce42fcc002ef_b.jpg& data-rawwidth=&892& data-rawheight=&1251& class=&origin_image zh-lightbox-thumb& width=&892& data-original=&https://pic4.zhimg.com/50/v2-a78ced25e612dda87a9fce42fcc002ef_r.jpg&&&/figure&&br&&p&推荐理由:巴菲特神秘俱乐部动画以股神巴菲特为主角,由&b&巴菲特本人亲自配音&/b&。巴菲特将在动画片中化身神秘俱乐部的主席,与几个性格各异的孩子,一起讨论各种“投资”和“理财”话题。&/p&&p&故事紧跟商业,风格时尚活泼,每一小集的“巴菲特箴言”,浓缩了巴菲特本人在商业投资领域的智慧,比如:&/p&&p&“最好的投资就是投资自己!”&/p&&p&“要从自己的失败中吸取教训,最好是从别人的失败中吸取训。”&/p&&p&“学会正确的取舍至关重要,但不要为了任何事情舍弃你的名誉!”&/p&&p&“没有计划就等于失败,好的准备是成功的一半”……&/p&&br&&p&有没有觉得,巴菲特老爷子灌的鸡汤,特别的香?&/p&&br&&p&以上。&/p&&p&&i&本文内容首发于微信公众号“无马识财”(ID:wumajinrong)&/i&&/p&&p&&i&未经许可严禁转载,违者沙包大的小拳拳捶你后脑勺~&/i&&/p&
推荐5部正经的大片,豆瓣评分全部在8分以上,质量很高,且其中不乏由真实故事改编,非常经典。以及,最后有一个买5送1的神秘彩蛋,给你个小惊喜。 1、大空头 The Big Short (2015) 推荐理由:这种电影最怕“银行家们都是混蛋,百姓被剥削最可怜”这种道德指…
&p&这20部电影都是英语国家孩子在学习商业知识方面必须看的影片。其中包括哈佛商学院一直排第一位的《华尔街》,还有沃顿商学院排第一位的《Trading place》。斯坦福要求商科学生必须看的《boiler room》。&/p&&br&1Wall Street(华尔街)(1987)&br&&p&内部交易是违法的,不违法怎么能够发财。关键看如何违法同时可以掩盖。不看这个影片怎么能够随便进入股市。&/p&&br&2Glengarry Glenn Ross(拜金一族)(1992)&br&&p&当房地产进入萧条的时候,美国的房屋中介的销售顾问都在忙什么?他们如何利用数据库,如何门到门地将房地产销售出去。如何在萧条期包装房地产,如何瞄准新婚家庭的住房需求,如何对准投资需求?看了才知道,如今的美国房地产萧条肯定不会是问题。&/p&&br&3Trading Places(颠倒乾坤)(1983)&br&&p&经济是交易行为的代名词。只要有交易,就需要学会评估交易是否合算,就需要透视交易对方内心的秘密。交易中学到三个核心法则,在世界上任何国家,如何地方只要有交易的地方都适用的本质法则。&/p&&br&4Boiler Room(锅炉房)(2000)&br&&br&&p&难以想像的是违法交易几乎与证券市场形影不离。一个19岁的年轻人如此近距离地目睹财富的操纵过程,让谁富有,那不过是一个随机的选择。&/p&&br&5Pirates of Silicon Valley(硅谷传奇)(1999)&br&&p&比尔· 盖茨与斯蒂夫·乔布斯在所有方面的看法,观点都是对立的。他们只有在一个事情上是绝对共同的,那就是尽一切可能封杀这个影片。硅谷的高科技公司是如何孵化的,是怎么演变成今天这个样子的,不到25岁的年轻人利用了什么样的市场规则,又是如何让市场规则,让客户,让竞争对手形成一个共同体的。阴谋一个接一个,层出不穷的点子笼罩在硅谷的上空。&/p&&br&6The Coca-Cola Kid(可口可乐小子)(1985)&br&&br&&p&不是地震中的可乐男孩,而是美国男孩的可乐生涯。作为一个碳酸饮料的营销从业员,他不得不回答一个问题,在边远的澳大利亚小镇,为什么没有一瓶可口可乐?营销是生意不可缺的部分。尤其是创业中不可缺少。一个男孩用可乐创造一个事业的故事。&/p&&br&7The Secret of My Success(发达之路)(1987)&br&&br&&p&任 何年轻人的梦想中都至少包括两个绝对共同的东西,一个是金钱,一个是美女。明天早晨醒来,发现你不过就是一个北漂的时候,不过就是陷入大上海茫茫人海中的 一个小小小小的水滴的时候,如何实现自己梦想中这两个无法或缺的元素。且看美国堪萨斯的男孩在纽约飘荡的历程。如果纽约可以代表近100年人类商业活动的中心,那么,任何21世纪的年轻人,你不得不面对大城市的喧嚣、躁动,美女可以让你实现金钱的梦想,同样,金钱也可以让你品味美女的诱惑。去追求你梦想中的金钱、美女吧。&/p&&br&8In Good Company(优势合作)(2004)&br&&br&&p&想成为全球级别的公司,怎么能够不看这个影片,至少5次以上呢。大公司都是通过收购来长大的。你会收购吗?知道收购后销售主管是怎么想的吗?知道销售人员背后议论什么吗?联想收购IBM失败的核心因素就是根本没有看懂这个影片。你看得懂吗?当公司与公司之间发生买卖的时候,公司一员的你,位置在哪里?&/p&&br&9Barcelona(巴塞罗那)(1994)&br&&p&美国人的销售方式,销售方法真的可以同行全球吗?一个美国销售在西班牙的销售经历让我们学到销售的价值观,销售对客户文化的处理方式,销售对客户关系的把握。&br&&/p&&br&9Jerry Maguire(甜心先生)(1996)&br&&br&&p&做生意要拿出诚意来。这个影片为美国文化提供了两条经典的短语,风行美国经久不衰。show me the money让我看到钱才是真的。任何生意都如此。怎么才能看到钱,什么情况下,你会忘记这一点,而且通常是客户劝你忘记这一点。生意中没有牢靠的友谊,这是你在创业前必须要牢记的教训。做销售,建立大客户关系不容易。认真看上10遍吧。&/p&&br&11office space(上班一条虫) (1999)&br&&br&&p&公 司缩减规模,预备裁员的时候,这个哥们居然不知道,而且,就在裁员开始的那天,他却决定请假一天。他的两个办公室的好友已经处在被开掉的边缘,无奈,哥们 三个决定实施一个神秘计划,将公司帐号上的钱陆续转移,当然,通过木马病毒的方式。然而,由于这个哥们本来对办公室工作就没有感觉,于是,对于裁员特别轻松,满不在乎,公司高层偏偏就欣赏这样的态度,他居然被留下了。&/p&&br&&p&办公室政治课实战教材。市场经济环境中公司遇到危机时,裁员的本质动机,员工对公司的作用的核心意义都是必须要学习的商业社会的基本规则。&/p&&br&12the corporation(解构企业)(2003)&br&&br&&br&&p&18世纪美国法律正式通过了一个企业可以是一个个人的组织行为后,到21世纪,仅仅两个多世纪,美国的这个公司法居然影响了全球,你可以在中国的公司法中也看到 类似的描述。恰好是这样的法律文本影响了人类社会的组织形态,这个冠之以法人的称号横行全球,世界每一个角度都受到影响。个人的贪婪,个人的无度,个人的 欲望没有止境地扩张,膨胀。从最深刻的本质揭示了资本主义商业规则,并无情地揭示了其存在的弊病以及可以打败之的机会。&/p&&br&&p&商业法,垄断法,公司治理的必修课程。&/p&&br&13the insider(惊爆内幕)(1999)&br&&p&当商业秘密与巨额货币纠缠在一起的时候,阿尔8226;帕 西诺主演的主持人面对了两难的处境。在资本主义的商业社会,在没有约束的情况下,金钱可以换来什么?商业社会的本质是货币自由交换,只要你情我愿,交换什 么都可以,哪怕是交换对公众危害严重的吸烟的秘密。科学家的良知能否用钱收购,中国古语说的有钱能使鬼推磨,真的在外国对于鬼来说有效吗?&br&&/p&&br&&p&交易中的商业价值,交易中的定价原理,商业信誉在交易中的作用都是这个影片中活生生地展示出来的,商科学生必须要理解金钱统治人类社会的必然结果,以及这种结果具备的不可逆的特性。&/p&&br&14the hudsucker proxy(影子大亨) (1994)&br&&br&&p&一 个缓慢叙事风格的影片。一个票房不怎么样的影片,一个懂商业的人说好的影片,一个社会大众看不懂的影片。一个公司的老板自杀了,似乎特别符合现在的萧条期 的潮流。然而,老板自杀了,其公司还蒸蒸日上呢,董事会的实权人物开始行动,行动的目的当然是私欲横流,监管呢?正直呢?&/p&&br&&p&公司治理,企业董事会操作实战等都是这个影片不可多得的实战教案。学吧,从血淋淋中学到教训,并用来治理好自己的大型企业。&/p&&br&15antitrust(反垄断)(2001)&br&&br&&br&&p&商业社会信任容易建立吗?谁值得信任、给钱的人值得信任吗?给你一个录用的机会就值得信任吗?影片中的大型软件公司暗指微软,公司老板也是用比尔盖茨为原型 的。从斯坦福录用天才软件工程师毕业生,然后应付已经严重推迟了的软件发布日期,然而,信任却突然成了一个问题,一个公司,法律,个人,专业性之间复杂的,纠缠不清的问题。&/p&&br&&p&任何学科的学生都要看上五遍。毕业了,有的是大公司如同鳄鱼一样盯着你,不是用鳄鱼般的嘴,而是用诱人的薪酬,宽松的待遇包装起来的网,你已经准备好投怀送抱了吗?&/p&&br&16rogue trader(魔鬼营业员) (1998)&br&&br&&p&学习银行业务,尤其是投资业务最好的教材。一个能够将百年老字号银行一夜之间弄垮的业务模式到底是什么?其中伴随着一个职员怎样的人生辉煌?如何巧妙地利用廉价的不懂业务的员工?如何利用大银行罕见的机会?&/p&&br&&p&还记得里森在巴林银行的所作所为吗?应该不会忘记2008年华尔街横行的杠杆吧。学习金融,学习投资,学习银行业基本操作的实战教案,怎么能够错过?!&/p&&br&17other peoples’s money(抢钱世界) (1991)&br&&br&&p&商业法,企业兼并,商业诉讼规范,商业流程,兼并重组流程等。也是一个基于美国真实故事改编的影片。美国商业自由市场中到处充满了利己行为与利他行为的冲突,矛盾。也恰好是这些冲突和矛盾中可以学到不同的人的心思,不同的人的动机,以及各种让人眼花缭乱的手段。&/p&&p&商业法的学生,商科学生,法律学生必看。&/p&&br&18disclosure(败露) (1994)&br&&p&迈克尔道格拉斯的影片总是让人经久不忘。这个影片的主题是性骚扰,是公司办公室性骚扰。一个高管面对提升的机会,提升的关键人是他大学的女友,女友的动机并不单纯,在办公室发生了一切,一切,第二天却在法庭相见。&/p&&br&&p&商业法,办公室行为,公司群体人际关系行为准则,公司高管提拔等都是难得的教材,生动的雷人的教案。&/p&&br&&p&万万不能错过的是道格拉斯的滔滔不绝,振振有词以及慷慨激昂。&/p&&br&19what women want(男人百分百) (2000)&br&&br&&p&用最巧妙的方式揭示女性所思所想的影片。天生上帝都羡慕的帅哥自以为是,从事的又是广告行业,居然没有机会升迁,居然老板还是女性。一个意外,就一个小小的车祸,让他具备了能够阅读女性头脑的能力,他居然真的发现了女性竟然是这么想的。&/p&&br&&p&商业心理学,女性行为学,广告学等都是这个影片中最需要学习的亮点。&/p&&br&20barbarians at the gate(门口的野蛮人) (1993)&br&&br&&p&当一个大师级的销售高手销售的产品是他的公司的时候,你要小心了,因为你面对着千载难逢的机会,那就是发大财的机会。看好他的公司的股票,立刻购买,无论多少钱都要买,因为眼看着他将这个公司的股票从40推到100,一个夜晚并不漫长,一个夜晚让有钱的更加有钱,贪婪是商业资本主义社会无法回避的主题,当然也无法忘记,每次贪婪遇到正直,为什么赢的总是贪婪。现代公司政治,公司价值,投资机会,销售技巧等都是这个影片贯穿始终的启发。&/p&
这20部电影都是英语国家孩子在学习商业知识方面必须看的影片。其中包括哈佛商学院一直排第一位的《华尔街》,还有沃顿商学院排第一位的《Trading place》。斯坦福要求商科学生必须看的《boiler room》。 1Wall Street(华尔街)(1987) 内部交易是违法的,不…
&p&1、《经济学原理》,曼昆著,梁小民译 。 曼昆(Gregory Mankiw)的这本《经济学原理》,它最大的特点就是简单易学,没有任何基础的人都可以至少学懂95%。这本书没有任何高深的理论,而且基本上所有理论都配有案例,非常直观易懂。这本书的第二大特点就是知识覆盖面很广,传授的是广义的经济学原理。比如像货币银行学、财政学、国际金融、国际贸易等学科,在这本书中都被浓缩成为一到两章的内容。因此,通过学习这本书,初学者将有望对经济学的主要知识和内容有一个整体性的了解。曼昆的《经济学原理》,是国内目前销量第一的经济学入门读物。曼昆在书中归纳出的著名的“经济学十大原理”,也是国内很多教材百抄不厌的对象。译者梁小民,是享受国务院特殊津贴的著名经济学专家,翻译的质量很高。总的来说,这本书浅显易懂,非常适合没有任何基础的投资者阅读。&/p&&p&2、《经济学》,萨缪尔森著,萧琛译萨缪尔森(Paul Samuelson)的这本《经济学》,真可谓是经典中的经典!不说别的,单说出版次数吧,它自1948年初版以来,已经再版到了第18版了。该书作者萨缪尔森,是1970年诺贝尔经济学奖得主。英国著名杂志《经济学家》认为:“萨缪尔森的《经济学》一书,可以毫不夸张地讲,在全球范围内形成了重要的影响。”这本书早年的中国读者,有的已经成为了大金融家、政策制定者,还有的成为了最著名的经济学教授。总的来说,它是一本质量非常高的经济学教材。萨缪尔森的《经济学》这本书,难度要略高于曼昆的《经济学原理》,但仍然是一本针对初学者的经济学教材。这本书案例不多,但文字和论述非常严谨,此外它也是国外累计销量最高的一本经济学教科书。这本书是经济学业余爱好者必读的一本书,也是各级干部的办公室书架上必摆的一本书。想了解一位诺贝尔奖得主眼中的经济学世界是什么样的吗,想知道我国官员为什么最喜欢这本书吗?通过阅读,相信你不难找到答案。&/p&&p&3、《经济学》,斯蒂格利茨著,黄险峰译斯蒂格利茨(Joseph Stiglitz)所著的《经济学》,是另一本全球闻名的经济学教科书,作者斯蒂格利茨是2001年诺贝尔经济学奖得主。我们都知道,美国克林顿政府执政期间,是美国经济罕见的高增长低通胀的时期,而斯蒂格利茨正是克林顿经济智囊团的重要人物。本书与萨缪尔森版《经济学》不同的是,本书重视不完全竞争和信息经济学,且加入了一般教科书中没有的“博弈论”一章。斯蒂格利茨非常重视中国,他特地在该书开头为中国读者写了一封信。斯蒂格利茨说:“《经济学》(第三版)更系统、更科学地为读者提供了这些原理,使读者不仅可以更好地了解中国现阶段的问题,还可以了解中国未来可能遇到的问题。”&/p&&p&该书的很多章节都特别有趣。比如在讲到垄断市场的概念时,引用的是我们熟悉的微软反垄断案为案例。毫无疑问,这些有趣的、贴近生活的案例,对于读者更好的理解该书的内容,是很有帮助的。这本书对21世纪的经济爱好者是特别有用的。该书不仅教会了读者怎样理解新经济现象,怎样解释数字时代的经济问题,还告诉了读者怎样评价亚洲金融危机,以及怎样看待前苏联、东欧和中国的经济转轨。总的来说,这本书特别贴近时代,贴近中国,又是大师亲笔所著的教材,各位读者不容错过。&/p&&p&4、《牛奶可乐经济学》,弗兰克著,闾佳译弗兰克(Robert Frank)的《牛奶可乐经济学》,是一本经济学畅销书,也是潘大专为女性读者推荐经济学参考书。这本书从牛奶与可乐包装的不同说起,通过讲故事的方式,让读者在不知不觉中接受了经济学的思维方式。这本在国外就非常畅销的书籍,在今年初被引进国内后,连续多周出现在图书销售排行榜中。该书面向女性市场,通过女性朋友关注的模特、打折、超市、酒吧等方面的案例,讲述经济学故事,值得女性朋友一读。&/p&&p&当然,这本书与前面三本书不同,它不是一本教科书,而是一本畅销书。您在阅读了该书后,如果希望能得到大师们的指点,还是应该要参考上面三本经济学教科书。&/p&&p&5、《吴敬琏专集》,吴敬琏著。吴敬琏是著名的中国经济专家,如果投资者读了上面几本外国大师的书觉得不过瘾,你不妨读读吴老的这本精选文集,它将告诉你中国经济与西方国家经济的不同之处。吴敬琏的这本书,收录了吴敬琏从1982年至2005年的全部重要文章,该书也因此客观地记录了改革开放以来中国经济的变化。相信投资者在阅读这本书后,将能对中国经济的一些特殊现象有更深刻的领悟。吴敬琏是中国改革开放的重要的智库之一,目前的经济政策制定者当中也有很多吴老的学生。投资者一定要读一读吴敬琏的这本书,它对提高投资者研判经济政策走向的能力,是很有好处的。&/p&
1、《经济学原理》,曼昆著,梁小民译 。 曼昆(Gregory Mankiw)的这本《经济学原理》,它最大的特点就是简单易学,没有任何基础的人都可以至少学懂95%。这本书没有任何高深的理论,而且基本上所有理论都配有案例,非常直观易懂。这本书的第二大特点就是知…
&p&JIT技术是JVM中最重要的核心模块之一。我的课程里本来没有计划这一篇,但因为不断有朋友问起,Java到底是怎么运行的?既然Hotspot是C++写的,那Java是不是可以说运行在C++之上呢?为了澄清这些概念,我才想起来了加了这样一篇文章,算做番外篇吧。&/p&&h2&Just In Time&/h2&&p&Just in time编译,也叫做运行时编译,不同于 C / C++ 语言直接被翻译成机器指令,javac把java的源文件翻译成了class文件,而class文件中全都是Java字节码。那么,JVM在加载了这些class文件以后,针对这些字节码,逐条取出,逐条执行,这种方法就是解释执行。&/p&&p&还有一种,就是把这些Java字节码重新编译优化,生成机器码,让CPU直接执行。这样编出来的代码效率会更高。通常,我们不必把所有的Java方法都编译成机器码,只需要把调用最频繁,占据CPU时间最长的方法找出来将其编译成机器码。这种调用最频繁的Java方法就是我们常说的热点方法(Hotspot,说不定这个虚拟机的名字就是从这里来的)。&/p&&p&这种在运行时按需编译的方式就是Just In Time。&/p&&h2&主要技术点&/h2&&p&其实JIT的主要技术点,从大的框架上来说,非常简单,就是申请一块既有写权限又有执行权限的内存,然后把你要编译的Java方法,翻译成机器码,写入到这块内存里。当再需要调用原来的Java方法时,就转向调用这块内存。&/p&&p&我们看一个例子:&/p&&div class=&highlight&&&pre&&code class=&language-cpp&&&span&&/span&&span class=&cp&&#include&/span&&span class=&cpf&&&stdio.h&&/span&&span class=&cp&&&/span&
&span class=&kt&&int&/span& &span class=&nf&&inc&/span&&span class=&p&&(&/span&&span class=&kt&&int&/span& &span class=&n&&a&/span&&span class=&p&&)&/span& &span class=&p&&{&/span&
&span class=&k&&return&/span& &span class=&n&&a&/span& &span class=&o&&+&/span& &span class=&mi&&1&/span&&span class=&p&&;&/span&
&span class=&p&&}&/span&
&span class=&kt&&int&/span& &span class=&nf&&main&/span&&span class=&p&&()&/span& &span class=&p&&{&/span&
&span class=&n&&printf&/span&&span class=&p&&(&/span&&span class=&s&&&%d&/span&&span class=&se&&\n&/span&&span class=&s&&&&/span&&span class=&p&&,&/span& &span class=&n&&inc&/span&&span class=&p&&(&/span&&span class=&mi&&3&/span&&span class=&p&&));&/span&
&span class=&k&&return&/span& &span class=&mi&&0&/span&&span class=&p&&;&/span&
&span class=&p&&}&/span&
&/code&&/pre&&/div&&p&上面这个例子很简单,就是把3加1,然后打印出来,我们通过以下命令,查看一下它的机器码:&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&# gcc -o inc inc.c
# objdump -d inc
&/code&&/pre&&/div&&p&然后在这一堆输出中,可以找到 inc 方法最终被翻译成了这样的机器码:&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&
40052d: 55
40052e: 48 89 e5
%edi,-0x4(%rbp)
-0x4(%rbp),%eax
40053a: 5d
40053b: c3
&/code&&/pre&&/div&&p&我来解释一下(读者需要一定的x86汇编语言的知识)。&/p&&p&第一句,保存上一个栈帧的基址,并把当前的栈指针赋给栈基址寄存器,这是进入一个函数的常规操作。我们不去管它。&/p&&p&第三句,把edi存到栈上。在x64处理器上,前6个参数都是使用寄存器传参的。第一个参数会使用rdi,第二个参数使用 rsi,等等。所以 edi 里存的其实就是第一个参数,也就是整数 3,为什么使用rdi的低32位,也就是 edi 呢?因为我们的入参 a 是 int 型啊。大家可以换成 long 型看看效果。&/p&&p&第四句,把上一步存到栈上的那个整数再存进 eax 中。&/p&&p&第五句往后,把 eax 加上 1, 然后就退栈,返回。按照x64的规定(ABI),返回值通过eax传递。&/p&&p&我们看到了,其实第三句,第四句好像根本没有存在的必要,gcc 默认情况下,生成的机器码有点傻,它总要把入参放到栈上,但其实,我们是可以直接把参数从 rdi 中放入到 rax 中的。不满意。那我们可以自己改一下,让它更精简一点。怎么做呢?答案就是运行时修改 inc 的逻辑。&/p&&div class=&highlight&&&pre&&code class=&language-cpp&&&span&&/span&&span class=&cp&&#include&/span&&span class=&cpf&&&stdio.h&&/span&&span class=&cp&&&/span&
&span class=&cp&&#include&/span&&span class=&cpf&&&memory.h&&/span&&span class=&cp&&&/span&
&span class=&cp&&#include&/span&&span class=&cpf&&&sys/mman.h&&/span&&span class=&cp&&&/span&
&span class=&k&&typedef&/span& &span class=&nf&&int&/span& &span class=&p&&(&/span&&span class=&o&&*&/span& &span class=&n&&inc_func&/span&&span class=&p&&)(&/span&&span class=&kt&&int&/span& &span class=&n&&a&/span&&span class=&p&&);&/span&
&span class=&kt&&int&/span& &span class=&nf&&main&/span&&span class=&p&&()&/span& &span class=&p&&{&/span&
&span class=&kt&&char&/span& &span class=&n&&code&/span&&span class=&p&&[]&/span& &span class=&o&&=&/span& &span class=&p&&{&/span&
&span class=&mh&&0x55&/span&&span class=&p&&,&/span&
&span class=&c1&&// push rbp&/span&
&span class=&mh&&0x48&/span&&span class=&p&&,&/span& &span class=&mh&&0x89&/span&&span class=&p&&,&/span& &span class=&mh&&0xe5&/span&&span class=&p&&,&/span& &span class=&c1&&// mov rsp, rbp&/span&
&span class=&mh&&0x89&/span&&span class=&p&&,&/span& &span class=&mh&&0xf8&/span&&span class=&p&&,&/span&
&span class=&c1&&// mov edi, eax&/span&
&span class=&mh&&0x83&/span&&span class=&p&&,&/span& &span class=&mh&&0xc0&/span&&span class=&p&&,&/span& &span class=&mh&&0x01&/span&&span class=&p&&,&/span& &span class=&c1&&// add $1, eax&/span&
&span class=&mh&&0x5d&/span&&span class=&p&&,&/span&
&span class=&c1&&// pop rbp&/span&
&span class=&mh&&0xc3&/span&
&span class=&c1&&// ret&/span&
&span class=&p&&};&/span&
&span class=&kt&&void&/span& &span class=&o&&*&/span& &span class=&n&&temp&/span& &span class=&o&&=&/span& &span class=&n&&mmap&/span&&span class=&p&&(&/span&&span class=&nb&&NULL&/span&&span class=&p&&,&/span& &span class=&k&&sizeof&/span&&span class=&p&&(&/span&&span class=&n&&code&/span&&span class=&p&&),&/span& &span class=&n&&PROT_WRITE&/span& &span class=&o&&|&/span& &span class=&n&&PROT_EXEC&/span&&span class=&p&&,&/span&
&span class=&n&&MAP_ANONYMOUS&/span& &span class=&o&&|&/span& &span class=&n&&MAP_PRIVATE&/span&&span class=&p&&,&/span& &span class=&o&&-&/span&&span class=&mi&&1&/span&&span class=&p&&,&/span& &span class=&mi&&0&/span&&span class=&p&&);&/span&
&span class=&n&&memcpy&/span&&span class=&p&&(&/span&&span class=&n&&temp&/span&&span class=&p&&,&/span& &span class=&n&&code&/span&&span class=&p&&,&/span& &span class=&k&&sizeof&/span&&span class=&p&&(&/span&&span class=&n&&code&/span&&span class=&p&&));&/span&
&span class=&n&&inc_func&/span& &span class=&n&&p_inc&/span& &span class=&o&&=&/span& &span class=&p&&(&/span&&span class=&n&&inc_func&/span&&span class=&p&&)&/span&&span class=&n&&temp&/span&&span class=&p&&;&/span&
&span class=&n&&printf&/span&&span class=&p&&(&/span&&span class=&s&&&%d&/span&&span class=&se&&\n&/span&&span class=&s&&&&/span&&span class=&p&&,&/span& &span class=&n&&p_inc&/span&&span class=&p&&(&/span&&span class=&mi&&7&/span&&span class=&p&&));&/span&
&span class=&k&&return&/span& &span class=&mi&&0&/span&&span class=&p&&;&/span&
&span class=&p&&}&/span&
&/code&&/pre&&/div&&p&在这个例子中,我们使用了 mmap 来申请了一块有写权限和执行权限的内存,然后把我们手写的机器码拷进去,然后使用一个函数指针指向这块内存,并且调用它。通过这种方式我们就可以执行这一段手写的机器码了。&/p&&p&运行一下看看:&/

我要回帖

更多关于 中国科学技术大学地址 的文章

 

随机推荐