由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 给Java/Spring说几句好话
相关主题
java是个骗人的语言请问有哪位师傅知道haskell语言的?
看了一下monad,让我想到了Java的AOP有没有人对curring有研究
fp就是Declarative ProgrammingHaskell很难学。。
大家有没有觉得Scala不如Haskell美?我老给你们指条明路吧
Python就是爽functional programming?
Exceptionclojure这语言真不错
Goodbug你给个学java的roadmap吧最近系统深入的学了haskell 困惑不少 收获不多
数学和编程大牛给讲讲monad吧?
相关话题的讨论汇总
话题: spring话题: java话题: ioc话题: aop话题: fp
进入Programming版参与讨论
1 (共1页)
n****1
发帖数: 1136
1
虽然我不喜欢java这种“万物皆对象”的作风, 但java还是解决了很多实际问题的。
TIOBE上排第二的语言不是盖的。
"一大堆东西,什么JEE, Spring, JMS,OSGI,还有什么IOC, DI, ORM"这些很复
杂没错, 但终极原因是j2ee想要解决的问题本身就是很复杂, 与语言无关。
如果某一天其他语言/生态系统发展到了能解决类似问题的程度, 我敢打包票它们一定
实现了类似的东西。
我推崇haskell是因为熟悉Monad之后, IOC/AOP这些概念会很清晰: IOC与
Continuation Monad高度关联, AOP就是Monad Transformer. 你也很容易为啥IOC/AOP
有用处, 甚至发明自己的IOC/AOP.
Java的缺点是不容易发明这些, 譬如Spring里面IOC/AOJ的实现都需要用reflection.
但这绝不意味着其他语言不需要这些概念。
对于无需发明太多轮子的普通人来说, java是足够强大的。
c******o
发帖数: 1277
2
这些在haskell上也是无数篇论文才积累出来的。
幸运的是在scala上都是现成的(scalaz)
n****1
发帖数: 1136
3
Monad这个在92年就提出来了, Haskell98标准里面那些Reader/Writer全都包括了。
也就是说90年代里haskell程序员就已经在用AOP了。 而直到现在, AOP在java/scala
都还只是库, 不是语言标准。
所以并不是haskell花了无数论文才弄出Monad, 而是人们花了无数时间才意识到他们
造出来的超级牛逼的轮子其实只是monad的特殊应用。
当然haskell本来就是理论家的试验田,无意取代主流语言, 而是提出些超前的idea,
让其他语言能借鉴下。

【在 c******o 的大作中提到】
: 这些在haskell上也是无数篇论文才积累出来的。
: 幸运的是在scala上都是现成的(scalaz)

n****1
发帖数: 1136
4
还有就是,一个只学过Java, 只知道用OOP paradigm的人是造不出Spring/aspectJ这
些东西的。
新的idea往往来自与外界, 而不是闭门造车。 这就是为啥我认为码农即使再忙也要不
时学习新东西, 哪怕没有任何实用价值。
g*****g
发帖数: 34805
5
LOL, not again. Rod Johnson was a great engineer, not a great language
researcher. Ironically, how he created Spring was well documented in the
book Expert one-on-one with J2EE. I don't remember he mentioned Haskell or
any FP at all, it was all due to the cumbersomeness of J2EE at that time and
he wanted a lighter and easier way to get the same thing done.
You are giving all the credits to FP and none to design patterns and it's
just ridiculous. People come out with smart ways to do things because they
are experienced, they encounter a problem and they find a way to solve it.
Like they come up with design patterns, like they come up with great
frameworks such as spring. It doesn't mean they need to study FP or even get
inspired of it. Now maybe some academic theory can sum it nicely but those
frameworks didn't come out of academic. So just cut yourself some crap and
study some history,
would you? Or maybe after you truly create some useful framework you can
start
your premature bragging right?
b*******s
发帖数: 5216
6
很赞同,c++的发明人bs说,一个程序员起码要掌握5种语言,现在一种语言打天下是不
多见的

【在 n****1 的大作中提到】
: 还有就是,一个只学过Java, 只知道用OOP paradigm的人是造不出Spring/aspectJ这
: 些东西的。
: 新的idea往往来自与外界, 而不是闭门造车。 这就是为啥我认为码农即使再忙也要不
: 时学习新东西, 哪怕没有任何实用价值。

d****i
发帖数: 4809
7
赞同goodbug,某些FP粉老是喜欢把什么都扯到FP上,其实很多好的设计思想都不是来
自于什么高深的玄学理论,而是来自practical engineering sense。

and
get

【在 g*****g 的大作中提到】
: LOL, not again. Rod Johnson was a great engineer, not a great language
: researcher. Ironically, how he created Spring was well documented in the
: book Expert one-on-one with J2EE. I don't remember he mentioned Haskell or
: any FP at all, it was all due to the cumbersomeness of J2EE at that time and
: he wanted a lighter and easier way to get the same thing done.
: You are giving all the credits to FP and none to design patterns and it's
: just ridiculous. People come out with smart ways to do things because they
: are experienced, they encounter a problem and they find a way to solve it.
: Like they come up with design patterns, like they come up with great
: frameworks such as spring. It doesn't mean they need to study FP or even get

l*******n
发帖数: 373
8
其实软件工程最重要的理念是separation of concerns.
具体到架构就是SOA,micro services,具体到apps就是UNIX着名的single
responsibility,具体到FP就是side-effect-free, input/output only programming
,具体到AOP,dependency injection,cake pattern,无一不是separation of
concerns的体现。
还有着名的SOLID五条理念,基本全部在强调separation of concerns。这个精神抓
住了,具体怎样实现,用什么语言,用什么paradigm,大可商榷。
t********e
发帖数: 880
9
well said

and
get

【在 g*****g 的大作中提到】
: LOL, not again. Rod Johnson was a great engineer, not a great language
: researcher. Ironically, how he created Spring was well documented in the
: book Expert one-on-one with J2EE. I don't remember he mentioned Haskell or
: any FP at all, it was all due to the cumbersomeness of J2EE at that time and
: he wanted a lighter and easier way to get the same thing done.
: You are giving all the credits to FP and none to design patterns and it's
: just ridiculous. People come out with smart ways to do things because they
: are experienced, they encounter a problem and they find a way to solve it.
: Like they come up with design patterns, like they come up with great
: frameworks such as spring. It doesn't mean they need to study FP or even get

z****e
发帖数: 54598
10
难怪c++那么垃圾

【在 b*******s 的大作中提到】
: 很赞同,c++的发明人bs说,一个程序员起码要掌握5种语言,现在一种语言打天下是不
: 多见的

z****e
发帖数: 54598
11
很对

programming

【在 l*******n 的大作中提到】
: 其实软件工程最重要的理念是separation of concerns.
: 具体到架构就是SOA,micro services,具体到apps就是UNIX着名的single
: responsibility,具体到FP就是side-effect-free, input/output only programming
: ,具体到AOP,dependency injection,cake pattern,无一不是separation of
: concerns的体现。
: 还有着名的SOLID五条理念,基本全部在强调separation of concerns。这个精神抓
: 住了,具体怎样实现,用什么语言,用什么paradigm,大可商榷。

d****i
发帖数: 4809
12
大坑王歇了几天菌斑又来转战葵花版?

【在 z****e 的大作中提到】
: 很对
:
: programming

1 (共1页)
进入Programming版参与讨论
相关主题
大牛给讲讲monad吧?Python就是爽
想学FP最好不要从Scala开始Exception
STM到底解决了什么问题?Goodbug你给个学java的roadmap吧
看了一下Meteor很不错数学和编程
java是个骗人的语言请问有哪位师傅知道haskell语言的?
看了一下monad,让我想到了Java的AOP有没有人对curring有研究
fp就是Declarative ProgrammingHaskell很难学。。
大家有没有觉得Scala不如Haskell美?我老给你们指条明路吧
相关话题的讨论汇总
话题: spring话题: java话题: ioc话题: aop话题: fp