Redian新闻
>
感觉vert.x上的callback hell比node上还要更丑陋
avatar
感觉vert.x上的callback hell比node上还要更丑陋# Programming - 葵花宝典
D*i
1
h1b
是不是将来会放出来?现在是灰色的不让约
avatar
Q*r
2
连续听说裁员了,LD昨天说他们公司要裁员,下午就听说我们公司早上在别的location
裁员了,明天我们这边裁
有什么专业是越老越稳定的?经验型的?
avatar
k*n
3
什么时候递交申请的,用了多久?
前3个有包子,谢谢。
avatar
C*9
4
今天在水瓶男的FB上发现了他的红颜知己,或者女朋友,不知道。。两人一样的爱好,
share很多共同的朋友,还是曾经的同事。她还在他最喜欢的城市里,NYC。难怪他三天两头去NYC。甚至她linkedin上的推荐都是他写的。sigh...what a lonely planet.
avatar
V*6
5
浙江省教育厅根据教育部2015版《中小学生守则》拟制的《浙江省中小学生日常行为规
范(征求意见稿)》正在向全省中小学教师等征求意见。中学版删减了“见义勇为,敢
于斗争,对违反社会公德的行为要进行劝阻,发现违法犯罪行为及时报告”等内容。
浙江省教育厅基教处副处长朱国清表示,新版规范的是如今孩子的行为。以“不随地吐
痰,不乱扔果皮纸屑等废弃物”为例,浙江的群众文明程度已普遍提高,很少有孩子会
“犯规”,不提也可以。同时,既然是日常行为规范,就应该是针对孩子每天、每周、
每月会遇到的事,像“见义勇为”等事件的偶然性大,对中小学生也不适合强调,就没
有写进规范里。
稍加留意就会发现,《浙江省中小学生日常行为规范(征求意见稿)》与“老版”相比
有了较大的调整,增加了不少内容,也删减了不少内容,较好实现了“注意体现时代特
征、浙江特色,突出实用性、可操作性,避免空洞和说教”的修订初衷。其中特别值得
关注的一点,就是对“见义勇为,敢于斗争”等内容进行了删减。说不定,此举会引起
一些疑虑甚至质疑——难道我们一直提倡的见义勇为精神已经过时了吗?难道真的要鼓
励“事不关己、高高挂起”的利己主义吗?或许有人还会拿不敢扶老人来作为例子,力
证弘扬见义勇为精神“从娃娃抓起”的重要性。
其实不然。见义勇为的精神无论什么时候都需要大力弘扬,但毕竟学生是未成年人,身
体和心智等方面都还不成熟,很多情况下都不宜“冲锋在见义勇为的第一线”。这既是
对孩子自身的保护,也是为了避免带来更大的风险和损失。媒体上不止一次报道过,有
的学生为了救一个落水的同伴,结果好几个人都溺水身亡,小悲剧变成了大悲剧,令人
痛心。我们提倡见义勇为,更要鼓励见义智为,也就是要讲究方式方法,用最小的成本
实现效益最大化,尽量避免做无谓的牺牲。遇到紧急情况,未成年人通过报警、向大人
求救等方式,显然能够收到事半功倍的效果。浙江新版学生守则中提出学生“遇到危险
懂得求助,会正确拨打求助电话”,无疑是清醒而理智的。
随着时代的进步,人们的观念也更为理性,对见义勇为的内涵界定也在与时俱进。比如
,在武汉新版见义勇为条例中,就将原版本中“不顾个人安危、挺身而出”的表述剔除
,摒弃越壮烈越英雄、越英雄越好汉的思维方式和做法,更强调对生命的敬畏和尊重,
鼓励和倡导科学、合法、适当地“见义智为”。
对成年人尚且如此,对未成年人更应该是这样。《中小学生守则》和《日常行为规范》
是对中小学生思想品德和日常行为的基本要求,不仅有其实践意义,同时还具备鲜明的
导向性。窃以为,学生守则删减“见义勇为”是一种进步,甚至可以说是生命教育的一
部分。
avatar
p*2
6
正在看vert.x的code,callback hell照样比比皆是。这样看async还是golang最美。
avatar
c*c
7
2月份的还没有放出,一般可以约两天后到三周之间大约10多天的。
avatar
w*y
8
有执照的

location

【在 Q****r 的大作中提到】
: 连续听说裁员了,LD昨天说他们公司要裁员,下午就听说我们公司早上在别的location
: 裁员了,明天我们这边裁
: 有什么专业是越老越稳定的?经验型的?

avatar
f*D
9
你只有2个币,怎么发包子呢?
呵呵
avatar
P*i
10
patpat 和他当面讲讲你的不满?

今天在水瓶男的FB上发现了他的红颜知己,或者女朋友,不知道。。两人一样的爱好,
share很多共同的朋友,还是曾经的同事。她还在他最喜欢的城市里,NYC。难怪他三天
两头去NYC。甚至她linkedin上的推荐都是他写的。sigh...what a lonely planet.

【在 C***9 的大作中提到】
: 今天在水瓶男的FB上发现了他的红颜知己,或者女朋友,不知道。。两人一样的爱好,
: share很多共同的朋友,还是曾经的同事。她还在他最喜欢的城市里,NYC。难怪他三天两头去NYC。甚至她linkedin上的推荐都是他写的。sigh...what a lonely planet.

avatar
p*2
11
f1(..., new Handler(){
@verride
public void handle(){
f2(..., new Handler(){
@overrid
public void handle() {
...
}
});
}
});
avatar
D*i
12
谢谢,那我每天刷一次
你知不知道上海领馆2月几号上班?

【在 c*****c 的大作中提到】
: 2月份的还没有放出,一般可以约两天后到三周之间大约10多天的。
avatar
m*e
13

location
医生,律师

【在 Q****r 的大作中提到】
: 连续听说裁员了,LD昨天说他们公司要裁员,下午就听说我们公司早上在别的location
: 裁员了,明天我们这边裁
: 有什么专业是越老越稳定的?经验型的?

avatar
k*n
14
这是个马甲。哈哈
avatar
C*9
15
以啥身份呢,妹妹? lol

【在 P*******i 的大作中提到】
: patpat 和他当面讲讲你的不满?
:
: 今天在水瓶男的FB上发现了他的红颜知己,或者女朋友,不知道。。两人一样的爱好,
: share很多共同的朋友,还是曾经的同事。她还在他最喜欢的城市里,NYC。难怪他三天
: 两头去NYC。甚至她linkedin上的推荐都是他写的。sigh...what a lonely planet.

avatar
l*n
16
比java future丑陋吗?node用promise写非常优美。node的native callback是非常丑
陋啊
avatar
c*c
17
这些人是美国的节也过,中国的节也过。估计得中国法定的春节假期过了。
avatar
C*d
18
经济好像就没好转过啊

location

【在 Q****r 的大作中提到】
: 连续听说裁员了,LD昨天说他们公司要裁员,下午就听说我们公司早上在别的location
: 裁员了,明天我们这边裁
: 有什么专业是越老越稳定的?经验型的?

avatar
P*i
19
倒。。。

以啥身份呢,妹妹? lol

【在 C***9 的大作中提到】
: 以啥身份呢,妹妹? lol
avatar
p*2
20

java future貌似很难用呀。

【在 l**********n 的大作中提到】
: 比java future丑陋吗?node用promise写非常优美。node的native callback是非常丑
: 陋啊

avatar
a*1
22
我们这里也好像听说要裁员,

location

【在 Q****r 的大作中提到】
: 连续听说裁员了,LD昨天说他们公司要裁员,下午就听说我们公司早上在别的location
: 裁员了,明天我们这边裁
: 有什么专业是越老越稳定的?经验型的?

avatar
C*9
23
扁死他!!!

【在 P*******i 的大作中提到】
: 倒。。。
:
: 以啥身份呢,妹妹? lol

avatar
l*n
24
node的native callback很难读

【在 p*****2 的大作中提到】
:
: java future貌似很难用呀。

avatar
s*a
25
我前几天看到一句话,挺有意思的
”当你爱一个人的时候,不要急于表白,也不要计较他是不是也爱你。你只需要观察他
,用观察的方式继
续爱,你就会懂得这个人,而懂得本事也是爱。“

【在 C***9 的大作中提到】
: 以啥身份呢,妹妹? lol
avatar
p*2
26

所以要用coffee呀。

【在 l**********n 的大作中提到】
: node的native callback很难读
avatar
G*o
27
认真学习了

我前几天看到一句话,挺有意思的
”当你爱一个人的时候,不要急于表白,也不要计较他是不是也爱你。你只需要观察他
,用观察的方式继
续爱,你就会懂得这个人,而懂得本事也是爱。“

【在 s***a 的大作中提到】
: 我前几天看到一句话,挺有意思的
: ”当你爱一个人的时候,不要急于表白,也不要计较他是不是也爱你。你只需要观察他
: ,用观察的方式继
: 续爱,你就会懂得这个人,而懂得本事也是爱。“

avatar
q*c
28
coffee 不就是 oop 嘛。
那这么苦逼干嘛不直接上 oop 的语言?

【在 p*****2 的大作中提到】
:
: 所以要用coffee呀。

avatar
C*9
29
是啊,不表白更好,还能做朋友。。
我们故事曲折,不过也是过了快1年才表了一次白的。。被暧昧折腾得不轻才表的。哈
哈。

【在 s***a 的大作中提到】
: 我前几天看到一句话,挺有意思的
: ”当你爱一个人的时候,不要急于表白,也不要计较他是不是也爱你。你只需要观察他
: ,用观察的方式继
: 续爱,你就会懂得这个人,而懂得本事也是爱。“

avatar
p*2
30

coffee的class我们从来不用,我们用的是coffee的functional方面

【在 q*c 的大作中提到】
: coffee 不就是 oop 嘛。
: 那这么苦逼干嘛不直接上 oop 的语言?

avatar
s*a
31
要不你跟他谈谈
注意看哦,原帖里很多都是对事件的interpretation
事情本来也许不像你想得那样哦 :)
瓶子的朋友可以是很多的,而且对谁都特好,但是谁是特殊的那个,他心里是分得清的
^_^

【在 C***9 的大作中提到】
: 是啊,不表白更好,还能做朋友。。
: 我们故事曲折,不过也是过了快1年才表了一次白的。。被暧昧折腾得不轻才表的。哈
: 哈。

avatar
N*m
32
promise+async

【在 l**********n 的大作中提到】
: 比java future丑陋吗?node用promise写非常优美。node的native callback是非常丑
: 陋啊

avatar
C*9
33
我觉得瓶子是看感觉的,谈话改变不了什么。。

【在 s***a 的大作中提到】
: 要不你跟他谈谈
: 注意看哦,原帖里很多都是对事件的interpretation
: 事情本来也许不像你想得那样哦 :)
: 瓶子的朋友可以是很多的,而且对谁都特好,但是谁是特殊的那个,他心里是分得清的
: ^_^

avatar
N*m
34
你真是赤裸裸的挑逗啊

【在 p*****2 的大作中提到】
: 正在看vert.x的code,callback hell照样比比皆是。这样看async还是golang最美。
avatar
p*2
35
我的意思是java的不要笑话node callback

【在 N*****m 的大作中提到】
: 你真是赤裸裸的挑逗啊
avatar
N*m
36
本版没几个人用vert.x

【在 p*****2 的大作中提到】
: 我的意思是java的不要笑话node callback
avatar
b*e
37
没觉得promise有很大的帮助。promise并不消除callback.
generators才是解决之道。

【在 l**********n 的大作中提到】
: 比java future丑陋吗?node用promise写非常优美。node的native callback是非常丑
: 陋啊

avatar
g*g
38
You can use Rxjava

【在 p*****2 的大作中提到】
: 正在看vert.x的code,callback hell照样比比皆是。这样看async还是golang最美。
avatar
p*2
39

rxjava并发模型太陈旧了

【在 g*****g 的大作中提到】
: You can use Rxjava
avatar
g*g
40
RxJava is just a way to replace Future, it has nothing to do with
concurrency model. You can use vert.x along with it.

【在 p*****2 的大作中提到】
:
: rxjava并发模型太陈旧了

avatar
p*2
41
跟scala的future比如何?

【在 g*****g 的大作中提到】
: RxJava is just a way to replace Future, it has nothing to do with
: concurrency model. You can use vert.x along with it.

avatar
g*g
42
I guess you can find out by yourself.

【在 p*****2 的大作中提到】
: 跟scala的future比如何?
avatar
i*i
43
跟个例子:










打开console看结果:
start in 1s ...
test.html:18 Show time: 22
test.html:23 pause for 1s in A.
test.html:18 Show time: 23
test.html:33 pause for 1s in B.
test.html:18 Show time: 24
test.html:36 aA returns '42'.
test.html:68 aB returns: Game over

【在 b***e 的大作中提到】
: 没觉得promise有很大的帮助。promise并不消除callback.
: generators才是解决之道。

avatar
j*f
44
Node建议用event emitter
avatar
b*e
45
So your point is promise + generators is the way to go?

【在 i**i 的大作中提到】
: 跟个例子:
:
:
:
:
:
:
:
:



of

【在 b***e 的大作中提到】
: /**
: To use promise is unnecessary. More succinct syntax can be achieve with
: other libs, such as "node-sync". This package also captures an emulation of
: call stack when there are exceptions.
: **/
: /* use "node-sync" package */
: var proc = require('node-sync');
: var cb = function(err, res) {
: if (err) {
: console.log('cb ERROR', err.stack);

avatar
z*e
46
1)你没有用rxjava,which在vert.x里面很强调使用的东西,不用rxjava,你是很难写
出优雅代码的,这个是用vert.x的常识,甚至可以说是java程序员的常识,这种东西压
根不值得拿来做例子
2)这个是匿名类,which是java8以前的东西,写swing的话,这种东西到处都是,这就
是为啥我讨厌callback hell的主因,后来发现js居然把这种垃圾给捡过去了,我都快
吐了
3)异步要谨慎使用,除了会导致callback hell以外,还会让原本同步的操作变成
callback hell,邯郸学步
4)java本身没有办法阻止你写出callback hell,因为你在用fp的方式用oop,而且还
是比较旧版的java,如果你真的要用fp,就别用java好了,因为java根本不让你用fp,
好吧,部分可以,这个其实是fp的问题,不是java的问题,java已经把你往oop上去引
导了,你却非要迕逆java的引导,我能说啥?
5)你可以自己动手解决这个问题,看看rxjava怎么做的,其实原理不难,只要理解了
reflection,publish/subscribe模式
6)从java7->java8(lambda)->rxjava是三个不同阶段,你非要停留在java8-的阶段来
讨论问题,对现有工具和进步视而不见,吹毛求p,我也很无奈啊
avatar
p*2
47

有没有rxjava跟vert.x配合的代码例子?
另外vert.x的async库感觉很不成熟呀,用户量很少。

【在 z****e 的大作中提到】
: 1)你没有用rxjava,which在vert.x里面很强调使用的东西,不用rxjava,你是很难写
: 出优雅代码的,这个是用vert.x的常识,甚至可以说是java程序员的常识,这种东西压
: 根不值得拿来做例子
: 2)这个是匿名类,which是java8以前的东西,写swing的话,这种东西到处都是,这就
: 是为啥我讨厌callback hell的主因,后来发现js居然把这种垃圾给捡过去了,我都快
: 吐了
: 3)异步要谨慎使用,除了会导致callback hell以外,还会让原本同步的操作变成
: callback hell,邯郸学步
: 4)java本身没有办法阻止你写出callback hell,因为你在用fp的方式用oop,而且还
: 是比较旧版的java,如果你真的要用fp,就别用java好了,因为java根本不让你用fp,

avatar
z*e
48
VERT.X V3

【在 p*****2 的大作中提到】
:
: 有没有rxjava跟vert.x配合的代码例子?
: 另外vert.x的async库感觉很不成熟呀,用户量很少。

avatar
p*2
49
上次试了js不work

【在 z****e 的大作中提到】
: VERT.X V3
avatar
z*e
50
你应该不会这么急着上吧?
再等等吧,现在主要问题是scala那边需要大量重构代码
不兼容java的api,其他语言都能兼容,制作组不想写太多scala代码
但是目前看,没有特别好的方法,因为v2的scala刚写完没多久
又要再写一遍,如果你实在想搞
单独用rxjava,vert.x只是一个简单的网络listener而已
自己写一个也不难,还有一个worker
理解了rxjava的idea,其实剩下的无非是实现verticle的interface的问题
这两个整合好像没有那么难吧?以前hibernate,struts什么比这个恶心多了

【在 p*****2 的大作中提到】
: 上次试了js不work
avatar
z*e
51
https://github.com/vert-x3/vertx-rx
作者是vert.x的scala部分的作者
他来负责vert.x的rxjava部分
水平应该是有的
能不能work,我也不知道,毕竟还在开发阶段
可以问问他
我现在想的是,如何跟vert.x里面那个bus直接通信
用swift,而非java
vert.x多有趣啊,好多事情可以做,好多东西可以搞
avatar
p*2
52

看了一下,rxjava这个pattern,node.js早就有了吧?

【在 z****e 的大作中提到】
: 你应该不会这么急着上吧?
: 再等等吧,现在主要问题是scala那边需要大量重构代码
: 不兼容java的api,其他语言都能兼容,制作组不想写太多scala代码
: 但是目前看,没有特别好的方法,因为v2的scala刚写完没多久
: 又要再写一遍,如果你实在想搞
: 单独用rxjava,vert.x只是一个简单的网络listener而已
: 自己写一个也不难,还有一个worker
: 理解了rxjava的idea,其实剩下的无非是实现verticle的interface的问题
: 这两个整合好像没有那么难吧?以前hibernate,struts什么比这个恶心多了

avatar
p*2
53

Observable就是monad吧?rxjava就是FP呀。

【在 p*****2 的大作中提到】
:
: 看了一下,rxjava这个pattern,node.js早就有了吧?

avatar
g*g
54
如果有那要RxJs干啥?

【在 p*****2 的大作中提到】
:
: Observable就是monad吧?rxjava就是FP呀。

avatar
p*2
55

Why RxJS?
One question you may ask yourself, is why RxJS? What about Promises?
Promises are good for solving asynchronous operations such as querying a
service with an XMLHttpRequest, where the expected behavior is one value and
then completion. The Reactive Extensions for JavaScript unifies both the
world of Promises, callbacks as well as evented data such as DOM Input, Web
Workers, Web Sockets. Once we have unified these concepts, this enables rich
composition.

【在 g*****g 的大作中提到】
: 如果有那要RxJs干啥?
avatar
z*e
56
有啊,这个pattern早就有了,关键有没有人去实现而已
自己做也无非那么一回事,又不是什么rocket science
之所以用类库,无非是以后找人维护方便点而已

【在 p*****2 的大作中提到】
:
: Why RxJS?
: One question you may ask yourself, is why RxJS? What about Promises?
: Promises are good for solving asynchronous operations such as querying a
: service with an XMLHttpRequest, where the expected behavior is one value and
: then completion. The Reactive Extensions for JavaScript unifies both the
: world of Promises, callbacks as well as evented data such as DOM Input, Web
: Workers, Web Sockets. Once we have unified these concepts, this enables rich
: composition.

avatar
z*e
57
我自己的实现是通过一个list来完成
其实就是jms的ioc

【在 p*****2 的大作中提到】
:
: Why RxJS?
: One question you may ask yourself, is why RxJS? What about Promises?
: Promises are good for solving asynchronous operations such as querying a
: service with an XMLHttpRequest, where the expected behavior is one value and
: then completion. The Reactive Extensions for JavaScript unifies both the
: world of Promises, callbacks as well as evented data such as DOM Input, Web
: Workers, Web Sockets. Once we have unified these concepts, this enables rich
: composition.

avatar
z*e
58
observer, listener这个在swing时代就有了
再早vc,smark什么叉叉什么不知道
但是估计也有,jms的subscriber还是后来的事了
属于21个patterns里面不怎么为人所用的一个
除了jms和swing这种,现在做的无非是一些infra
以后其他人用了可以不用再重复造这个轮子罢了
没啥大不了的,用点脑子,自己做一个出来也不是什么难事
关键是一堆蠢货明明知道有callback hell,还能把代码写成那样
那绝对是奇芭,vert.x v3当rxjava出来之后,马上adopt
然后所有代码重构,这就是正确的态度
v2->v3是一个非常大的跨越,如果不是对原理特别熟悉的话
强烈建议等v3出来之后再搞,另外不用node的原因也很简单
因为多线程,社交网站各个thread之间可以隔离,但是我的需求可不是这么一回事
不同的thread之间需要交流,在内存中就要communicate
share objects几乎是必需的,如果存到persistence上去再回来
都不知道猴年马月了,估计差评一堆了,redis也慢,也不方便
web还是太简单了
avatar
p*2
59
需要communication node确实不方便了

【在 z****e 的大作中提到】
: observer, listener这个在swing时代就有了
: 再早vc,smark什么叉叉什么不知道
: 但是估计也有,jms的subscriber还是后来的事了
: 属于21个patterns里面不怎么为人所用的一个
: 除了jms和swing这种,现在做的无非是一些infra
: 以后其他人用了可以不用再重复造这个轮子罢了
: 没啥大不了的,用点脑子,自己做一个出来也不是什么难事
: 关键是一堆蠢货明明知道有callback hell,还能把代码写成那样
: 那绝对是奇芭,vert.x v3当rxjava出来之后,马上adopt
: 然后所有代码重构,这就是正确的态度

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。