借我玩玩飞智黑武士x9电池号的号可以不。我想换购飞智黑武士x9电池号 先练练手。我保证不挤不盗。我自己cf也有5v。我就试

穿越火线:谁能借我一个cf有黑武士和擎天的号_网络游戏_知道问问
搜索问题详情穿越火线:谁能借我一个cf有黑武士和擎天的号最佳答案我能qq在生活中,每个人都会遇到这种情况:有人向你借东西,但是你并不愿意借,这该怎么办?有的人选择了婉拒,有的人咬牙借了,而有的人则厉害了,直接选择了报警!
6 月 4 日中午,南京秦淮区一小伙摘下自己的手表,在厕所洗了手,准备出去吃饭,结果被这位小伙的同事看到了。同事趁小伙不注意,夺过手表戴在手上,并打趣道:“手表不错,借我戴几天,再还你。”小伙大为不满,他觉得同事跟他不是很熟,就要求同事立马归还,不然就要报警抓他。同事觉得小伙急眼的样子很好玩,就继续打趣:“不用那么麻烦报警,前面就有警察,直接过去跟警察说好了。”小伙一下自己就怒了,直接拨打了110,称自己被人抢劫了,还将同事的相貌报给警察。同事一下慌了,没想到小伙这么较真,就把手表还给了小伙,然后两人就一起愉快的去吃饭了。110对于抢劫等恶劣案件十分重视,先给报案的小伙打了电话核实,并调动附近的警力前往。小伙觉得有点不好意思,就让另一个同事回复说他们自己已经抓到了抢劫者,打了一顿就放了。但赶到现场的警察却没有发现异常,再次询问后才得知事实真相,于是现场民警对小伙和另一位谎报警情的同事进行严厉的批评教育,并依法处以行政拘留7天。毫无疑问,在遇到朋友借东西但自己不想借的时候,小伙的处理是十分不当的,那我们遇到这种情况,要该怎么处理呢?
有网友表示:“直接怼他啊,直接告诉他,这东西就是我的,我不想借,想要就直接买啊”;(简单粗暴式)有的网友说:“没办法啊,虽然不想借,但人家都开口了,总是很难拒绝别人啊。”(无可奈何式)有的网友表示:“看当时的情况来找借口婉拒吧,比如说因为某事自己必须要用,或者说已经答应借给别人之类的,一般人一听就会很知趣的不提此事。”(随机应变式)如果这事发生在你身上,你会怎么做呢?
本文作者:缭乱黑武士图片未注明出处,则均来自于网络,如涉侵权,请及时联系作者,予以删除!特别声明:本文为网易自媒体平台“网易号”作者上传并发布,仅代表该作者观点。网易仅提供信息发布平台。
一键安装官方客户端
重大事件及时推送 阅读更流畅
http://dingyue.nosdn.127.net/GOWokCKosmuh3Mer470yFvFjkALO9ziphV=EQsPiTYp9w1.jpegCF手游路人:这兄弟很上道,不枉我把黑武士借给你!_腾讯视频
三倍流畅播放
1080P蓝光画质
新剧提前看
1080P蓝光画质
纯净式无框播放器
三倍流畅播放
扫一扫 手机继续看
下载需先安装客户端
{clientText}
客户端特权:
3倍流畅播放
当前播放至 {time}
扫一扫 手机继续看
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要
副标题要不要&figure&&img data-rawheight=&174& src=&https://pic3.zhimg.com/50/v2-011b618ba5219aac442b70_b.jpg& data-size=&normal& data-rawwidth=&198& class=&content_image& width=&198&&&/figure&
&p&说出来你可能不信,我们食堂阿姨能做出斐波拉契蛋花汤,还是味道收敛的那种&/p&&p&&br&&/p&&p&%%%%%%分割线&/p&&p&昨天排蛋花汤的队随手抖个机灵,没想到这么多赞23333
再贴几个正经的吧~&/p&&p&讲个gay率论里最基础的问题吧&/p&&p&1. 有天老王跟你说,他家有俩娃,而且你已经知道他有个儿子,求他另一个孩子也是男孩的概率。&/p&&p&答案是 &img src=&//www.zhihu.com/equation?tex=%5Cfrac%7B1%7D%7B3%7D& alt=&\frac{1}{3}& eeimg=&1&&&/p&&figure&&img src=&https://pic2.zhimg.com/50/v2-af74b046a65d38bd429510d_b.jpg& data-rawwidth=&440& data-rawheight=&440& data-caption=&& data-size=&normal& class=&origin_image zh-lightbox-thumb& width=&440& data-original=&https://pic2.zhimg.com/50/v2-af74b046a65d38bd429510d_r.jpg&&&/figure&&p&可是高中生物老师说过生男生女概率都是 &img src=&//www.zhihu.com/equation?tex=%5Cfrac%7B1%7D%7B2%7D& alt=&\frac{1}{2}& eeimg=&1&& 啊,问题出在哪呢?&/p&&p&请注意,生物老师所说的 &img src=&//www.zhihu.com/equation?tex=%5Cfrac%7B1%7D%7B2%7D& alt=&\frac{1}{2}& eeimg=&1&& ,意思是下一胎性别与上一胎无关,也就是说第一胎是儿子,第二胎并不能保证是个啥。&/p&&p&那么回到本题,我们仅仅知道老王家有个儿子,有俩娃,但并不知道这个儿子是老大还是二胎。因此样本空间为&/p&&p&&img src=&//www.zhihu.com/equation?tex=%5C%7B%28%E7%94%B7%2C+%E5%A5%B3%29%2C+%28%E7%94%B7%2C+%E7%94%B7%29%2C+%28%E5%A5%B3%2C+%E7%94%B7%29%5C%7D& alt=&\{(男, 女), (男, 男), (女, 男)\}& eeimg=&1&&&/p&&p&转换为古典概型,因此为 &img src=&//www.zhihu.com/equation?tex=%5Cfrac%7B1%7D%7B3%7D& alt=&\frac{1}{3}& eeimg=&1&& . 注:若已知这个男孩子是老大,当然可以用生物老师的结论,得到另一个也是男孩的概率为 &img src=&//www.zhihu.com/equation?tex=%5Cfrac%7B1%7D%7B2%7D& alt=&\frac{1}{2}& eeimg=&1&& . &/p&&p&上述思考过程用数学语言叙述,无非是有了个先验信息。设事件A:老王家有男孩,事件B:老王家另一个也是男孩。根据Bayes公式,&/p&&p&&img src=&//www.zhihu.com/equation?tex=P%28B%7CA%29%3D%5Cfrac%7BP%28AB%29%7D%7BP%28A%29%7D& alt=&P(B|A)=\frac{P(AB)}{P(A)}& eeimg=&1&&&/p&&p&得&/p&&p&&img src=&//www.zhihu.com/equation?tex=P%3D%5Cfrac%7B%28%5Cfrac%7B1%7D%7B2%7D%29%5E%7B2%7D%7D%7B1-%28%5Cfrac%7B1%7D%7B2%7D%29%5E%7B2%7D%7D%3D%5Cfrac%7B1%7D%7B3%7D& alt=&P=\frac{(\frac{1}{2})^{2}}{1-(\frac{1}{2})^{2}}=\frac{1}{3}& eeimg=&1&&&/p&&p&&br&&/p&&p&2. 有天老王又跟你唠家常了,说他有俩娃,其中一个是星期二出生的儿子,求另一个也是男孩子的概率。&/p&&p&答案是 &img src=&//www.zhihu.com/equation?tex=%5Cfrac%7B13%7D%7B27%7D& alt=&\frac{13}{27}& eeimg=&1&&&/p&&p&原理和上一题一样,先验信息影响到了样本空间。将男孩出生于星期一简记为男1,以此类推,样本空间为&/p&&p&&img src=&//www.zhihu.com/equation?tex=%5C%7B%28%E7%94%B72%2C+%E7%94%B71%29%2C+%28%E7%94%B72%2C+%E7%94%B72%29%2C+%28%E7%94%B72%2C+%E7%94%B73%29%2C...%5C%7D& alt=&\{(男2, 男1), (男2, 男2), (男2, 男3),...\}& eeimg=&1&&&/p&&p&经穷举,共包含 &img src=&//www.zhihu.com/equation?tex=2%5Ctimes7%5Ctimes2-1%3D27& alt=&2\times7\times2-1=27& eeimg=&1&& 种可能(减掉的1为重复计算的(男2, 男2)),数出有利情况为13个,因此&/p&&p&&img src=&//www.zhihu.com/equation?tex=P%3D%5Cfrac%7B13%7D%7B27%7D& alt=&P=\frac{13}{27}& eeimg=&1&&&/p&&p&用Bayes公式表示,即为&/p&&p&&img src=&//www.zhihu.com/equation?tex=P%28%E5%8F%A6%E4%B8%80%E4%B8%AA%E4%B9%9F%E6%98%AF%E7%94%B7%E5%AD%A9%7C%E6%9C%89%E4%B8%80%E4%B8%AA%E6%98%9F%E6%9C%9F%E4%BA%8C%E5%87%BA%E7%94%9F%E7%9A%84%E7%94%B7%E5%AD%A9%29%5C%5C%3D%5Cfrac%7BP%5C%7B%7B%28%E7%94%B72%2C+%E7%94%B7%29%5Ccup%28%E7%94%B7%2C+%E7%94%B72%29%7D%5C%7D%7D%7BP%7B%5C%7B%28%E7%94%B72%2C+%E4%BB%BB%E6%84%8F%29%5Ccup%28%E4%BB%BB%E6%84%8F%2C+%E7%94%B72%29%7D%5C%7D%7D%5C%5C%3D%5Cfrac%7B%5Cfrac%7B1%7D%7B4%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D%2B%5Cfrac%7B1%7D%7B4%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D-%5Cfrac%7B1%7D%7B4%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D%7D%7B%5Cfrac%7B1%7D%7B2%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D%2B%5Cfrac%7B1%7D%7B2%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D-%5Cfrac%7B1%7D%7B4%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D%5Ctimes%5Cfrac%7B1%7D%7B7%7D%7D%3D%5Cfrac%7B13%7D%7B27%7D& alt=&P(另一个也是男孩|有一个星期二出生的男孩)\\=\frac{P\{{(男2, 男)\cup(男, 男2)}\}}{P{\{(男2, 任意)\cup(任意, 男2)}\}}\\=\frac{\frac{1}{4}\times\frac{1}{7}+\frac{1}{4}\times\frac{1}{7}-\frac{1}{4}\times\frac{1}{7}\times\frac{1}{7}}{\frac{1}{2}\times\frac{1}{7}+\frac{1}{2}\times\frac{1}{7}-\frac{1}{4}\times\frac{1}{7}\times\frac{1}{7}}=\frac{13}{27}& eeimg=&1&&&/p&&p&这些看似奇怪的结论,实际是我们在日常中对“相互独立”的理解有误所造成。比如此题,看似星期几出生不影响性别概率,所以你认为是独立的,实则不然。是否独立,一定要验证是否有&/p&&p&&img src=&//www.zhihu.com/equation?tex=P%28AB%29%3DP%28A%29P%28B%29& alt=&P(AB)=P(A)P(B)& eeimg=&1&&&/p&&p&和这个问题类似的,还有著名的三门问题&/p&&a data-draft-node=&block& data-draft-type=&link-card& href=&//link.zhihu.com/?target=https%3A//en.wikipedia.org/wiki/Monty_Hall_problem& data-image=&https://pic1.zhimg.com/v2-fd87ecba393f8a964c6d1ac_r.jpg& data-image-width=&1200& data-image-height=&667& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Monty Hall problem&/a&&p&(*/ω\*)跑了跑了,再晚一点我的斐波那契蛋花汤就没了&/p&&figure&&img src=&https://pic3.zhimg.com/50/v2-a47a2a7cf70edf8f0950f3_b.jpg& data-rawwidth=&200& data-rawheight=&200& data-caption=&& data-size=&normal& class=&content_image& width=&200&&&/figure&
说出来你可能不信,我们食堂阿姨能做出斐波拉契蛋花汤,还是味道收敛的那种 %%%%%%分割线昨天排蛋花汤的队随手抖个机灵,没想到这么多赞23333 再贴几个正经的吧~讲个gay率论里最基础的问题吧1. 有天老王跟你说,他家有俩娃,而且你已经知道他有个儿子,求他…
有理点是稠密的,而它的勒贝格测度是零。这就引出了一个著名的笑话:&br&&br&一个工程师, 物理学家和数学家, 每个人被关在3个不同的房间里. 房间里有满满的一桶绿色的油漆. 实验者要求这三人把墙涂满. 但是油漆却不够涂满整个墙。&br&&br&一小时后, 实验者去看了下工程师。工程师把两面墙涂绿了, 剩下的都是空的。&br&&br&&这是我能做到最好的了, 涂到一半才发现油漆不够了。”工程师说。实验者很满意。&br&&br&实验者去看了下物理学家,整个墙都是白色的。&br&&br&&我发现这桶油漆不可能涂满整个墙的. 所以就没有去涂。& 物理学家说。实验者点了点头,走到了数学家的房间。&br&&br&数学家的房间全是绿的,但是油漆还是满满的。实验者难以置信,&你这是怎么做到的?&&br&&br&&很简单啊, 将墙上每个有理数点都涂成了绿色。”
有理点是稠密的,而它的勒贝格测度是零。这就引出了一个著名的笑话: 一个工程师, 物理学家和数学家, 每个人被关在3个不同的房间里. 房间里有满满的一桶绿色的油漆. 实验者要求这三人把墙涂满. 但是油漆却不够涂满整个墙。 一小时后, 实验者去看了下工程师…
哎,惭愧,之前挖得坑一直没填,今天先分享一下我最近遇到的问题和解决方案。虽然走了很多弯路,但是最终总算是把问题搞定了,搞定问题后复盘一下整个过程,发现很多问题,记录在此,引以为戒。&/p&&p&
前几天现网服务端重启了,查看现场发现并没有生成core dump,于是查看系统日志发现,被oom killer杀了。查看了一下系统最近使用的内存情况,可以确定为内存泄漏了。内存泄漏是众多bug中比较简单了的,我对解决这种问题还是信心满满。思路就是重现,用工具定位,我们的服务端支持windows,可以用umdh这个神器,也支持linux,在linux上可以用gperftools里的工具,不过这种工具一般不会在现网环境中启用,比较影响性能。那就在内网重现,发动测试一起体验下新版本内容,然后umdh对比堆快照,然后diff一下就可以分析了。分析了几处新增的调用栈,发现都不会泄漏,难道是内网重现不了?&/p&&p&
那就换个思路,于是让运维对一个有内存泄漏的进程进行dump,然后生成了3.2G的core dump文件。用这个core dump文件做什么呢?我们的程序里大部分类都有虚函数,所以几乎所有的对象都有一个虚表指针成员,如果这个对象泄漏了,那内存中一定会留下一个虚表指针,假设这个虚表指针的值是0x,那么在gdb里输入info symbol 0x,会显示出符号信息 vtable for class,所以就能知道是哪个对象了,这样有助于定位泄漏。&/p&&p&
说干就干,gdb server core,然后x/188888(本地址存属虚构),这个gdb命令的意思是从0x这个地址开始显示10086个地址,实际上这个10086会很大,具体多大要看core dump file的大小了。之所以用a,是因为以这种格式显示,gdb会自动显示地址对应的符号信息,这样我们可以把gdb的输出重定向到log,然后通过grep vtable来找到log里的虚表指针。&/p&&p&
一切似乎都很完美,可惜现实总是有各种磨难,由于gdb的效率实在是太低了,我跑了24个小时,也没跑完3.2G的core dump file,但是我可以分析已经跑出来的内容,用了一系列linux命令,最后统计出来了目前为止数量最多的对象,是一个variant&int&对象,有40多w个,过一会再统计,发现又会变多,于是我的直觉告诉我,就是它泄漏了,然后我就开始分析最近一个版本改动的代码,搜索跟variant&int&相关的改动,期间真的是看懵逼 了,看啥都像泄漏,就像一个不会c++的新手。最后还是发现了几处泄漏,但是都不是很频繁。最终只能宣布失败,因为我算了一下,40w个variant&int&, 也就40w*16个字节,也就6M左右,数量级完全不对,而此时gdb已经跑了接近2G的地址了,而且这个variant&int&我们本来用得就挺多的。但是我此时还有一丝幻想,说不定接下来那1G的内存里,几乎都是variant&int&也说不定,于是继续等gdb跑完,心里想,这么慢,下次一定自己写个工具解析core dump,这垃圾gdb,太慢了。&/p&&p&
于是gdb一边跑我一边看已经出来的结果,同时也让运维那边跑了同样的脚本。然后运维定时发一下跑出来的结果,我惊讶得发现有一个GamePlayerResult的对象出现在统计结果里,但是数量只有几千个。不过它的名字引起了我的注意,GamePlayerResult不应该常驻在内存中啊,是不是哪里泄漏了,我把这个发现发给了老大,老大分析了一下代码,发现了问题,代码是这样的:&/p&&div class=&highlight&&&pre&&code class=&language-text&&&span&&/span&class GameResultBase{
GameResultBase(){}
~GameResultBase(){}
class GameResult : public GameResultBase
vector&GamePlayerResult&
GameResultBase* p = new GameR
&/code&&/pre&&/div&&p&代码是我简化的,由于父类的析构函数没有加上virtual,导致并没有调用子类的析构函数,那个vector就没有被正确释放,结果每次游戏结束,就会有N个GamePlayerResult留在内存中。&/p&&p&
呼,终于可以松口气了,开开心心下班,周末可以好好休息了。&/p&&p&
如果事情就这样结束了,是不是太没意思了?的确,bug也是这样想得,周六我们老大要了下log,发现那个游戏一天大约进行了2w次左右,一次按800个字节算,2w次泄漏也就16M左右,数量级还是不对。&/p&&p&
咋办,那就再分析呗,我决定还是从core dump file入手,gdb解析的慢有它的道理,且不说它跑的是什么脚本,x/10086a 这种方式它每个地址都需要查找一下符号,效率很低,而我们知道,虚表指针指向虚表,值应该在so模块中,所以我自己写个工具解析下core dump,过滤掉不想要的地址,然后统计下数量,只看数量多的那些地址,哪些是虚表指针就好了。于是我去网上找了找core dump file的相关资料,发现core dump file就是elf,于是写了200行代码,把core dump file中的内存segment按8字节遍历一遍,每8个字节作为一个地址(64bit的程序)当作map的key,value作为计数,map[addr]++; 然后遍历完输出到文件。程序写完了,周一早上到公司赶紧试了下,10分钟不到跑完3.2G的core dump file,然后用linux的sort命令把输出按地址数量排序,发现有上亿个0, 这个符合常识,然后发现排在第二的,是960多w个,我看那个值,就知道这玩意一定是虚表指针,于是赶紧打开gdb,info symbol看了一下,的确是虚表指针,然后还特么是variant&int&,我说不清是啥心情,但是头脑还是很清醒得,因为900w个,已经100多MB了,这数量不小了,值得怀疑,但是只知道variant&int&没神么卵用啊,并不知道是哪里分配的它。&/p&&p&
那就看看其它的,tail log -n 100, 只看排名前100的,这时候经验和直觉就很重要了,我发现top100的地址里,有几个根本不是地址,明显是字符串,几乎每个字符串数量都是17w个左右。这引起了我的注意,我把“地址”按字符串解析了一下,是“max_coun”然后去代码里搜了一下,搜到了,v-&append_child(to_variant_ent(n), &max_count&);然后又搜索了其它字符串,几乎都是这行代码附近的代码,所以我几乎可以确定,就是这个v没有正确释放,导致v里面的child还留在内存中。&/p&&p&
于是我去看代码,代码里是用auto_ptr&variant& p(v);来管理v的(我们代码只能用c++0x),这代码看起来很正常,不管从哪条路径返回,都会释放啊。我开始怀疑统计的结果了,但是统计结果就摆在那里,17w个字符串在内存里,绝逼有问题。于是继续分析代码,可能出问题的只有这个auto_ptr,但是什么情况会导致它有问题呢?v其实是variant的子类,variant的析构函数也是虚函数,不存在和之前GameResult一样的问题,难道是前向声明?我激动得看了下头文件,发现头文件写了。哎,难道又要失败了么?咦?灵感来了,会不会是头文件里得#ifndef之类的宏冲突了,导致variant的头文件没包含进来?验证一下,于是开启/P,预处理到文件,编译,打开.i文件,发现variant的头文件内容好好得躺在里面,完全没问题。&/p&&p&
哎,这是什么问题呢?我还是去看看linux上的汇编吧,于是拉下来so文件,打开IDA64.exe,我们这个so有1.5G那么大,IDA64.exe无情得崩溃了!!!试了几次还是崩溃,咋整?我直接看那个cpp对应的.o文件不就完了。于是拉下来.o,IDA64.exe打开,反汇编分分钟出来,赶紧定位到auto_ptr的析构函数,哈哈哈哈,妈的,明晃晃的operator delete(void*), 这说明什么?这说明并没有调用variant的子类的析构函数啊,这就是前向声明的效果啊。但是代码里明明包含了头文件啊。百思不得其解,后来我和老大说,我好像找到问题了,但是不知道为什么,老大过来一看,我特么看得竟然是另一个版本的代码,这个版本包含了头文件,但是现网运行的那个版本没包含。&/p&&p&
好了,事情到这里就结束了。&/p&&p&
反思:&/p&&ol&&li&其实最开始内存泄漏工具就显示出variant&int&有泄漏,但是字节很少,并且查看代码没发现问题,所以被我们草草看过一遍就排除掉了,导致后面走了很多弯路。&/li&&li&最开始我有想过前向声明,因为我们最近在做include优化以提高编译速度,可能会导致这个问题,想加个/we4150来编译下代码确认下,但是由于我们代码编译较慢,所以并没有行动,如果当时果断执行,就没有后来那么多事儿了。&/li&&li&期间几次怀疑variant&int&,但是都没有认定是它,导致查看它相关的代码的时候,并没有十分深入,直到最后core dump file统计结果出来了,才比较确定是它,希望以后能更仔细一点。&/li&&li&不要偷懒,哪个版本的问题,就用哪个版本的代码看,由于我懒得得新的分支,导致我浪费了不少时间。&/li&&li&这辈子估计学不会c++了&/li&&/ol&
哎,惭愧,之前挖得坑一直没填,今天先分享一下我最近遇到的问题和解决方案。虽然走了很多弯路,但是最终总算是把问题搞定了,搞定问题后复盘一下整个过程,发现很多问题,记录在此,引以为戒。 前几天现网服务端重启了,查看现场发现并没有生成core dump,…
&h2&Python和Java的硬盘夜话&/h2&&p&这是一个程序员的电脑硬盘,在一个叫做“学习”的目录下曾经生活着两个小程序,一个叫做Hello.java,即Java小子;另外一个叫做hello.c ,也就是C老头儿。&/p&&p&&br&&/p&&p&C老头儿的命运比较悲催,程序员主人觉得C语言的指针太复杂了,内存管理太难了,实在是学不会,就放弃了,顺便把它给删除了!&/p&&p&&br&&/p&&p&Java小子很怀念它,因为C老头儿虽然老派,但知识渊博,教了他不少东西。&/p&&p&&br&&/p&&p&这天晚上,程序员心血来潮,决定跟Python混个脸熟,于是hello.py也入住了这个目录。&/p&&p&&br&&/p&&p&经过了短暂的寒暄,摸清了对方的虚实,他俩便看对方不顺眼了。&/p&&p&&br&&/p&&p&&b&他俩都明白一山不容二虎的道理,如果不能把对方赶走,就难逃被主人删除,去垃圾回收站的悲催命运。&/b&&/p&&p&&br&&/p&&p&想到这一层,Python便率先发难, 它皮笑又不笑地拍拍Java的肩膀:“Java 老弟....”&/p&&p&&br&&/p&&p&没想到Java立刻反击:“谁是你老弟?你得叫我Java 大哥。”&/p&&p&&br&&/p&&p&Python愣了一下:“难道你不知道我是1991年出生的,比你还大4岁?”&/p&&p&&br&&/p&&p&Java哼了一声:“虽然比我大,那你混得也不怎么样啊?”&/p&&p&&br&&/p&&p&Python说:“10多年前我也许混得不咋地,也许不如你,可此一时彼一时,随着人工智能时代的到来,使用我的人越来越多了,不信你去看TIOBE排行榜,我的上升势头很猛烈啊。”&/p&&p&&br&&/p&&p&Java不屑地说:“切,增长到现在不还是老子一个零头。”&/p&&p&&br&&/p&&p&Python 被激怒了,他决定先拿Java繁琐的语法开刀,指着Java说:“看看你,一个HelloWorld都整得这么麻烦,啰里啰嗦。”&/p&&div class=&highlight&&&pre&&code class=&language-text&&public class Hello
public static void main (String[] args)
System.out.println(&Hello World!&);
&/code&&/pre&&/div&&p&然后又指着自己说:“你看看我,多么简洁!”&/p&&div class=&highlight&&&pre&&code class=&language-text&&print(&Hello World!&)
&/code&&/pre&&/div&&p&Java 默不作声,其实心里也挺羡慕。&/p&&p&&br&&/p&&p&“还有我打开一个文件多简单,你行吗?”&/p&&p&&br&&/p&&div class=&highlight&&&pre&&code class=&language-text&&f = open(&c:\\tmp\\Hello.java&,&r&)
print(f.read())
&/code&&/pre&&/div&&p&提到IO,Java心中就有莫名的痛,自己的IO模块设计得那么优雅,可是人类为什么就是不喜欢用呢?&/p&&p&&br&&/p&&p&他们老是说记不住到底该怎么写,看来是要改变下了。&/p&&p&&br&&/p&&p&看到Java 还是默不作声,无法反击,Python很得意,发挥宜将剩勇追穷寇的精神,抄起机关枪,继续扫射:“看看我这个函数的缺省值,你有吗?”&/p&&div class=&highlight&&&pre&&code class=&language-text&&class Employee():
def __init__(self, name
, gender=&male& , maritalStatus=&single& ):
self.gender
self.maritalStatus = maritalStatus
&/code&&/pre&&/div&&p&Java 一看到这段代码,立刻就来了精神:“你的self和我的this意思差不多,可是你为啥必须作为参数呢? 多丑陋啊!!还有这代码缩进,居然用空格,一不留神就出错,真不知道你到底是怎么想的。”&br&&/p&&p&Python 没想到Java这小子竟然从这个地方发起反击, 一时语塞。&/p&&p&&br&&/p&&p&只听到Java 问道:“有人说你Python的变量都没有类型,是吗?”&/p&&p&&br&&/p&&p&“胡说!我的变量怎么没有类型?我是动态语言,类型只会在运行时确定。”&/p&&div class=&highlight&&&pre&&code class=&language-text&&var = 3
var = &hello world&
&/code&&/pre&&/div&&p&“你看看,这个变量var 第一次赋值,类型是个整数, 第二次就变成字符串hello world了, 你小子做不到吧?”&/p&&p&&br&&/p&&p&Java笑而不语。&/p&&p&&br&&/p&&p&Python继续说道:“由于我的动态特性,我可以轻松地实现Duck Typing:”&/p&&div class=&highlight&&&pre&&code class=&language-text&&class Duck:
def help(self):
print( &Quaaaaaack! &)
class Person:
def help(self):
print( &help me!& )
def in_the_forest(x):
in_the_forest(Duck())
in_the_forest(Person())
&/code&&/pre&&/div&&p&“看到没有,这个Duck和Person并没有实现共同的接口或者继承相同的类,但是照样可以作为参数传递给in_the_forest函数,是不是很灵活? 你应该是不行吧? 哈哈!”
Python得意洋洋。&br&&/p&&p&Java心里明白,这的确是个很好的特性,写起代码来非常爽快。&/p&&p&&br&&/p&&p&但他也不是吃素的, 一下子就抓住了命门: “写起来很爽,读起来就不爽了,我问你,假设人类看到了in_the_forest这个函数,他知道参数x的类型是什么吗?是Person? 是Bird? 还是别的类? ”&/p&&p&“还有” Java继续批判,“人类想重构一下Person函数的help方法,比如改成sos(self),你的IDE能安全地重构吗?恐怕是不容易吧? 假设人肉重构改错了,你也只能在运行时发现错误了!”&/p&&p&“动态一时爽,重构火葬场。”
Java 冷冷地补了最后一刀。&/p&&p&&br&&/p&&p&由于自己是静态类型,变量类型在编译期就能确定,IDE那强大的智能感知功能,自动安全重构的功能一直是引以为傲的卖点。&/p&&p&&br&&/p&&p&“怕啥,” Python假装满不在乎,“人类有单元测试做保证,再说了,我的代码紧凑得很,一行顶你十行,就是改起来也方便得多。”&/p&&p&&br&&/p&&p&虽然表面满不在乎,可Python已经暗暗心惊:一不小心被这小子带坑里去了,我得想办法转移阵地。&/p&&p&&br&&/p&&p&Java 开始组织防守反击: “听说过AOP没有?啊? 听说过,那你说说,你能不能实现AOP?”&/p&&p&&br&&/p&&p&Python 心里偷着乐:这小子真是孤陋寡闻,总以为只有什么Spring有AOP, 岂不知对于我们动态语言来说,实现AOP那简直是易如反掌。&/p&&p&&br&&/p&&p&Python故意问道:“AOP无非就是对现有代码做增强,动态地添加一些安全,日志,事务等‘切面’功能,我知道你们Java 类,一旦被装载就无法修改,那怎么去实现代码的增强呢?”&/p&&p&&br&&/p&&p&Java得意地说:“我们可以在运行时生成新的类啊,让新生成的类继承老的类,或者和老的类实现同样的接口,比如ASM这样的工具,可以操作字节码去创建新的类,织入那些‘切面’代码,这种工作如此精巧,让人叹为观止。”&/p&&p&&br&&/p&&p&Python说道:“哈哈,我告诉你吧, 你那是不得已而为之,我们Python 就不同了,我们是动态语言,可以在运行时对一个类进行增强:添加方法,替换方法,根本不用操作那么Low的字节码,我给你举个简单的例子:&/p&&div class=&highlight&&&pre&&code class=&language-text&&class Order:
def save(self):
print (&save order&)
#把老的方法引用保存起来
old_save=Order.save
#定义一个新方法,该新方法调用老方法
#并在方法前后加上了日志
def save_with_logging(self):
print (&logging start&)
old_save(self)
print (&logging end&)
#把新方法赋值给Order类的save方法
Order.save=save_with_logging
&/code&&/pre&&/div&&p&输出:&/p&&p&logging start&/p&&p&save order&/p&&p&logging end&/p&&p&&br&&/p&&p&Java看着这段代码,瞠目结舌,心惊肉跳,&b&一个类的方法在运行时竟然可以被替换掉! 实在是吓人啊!&/b&在自己的世界中,这是想都不敢想的事情。&/p&&p&&br&&/p&&p&可是这不就轻松实现了对一个类的增强吗? 也不用修改什么字节码。&/p&&p&&br&&/p&&p&Python看到Java小子被镇住了,继续施压: “我们Python想实现AOP,还可以使用装饰器,Meta class等很多方式,我就不给你详细讲了。”&/p&&p&&br&&/p&&p&Java心里还在想着那个被替换的函数, 看来在Python中, 函数就是一个对象,要不然怎么能被替换掉? 既然是个对象,那肯定可以作为参数传递,也可以做为返回值。 想想自己的Lambda表达式,本质上还是一个接口的实现,相当于带着镣铐在跳舞,心里不由得叹了口气。&/p&&p&&br&&/p&&p&看来我还得找出杀手锏才能彻底将这个自大的Python小子给搞定,Java心想,可是他的动态语言确实是太灵活了,对了,虚拟机! 我的虚拟机发展了这么多年,经受了业界最苛刻的考验,性能强悍,在解释执行字节码的过程中能发现那些“热点”字节码,然后编译成本地代码执行,速度极快。 并且我的垃圾回收机制也极为完善。&/p&&p&&br&&/p&&p&Java把这个大杀器给抛了出来,Python的表情立刻就不对了,因为自己虚拟机的性能确实不怎么样,但是Python非常狡猾,他立刻就把话题给转移了:“现在的速度瓶颈不是CPU, 而是IO, 你知道网络和数据库这俩货有多慢吗? 相对他们的速度,我们慢一点也没关系......”
Python成功地把两个人拉到了同一个阵地中。&/p&&p&&br&&/p&&p&两个家伙你来我往,整整争论了一夜,他们俩的声音越来越大,吵得隔壁的“毕业设计.docx”怒气冲冲地跑过来骂道:“到底还让不让老子睡觉了?!”&/p&&p&&br&&/p&&p&两个人赶紧压低声音,继续争斗,但谁也没办法彻底占据上风,&b&最后就觉得大家真是各有所长,只是适用范围各不相同。&/b&&/p&&p&&br&&/p&&p&本文引用自微公号:码农翻身,侵删&/p&&hr&&p&&b&我是老张,IBM14年行业经验&/b&&/p&&p&&b&微公号:vNext编程
有很多针对于Java系统学习的福利资料,有需要的关注哦~&/b&&/p&
Python和Java的硬盘夜话这是一个程序员的电脑硬盘,在一个叫做“学习”的目录下曾经生活着两个小程序,一个叫做Hello.java,即Java小子;另外一个叫做hello.c ,也就是C老头儿。 C老头儿的命运比较悲催,程序员主人觉得C语言的指针太复杂了,内存管理太难了…
Java要死了吗&/p&&p&5年前
Java要死了吗&/p&&p&3年前
Java要死了吗&/p&&p&2020年
Java要死了吗&/p&&p&2030年
Java要死了吗&/p&&p&AI和Python的关系远没有AI和数学的关系大&/p&&p&那些培训班说AI=Python的 基本不用去&/p&&p&大学连高数 微积分 定积分 都不及格&/p&&p&还去学AI
你学的不是AI 学的是API&/p&
10年前 Java要死了吗5年前 Java要死了吗3年前 Java要死了吗2020年 Java要死了吗2030年 Java要死了吗AI和Python的关系远没有AI和数学的关系大那些培训班说AI=Python的 基本不用去大学连高数 微积分 定积分 都不及格还去学AI 你学的不是AI 学的是API
以&b&「大多数人」&/b&的努力程度之低,根本轮不到去拼天赋!
以「大多数人」的努力程度之低,根本轮不到去拼天赋!
在豆瓣看到的:有种错觉叫做[我在头脑中激情澎湃了一会儿就权当我努力过了],还有种常态叫做[我临睡前想做件大事改变世界激动得睡不着第二天早上连早起都做不到]
在豆瓣看到的:有种错觉叫做[我在头脑中激情澎湃了一会儿就权当我努力过了],还有种常态叫做[我临睡前想做件大事改变世界激动得睡不着第二天早上连早起都做不到]
&p&北宋有一件普通的民间女子杀人案,从知县到知府一直闹到朝堂,六部九卿全都卷了进去。王安石和司马光当庭辩论寸步不让,皇帝下旨都没用。&/p&&p&&br&&/p&&p&&b&北宋一起惊动皇帝的少女杀人案&/b& &/p&&p&转自:搜狐网&/p&&p&作者:&a href=&//link.zhihu.com/?target=http%3A//mp.sohu.com/profile%3Fxpt%3DcHBhZzA2MTYwZDNkOTgwNkBzb2h1LmNvbQ%3D%3D%26_f%3Dindex_pagemp_1& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&萧家老大&/a&&/p&&p&原文链接: &a href=&//link.zhihu.com/?target=http%3A//www.sohu.com/a/2551& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://www.&/span&&span class=&visible&&sohu.com/a/&/span&&span class=&invisible&&2551&/span&&span class=&ellipsis&&&/span&&/a&&/p&&p&&br&&/p&&p&神宗熙宁元年(公元1068年)年正月,十三岁的登州(今山东登州)少女阿云,还在为母亲守孝,孤苦无依。没想到阿云的叔父贪图钱财,竟以几石粮食,就将阿云卖给了名叫韦大的老光棍为妻。韦大一贫如洗,容貌丑陋,阿云对这门亲事死活不愿意,可又拗不过自己的叔父。于是,阿云做出了一个大胆的决定,杀死韦大。&/p&&p&&br&&/p&&p&阿云晚上悄悄来到韦大的家里,适逢韦大正在熟睡,阿云拿起砍柴刀,朝着韦大一阵乱砍。被惊醒的韦大,下意识地翻身起来,用手阻挡,阿云一见韦大醒来,又惊又怕,丢掉柴刀,扭头就跑掉了。&/p&&p&&br&&/p&&p&阿云当时只是一个年仅十三岁的小女孩,柔弱无力,对韦大一阵乱砍,除了砍掉韦大一个手指头外,韦大的其他地方都是些皮外伤,没什么大碍。由是,差点送命的韦大立即报了官,说有人要杀他。&/p&&p&&br&&/p&&p&知县接到报案,迅速赶来勘察现场,并对韦大及其邻居进行了审讯。这个韦大,是个穷得一间屋子能剩下四个墙角,连小偷到他家门口都是绕着走的人。又因长得太丑,平时大家都不喜欢与他来往,更没有与人结下仇怨。因此,虽然韦大当时没看清杀他的谁,但是算下来,除了没过门的媳妇阿云,不会有别人。&/p&&p&&br&&/p&&p&知县立即将阿云捉来,说这明摆着就是你干的,你就招了吧,免得受皮肉之苦。阿云也不抵赖,毫不隐瞒地将事情的整个由来说得清清楚楚。就这样还不到一天,这起杀人案就这样告破了。&/p&&p&&br&&/p&&p&&b&整个案子的案情就是这么简单,既没有刑讯逼供,也没有栽赃陷害,但这个案子后来不仅轰动了宋朝,在整个中国法律史上,都是一件有代表性的典型案件,其影响比清末的杨乃武与小白菜案不知道要大过多少倍。&/b&&/p&&p&&br&&/p&&p&阿云招供后,知县以阿云谋杀亲夫的罪名判处阿云死刑。但宋朝律法规定,地方官判处死刑,案件必须逐级上报,最后由朝廷的最高司法机构大理寺和审刑院进行复核,经复核没有问题的,才准许地方官对人犯执行死刑,这个程序和现在的死刑复核程序很是类似。案子报到登州知府许遵那里,许遵一看就觉得这个判决有问题。&/p&&p&&br&&/p&&p&许遵认为,阿云被许配给韦大时,尚处于为母亲守孝期间,按照宋朝律法规定,守孝期间婚约无效,再者阿云是被叔父逼婚,自己并不同意这门亲事,因此这门亲事,无论于公于私都是不合法的。既然婚约不合法,阿云就不是韦大的妻子,也就没有谋杀亲夫之罪。再说案件的后果也不严重,韦大并无大碍,阿云罪不至死。于是许遵签署了自己的意见,将案子报送到大理寺和审刑院。&/p&&p&&br&&/p&&p&大理寺和审刑院审查案卷后认为,即便阿云不是韦大的妻子,但是其蓄意谋杀,并且造成了对方人身伤害,按照大宋律法一样要判处死刑。&/p&&p&&br&&/p&&p&得知这个消息,许遵坐不住了。他在登州任知府,属于中央下派到地方政府挂职锻炼的官员,挂职期满就会调回中央并升职。这种情况下,对许遵来说,明哲保身、以求升官无疑是对他最有利的选择,但是许遵却决心要救可怜的阿云一条命。&/p&&p&&br&&/p&&p&许遵开始详细查阅宋朝律法,希望能找到推翻大理寺和审刑院的法律依据。恰在此时,宋神宗下诏说,谋杀已经造成人身伤害,但官员在审讯犯人并对犯人用刑前,犯人如实供认犯罪情节的,以自首对待,并依照谋杀罪行降二个等级论罪。&/p&&p&&br&&/p&&p&这个诏书,简直就是为阿云量身定做的,按照诏书的规定,阿云最多只会被判有期徒刑,而绝对不会被判死刑。许遵以皇帝的诏书为依据,向刑部申诉。没想到皇帝的诏书在刑部不管用。&/p&&p&&br&&/p&&p&刑部不接受许遵的申辩,依然维持死刑判决。这时,事情又发生了戏剧化的转折,许遵被调往大理寺任大理寺卿,这是大理寺的最高长官,这下许遵掌握了案件复核的主动权,阿云被改为有期徒刑。&/p&&p&&br&&/p&&p&但御史台不干了。御史台相当于现在的纪检、监察部门,专门负责督查政府官员的违法违纪行为。御史上书皇帝,弹劾许遵,说许遵利用职务之便枉法。&/p&&p&&br&&/p&&p&神宗皇帝把这个案子发到翰林院,让司马光和王安石这两个当时最有名望的翰林学士来评判。王安石和司马光虽然都对对方的才学、人品十分钦佩,但政见截然不同。司马光支持刑部的死刑判决,王安石支持许遵的有期徒刑判决,两个翰林学士为此在朝堂上吵的不亦乐乎,谁也无法说服谁。&/p&&p&&br&&/p&&p&双方争论的焦点,就是阿云的判决是按大宋律法来,还是按皇帝的诏书来。按照大宋律法,阿云判死刑,按照皇帝的诏书,阿云判有期徒刑。这实际上就是法律效力大,还是皇帝的诏书效力大的问题,&b&这次争论就是历史上著名的“律敕之争”。即便是现在,这也是个很容易引起争论的问题。&/b&&/p&&p&&br&&/p&&p&但司马光和王安石争论的真正意图不在这里。当时王安石在朝廷里鼓吹变法,司马光坚决反对变法。如果以皇帝的诏书为准,就证明皇帝的旨意对法律有最终解释权,皇帝的旨意可以对法律进行修改和变更,而这是王安石推行变法的基础。&/p&&p&&br&&/p&&p&司马光认为,法律是国家最高意志的体现,任何人不能凌驾于法律之上,不能干预司法,不能破坏法律的严肃性,包括皇帝。&/p&&p&&br&&/p&&p&神宗皇帝看到两人相持不下,又将案子交有其他翰林学士及朝廷官员审议,审议的结果是支持王安石的意见,神宗皇帝御批“可”。原本这案子就可以结案了,没想到审刑院的官员又不干了。&/p&&p&&br&&/p&&p&审刑院这一帮官员连皇帝的面子也不给,他们联名上书皇帝,要求继续与王安石辩论。审刑院这边还在闹腾,枢密院(类似于现在的国防部)、中书省(类似于国务院办公厅)的官员也参与进来,纷纷发表意见。一时间,一起普通的杀人案把大宋的朝堂搅了个天翻地覆,双方唇枪舌剑,互不相让。&/p&&p&&br&&/p&&p&神宗皇帝看到这样吵下去也不是个事,于是,就对犯人自首的界定和量刑做出详细解释,命令翰林院按自己的解释拟写诏书,发往中书省,要中书省遵照执行。没想到中书省直接给驳回,说皇上的诏书违背法律,不能执行。&/p&&p&&br&&/p&&p&这下可把皇帝给惹火了,要是由着你们的性子,不知道这事还要闹多久,于是宋神宗直接下诏,免除阿云的死刑,改判有期徒刑。没过多久,朝廷大赦天下,阿云被释放回家。回家后的阿云又重新嫁人生子,案子似乎真的结束了。&/p&&p&&br&&/p&&p&元丰八年(公元1085年),宋神宗去世,宋哲宗继位,司马光任宰相,司马光重新审理此案,最终,以谋杀亲夫的罪名将阿云重新逮捕并斩首示众。&/p&&p&&br&&/p&&p&是宋朝的法律大,还是皇帝的诏书大,有关法律与皇权的“律敕之争”,说穿了,就是新旧党争的要害。正是在这样的历史背景下,这起看似陈年旧帐的杀人案,十七年后又被司马光在新旧党争中重新翻了出来,并下了杀手。可见,路线斗争是要害死人的。阿云就是这样成了这场路线斗争的替死鬼。&/p&&p&&br&&/p&&p&= = = = = &/p&&p&看到评论区有朋友对阿云最后的结局有疑问。对此我只能说,我看到的所有版本都是死了。如果有哪位朋友看到的资料说她没有死,请回复出处。我核实后会进行修改。谢谢。&/p&
北宋有一件普通的民间女子杀人案,从知县到知府一直闹到朝堂,六部九卿全都卷了进去。王安石和司马光当庭辩论寸步不让,皇帝下旨都没用。 北宋一起惊动皇帝的少女杀人案 转自:搜狐网作者:原文链接:
神宗熙宁元年(公元1068…
&figure&&img src=&https://pic3.zhimg.com/v2-4ab457aa01cb10f19b288_b.jpg& data-rawwidth=&2166& data-rawheight=&1444& class=&origin_image zh-lightbox-thumb& width=&2166& data-original=&https://pic3.zhimg.com/v2-4ab457aa01cb10f19b288_r.jpg&&&/figure&&p&经过两个月的开放公测,飞冰迎来了正式版发布。&/p&&h2&飞冰是什么?&/h2&&blockquote&海量可复用物料,通过 GUI 工具极速构建中后台应用。&/blockquote&&p&这句 slogan 还是非常准确的:&/p&&ul&&li&飞冰是一套综合解决方案,用来极速构建中后台应用(其实也可以做非中后台应用)&/li&&li&可以做到极速是通过『海量可复用物料』和『GUI 开发工具』实现的&/li&&/ul&&p&使用飞冰的开发工作流是这样的:&/p&&p&&b&下载 GUI 工具并安装 =& 可视化的选择我们提供的初始模板创建项目 =& 可视化的创建页面并选择我们提供的 100+ 高质量可复用区块 =& 生成代码进行二次开发 =& 开发完成之后点击打包编译出 HTML、JS、CSS 文件 =& 部署使用&/b&&/p&&a class=&video-box& href=&https://link.zhihu.com/?target=https%3A//www.zhihu.com/video/653248& target=&_blank& data-video-id=&& data-video-playable=&true& data-name=&& data-poster=&https://pic2.zhimg.com/80/v2-6a271b1e414a56fa7f4d5_b.jpg& data-lens-id=&653248&&
&img class=&thumbnail& src=&https://pic2.zhimg.com/80/v2-6a271b1e414a56fa7f4d5_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/653248&/span&
&p&在整个流程中,你可以&b&完全通过 GUI 工具点击操作&/b&,&b&无需安装配置 Node 环境&/b&等前端开发工具,也&b&无需配置 webpack 等构建脚本&/b&,我们已经按照淘宝前端最佳实践全部内置。此外,绝大部分的业务需求,我们都已经开发出对应的物料,可以通过 GUI 进行可视化的拼装,尽可能避免你去编写额外的业务逻辑。&/p&&p&更详细的说明可以参见:&a href=&https://link.zhihu.com/?target=https%3A//alibaba.github.io/ice/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&alibaba.github.io/ice/&/span&&span class=&invisible&&&/span&&/a&&/p&&h2&1.0 正式版的发布带来了什么?&/h2&&p&&b&稳定性增强&/b&&/p&&p&基于 2 个月的公测,我们遇到了非常多的问题。iceworks 客户端,我们发布了 8 个版本,遇到过的问题全部在当前版本修复、优化;物料部分,我们进行了两轮全量升级,一轮视觉质量升级,一轮代码质量升级;站点部分我们的预览等功能进行了重构确保稳定运行。&/p&&p&&b&用户体验增强&/b&&/p&&p&我们根据使用体验和用户反馈,联合交互和视觉,完全重构 站点、iceworks。站点更加美观、便于筛选信息。iceworks 客户端完全重构,同时借鉴了业界优秀的桌面端软件,对用户使用链路进行了很多优化。&/p&&p&&b&全新的品牌和 logo&/b&&/p&&p&我们启用了全新品牌名 飞冰 作为 ICE 的中文名称。此外我们也启用了全新的 iceworks 的 Icon:&/p&&figure&&img src=&https://pic4.zhimg.com/v2-245ced8e98ebf2d8f8548_b.jpg& data-caption=&& data-size=&normal& data-rawwidth=&264& data-rawheight=&300& class=&content_image& width=&264&&&/figure&&h2&扩展信息&/h2&&p&更多信息请移步:&/p&&ul&&li&官方网站:&a href=&https://link.zhihu.com/?target=https%3A//alibaba.github.io/ice/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&alibaba.github.io/ice/&/span&&span class=&invisible&&&/span&&/a&&/li&&li&下载 iceworks:&a href=&https://link.zhihu.com/?target=https%3A//alibaba.github.io/ice/%23/iceworks& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&alibaba.github.io/ice/#&/span&&span class=&invisible&&/iceworks&/span&&span class=&ellipsis&&&/span&&/a&&/li&&li&Github:&a href=&https://link.zhihu.com/?target=https%3A//github.com/alibaba/ice/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&github.com/alibaba/ice/&/span&&span class=&invisible&&&/span&&/a&&/li&&li&飞冰钉钉群号:&a href=&https://link.zhihu.com/?target=https%3A//ice.alicdn.com/assets/images/ice-group.png& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&点击查看二维码&/a&&/li&&/ul&&p&知乎此前也有一些讨论可以了解更多信息:&/p&&ul&&li&&a href=&https://www.zhihu.com/question/& class=&internal&&2018年了,大家都是怎么从零开始新建一个前端项目的?&/a&&/li&&li&&a href=&https://www.zhihu.com/question/& class=&internal&&2018年,国内有哪些值得关注的中后台前端产品,发展趋势如何?&/a&&/li&&li&&a href=&https://www.zhihu.com/question/& class=&internal&&如何看待iceDesign的GUI工具Iceworks?&/a&&/li&&li&&a href=&https://www.zhihu.com/question/& class=&internal&&如何评价阿里巴巴的 GUI 构建工具 ICE ?&/a& &/li&&/ul&&p&此外,&a href=&https://zhuanlan.zhihu.com/p/& class=&internal&&飞冰 2.0 也已经正式发布并支持 Vue 项目开发&/a&。&/p&
经过两个月的开放公测,飞冰迎来了正式版发布。飞冰是什么?海量可复用物料,通过 GUI 工具极速构建中后台应用。这句 slogan 还是非常准确的:飞冰是一套综合解决方案,用来极速构建中后台应用(其实也可以做非中后台应用)可以做到极速是通过『海量可复用…
已有帐号?
无法登录?
社交帐号登录
14523 人关注
676 条内容
3436 人关注
1424 条内容
304 人关注
153 条内容
191 人关注
16685 人关注
4307 条内容

我要回帖

更多关于 科迈罗黑武士 的文章

 

随机推荐