g*****g 发帖数: 34805 | 1
举个很简单的例子,我想log所有service layer getXXXX方法的调用。不用AOP你
怎么注入。给所有的类注入logger然后log一次?这不是重复代码吗?这是很现实
的应用。比如Acegi用这个机制来做安全,Spring自己用这个机制来做declarative
transaction。这些都是在大量项目里面使用的。
Spring这个东西现在很大,不是啥都要用。但IoC跟AOP机制我还真没见什么人说
不好的。 |
|
b******y 发帖数: 9224 | 2 seems to me, that spring is more for higher level, application development,
for low-level system development, you don't need it, just simple java app is
ok.
same with AOP, system level coding is more efficient, without AOP I guess. |
|
r*****s 发帖数: 985 | 3 关键是personally i don't like too much config.
not tracable and hard to debug
配上bad document (通常programmer写的都是),
一件简单的事情都不知道怎么办了。
你看for mixing aspect types chapter 7.5
用@AspectJ + ,
就没个像样的例子,
config就像在搞permutation,
选择又太多,
而且还要等到server起来了才能检验work不work。
当然,
我检讨,
我今天有点心浮气躁。 |
|
z*******3 发帖数: 13709 | 4 我也是觉得在service做比较合理
但是在service做,spring用aop来作,ejb容器用显式的transaction标记来做
appengine的objectify就没有办法了,除非加上guice的aop
那样就大了,就慢了,所以我现在只能做在dao里面
从web就开始做,有点太过于早了点
毕竟action跟service很可能是在不同物理机器上的
这样跨机器搞transaction是忌讳,还是不要了 |
|
l********0 发帖数: 283 | 5 最近在学struts和spring。
感觉它们确实很强大,spring的强项就是IOC和AOP,struts的强项是MVC的剥离,另外
struts也提供了很多接口,可以让我们自己来实现或者覆盖默认的。
现在有几个疑问:
1. 一个网站有很多页面,一些页面需要登录才能看,一些页面不需要登录,那么应该
在那些需要登录后才能看的页面增加验证的拦截器。请问这种拦截器是利用struts的
Interceptor更好,还是spring的aop更好?
2. 网上一个视频里说,我们几乎不需要自己来写struts的interceptor,因为struts已
经提供了很多通用的interceptor。这个意思是说:我们只要使用struts提供的
interceptor,配置一下就能用,不需要自己写代码;还是说继承struts的interceptor
来满足自己的要求?
希望我说明白了我的问题。请大家指教,非常感谢。 |
|
g*****g 发帖数: 34805 | 6 I think spring came with AOP and things like JDBCTemplate and some good
utilities (String manipulation, loading resource from classpath etc.) even
in early days.
And there's no other good AOP solution at that time. It's more than IoC.
用它 |
|
t*******e 发帖数: 684 | 7 Spring的核心概念是要promote POJO style programming。DI和AOP都是为了达到POJO
的目的。没有DI可以用JNDI lookup, 没有AOP可以用UserTransaction.begin(),
Logger.log(),AspectJ API。EJB1和2就是这么样的。结果就是API intrusive code。
提出POJO style programming是Spring最大的贡献。 |
|
z*******3 发帖数: 13709 | 8 spring能做的,jboss都能做
不同的key words罢了
比如di,你不需要ejb,用beans.xml就可以替换spring的di了
不需要整合,直接就能用,用法跟spring的di是一样的
当然annotation有所区别,不过相比之下,jboss这一套更为标准
websphere什么也都可以这么用,spring的话,换一个就不是那么容易了
当然spring也支持标准的annotation和xml命名
但是你在网络上找到的例子,都是非标准命名和使用
aop jboss也有
不过需要说明的是,aop不是j2ee的一部分,所以不是所有的app server都缺省支持 |
|
y****e 发帖数: 23939 | 9 container用的Felix,用spring DM设置,我不知道怎么把这个只有data的jar加进去。
比如象这个在在bundle-context-osgi.xml中:
还有这个POM中的
org.springframework.aop
org.springframework.aop.framework
org.springframework.jdbc.core
都是做什么的啊?我想加的bundle因为只是contract data bean,不知道怎么配置才好。
installed |
|
x**n 发帖数: 461 | 10 大家都觉得C#有很多新feature,而JAVA没有,跟我的感觉差不少。C#
的以下feature我都在用:
LINQ
Lambda Expressions
WCF
WPF
Closures
Dynamic types and the DLR
Named and Optional arguments
Covariance and Contravariance
Task
事实上可以把他们都当作扩展库,除了Dynamic是真正新东西,而且最终Dynamic从我们
的code中消失了。
但是我最想用的AOP在.NET上基本就是靠attribute了,想weaver只能靠做梦,即使有
weaver也是动态的,没有象Java那样有一堆的静态weaver。首先作为一个坚定的POCO支
持者,为了AOP而用attribute是不可理喻的。其次,动态weaver的performance
penalty有多大还不知道,如果实在不行恐怕最后还是只能回到原始的OO的路上了。 |
|
z****e 发帖数: 54598 | 11 实际上作为一个aop的爱好者来说
我很讨厌看到代码里面出现debug.log这种东西
哪怕是一行我都不喜欢看到
fp这点上比oop差了不少,oop要做aop很容易
切面本身通过flow可以直观理解
fp我连切都不知道怎么切进去
+z |
|
c******o 发帖数: 1277 | 12 这个我没用,不过所有的java AOP framework scala都能用吧?都是一样的byte code
我知道有人用 Spring/Scala 的。
查了一下
AspectWerkz/AspectJ/Spring AOP
都有人和scala一起用,没什么问题。 |
|
z*******3 发帖数: 13709 | 13 你们这个系统还真杂啊
我刚跟一个集团的cio聊了下
他跟我也有相同的观点
就是技术太杂本身就是错误的
所以他们用了一段时间groovy之后
还是丢掉了groovy,回到java上去
因为java本身普及的范围广
groovy欠缺点,会的人不多
我用aop也是不用aspectj的额外定义的语法
也只用spring的aop,这样都是java,减少各种障碍
你这种杂语言系统如果要做成web service的话
vert.x很好用啊
log |
|
n****1 发帖数: 1136 | 14 Monad这个在92年就提出来了, Haskell98标准里面那些Reader/Writer全都包括了。
也就是说90年代里haskell程序员就已经在用AOP了。 而直到现在, AOP在java/scala
都还只是库, 不是语言标准。
所以并不是haskell花了无数论文才弄出Monad, 而是人们花了无数时间才意识到他们
造出来的超级牛逼的轮子其实只是monad的特殊应用。
当然haskell本来就是理论家的试验田,无意取代主流语言, 而是提出些超前的idea,
让其他语言能借鉴下。 |
|
n****1 发帖数: 1136 | 15 其实我希望看到JVM里能提供AOP式的内存管理, 默认采用GC管理, 但程序员可以选择其
他策略.
至于这些与业务逻辑无关的内存管理策略应该通过AOP的形式放到其他地方, 不和主代
码混在一起就可以了. |
|
n****1 发帖数: 1136 | 16 AOP其实是monad的代名词, 熟了就很容易理解了.
C++的template所能达到的meta programming是很牛逼了, 用好了template, 实现AOP是
小菜一叠. |
|
z*****m 发帖数: 119 | 17 技术上差别很大,不是一回事儿.
当然,理论上functional programming把AOP的功能给包括了,纯functional language
是不需要AOP的。直接function裹function就完了。 |
|
z*******3 发帖数: 13709 | 18 上cassandra和aop就好了
用java的应该都用spring吧?
用aop可以有效减少各种乱七八糟的log代码
结构也更合理,我针对每一个方法在调用前和后,各做一次拦截
获取相关数据,插入log,不过我不用log4j,找个nosql放
nosql就用来做这个的,cassandra很好
然后查的时候就查cassandra
要不然动不动就要grep,我的天 |
|
n*w 发帖数: 3393 | 19 上次在一个f#会上speaker推荐用monad代替AOP。 说AOP带来的诸多问题。 |
|
z****e 发帖数: 54598 | 20 fp出现的时间点远比oop要早
fp要能把所有问题都搞定,就不会有oop的今天
aop只是作为oop的补充,提倡用monad替代aop的多半是fp的狂热份子 |
|
n*w 发帖数: 3393 | 21 上次在一个f#会上speaker推荐用monad代替AOP。 说AOP带来的诸多问题。 |
|
z****e 发帖数: 54598 | 22 fp出现的时间点远比oop要早
fp要能把所有问题都搞定,就不会有oop的今天
aop只是作为oop的补充,提倡用monad替代aop的多半是fp的狂热份子 |
|
z****e 发帖数: 54598 | 23 因为fp本来就包含有monad
而oop并不包含有aop
aop并不是必需,我只是用来做一个补充
不用也没啥大不了的,用也没多麻烦
但是要全部换成fp,那这个就比较痛苦了
思维容易乱,我自己都乱,传递给别人就更乱了 |
|
r***s 发帖数: 737 | 24 什么事情都不要说得太过。没有一样东西是十全十美的。aop的问题比继承
只多不少。swing哪傻逼东西就一半吊子AOP。
继承离完蛋还远着呢。 |
|
z****e 发帖数: 54598 | 25 monad是aop的一种
所以oop的话用aop就可以搞类似的操作
就是oop写成monad也不难 |
|
M******s 发帖数: 1772 | 26 比如如果用wong, 此宝宝就叫“宝宝”,他的名字就不叫Baobao Wang, 而是P'aop'ao Wong, 自己看着都别扭。 |
|
n*******4 发帖数: 2285 | 27 OO的确是计算机技术发展到一定水平,不用再把要解决的问题(Domain)领域都拆解成
计算机领域的模型,而是直接应用问题领域本来就存在的模型及分类方式。这种模型方
式被证明是对解决复杂问题更有效,更“自然”的。计算机领域原有模型倒是可以隐藏
起来,成为不重要的细节。以此去分析生物学的中心法则(Central Dogma),可以看
出其实自然界早就发现并应用了这种模型方式。
但OO在计算机领域本省也是门大学问,不仅仅是个模型方式问题。比如Framework,
design paterrn。到如今的AOP,dependency injection。一直还在发展中。这其中积
累了丰富的概念体系和分析方法,都远没有被应用到细胞分子生物学的分析之中,尽管
说中心法则可以看成是一种OO.比如高等动物都具有同样的body plan--两个眼睛,一个
鼻子,两个耳朵,四肢等等,但具体形态却千变万化。从OO角度来分析,这就是一种
Framework和Framework的extension。那就可以进一步问用的是common interface还是
dependency injection还是什么其他机制 |
|
n*******4 发帖数: 2285 | 28 单纯从编程技巧来言编系统程序当然比编应用程序难,这是计算机编程的特点,越低层
越难,因为追求的是Machine Efficiency。但编应用程序也有另一个层面的难点,就是
项目越来越大,team里的人越来越多,人的头脑总是有限的,如何对付问题的复杂性,
complexity。如何达到最大的human efficiency,这是应用编程领域的更突出的问题。
OOP就主要是用来对付复杂性的, AOP也是。 |
|
|
n*******4 发帖数: 2285 | 30 谢谢你的理解和赞同。关于“适合于描述生物的数学”,我想生物系统控制的高度精准
,比如同卵双胞胎发育的如此相像,这意味着这一控制过程很大程度应是类数字化的(
digital like),而主要不是类模拟的。中心法则是高度数字化的这已是广为人知的了
,说明生物的基础的遗传信息的调控是数字化的,那为什么它的其他的高等功能的控制
就不能是数字化,软件化的,而一定是微分方程性质的呢?其实一个计算机的芯片工作
过程也可以用微分方程或我们中学学的模拟电路方程来描述,但就会变得无穷复杂,不
是他的本征描述, 许多不必要的细节掩盖了它的主要实质过程。所以我想这个正在寻
找的“适合于描述生物的数学”更可能是一种数字化软件描述。至少有这么一个Aspect,
现在软件开发不是时兴AOP吗--Aspect Oriented Programming.
SDE |
|
t******l 发帖数: 10908 | 31 这个证据太差吧。。。AMC12 / AIME 的 AoPS wiki 上也有些答案写得不是太清楚,而
那些都是英文而不是中文的。。。
: 天天说中国人不行,总要给个论据吧!
|
|
t******l 发帖数: 10908 | 32 当然我也就是大概看一下玩一玩。。。没有详细仔细验证,也可能有错。
而这个就说明为啥现实世界 AoPS wiki 上的 AMC12 / AIME,答案就常常几句话,从来
不会写个清楚整个思考尝试验证过程。。。因为这又不是张益唐老先生证明个哥德巴赫
猜想,证出来就有人开支票的那种。。。这种数以千计漫山遍野的 AIME 丢手绢题目,
本质上就是用来玩的。。。你写个思考过程,就算写对了,也不会有人给你开支票。。
。万一写了个小漏洞,三星立马跳出来把你骂成沙比你就该换 id 了。
所以像下弦月那样认为实名制能解决一切问题,那就是扯。。。你实名制哥德巴赫猜想
的证明当然没有问题,但你实名制 AIME 丢手绢题的话,那更不会有人上网扯淡博开心
了。。。我这还没画一遍证明的 decision tree / coloring / pruning,否则万一有
人撕逼要画一遍,不累死一拨人马?
当然不管怎么说,AIME 比跟古典音乐教皇 FourSeasons 撕逼还是要好很多,毕竟数学
还是比较客观,实在不行画 decision tree 互撕。。。音乐艺术实在是没有一般准则
,我看着 FourSeaso... 阅读全帖 |
|
c*********d 发帖数: 9770 | 33 刚才 在独立评论上 Aops 对博讯螺杆说 ”if you don't speak English go home“。
意思说你不会讲英语,就从美国滚回去。这种说法我不同意,语言并不是一门高深学问
,但是与学的年纪有很大关系,生在美国的孩子没有一个英文不好的,我儿子上高中来
美,我女儿上小学来美,女儿的英语比儿子好得多, 到了五十后学英文就非常困难。
我三十多岁开始学英文,而且在美国取得博士学位,但是英文也只是半吊子,应付一般
生活可以,读一般书可以,但是到了专业领域,譬如到了医院里,大多医药名字就听不
懂,至于用英文写作,写的完全是中国英文,所以我至今不敢翻译自己的作品到英文去
。由此上面的说法对老人是很不公平的。
但是我赞成:
如果入籍时宣过誓,而待在美国大骂美国,夸中国的人应该滚回去。为什么呢?让我们
看看誓言是怎么说的:
“我完全放弃我对以前所属任何外国亲王、君主、国家或主权之公民资格及忠诚,我将
支持及护卫美利坚合众国宪法和法律,对抗国内和国外所有的敌人。我将真诚地效忠美
国。当法律要求时,我愿为保卫美国拿起武器,当法律要求时,我会为美国做非战斗性
之军事服务,当法律要求时,... 阅读全帖 |
|
|
s***h 发帖数: 487 | 35 版上索男感觉高中 AoPS 的题目都没做过的样子。
虚数是因为存在代数演算中间结果不为实数,而最终结果还是实数的情况,所以引入虚
数。 |
|
w*******2 发帖数: 2199 | 36 肯定能写出来就是了
时崩妹说的没错, 为什么发明虚数, 高中的AoPS都说的很清楚了
麻痹的居然这么多掏谱图出来的,连这个都不知道 |
|
s***h 发帖数: 487 | 37 其实马工把麦克斯韦,放进有限元场方程数值求解器里,去数值计算的话,真的是用三
角函数的。C 标准数学函数库里确实没有复数运算。
: 肯定能写出来就是了
: 时崩妹说的没错, 为什么发明虚数, 高中的AoPS都说的很清楚了
: 麻痹的居然这么多掏谱图出来的,连这个都不知道
|
|
s***h 发帖数: 487 | 38 哥们你的物理学是不是考虑回高中AoPS车间返修啊?
麦克斯韦方程组是线性方程组啊。
而且正是因为线性方程组的线性特性,所以如果用复数的话,实部和虚部毫无关系,互
不干扰。所以就可以在实数场方程上使用复数,结果只取实部。
其实数学上,这样用复数指数,只取实部。数学上等价于用三角函数,少写几个字而已。
不过哥们你吭哧吭哧想了一晚上就得出这个结论?算了,甭费事回车间返修了。不如环
保拯救地球。
: 你懂个屁。 麦克斯韦方程组都是复数运算完了然后可以分别得出实部和
虚部的
关系,
: 如果只使用三角函数来解复杂的电磁学问题, 人类的脑子不知道能不能
想得通
。 人脑
: 想不通的时候,靠码工怎么编得出程序。
: 凭码工就能歧视虚数的必要性? |
|
s***h 发帖数: 487 | 39 对,这就是数学上,数集对多项式求根 closure 的根本需求所在,导致复数的发生。
AoPS 阐述这个问题时,用竞赛技巧变形而绕过 closure 的绊脚石,而在实数集内求解
竞赛题。然后阐述不是所有
的问题都存在这种绕过绊脚石的竞赛技巧,至少要拍脑袋。所以得出虚数复数存在的数
学需求。
: 最初是为了解方程,所有N次方程必有N个跟。这是代数基本定理,没这个
很多问
题没法
: 做,有这个很多问题变自然了。
: ★ 发自iPhone App: ChinaWeb 1.1.4
|
|
s***h 发帖数: 487 | 40 我对基本概念不需要考过才能记牢,否则的话像我这种初中跳窗逃课,高中跟班花一起
步行去上课班主任还从草坪绕道的,啥都不会记住。
实际上高中初等数学的避免高维度和排列组合理论的概念记忆方式,我也不会的。我当
年记住概念主要靠奥数奥物两本习题集塞牛仔裤两边屁股兜里。先奥数奥物搞个不求甚
解,才能高中数学物理课概念来点每有会意。大实话。
不过我家大娃实在太懒,我给她买了AoPS教科书她懒得看,学校数学课的的概念阐述方
式她不习惯就蒙,我 offer 给她讲任何一道题她还是懒,只有学校的题目搞不明白时
才勉强让我讲解,还不许我开无轨电车。闹心。
: 对于基本概念
: 一般考过的才会记得特别牢
: 要S
|
|
s***h 发帖数: 487 | 41 AoPS 网站上 search 的解法都可能是 correct but not right。Google search 的
code / formula 不一定是对的。叔就遇到过 computational unstable 的 SQL。 |
|
|
x***o 发帖数: 127 | 43 训练逻辑思维还是太差。即使比较出名的AOPS也是如此。
这边不是小孩子智力差,主要问题是,小学数学老师是他妈的教语文教手工的老师教的
(一个老师教所有的主课),还要COMMON CORE, no child left behind照顾落后的,
法律要求的。
我一直怀疑,大资本家故意的,除了极少数人,从小就给你废掉数学的基本思维,这样
长大以后连报个税这种的数学都搞不清楚,需要弄个表格去查加减法,把你搞晕,更不
用说mortgage提前付账省钱还是亏欠都说不清楚。这样才容易忽悠,金融吸血。 |
|
c*******4 发帖数: 1874 | 44 看看高里程大赛日车占多少?有老中买日车的比例高吗?
rank id year maker model miles 名次奖 迈数奖
分组奖 总奖
1 longyuante 2003 VW Jetta 340779 300 200 200 700
2 covenante 1991 Toyota Previa 300405 300 200 200 700
3 Rafeliu 2000 Ford F-150 275577 300 200 200 700
4 HL 2002 Toyota Corolla 249134 300 200 100 600
5 hecqinz 2001 Ford F-150 Lar 5... 阅读全帖 |
|
c**h 发帖数: 491 | 45 use one of the two if you use apa format.
St. John, J., & Quinn, T.W. (2008). Rapid capture of DNA targets.
Biotechniques 44(2). Advance online publication. Retrieved
from http://www.biotechniques.com/default.asp?page=aop&subsection
=article_display&display=full&id=11263
Papini, P., Adriani, O., Ambriola, M., Barbarino, G.C., Basili, A.,
Bazilevskaja, G.A.,
et al. (in press). In-flight performances of the PAMELA satellite experiment.
Nuclear Instruments and Methods in Physics Research Section A: |
|
f*********r 发帖数: 68 | 46 这题有超级复杂无比的O(N)+O(1)的算法. 要用到in-place cache的方法.
AOP的习题中有一道题和这个很像. |
|
|
d**********9 发帖数: 5215 | 48 同事forward来一简历,扎一看还以为是阿三的,仔细一看原来是同胞的。
Around 5 years of progressive experience in Java oriented business
applications development, maintenance and testing.
Expert in Core Java technologies and APIs.
Chartered Financial Analyst level 2 Candidate
Expert in create front-end UI using HTML, DHTML, CSS, JSP, Servlet, and
AJAX
Expert in design and configure Spring Framework. Extensive knowledge in
Spring Framework features such as IOC, AOP and MVC design pattern
Expert in design and configure Struts Fra |
|
y***m 发帖数: 7027 | 49 比如
threadpool 管理 thread
回调函数: 声明接口,运行时传入实现方式。
hashtable比较大时最好预定一下尺寸,不然低效,因为要重新hash计算
aop一般只能基于容器注入,否则不灵
单例考虑到多机时要额外考虑
threadlocal在线程内部控制应用
自己定制hiberate session factory,管理多数据源
........
还有webservice等...这些一般需要做过才知道,大家都总结后分享出来很节省摸索时间 |
|
H*****g 发帖数: 638 | 50 全盛时期啥都想用 OO,不管任何情况,简历只要有OO,OOD,OOP。
前几年要求懂AOP,SOP,ROP...
这两年不知道... |
|