百科问答小站 logo
百科问答小站 font logo



一个即将步入大学对编程感兴趣的学生,3 年能将 Java 学到什么程度,应怎样合理分配这 3 年? 第1页

  

user avatar   LinkinBryant 网友的相关建议: 
      

@牛揉揉

首先黑一把目前的高票答案,不回答问题而武断的攻击题主,又要别人”不要因此批评我,我不爱听“,这简直是双重标准过头了。

以这样的姿态自然很难当一个好老师。我是听说一些老师,教育方法不对,完全不能和别人沟通,回头觉得,哎呀学生真是难教啊。

我给题主的建议就是,首先远离这种教育者,他们会把这种心态传染到你身上,传染到你的各个领域。当然如果你的学校背景不好的话可能会有许多这样的教育者,那就尽量告诉自己,不要受这样的人影响。

顺便一提,一个好的程序猿一定是与人友善的,这意味着写的代码要为后来接手的同事考虑。让所谓“伸手党”不用伸手就看得懂,是最好的。耐心平和甚至有些话唠,才是一个受人喜欢的coder,所以我怀疑高票答案本身就不是一个很好的团队成猿

当然作为一个java一生黑,我实在是很难告诉你怎么去学java,但是高级语言的原理基本是类似的,无非只是表达形式的不同。Java也好,C#也好,PHP,JS,都只是某个语系下的不同方言,也许发音和词汇不同,但是语法都是一样的,学起来会很快——至少在你成为某个领域的大神之前,是这样。

首先我想说的一点是,心态放平。社会对你的要求,没那么高

先讲我自己的故事吧

我自己刚去公司面试时,对于我接下来常用的几种东西完全没有任何概念:Javascript,见过,不知道怎么用。C#倒是经常用,仅限于日常语句,写个扫雷的水平。MVC框架,噢天呐这是个啥。

就这水平。月薪5k

我十分庆幸我遇到了一个耐心的好老师,在我实习的时候带我的那位经理。他很耐心的从一开始就把正我的方向,避免我养成不好的编程习惯,在每一个细节指导我。有了好的想法,会兴冲冲的把我叫去一起讨论,虽然多数时候我就是听着。

我感谢他的善意,同样我会愿意把这份善意传播给每一个后来者——没有不好的学生,只有方法不对的老师。

刚刚我说道扫雷,我可以告诉你一点,你在学生生涯,能独立完整的做一个扫雷,那你的水平就足够了

进去学校头一年半,我要你忘记扫雷。学好基础

基础分两类,理论基础和实践基础。

理论基础不需要很深刻,举个例子:你要知道继承和抽象是什么东西 ,哪怕你可以没用过。但是你要知道概念和他们的区别,哪怕背也要背下来。

实践基础,很简单,动手做。 从第一个helloworld开始,你要动手写每一个程序。算法你可以照着伪代码或者流程图来亦步亦趋,但是代码,每一行你都要是自己打出来的。

这头一年半的时间里,你要学会怎样使用基本的语句,怎样写一个完整的程序,怎样通过明确的算法描述实现一个算法。怎样使用集成开发环境来帮助开发。

然后你可以做扫雷了。你可以用一个下午把扫雷做出来,然后接下来的一年半,去完善它。

做一个扫雷需要什么:(以下有一些术语,看不懂不要紧,学到那时候自然就懂了)

1,基本:使用集成开发环境去启动一个图形界面的程序。这很容易。

2,扫雷的雷区阵列,涉及到类的应用和实现。这是面向对象语言的核心

3,雷区区隔的点击,涉及到事件响应和事件处理。

4,计时器,多线程。

5,整体的逻辑实现,怎样算是游戏成功,怎样算是失败,这就是基本功了。

到这个时候为止你的扫雷程序基本就有个样子了。

然后优化

优化代码:合理的代码分块,合理的函数化。写让人看得懂的代码。

优化性能:调整逻辑,以及使用多线程来优化雷区阵列的响应速度。

优化体验:包括设计的优化,交互的优化。程序猿还是懂点设计比较好。

到这种程度,你的水平足够边工作边学习,成为一个能胜任多数基本工作的优秀工作者了。

当然你可以更进一步

做一个坦克大战。这里主要涉及的东西和扫雷没什么区别,不过就是有了动态游戏进程,你需要更好的设计整体的逻辑。

还有,写一个A.I.

反正我直到毕业也做不好一个坦克大战就是了。你可以努力。

这里讨论的都是纯粹高级语言(java)的范畴,没涉及数据库。

总结一下,在学习编程这一块,你首先要做的,是动手做。

然后你三年内的目标,是写一个完善的扫雷,再努力做一个坦克大战。

好的老师,会给你经验,让你少走弯路。但是编程上,真要学会什么,主要是靠自己动手。

顺便一提,从0到坦克大战,如果你严格要求自己的话,9个月到一年足够你学会了。

-------------------------

最后鉴于

@萧井陌

同学关闭了评论,不得已把话放在这里说。

回来针对萧同学对所题主伸手党,没有准备就来要东西说几句:

我刚刚私下和题主沟通,他目前高中刚毕业,在中学开始就已经自学java,已经有了一定程度的基础。我刚刚找了个oj平台给他。目前题主估计在努力做题。

我不清楚萧是从哪里看出他”伸手党“”抄捷径”又“没有准备”了。

如果就在这个问题里看到的情况而言,萧同学你之所以有了许多“教育失败”的经验,无非是因为你自己的教学态度和方法十分恶劣导致的。

而“没有准备”就武断攻击他人的,还是你自己而已。

武断就不要答题了,这是为你好。

没耐心就不要答题了,这是为你好。

懒得了解情况就不要攻击别人了,这是为你好。




  

相关话题

  如何评价博客园关于 C++ 的这篇热门文章? 
  如何看待河南将在3月1日后视疫情防护情况有序开学? 
  黑客可以厉害到什么程度? 
  NoSql是一种语言,还是一种概念? 
  编程时怎么把函数当做变量使用? 
  为什么高校成为艾滋病的重灾区? 
  突然想念校门口的烤冷面,你最想念大学周边的美食是什么? 
  假如我穿越到2017年第一个提出了Transformer、BERT等模型,我可以保送到清华北大吗? 
  如何看待西北政法大学更改作息时间? 
  JAVA 学到什么水平就可以转战 Android 了? 

前一个讨论
对于三国中各个国家各大大将领之间错综复杂的婚姻关系,都可以用政治婚姻来解释么?
下一个讨论
陆逊为何会卷入东吴太子之争以致身死?





© 2024-12-25 - tinynew.org. All Rights Reserved.
© 2024-12-25 - tinynew.org. 保留所有权利