V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  jamiesun  ›  全部回复第 44 页 / 共 46 页
回复总数  905
1 ... 36  37  38  39  40  41  42  43  44  45 ... 46  
@reus python内置的大部分函数都是c函数的封装,你要这么钻牛角尖就没完了。C语言扩展机制做的这么好,这本身是python独特之处。在python手册中,用了大量的篇幅来介绍扩展模块,它本身是python不可分割的一部分。

在java里,jni并不是很重要的,是个半吊子的设计,其中存在不少内存陷阱,大多数情况下java不需要依靠jni来提升性能。

只是孤立比较pytho和java性能,这本来就意义不大,同一个项目,python和java都可以做的百分百符合要求,但是python只需要两个月做,java可能需要一年半载,投入的成本也是相差巨大的。很多人似乎都没注意到这一点。
@reus +c那是python的权利,没说不允许java作弊。
@bhuztez 你了解Erlang吗,你知道Erlang在电信系统中如何应用的吗,电信系统包括哪些东西?
@skywinger 废话就不说了,这是python的一些服务器基准测试结果:http://nichol.as/benchmark-of-python-web-servers,其他的不用看,只看gevent,单进程9500r/s,你自己用java写个helloworld server跑一下看看。

jetty,tomcat,jboss,你也可找些基准测试的数据来看看。

“python的性能是没法与静态编译类型语言媲美”这是针对cpu运算能力利用而言,python用c扩展下就甩java一条街了,不要孤立的看python,前面回复提了好几次了。当然你也可以用jni来扩展java,如果觉得对性能提升巨大的话。
@vicalloy

啥叫工程化语言,真没找到这个定义。

有多少中小企业会上ibm等厂商的商业产品服务,上的起吗,有必要吗,有多少企业在用websphere ,有多少企业在用jboss。ibm的广告都是白做的。ibm真要把服务产品推出去,靠得是公关回扣啥的,你看他的客户是谁就明白了。

工作流啥的,zope,plone老早就做的不错了,国内的易度一直在做,不比java差。

至于你作为一个python用户对python的吐槽水平,让我作为另一个python用户都觉得难堪,你现在都还没有发现python世界让人眼前一亮的东西,我都不知道你为什么还在用python。
@skywinger 交易转发系统这类IO密集型的Java并不比python优势,用过gevent就知道了。密集计算的java又干不过c++。java优势在于大型分布式。现在很多大型计费系统转向java并不是直接冲着java性能去的。单纯的server类系统没有什么优势。可以说大多数中小企业对java的开发挖掘如果换作python或ruby他们会做的更好。

@Kymair 你根本就没明白我在说什么,我说的很清楚:

大规模的应用,比如电信系统这类的使用java是最合适的,能充分发挥java的优势,资源整合,项目管理可以做的很好,但是在这种环境下,java程序员们的日子不好过,各种苛刻的环境待遇,要骂的是这些唯利是图的企业。

中小企业,尤其是初创企业,如果使用python或ruby会更好,更能充分发挥团队机动性与开发能力。在条件不错的情况下(比如北上广人才集中地),应该去朝着这个方向努力。

而对于个人,作为程序员在技术上应该有自己的自由选择,而且主动去选择,如果你是大公司的项目经理,架构师,把精力花在java研究上这无可厚非,如果只是一名中小企业的员工,何不在技术上做更好的探索,而python,ruby是我极力推荐的。花大力气在java上研究,没有大规模的应用场景实践,有个屁用。把python,ruby学好,轻松解决百分之七八十的问题,何乐不为。
2012-09-27 19:46:07 +08:00
回复了 zuroc 创建的主题 程序员 关于程序员新人
强力支持。
@RisingV 正因为亲身参与了搭建这样的流水线,管理过这样的流水线才为这些java程序员不值。

那些北大青鸟之类忽悠年轻人上船,成批成批地往流水线输送。

话说得是难听点,但这都是事实,企业有选择java的理由,但是个人,没必要自己往泥潭里跳。

世上只有一种程序员,那就是有选择能力的,知道为自己选择的,不论水平高低,他们才是真正的程序员。

貌似现在用C++的是越来越少了,连骂的人都少了。
@khotyn 你这话就外行了,python程序员一般不都是纯粹的python程序员,往往浸淫各类语言与技术的。

我做java开发比我使用python开发的时间要多上4,5年。对我来说说不是什么优越感,而是解脱感。
java程序员总是跳不出“天朝唯我独尊”的怪思想。

各位看官若有自己的想法,根本不会被误导,被误导的都是那些被表象牵着鼻子走的人。

在商业的博弈中,sun已经倒下去了,还拿sun来说事。在整个商业大潮流中,java不过是厂商们博弈的工具而已,那些流水线上java程序员不过是一颗颗小棋子,我敢断定百分之80的java程序员都在流水线上作业,毫无趣味,虽然混的一日三顿全家温饱,但是毫无趣味,浪费生命。要赚钱,早日改行才是正确的选择。java的优势那是对厂商大鳄们的恩赐,不是给程序员的礼物。还在扯性能有意思吗?

小公司学大公司 整自己的java开发框架平台,那是最傻不过的事情了,不知道有多少公司乐此不疲。

python还有一个不同于java的是python是自由开放的,python有一些商业大佬们不喜欢的因素。但是对于程序员绝对是最好的恩赐。“人生苦短,我用python”是有其渊源的。


当然ruby也是很好的。
Guido 大多时间用的是emacs,不要看见提交了几次代码就认定是PyCharm,作为python发明者,关注一下pythonide是很自然的,但显然Guido并不只是只写python,在一次email采访中他提到自己常用的是emacs。

java在gui发展最好的是eclipse rcp,如各种报表系统,mis类系统。

java在新版本里加入各种语法糖不过是取巧讨好程序员罢了,实际反而弄得复杂混乱。那个神马泛型编程自动装箱拆箱就是饱受争议的例子。

python最缺的商业驱动。

从语言上讲,java优势过度夸大,比如对中小企业,java就是泥潭,所谓商业支持不等于保证质量,质量在于你的管理。

而python优势常被人忽略,缺陷被放大,比如性能,比如gil

说起gil,很多人认为python在并发方面难有建树,python的协程模型已经证明了单线程的高并发能力,通过多进程模式,并发根本不是问题,相反java常用的多线程模型在多核利用上并没有太大优势。

对于计算密集型的应用,python可以通过C语言的扩展来发挥优势。

python最让人为之神往的是效率,投入比java团队少得多的成本获得更好的产出,一旦换作java,必将大动干戈。


大多数java程序员观念是非常顽固的,很难说服,没有几个人相信用一个编辑器能完成一个项目,他们不相信少了ide还能写代码发布项目,如果他试探性的学习一下,第一件事是打听用什么ide好。一个快捷键生成一坨坨get/set这就是他们认为的高效率。我身边7,8个java程序员,我和他们在一起工作的几年,我一直悄悄的用python。

如果还是只停留在脚本的认知程度,那你只好继续深陷java的泥潭而浑然不觉。

你觉得商业驱动不够而置之不理,你可以说苦逼程序员要随主流,不然怎么混饭吃,这么想也没错。
2012-09-26 21:39:50 +08:00
回复了 magicshui 创建的主题 Python 最好用的Gmail库
imap只是协议,你需要自己去实现封装

至于封装好的模块应该有的,你去搜索下啊
参考
http://bitsofpy.blogspot.com/2010/05/python-and-gmail-with-imap.html
http://yuji.wordpress.com/2011/06/22/python-imaplib-imap-example-with-gmail/

另外gmail也提供了http的api的
http://libgmail.sourceforge.net/
2012-09-26 21:20:08 +08:00
回复了 magicshui 创建的主题 Python 最好用的Gmail库
imap
2012-09-26 20:57:00 +08:00
回复了 Livid 创建的主题 Python Twisted 的历史
协程比异步要高级一点。
@Js 所以说python+c,比性能比效率,java都是往后靠。因为python并不是单独作战嘛。
Clojure,Groovy, Scala都是叫好不叫座的,流行度都不够,Dart和Go虽然产自google,但真正流行的只有v8。

java的Play Framework并不流行,只是一种探索性的东西,ssh还是主流。

linux发行版都是内置python的。Clojure,Groovy, Scala这种jvm寄生语言显然不能比。老实说,go还有待时间考验。

目前中小企业对python的渴求越来越强烈,何来没落之说。

jit的话,虽然pypy还不那么稳定,但是发展很快,值得期待。

python3也越来越近,很多人抱怨兼容性,但“不破不立”,python3是一个巨大的进步,值得期待。

gui方面不是比ide,比的是gui应用的开发,python和wx ,qt,gtk都是结合的相当好的,尤其是qt,java和qt的的整合貌似还停留在4.5的阶段,几乎停滞,swing就不提了。java在gui发展比较好的是基于swt的rcp平台,但是谁又知道swt竟然曾经都不被sun公司接纳的。java开发的gui应用至少得带一个jre,系统资源占用总是贪得无厌。实在让人不喜。
用python去实现一个kvdb是很傻的事情,因为与C整合是python最擅长的,对C开发的kvdb做binding才是正道,mongodb,redis,leveldb等等这些都远胜java开发的db,java写db实际上是牺牲了性能的,混合式语言与纯编译型语言的效率是有差别的,而且性能也并不是直接亮点,往往是架构。

不要只是拿python去和java比性能,python强调的是效率,在需要性能时,结合C语言扩展就能获得很大改善。而java & jni显然没那么好。

如果给应用系统加上重量属性,我认为只有达到一定的量级才可能发挥java的优势。

java不擅长的多了,系统管理运维别提,GUI只有oracle这些企业喜欢,web开发在django,raise面前无优势。
@cloudzhou 我对接口的观点只是我对java的吐槽,没有接口java一无是处。更不可能有好的架构了,我想说的是对java而此重要的接口对于python完全是可有可无的,动态性和自省能力是python的优势,而且python本身也支持多重继承。

在zope架构中就有对接口的大量应用,延伸至plone这样的系统,各种可配置的组件都是基于接口实现,但是zope,plone并不算python界成功典范,其中有太多j2ee架构的影子,过于笨重。而另外一个twsited也是有大量接口应用的框架,但这个框架似乎和他的名称一样纠结的很,和gevent这样的框架比,优势也不大。可以说使用python实现更好的架构和应用接口没那么重要,反而为接口而接口写出更臃肿的代码。

lucene也不算特牛B的,python也有可替代框架。
J2ee他妈的根本就不是个东西,所谓的那些J2ee企业应用都是什么,12306算不。我2001年学java到一些企业观摩j2ee,原来就是servlet+jsp。后来参与移动一个项目,高价聘请原BEA公司顾问来培训,那讲的叫一个牛B,各种重量级的产品都上了,最后团队实际项目开发时,这些玩意全扔一边去,乖乖ssh干活。那些被商业巨头鼓吹的j2ee产品从来就没有流行过。被忽悠的企业转过头来乖乖用ssh干活,电信,移动,联通,网通这些算不算企业,他们的系统算不算企业应用,算吧,大多数就是ssh做的,换句话说,ssh就是j2ee。

业界把java/J2ee鼓吹的那么神,而实际上大多数企业使用java并没有体现java在技术上的一些优势,从管理,节约成本方面上看java体现了不少优势,大的软件企业,华为,中兴,东软都会有一套java流水线生产平台,它并没有使用多先进的技术,它的目的就是把软件开发做到和富士康流水线一样的程度。只有java在这方面做的最好。整合合各种商业非商业工具,打造一个赚钱机器,这才是主题。

中小公司如果可以选择python,ruby等,我觉得应该尽量避开java,受国内人才环境所限,选择java都是无奈之举。
所谓的java某些优势只是对java而言,而python来说可有可无。

python实现原型的效率是java无法比的。设计与实现分离,没看到Java强到哪里,反而看到的是一堆一堆笨重的玩意,ejb算是成功典范吗,鼓吹到人见人吐的东西。

接口只是java为了避免质量低下的手段,当然可以说是为了提高质量,而对python接口没有这么重要,java世界里吹的跟神一样的aop所谓面向切面的东西在python里不过是装饰器这样的内置能力。

JVM 要是不健壮,java早死翘翘了,这是python的不足之处,但也算不上要命之处,python和c的完美结合比起jni舒服多了。

java的字节码并不是机器码,java不过是混合型的,要真正编译型那要算c/C++,所谓以销售为商业模式的产品,必须用编译型语言,这是什么话。

成熟的框架和社区,这不是java的专利。python扩展库之多涵盖之广谁用谁知道。
1 ... 36  37  38  39  40  41  42  43  44  45 ... 46  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3628 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 17ms · UTC 05:00 · PVG 13:00 · LAX 21:00 · JFK 00:00
Developed with CodeLauncher
♥ Do have faith in what you're doing.