`
daoger
  • 浏览: 531729 次
  • 性别: Icon_minigender_1
  • 来自: 山东济南
社区版块
存档分类
最新评论

让人头疼的新手

阅读更多
刚进公司没多久时,领导让我带两个新人(07年7月份毕业的)。他们两个是试用期3个月都过了之后才参与到我们现在的项目中来的,算起来他们也工作了快一年了,可是今天无意中修改一个他们写过的一个类文件时,看到他们写的一些代码,让我又好气又好笑。可能也是我以前只注意给他们测试功能了,没怎么注意代码方面的问题吧!

晒晒他们的部分代码!


/**
	 * 查询方案金额总和
	 * 
	 * @param lottype
	 *            Long
	 * @return double
	 */
	public Double getsummation(Long lottype)
	{
		double sum = 0.00;
		List ls = null;
		String sql = "";
		if (sql != null)
		{
			sql = " select sum(amount) from OccurProj a where a.lottype = '" + lottype + "' ";
		}
		ls = find(sql);
		if (ls != null && ls.isEmpty())
		{
			for (int i = 0; i < ls.size(); i++)
			{
				OccurProj occurproj = (OccurProj) ls.get(i);
				sum = sum + occurproj.getAmount();
			}
		}
		return sum;
	}




/**
	 * 根据主键查询明细信息
	 * 
	 * @param occurproj
	 *            OccurProj
	 * @return String
	 */
	public List queryById(Long id)
	{
		String sql = "";
		if (sql != null)
		{
			sql = " from OccurProj a where a.id=" + id;
		}
		return translateCode2Str(find(sql));
	}



/**
	 * 参数查询
	 * 
	 * @param occurproj
	 *            OccurProj
	 * @param lottype
	 *            Long
	 * @return List
	 */
	public List queryByPara(String username, Long lottype)
	{
		String sql = "";
		if (username != null && username.length() > 0)
		{
			sql += " and a.username like ? ";
		}
		if (sql.length() > 1)
		{
			sql = " from OccurProj a where 1=1 and a.lottype = '" + lottype + "' " + sql;
		} else
			sql = " from OccurProj where lottype = '" + lottype + "' ";
		return translateCode2Str(find(sql));
	}


我现在也体会到当初我找工作的时候为什么那么难了,同时也提醒一下即将毕业的朋友,想找到不错的工作,你的工作态度确实得端正!

以前没带过新人,大家也介绍一下,带新人的经验吧!


我需要说明一下,我发贴的目的是想提醒一下临近毕业的朋友,不是公司不需要应届毕业生,应届毕业生有优点也有缺点。但是你进入公司以后,自己的发展和进步还是要靠自己的努力。工作了半年还能写出这样令人佩服的代码,那就只能是你自己的问题了,当然也有我自己的责任,毕竟是我带他们。

有则改之,无则加勉,别无他意,仅此而已!
分享到:
评论
139 楼 bjfeel 2008-05-20  
都够浮躁的;不过写这样代码的人本身态度有点问题,不只是能力的问题。
只是新手的话没必要BS的,都是从这个阶段过来的(其实我现在还是新手,做2年java了,才发现刚入门。。这里很多人也算不上多老手)
138 楼 hotjava 2008-05-20  
我最后一次回这个帖子,我并不是什么高手,白干几年,除了加班把身体熬差了,没什么大的收获。我只是希望刚刚工作或者是工作n久都不知道怎么写代码的人,好好看看,代码大全,重构这样的书。也算是自己的基本功把。
就像一个网球运动员,如果弯腰低头去拣求,必然观众觉得他不是高手,不专业。
至少应该拿拍子一抄,就把球弄起来了,这样才帅嘛。
137 楼 malphi 2008-05-20  
不错,至少知道判断空。。。
136 楼 javaxy 2008-05-20  
重点的是这种人怎么找到工作的!
135 楼 programming 2008-05-20  
String sql = "";  
        if (sql != null)  
        {  
            sql = " from OccurProj a where a.id=" + id;  
        }  
String sql = "";  
        if (username != null && username.length() > 0)  
        {  
            sql += " and a.username like ? ";  
        }  
        if (sql.length() > 1)  
        {  
            sql = " from OccurProj a where 1=1 and a.lottype = '" + lottype + "' " + sql;  
        } else 
            sql = " from OccurProj where lottype = '" + lottype + "' ";  


工作有一年,怎么还会这样的代码,有些东东,String sql = "";  
        if (sql != null)  
        {  
            sql = " from OccurProj a where a.id=" + id;  
        } 
他们头脑里面怎么想的,是逻辑不懂呢,还是没有认真去学.

134 楼 sutra 2008-05-18  
抛出异常的爱 写道
ddbird 写道
第3段 sql的拼装能倒着写也蛮强的,肯定copy过来以后看都没看,就看了Eclipse报的编译错误,改了变量名字,就算完事了。

很多人都这么干活,不知道他们的脑子长的是什么。。。。

完成任务呢。
133 楼 murainwood 2008-05-17  
mylifestyle1225 写道
回LS的,拿出来晒就是为了请老手指点的.
有事说事,没事少插嘴,不说话没人把你当哑巴.每个人都有菜鸟的过程,你也不是这么过来的么?你是一个新人的时候有胆量晒代码让人指点吗?
典型的中国人的挖苦讽刺,自持清高的心理,不知道你自己达到了什么境界.
是不是这么说一句,很有满足感?那就成就你的满足感吧.但是我到了你这个年龄,肯定能超过你这类货色.

小孩子说大话了不是?
132 楼 Unmi 2008-05-17  
还是不错的,我看过写几年代码都出现这种问题,甚至是方法名首字母大写的问题
131 楼 hunter006 2008-05-17  
哈哈 没必要强调新手。有的老手也犯这样的错误,如果可能加大代码审查力度吧,这些小错误如果有可能可以通过代码审查避免。
130 楼 seekgirl 2008-05-17  
armorking 写道
代码1问题多多


这里jdk已经有BigDecimal.ZERO,你这是浪费内存。
    private static BigDecimal BIGDECIMAL_ZERO =  new BigDecimal("0");

    /**
     * 查询方案金额总和
     *
     * @param lottype
     *            Long
     * @return BigDecimal
     */
方法名不骆驼
    public BigDecimal getSummary(Long lottype)
    {
        if (lottype == null
        ){
            return BIGDECIMAL_ZERO;
        }

        String sql = sql = " select sum(amount) from OccurProj a where a.lottype = " + lottype;

        List ls = find(sql);

        &&改为||
        if (ls == null && ls.size() == 0)
        {
            return BIGDECIMAL_ZERO;
        }

        OccurProj occurproj = (OccurProj) ls.get(0);
        return occurproj.getAmount();

    }


你别又误导新人哦
129 楼 zhengshina5 2008-05-17  
我靠,说了这么多都没说到正点上

你管他代码正确不正确的。

先满足了功能再说,功能满足了对错再谈,

功能都没满足那没用,功能满足了代码错误的话,能用就行,

如果想更好的发展就修改下不就可以了被




这样的代码和公司有很大的关系,不只能说是个人的问题。
你怎么样评判别人的态度就不好了。

这是不一定的,
128 楼 miniJJ 2008-05-17  
我现在还得在JAVA代码成片的写着if("oooooxxxxxx".equals(question.id)){....},这样的逻辑呢,看着都想把笔记本给砸了。
127 楼 xly_971223 2008-05-17  
代码写的粗糙点没关系,时间长了会该过来的;逻辑错了就是能力问题了
看代码中逻辑有问题的地方不少啊
126 楼 hotjava 2008-05-16  

哥们,找个比较好的测试人员吧...
---------------------
业务流程复杂,跨3个大系统,到处都是分布式调用,各种系统接口,各地市割接的问题数据。各地市还有点个性化需求,要全面测试,不是那么简单。

我现在倾向于防御式编程。
125 楼 vicksong 2008-05-16  
hotjava 写道
你以为你工作4,5就很牛是吧,跟我比工龄和项目经验,我应该不输给你吧。
说名凭良心的话,我们这里这么多做IT的,有多少是做一些对代码质量或性能要求特别特别高的系统?大多人还是做一些中小型系统吧,功能相对来说,还算简单吧,如果不是做产品的话,有必要为了那20%的东西,浪费公司80%的成本吗?在满足客户功能的前提下,有必要让公司配一个小秘给你写文档吗,中国软件,可不象国外,有那么多小秘......
-----------------------------------
我没认为我很牛,你输不输给我跟我也没关系,但是,我信奉的是高质量保证高生产力,不管是大系统还是小系统,除非你的系统只用几天,几个月,我从来不认为重构会浪费时间,我从来不怕看烂码,我不是计算机专业,也是实用注意者,但是我的经历告诉我,小小的代码不管好,会出大问题,因为两行代码写的不好,造成生产停业的事我经过好几回,吧bea,oracle,IBM的人都叫来,最后查了半天还是两行代码写的不好,别要总怪测试的不好,各种新业务,割接的错误数据满天飞,谁能保证未来发生什么。所以开发人员第一步就是要吧自己的代码写好。


代码写好没错,但是一些应界生,只做一些界面或调用公共类的接口返回数据以展示出来,如果你们核心代码也要应界生参入进来,我就无语,如果你们没有核心代码,大家都是在自己用SSH自己写自己的代码,我也无语,真不知你们项目管理是怎么做的?
124 楼 joyjiang 2008-05-16  
哥们,找个比较好的测试人员吧...
123 楼 hotjava 2008-05-16  
有必要为了那20%的东西,浪费公司80%的成本吗?
--------------------------

你们公司貌似从来不把客户的满意度和客户的忍耐度当作成本吧,也从来不吧开发人员的加班当作成本吧,也不吧开发人员的离职作为成本吧。

那可能连你们公司都不一定能存活多久呢,更别提软件的生命力呢。
如果你们的软件只运行几天,那么随便你怎么写,你就直接扔给客户一个sql,告诉他们到PLSQL里面按一下F8,然后导到Eexcel里面就OK了,要你们干什么。
122 楼 hotjava 2008-05-16  
你以为你工作4,5就很牛是吧,跟我比工龄和项目经验,我应该不输给你吧。
说名凭良心的话,我们这里这么多做IT的,有多少是做一些对代码质量或性能要求特别特别高的系统?大多人还是做一些中小型系统吧,功能相对来说,还算简单吧,如果不是做产品的话,有必要为了那20%的东西,浪费公司80%的成本吗?在满足客户功能的前提下,有必要让公司配一个小秘给你写文档吗,中国软件,可不象国外,有那么多小秘......
-----------------------------------
我没认为我很牛,你输不输给我跟我也没关系,但是,我信奉的是高质量保证高生产力,不管是大系统还是小系统,除非你的系统只用几天,几个月,我从来不认为重构会浪费时间,我从来不怕看烂码,我不是计算机专业,也是实用注意者,但是我的经历告诉我,小小的代码不管好,会出大问题,因为两行代码写的不好,造成生产停业的事我经过好几回,吧bea,oracle,IBM的人都叫来,最后查了半天还是两行代码写的不好,别要总怪测试的不好,各种新业务,割接的错误数据满天飞,谁能保证未来发生什么。所以开发人员第一步就是要吧自己的代码写好。
121 楼 isaac66520 2008-05-16  
我也07年毕业的,平心而论,我觉得LZ贴的代码那两位作者不是水平问题,而是态度。水平低是可以提高的,态度不对就不好了
120 楼 kenan161621 2008-05-16  
我觉得没必要去嘲笑人家吧,特别是回帖的某些人,谁都是这样过来的,楼主也说了,错则改之嘛

相关推荐

    AJAX——新手快车道

    是也同样会碰到麻烦,遇到障碍,感觉头痛。如果没有真正的专家的指导,我不 可能如此迅速地将AJAX掌握到目前这样的程度,要真是让我自学三个月,然 后就写出书来的话,那真是在骗钱了。 老手能够快速学习的另一个...

    结构设计中让人头疼的超筋.pdf

    在结构设计中,"超筋"是一个常见的问题,尤其对于新手设计师来说,它可能造成困扰。超筋是指结构或构件的配筋量超过了其实际所需的承载能力,这通常与位移、相对位移过大或者变形不协调有关。位移包括水平位移、竖向...

    新手如何看懂电路图 硬件工程师电路分析物联网模电单片机嵌入式技术.doc

    电路图是电子工程师日常工作中不可或缺的一部分,但新手如何看懂电路图却是一件让人头疼的事。特别是在单片机控制电路中,电路图的理解对整个项目的成功至关重要。 首先,让我们来理解电路图中的符号。VCC 和 GND ...

    5件让人痛苦的电脑小白问题.docx

    本文将深入探讨五个常见且让电脑小白们头疼的问题,并提供相应的解决指南。 首先,我们来聊聊关于电脑内存和硬盘的误解。很多人分不清楚什么是内存,什么是硬盘,他们往往认为这两者是同一个东西。其实不然,内存...

    Java软件开发工程师简历模板包装教学问题完整版.doc以及工作面试指导技巧

    为什么收费? 1、这是花了我很多天的心思,用心打造...我们每个人平均每年都要做一次简历修改,你跳槽的时候就不会头疼简历了; 我应该怎么用? 因为有很多人照搬,最好不要照搬,按照你自己的想法用这样的套路去包装!

    素材管理软件,媲美eagle

    如日常工作中因为某个项目所收集的图片,或是平时逛设计网站所保存的图,又或者是平常收集的一些源文件,管理起这些素材总是让人头疼。 于是就诞生了开发一个素材管理工具。而且得到了光大设计师的高度认可。 软件...

    postfix权威指南 中文版

    如果sendmail让你头痛万分,现在你有更好的选择 —— Postfix。安全的结构设计与优异的可靠性,使它广受专家的好评与赞赏。Postfix也是许多新手的第一选择,因为它太容易架设了!事实上,Postfix已经成为MacOS X默认...

    熊海博客 v1.4

    不少问题确实让我有些头痛,得到的大部分是埋怨,也慢慢失去了继续开发的动力了,大部分业余时间开发PHP版本的博客了,但我知道,好的东西是要经过千锤百炼的,不管什么事,无法做到让所有人都满意,现在整理了一个...

    常见的PC机硬件、软件故障现象及对应的故障处理方法

    电脑出现的故障总是让人头疼,但掌握了正确的处理方法,大部分问题都能迎刃而解。我们汇总了常见的PC硬件和软件故障现象及其解决方法,帮助你快速诊断并修复电脑问题。 从硬件方面,我们探讨了诸如电源问题、散热...

    金士顿16GU盘DT101 G2量产加全内置UD

    1、前言:为了制作成功这个U盘,我着实费了不少时间和精力,因为是新手。在网上教程很多,看得我是眼花眼花缭乱,看得头疼。不过功夫不负有心人,我用了两天时间终于把这个可爱的启动U盘搞定啦。并且用了一下午时间...

    驱动精灵(网卡版) 装机即可通网

    然而,对于一些电脑新手来说,装机后如何快速联网一直是让人头疼的问题。网卡驱动的安装是连接网络的首要步骤,但并不是每个人都能轻松完成这一过程。幸运的是,随着科技的发展,出现了像驱动精灵(网卡版)这样的...

    金士顿16G U盘双启动教程

    1、前言:为了制作成功这个U盘,我着实费了不少时间和精力,因为是新手。在网上教程很多,看得我是眼花眼花缭乱,看得头疼。不过功夫不负有心人,我用了两天时间终于把这个可爱的启动U盘搞定啦。并且用了一下午时间...

    超级菜谱—让你轻松学做菜 V1.0 绿色免安装.zip

    然而,对于烹饪新手来说,如何从零开始学习制作一道道美味佳肴,无疑是一个令人头疼的问题。幸运的是,随着科技的进步,越来越多的烹饪爱好者开始寻找便捷的数字化学习工具,《超级菜谱—让你轻松学做菜 V1.0 绿色免...

    KnockOut 2.77-超强抠图软件及教程

    KnockOut 解决了令人头疼的抠图难题,使枯燥乏味的抠图变为轻松简单的过程。Knockout 2.0不但能够满足常见的抠图需要,而且还可以对烟雾、阴影和凌乱的毛发进行精细抠图,就算是透明的物体也可以轻松抠出。即便你是...

    单片机入门的方法与学习误区介绍

    ARM单片机是大多数新手选择的入门切入点,但由于知识的不足,在设计过程中新手们经常会遇到这样或那样的问题,ARM异常中断返回就是这样一种令人头疼的问题。在ARM的使用问题中异常中断返回是新手们较为苦恼的问题,...

    ARM单片机三种中断返回情况的分析

    ARM单片机是大多数新手选择的入门切入点,但由于知识的不足,在设计过程中新手们经常会遇到这样或那样的问题,ARM异常中断返回就是这样一种令人头疼的问题。在ARM的使用问题中异常中断返回是新手们较为苦恼的问题,...

    ARM单片机三种中断返回情况的分析与解决办法

    ARM单片机是大多数新手选择的入门切入点,但由于知识的不足,在设计过程中新手们经常会遇到这样或那样的问题,ARM异常中断返回就是这样一种令人头疼的问题。在ARM的使用问题中异常中断返回是新手们较为苦恼的问题,...

    MCGS数据采集单片机数据传送的设计资料.zip

    - 想实现创新,但电路设计让您头疼? - 答辩前夜,PPT资料和报告成为你的噩梦? 一份资料,解决所有问题! - 完整方案设计:从构思到实现,步步为营,轻松拿下创意点! - 专业电路设计:科学合理的电路图,无需再因...

Global site tag (gtag.js) - Google Analytics