Java的路该怎么走...头疼!求指导

Xu_YJ 2017-03-16 04:08:52
自学javase也有段时间了,看过马士兵和毕向东的基础视屏,但是现在自己还是什么都不会,一点方向也没有!之前发过贴也说过这个问题,很多前辈知道说去做小项目,可是自己在网上找的那些小项目,源码都看的稀里糊涂的!

我现在的工作是做测试的,工作的内容就是把程序(C语言)写到仪器里,测仪器的功能,反正特简单的哪种,没什么技术含量!

如果我现在重新学习C到是可以跟着领导学习,我这领导是个高级工程师,反正挺牛的!但是我又不甘心学了好长时间的Java,就这么放弃自己心里又不甘心,长这么大学习上面就没坚持这么久过!一直都是混日子!

学Java又不知道该怎么学,又不想放弃!真尼玛烦躁,这个问题已经困扰我蛮长时间的了!求大神帮我出出主意,小弟是真的烦躁...
...全文
910 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
小灰狼 2017-03-21
  • 打赏
  • 举报
回复
不要以为做测试就很简单 我们项目组里的测试人员,都是要求了解系统的运行机制的,这样测试出问题时,才能更准确地定位到问题所在。 比如让你做共享单车APP的测试,你应该知道一个请求在APP、后台、单车之间的完整通信过程,否则测试找出bug时你可能无法重现,给研发的错误指导意义可能不大。
Frank6600 2017-03-18
  • 打赏
  • 举报
回复
再转我回答的另一帖供你们参考: 设计模式学来有用吗,该怎么学? http://bbs.csdn.net/topics/392084506
tom_66 2017-03-18
  • 打赏
  • 举报
回复
Java比C简单很多很多。关键是看你工作了,如果你工作中用的是C,那就学C吧,否则,你光靠自学,没做过项目,是没公司会要你的。
Frank6600 2017-03-18
  • 打赏
  • 举报
回复
接下来切入正题: 从看到你的问题,我就在想怎么说明白这件事。 有的人真心想帮像你这样的人, 但并不知道怎么明白告诉你,给你指明白这条路。 像我这样的人都是第一天摸到电脑编程就兴奋得要死, 发现电脑能以另一种方法解决“课堂上学习数学时面对抽象符号不容易理解”的问题, 兴奋得每天都在期待学校电脑课到来(一周只有两个小时,我高中的时候)。 到底电脑编程有什么媚力? 当年高三学到“圆的计算公式”时我在想“电脑是怎么利用这个公式画圆的?” 当时学到两种方法:1.用“勾股定理”;2.用三角函数; 因为“勾股定理”容易理解,所以就先用它,但画出来的圆一点不好看。 只好用三角函数,结合圆的公式重新写一个,最终很完美的把圆画出来了。 那几天兴奋得睡不著觉。 电脑编程最美的地方就是能够“快速的验证你想的东西对不对”, 把你想到的方法的答案快速地回复给你, 它是最棒的“思路正确性自我检验工具”。 不只如此, 经过这么多年编程语言的演进, 使这个工具在具有逻辑性的同时, 提升利用数理逻辑解决问题的优美程度。 编程的过程就是在享受这个东西。 愈晚期发明的编程语言, 在这方面的改进愈明显。 因此“原则上”Java在这方面是胜过C和C++的(原则上哈!) 除非你要解决的问题非C/C++不能解决(比如对速度有很高要求,或者是系统底层编程), 否则应该尽量的选用较晚发明的编程语言(或者在这方面持续改进自己的语言,Java属于这一种)。 说到这里, 似乎仍然没有回答你的问题:学习Java的路该怎么走? 呃,其实说了,不知道你发现没有? 你说“网上找的小项目的源码都看不懂” 其实,大部份别人写的源码我也看不懂。 非得“很痛苦而且很用力看”最终才能看懂。 学习编程的过程并不是看一些别人写的源码就能成长快速的。 要成长快速,正确的方法是先沉下心花几个小时把基本的语法看会, 然后在这个基础上问问自己, 以目前学会的,能出什么题给自己, 应用目前学会的怎么解决它? 怎么快速验证它真的被解决了? 还有没有更好的解法? 说说当年的一件事: 当年在学校电脑室,第一次接触多人共用的Unix环境, 虽然已学习DOS多年, 但面对Unix终端完全不知道自己要干什么? 怎么迈开学习Unix的第一步? 那时候我就像你现在一样迷茫。 直到有个学长告诉我:你可以写个程序,监看当前有谁登录系统。 当时我们Unix账号就是我们的学号, 我用Shell脚本写一个十多行的程序(花了我约3小时)在后台运行, 每当有人登录系统,我坐在电脑室最后一排, 立刻知道他/她是谁(用学号到学校发的通信录查询,就知道他/她的名字) 真是太有意思了。 那之后我一直不断的想:我还能用Shell脚本做什么? 每天给自己想一个题目, 然后去找书(那时候Unix只有英文书喔,百度还没出生)设法找到解法。 虽然啃英文书很痛苦, 但是跟找到解法解决想解决的问题并最终获得成就感比, 那种痛苦不算什么。 比如Unix环境中有电子邮件系统(OK,现在电子邮件没什么了不起,但那时候这东西刚出来), 我便想这电子邮件系统怎么把邮件从遥远的另一台电脑寄到这里的? 找了很多资料,都说用Shell脚本做不到,只有C能, 于是为了搞明白邮件系统是怎么实现的, 开始了学C的漫长过程。 现在我告诉你:Java能开发邮件系统,也能开发QQ系统, 你会不会想知道怎么做到的? OK,你是初学者,别选那么难的题目开始。 但绕来绕去说那么多, 其实我已经告诉你学习Java的路该怎么走了, 不知道你发现没有? 面对什么javase,javaee,swing,swt,SSH,..... 名词一大堆,东西一大堆, 谁都会迷茫的。 要学的东西如同大海啸,又高又大地在你面前向你涌来, 你怎么可能不手足无措? 一开始能力还很差, 只能解决简单的问题, 想想自己要从解决什么问题开始,是件超重要的事。 如果像我今天这样的能力,却想怎么开发出登月火箭,那就是犯傻了。 我甚至想都不会去想怎么开发出一架飞机, 或者怎么设计飞机的飞控系统, 因为我的能力离解决这个问题,相差太远。 你想学Java做什么?解决什么问题? 怎么给自己找到下一个问题? 从“怎么用几行Java就能享受著看到电脑解决你的问题并回复答案”开始, 一步一步的走出去。 渐渐地代码行多了, 就得想想怎么分配代码行到多个方法、多个类中、多个文件中, 渐渐地能力有所增长了, 才开始想除了标准JavaJDK外,还要学什么? 简单的说,下一步要学什么, 是跟“你想用Java来实现什么”相关的。 每个人都会跟你说要学javaee,SSH,swing,swt..... 虽然他们说的都没错,毕竟这些东西是时下最流行的, 但随便敲几个字告诉你要学这些东西,是不负责任的。 那些什么“语言不重要,思想才是重点”的话虽然是正确的, 但对于现在能力的你,这话就是屁话。 这世上多的是那些“随口说出正确的结论,但其实对我们一点帮助也没有”的人, 这些“只满足必要条件,不满足充分条件”的描述, 对学习东西没有太大的帮助。 就像看过《笑傲江湖》的人都知道“无招胜有招”是最高境界一样, 但如果你没先读过独孤九剑的总纲, 再学过破剑式、破刀式、破.....式, 并且有老师一点一点的跟你讲解剑理的重点, 并且跟田伯光、黑衣人等人练习过, 怎么达到“无招胜有招”的境界? 没有体会到剑理并加以实践, “无招胜有招”就只能是街口流氓打架。 最后,要告诉你,这条路其实挺远挺不好走的, 你觉得你真的适合进入这个领域吗? 这一切是一点一点学会,一点一点进入的过程, 没有几年是不会有成绩的, 你真的适合以编程为职业吗? 你真得好好想想。 以上 打这么多字真累, 但愿对你们有帮助。
Frank6600 2017-03-18
  • 打赏
  • 举报
回复
首先说点题外话, 我招聘新员工的时候常对他们说, “你觉得自己适合编程这个领域吗?” “你能每天在电脑前坐得住吗?” “你每天解题能不烦吗?” 很多人进入这个领域是莫名其妙的原因, 还有很多人是因为培训学校说这行薪水高就进来了, 可是要知道, 这行对于喜欢的人来说简直像天堂, 对不喜欢的人却如同在学校时每天要解几十题数学题那样枯燥乏味,痛苦得要死。 你真的喜欢编程吗?你真的适合以编程为职业吗? 这是你先要考虑的问题。 编程的过程,就像在解题。 “遇到搞不定的问题”是经常发生的事, 我公司一名新进员工经常在搞不定问题时气得大叫大跳、用力敲打键盘, 他自己不知道但办公室其他员工很不舒服。 我叫他到单独办公室跟他说: 在这行经常会发生有问题搞不定的情况, 努力思考设法找到答案是很烦很烦的过程, 这里每个人都这样, 可是只有你会这么大叫大跳, 要想在这个领域有成长、有成就, 你得先耐得住烦,习惯这种烦, 然后才有办法享受解决这个问题的成就感。 一年过去了,他终于不再这么烦燥。 能力也有显著提升。
ifeisou 2017-03-18
  • 打赏
  • 举报
回复
工作方向的问题我不懂,但是Java学习我也经历过同样的迷茫。你现在就是想得太多没有目标反而忘记了事情本身。我当时入门就是想着做一个批量注册163账号的软件,带着一个特定的目地去学习,你会发现自己学的特别快,软件做好时的成就感会让你明白学习本身的意义。编程本身就是为解决问题存在的,不是吗?
Frank6600 2017-03-18
  • 打赏
  • 举报
回复
如果不介意的话,我再说几个题外话: 大约一年半前,我们开发的一个基于SWT的产品, 要求能够在Windows和Linux提供用户安装功能, 提供Windows环境安装很简单, 网上有大把工具,很多还是免费的,我选了INNO, 但是如何提供在Linux环境安装的工具,百度了好几天都没有好的, 都说RPM最好,可我一点不喜欢, 因当时只能用RPM,只好一边百度学习一边捣鼓, 花了五天才把基于Linux的安装搞定, 但只有文字界面的,不像一般Windows安装程序都有图型界面,按下一步………就能完成安装。 就像一般手机APP安装,只问你要不要安装,回答要,再等一会儿就安装好了。 RPM的不止不能这样,搞定它还挺费事,好不容易搞定了一个就求爷爷告奶奶,千万不要有任何修改。 想到万一将来要修改安装功能就全身起哆嗦。 那时候我就想,咱们学Java不是跨平台吗?能不能弄个东西,像INNO那么简单就搞定在Linux环境安装软件这件事。 也提供一个图型界面,让用户一路按下步就完成安装。 最好弄个INNO配置就同时完成提供在Windows和Linux平台安装这件事, 而且最好像INNO生成的一样,只有1个SETUP.EXE最好,Linux下也是只提供一个SETUP程序最好。 哦,最好还能自动判断32位/64位,安装正确的JRE。 可当时把自己熟悉的JAVA+SWT想了个遍, 都想不到合适的办法,只好暂时先搁着。 但有空都会时不时想起这件事,因为后续还有开发别的软件也需要有Linux安装功能。 就这么有时想到这事就想一下,想不到办法就只能叹口气, 一直到半个月前突然脑袋里灵光一闪, 终于想到办法, 然后用了半个月时间,完成整个开发。 现在我们完成软件,只要写一个INNO配置,便可以同时完成Windows和Linux平台安装工具的生成, 而且只有1个SETUP文件,而且提供图型界面让用户一路下一步就完成安装。 OK,上述这个安装软件功能不是我要说的重点, 我要说的是,我想这个问题的解法, 足足想了一年半! 十多年前用SQL2000时发现SQL一个要完成某个审计功能会有缺陷, 想了好几天都想不到解决办法, 后来也是这样,有一阵没一阵的,想起这事就想一下, 足足用了二年才想到解法, 然后用我的破脚英文,写了一份解法说明, 发到老外的讨论群, 一个老外看了后直赞我YOU ARE THE MAN! 看清楚,这里我想了二年才想到答案! 前几天听说有一个6几年出生的编程爱好者, 这十几年来养成一个习惯, 经常晚上睡到半夜起床编程, 因为他睡到那时候突然想到办法, 不立即编程就睡不著。 喜欢编程的人就是这样, 虽然想不到答案时痛苦万分, 心情烦燥无比, 但一般总耐得住烦。 并持续地耐住那个烦长达1年以上。 编程就是这样, 有搞定问题的成就感, 也有搞不定时的烦燥和压力。 对适合的人来说, 编程是痛并快乐著, 而且很快乐! 但对于不适合的人呢, 比学校时一天算50题数学还痛苦! 希望你如果还想在编程的领域走下去, 最好尽早认识这一点。
zyqok 2017-03-17
  • 打赏
  • 举报
回复
虽然你看的视频我不知道有没有效果,不过我强烈推荐看马剑威的视频,老夫阅片无数,只服威哥! 先看威哥的一套JavaSE基础视频,共3季,看完看威哥的JavaWEB课程,总之一套课程都有,从0自学的我,到现在7K(成都,1年经验)也算知足了。
zs808 2017-03-17
  • 打赏
  • 举报
回复
有舍才有得。 更何况,并不代表你学C了就一定要把JAVA丢掉呀。 从某种意义上来说,JAVA还是C它孙子呢。。。。。 语言只是工具,思想才是实力。就好比给我们专业的,质量特别好的口风琴,也比不过人家乐器底子特别厚的人拿一片树叶吹得好听。 所以,骚年,沉下心来不急躁,慢慢来,学程序好比学骑自行车,摔着摔着,就会了。然后,就忘不掉了
  • 打赏
  • 举报
回复
兴趣在java的话, 看看视频做点小项目, 找工作
演员_ 2017-03-16
  • 打赏
  • 举报
回复
看视频的话你可以去 尚硅谷 下载,上边有 javase->javaweb->javaee ,可以看一下,学着做一点东西。最涨技能的就是边工作编学习
Xu_YJ 2017-03-16
  • 打赏
  • 举报
回复
引用 2 楼 ryuugu_rena 的回复:
你为什么不学更有前途的c呢?
因为之前家里有个亲戚推荐我学Java的,他是做C的,说现在java比较好!然后我就学Java了
ryuugu_rena 2017-03-16
  • 打赏
  • 举报
回复
你为什么不学更有前途的c呢?

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧