大家推荐个练手用的JAVA项目,打算布置给侄子。
我有个小侄子(19岁),小伙子虽然不爱学习,刚上了个莫名其妙的私立大学,不过对编程很感兴趣,让我(一个普通的软件测试工程师)教他JAVA,我问他为什么学JAVA,他还能给...
我有个小侄子(19岁),小伙子虽然不爱学习,刚上了个莫名其妙的私立大学,不过对编程很感兴趣,让我(一个普通的软件测试工程师)教他JAVA,我问他为什么学JAVA,他还能给分析JAVA的现状和前景,我大为惊讶,话说我几年前刚学JAVA的时候都没搞明白JAVAEE是做什么的,他居然搞清楚了JAVA学习的流程,从JAVASE、JDBC到JAVAWEB、JAVAEE,大体上还都知道是做什么的,他还下载了将近上百G的编程教程,我很感动于他的好学,于是花了一些时间挑了一下JAVASE部分比较好的教程让他有时间就看,给他推荐了一些书,前前后后在重点部分依靠我的经验也给他讲了算算应该有20几个学时,就这样拖拖拉拉过了两个月,他学完了JAVASE的部分,根据我的判断,他很专注,对于知识的掌握度比较高,于是我想给他布置个项目练练手。
JAVAEE的项目一大堆,JAVASE的好项目实在不好找,想给他找个比较有难度又不会太偏重于桌面程序、底层应用或网络协议的小项目,毕竟他想以JAVA为职业,以后是一定要往JAVAEE方面发展的,想找个比较能锻炼多线程和IO流的项目,能让他更深刻的理解面向对象编程的项目,不过编程早就过去了算法论的时代,能累计算法、设计模式和软件工程能力的方法唯有多多的经验,不过这种情况又不知道要该如何做才能让他更上一层楼呢?大家推荐点方法吧。 展开
JAVAEE的项目一大堆,JAVASE的好项目实在不好找,想给他找个比较有难度又不会太偏重于桌面程序、底层应用或网络协议的小项目,毕竟他想以JAVA为职业,以后是一定要往JAVAEE方面发展的,想找个比较能锻炼多线程和IO流的项目,能让他更深刻的理解面向对象编程的项目,不过编程早就过去了算法论的时代,能累计算法、设计模式和软件工程能力的方法唯有多多的经验,不过这种情况又不知道要该如何做才能让他更上一层楼呢?大家推荐点方法吧。 展开
4个回答
展开全部
由衷的羡慕19岁掌握JavaSE的您的侄子。回想自己18岁的时候,从刚上了半年的大学退学了,心想自己很聪明,也能靠自学编程出人头地。结果可想而知,我不像您的侄子一样有像您一样的引路人,走了很多弯路,学过的东西杂乱无章,不用了就忘得差不多了。从放弃C++到放弃底层C最后放弃.NET,经过了两年,我才走向了Java的大门,从基础到深层,苦学了两年多,一直刻苦努力到现在,还只不过是个刚工作不到1年的菜鸟。对于您的问题,我觉得比较难全部实现,JavaSE现在确实已经具备了开发大型桌面项目的实力了,那一个个优秀的开源软件便是证明,但是毕竟还是不够普及,而且很多项目都是偏向网络协议的。对于您对您侄子的描述,我觉得要开发一个难一点,已经被实现过了的,稍微繁琐又能帮助思路清晰,又对一些知识点有帮助的项目,我的建议是开发一个联网版的对战游戏,比如联网版的坦克大战,做得成熟一些,多加进一些知识点,这里面肯定会用到很多容器、线程、IO流、TCP/IP的知识,而这个项目的代码量对于一个刚刚学完JAVASE的人来说应该算比较大,但开发游戏对于面向对象的思路来说应该还算比较清晰的,您也可以在旁稍加指点。我觉得经验确实很重要,但是经验不是看出来的而是写出来的,就算一开始写得很差,不停的写不停的写,最后不靠旁人指点也会越变越好的,所以对于一个初学者来说,不管写什么,就一直写下去吧,当手指敲代码靠肌肉记忆而不靠大脑的时候,就是更上一层楼的时候了。
展开全部
最简单的方法就是让他自己设计一个员工管理系统,从swing,jdbc,后台逻辑都简单的涉及一下,我最开始就做这些东西,后来给学校做一些J2SE的项目,到现在去公司里做J2EE。其实老兄,现在JAVA只靠J2EE和开源活着了,别让你侄子干JAVA了,要非要做软件开发,学好Linux,C,数据结构,算法,看一些硬件知识,做个嵌入式开发工程师,比JAVA强多了。
现在中国做JAVA的还有几个不是外包公司的,现状..前景..你侄子无非是受一些北大青鸟等培训机构的影响罢了,现在是个大学就有软件学院,是从软件学院出来的就会JAVA,上手简单啊,况且外包也不用什么太难的技术,熟悉逻辑就ok了,现在做软件的已经臭了,我一朋友,大连一本院校毕业4年的软件工程师现在还只挣4000呢,能力不足是一方面,这行业臭了也是一方面,告诉你侄子,干JAVA要做好心理准备....
现在中国做JAVA的还有几个不是外包公司的,现状..前景..你侄子无非是受一些北大青鸟等培训机构的影响罢了,现在是个大学就有软件学院,是从软件学院出来的就会JAVA,上手简单啊,况且外包也不用什么太难的技术,熟悉逻辑就ok了,现在做软件的已经臭了,我一朋友,大连一本院校毕业4年的软件工程师现在还只挣4000呢,能力不足是一方面,这行业臭了也是一方面,告诉你侄子,干JAVA要做好心理准备....
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
出个题目:开发个小型的IDE,IDE把文本框中的内容写到App.java的文件中,IDE再调用Runtime.getRuntime().exec("javac App.java")来编译App.java,再用同样的方法运行"java App"得到进程p1,再把用户输入的东西通过p1.getOutputStream()来向进程输出,最后通过p1.getInputStream()得到进程的运行结果展示在界面上
做这个东西应该可以锻炼IO流,多线程(p1没计算出结果前IDE不能死掉,所以IDE必须是多线程),而且做出来还挺有成就感的,毕竟这是一个自己写的IDE
做这个东西应该可以锻炼IO流,多线程(p1没计算出结果前IDE不能死掉,所以IDE必须是多线程),而且做出来还挺有成就感的,毕竟这是一个自己写的IDE
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我以前的练习项目很多。
①阳历万年历;
②人民币的读数程序;
③俄罗斯方块;
④Socket聊天软件
等...都在我的空间:http://hi.baidu.com/shy2850/ihome/myblog
javaSe的知识很零碎啊,很难用一个项目都考察到;
建议你有选择性的考察。
另外,像设计模式的东西,完全没有必要现在用的,设计模式只是为了更方便的解决问题而提出来的面对对象编程的设计技巧,在基础知识基础上还是要多多的思考,以后自然而然就会感到设计模式的有用,其实很多时候,我们在编码中用到的小技巧就是简单设计模式,只是不知道有人这样总结过,不是吗?
思考解决问题的过程最重要,否则以后出去将永远只是一个coder。
①阳历万年历;
②人民币的读数程序;
③俄罗斯方块;
④Socket聊天软件
等...都在我的空间:http://hi.baidu.com/shy2850/ihome/myblog
javaSe的知识很零碎啊,很难用一个项目都考察到;
建议你有选择性的考察。
另外,像设计模式的东西,完全没有必要现在用的,设计模式只是为了更方便的解决问题而提出来的面对对象编程的设计技巧,在基础知识基础上还是要多多的思考,以后自然而然就会感到设计模式的有用,其实很多时候,我们在编码中用到的小技巧就是简单设计模式,只是不知道有人这样总结过,不是吗?
思考解决问题的过程最重要,否则以后出去将永远只是一个coder。
参考资料: http://hi.baidu.com/shy2850/ihome/myblog
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询