五千年(敝帚自珍)

主题:【原创】也来说说Linux和Windows下的开发感受 -- 昔杨今雨

共:💬203 🌺502
全看树展主题 · 分页首页 上页
/ 14
下页 末页
家园 呵呵, 在我看来貌似你举的例子都不充分

这些东西基本都是可以自学的。 借助互联网也可以钻研到一个比较深的层次。

我其实想去上学是感觉现在已经到了瓶颈, 我缺少的不是这些简单的技术积累的东西, 我缺少的是视野。但是在国内读书又毫无用途,以前工作原因也和学校的这些单位打交道不少, 就我从事的专业来说,大部分硕士毕业生会比我差,和一些博士比,我综合素质也不会弱,国内读书就纯粹是混文凭了。

想出国读书又总是下不了决心,毕竟都30出头了,要考G,还要把数学捡起来,想想头都大。而国内的大环境,做技术的到了我这个年纪,要么就是自主创业,要么就是转行或者找个大公司养老, 但是好像都不是我喜欢的,头疼。

家园 回头俺把这句话写成条幅装裱订到墙上。

说明你水平比较高么--风北客

回头俺把这句话写成条幅装裱订到墙上。

OO的概念确实如兄台所说,现在我是理解些了,因为前段时间必须用别人的一个framework写一个搜索算法的模拟小程序,从中学到了好多OO和虚函数等等的概念,看来必须实际做点什么才能真正掌握一门语言。但是样本和数据量要定的很大,所以越来越觉得C++或C++-STL里的东西越来越像花拳秀腿,真正的东西还是C,但也不知对不对?加上前段时间学习别人的华容道的解法,有人竟然将一副棋盘存入一个32位int值,尤其对我触动极大。有机会一定把run-time里的函数学一遍,步一下老兄的后尘,神往一下老兄和其他前辈们当年的风采。不过是全当游戏罢了。

突然有个想法,编程风格是体现个人性格特征的。像瓦斯兄所说,有些人学什么都快,不假。可应该还有一些人不会也不愿依环境而改变自我。像老兄提到的那些有多年经验的C程序员,我想他们自己不愿意转思路?

我正在一所大学里混个文凭,这所大学因为号称IT是很牛的,所以我们经济系的有些必修和选修课程是必须和计算机打交道的。如果老兄再往下问,只好河里短信了,哈。马上最后的论文也是写物流的,这个物流所和许多公司有研发项目,每个项目一年至几年不等,当年这个项目的带头人会VB+C,好了,往后大家只好都用VB+C了,如果用VC,好了,往后大家只好都用VC了。其实主要还是一些搜索算法,优化算法。通讯研究所的人,据我所知,全是C/C++ + Linux,那帮人手比俺的眼还快,大部分人应该好像只用C。别的研究所用java的不少,可是用C#的,据我所知,凤毛麟角,更多的是VB。兄台说国内好多人用C#,倒是和这里相反。

C#,.NET,WPF,D语言,呵呵,懒厨讲话,Linux, 还是Windows,Java也好,.Net也好,工具而已。。

家园 呵呵,说起来咱们还是同行呀。

我上学时候读的也是商学院, 系统工程方向,我们系的大部分老师都是cs出生的。 那时候有同学问老师我们和cs系的区别, 老师说,我们是白领,他们是蓝领,呵呵。

看到2系师生合作项目,也基本如此。我毕业的时候脑袋没开窍,跑去做蓝领了, 国内大环境不好,蓝领做到一定份上就作死了,自己对做管理工作兴趣也一直不是很大,现在感觉视野完全堵死,很是后悔当年的决定。

国内c#主要还是中小企业用的多,因为相对来说学习时间短,对付一些小东西比较快捷, 大学和研究机构的用java和c比较多。我读书的时候比较早,专业方面也没上心,不过当时记得这类专业性质的编程,主要考察算法和建模的,都还是有专门语言来做的,比如prolog,lisp什么的。 记得当年课程设计的时候,有个作业就是模拟港口吞吐量,用的就是ibm做的一个东西,都不记得名字了。所以听说你用c来研究商业模型,有点意外,呵呵。 不过当年有个老师在日本读书的时候, 做的课题也全部是用c写的。

家园 福兮?祸兮?

我毕业的时候脑袋没开窍,跑去做蓝领了, 国内大环境不好,蓝领做到一定份上就作死了,自己对做管理工作兴趣也一直不是很大,现在感觉视野完全堵死,很是后悔当年的决定。

福兮祸兮?感谢老兄对我的提醒,不过以我的悟性和智商,不是谦虚,是无论如何也干不了蓝领滴!只好东诳西骗,争取搭上不做技术的船。太累了。

国外的研究机构以我的接触,感觉水平不低,研究的都是很新很深的课题,所以用什么语言对他们并不是关键;相比这里的某知名大公司,办事效率自不必说,但是他们的理论水平。。。不敢恭维,不过已然足够了。再相比国内的各个企业,大聪明人小聪明人遍地,不过都把效率浪费在内斗了。感触颇多,有机会开个话题。

我总感觉运气的成分占很大因素。并不是因为你走那条路。但关键是喜欢自己的行业。

家园 是把jvm作芯片上吧?已经有了
家园 JAVA的资源共享做的真是好。

毕业两年之后,就开始在UNIX/C下忙活,n年下来积累了一套完整的工具库。

但是和JAVA平台相比,这个编程模式差别很大。在UNIX/C下面,如果出现一个新的自己没有编过的东西,是查资料,然后再自己设计算法,然后编出来。而做JAVA编程的人,则是先上社区四处转转,看有没有现成的控件,Down下来用。

真是有些羡慕死了,虽然做JAVA的不会做算术解析器,不会写XML解析器,但是满天下都是现成的东西可以用的,比之我们当时,要自己写,或者用YACC配置一个,真是天上地下的差别。

家园 同感。

偶也是从C/C++转到java的,感觉懒了不少,哈哈。

家园 现在用C++的也有了很多库啊。。。

就是普遍难用,而且用C/C++的人总想知道库是怎么运作的,于是。。

家园 C/C++的资源比Java少吗? 我怎么一点都没有觉得.

现在我就在充当一个java项目组的技术管理者, 除了不直接写代码之外, 其它的事情也都管. (说这些是表明咱不是个java盲)

没有觉得java资源比C/C++多啊, 从人气上讲, java的几个framework显然热闹一点, 可是其中的原因我想也和java下面高质量的framework本来就少也有一点关系吧. 看看sourceforge, 从数量上和覆盖的范围上讲, C/C++的资源更多吧.

再看看PHP, 各类framework满天飞, 要说单独哪个的人气, 恐怕都不如java下的, 但是好在从低到高, 从简单到复杂全有, 而且很容易裁剪.

java下编程动辄要使用framework, 这些framework一个比一个庞大, 一个比一个难以裁剪. 由于使用java变成使用framework, 因此学习java也变成学习framework了, (前一阵我面试java程序员, 直接问你们熟悉哪些framework). 想想真没啥意思.

java现在越来越像.NET, framework背后都是企业而且是大企业在支持, 新的来自草根的framework如何出头?出头的难度太大, 于是很多情况下就直接放弃, 回到亦步亦趋地跟随那寥寥几个framework的道路上去. 我现在越来越不看好java了, 10年前我的毕业设计是用JDK1.0.2完成的, 那时候的java真是充满了活力.

家园 先花一个,再提不同意见。

我的背景和楼上有点类似,以前在一家电信企业做开发,C/C++/java都做过,现在在一家互联网公司做架构师,也是负责一个小产品线的技术架构,主要是java。区别恐怕是,我有时候还编码,没办法,就是喜欢。

很多开源的java framework的确都得到大企业的支持,但是他们都是出于草根,是在开源社区逐渐壮大,pk掉很多大公司的相应主推技术成为业界的事实标准。象现在业界很常见的struts/webwork+spring+hibernae等开源项目,原来都是草根,不被大厂家重视。至于weblogic/websphere等大厂家的应用服务器,在开源的jboss面前根本不占优势。concurrent原来也是一个开源项目,因为做的好,所以被sun收编,成为jdk1.5的一部分。

所以我觉得多数情况下,一个新的java 开源项目,他最大的竞争对手是其他的开源项目,而不是大厂家的产品。在java领域,厂家的力量没有.net领域那样大,更不具有决定性的作用。

我也经常面试别人,我也会问别人用过一些什么框架,甚至会问几个细节问题,看他是不是真的熟悉这个框架。但是我更关注的是,他是不是真正的理解这个框架的本质:为什么要有这个框架,他背后的设计思想是什么,要解决什么问题,与其他类似框架比较,这个框架的优缺点是什么。我要的是一个掌握framework背后设计思想的人,不是只会使用framework的人。

至于说JDK1.0.2时候的java更有活力,恐怕更多是出于感情因素吧,呵呵。

家园 偶米作过java,但是framework的毛病所有语言上都存在吧

学语言变成了学框架、熟悉某组库,诸如此类,而且还越来越大,越来越复杂,差不多每个框架新出来的时候都说希望自己是易用的以替代某个复杂的家伙,而若干时候之后又变成那个人们想换掉的大怪物

家园 也花一个, 不揣浅陋, 再多说几句, 只求抛砖引玉

脱离java很久了, 因此只能聊聊感受, 还请季兄不吝赐教.

至于说JDK1.0.2时候的java更有活力,恐怕更多是出于感情因素吧,呵呵。

哈哈, 细细一想, 还真有点那个意思. 不过也不完全如此.

我的意思是, 这几年java给我的惊喜越来越少了, 而感受到的java的暮气越来越重. 我也举个例子, 几年前, RoR横空出世, 结果在java社区里面仿佛投下了一个重磅炸弹, 看很多来自java阵营的文章和帖子, 好像都有些如梦初醒的样子. 让我说什么好呢? 对一个有PHP, Perl, (Python不熟, 不知道算不算)之类弱类型语言背景的人来说, RoR不错, 有一些很好的trick, 但是绝对谈不上什么革命性的震撼. 因为这些花样已经玩了很久了, 只是RoR是一个集大成者, 碰巧又落到了java社区的眼里, 要知道, java社区的眼睛从来都是往天上看的.

这个事件在我看来暴露了java社区最大的一个问题, 就是封闭和近亲繁殖. 连"Convention over Configuration"都被看作振聋发聩的格言, 我只能推测说这是java社区总是在少数几个framewok后面亦步亦趋的必然后果.

现在谈到WEB界面表现, 提起来就是Struts2, 谈到ORM, 提起来就是Hibernate, 其它选择呢? 再看这些framework, 光是apache就占了多少? 其中的设计思想, 实现方式再到使用方式, 又有多大区别? 把话再说的绝一点, 除了spring, 其它这些号称主流的java framework什么时候有过自己开创性的设计思想?

更加令人遗憾的是, RoR的热潮过去了, java做了什么改变吗? 没有! 于是大家又回到struts2+spring+hibernate的老路上去, 继续延续公式化的编程, 等待下一次SoS的降临.

我并非是个java黑, 事实上, 我LP唯一知道的计算机语言名字就是java, 都是在谈恋爱的时候被我给耳濡目染的. 我只是对Java的发展有很多不满意而已.

家园 java领域的各种中间件的竞争十分残酷,甚至可说惨烈

很多由“官方”支持的标准,哪怕已经成为标准,都要准备随时被来自草根的力量拉下马来。

03年的时候,Sun官方支持的持久层解决方案是JDO,都已经写入J2EE的spec中了,最终因为内部分裂而不能壮大,成就了来自草根的hibernate。

现在还有谁记得JDO?

01年,IBM将eclipse项目捐给开源社区,推行SWT,与java标准的一部分——Swing——公开竞争。IBM毫不掩饰对Swing的轻蔑与嘲弄,这从eclipse这个名字本身就能看出来。由此引发的争议至今没有平复的迹象。

EJB,J2EE的核心标准之一,在3.0于2006年推出之前,长期受到业界的广泛抵制,以致于业界的“最佳实践”之一竟然是“绝不要使用EJB”——这直接导致别无选择的程序员转向Struts或Spring,“轻量级”解决方案大行其道。即便在EJB3.0面世后,依然存在着非议,其中有些响亮的声音竟然来自hibernate创始人这样的重量级人物。gavin king在seam的文档中毫不掩饰地使用非常负面的话语谴责某些“不是来自Sun,不是来自IBM,也不是来自Jboss”的标准组成员在EJB3标准上的短视。

......

也许,这也可以算作“活力”?

家园 看来是兄台对java是爱之深恨之切啊,呵呵。

我的意思是, 这几年java给我的惊喜越来越少了, 而感受到的java的暮气越来越重

这个我非常同意,实际上这些年也的确没什么让人感到兴奋的新东东出来了。不象当初spring出来的时候,感觉有了新大陆。我原来公司也有一套相对简单的ioc框架,第一次看到spring很是冲动,这不是我们xxx的升级版吗,呵呵!

以web框架为例,现在流行的框架的确没什新意,也就是一些细节上修修补补。不过java可不只是做web,apache中还有不少很是好玩的东东,例如最近我有空看看mina的代码,挺有意思的。

btw,现在对spring最不满的就是,这家伙越来越大,但是老毛病永远不改,呵呵。spring的BeanFactory是一个二维平面结构,所有bean都是平等的,没有module和layer的概念。而大型系统中的bean往往某些关系天生就比较密切,应该在一起,也就是说BeanFactory内部的bean应该可以有module和layer的概念。SCA有类似的概念,但是tuscany用起来太麻烦了。去年,我基于spring自己做了一套,用在我们的产品中,效果可以,呵呵

家园 比我总结的好多了,呵呵,花一个。
全看树展主题 · 分页首页 上页
/ 14
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河