java 改别人代码的bug,觉得有些吃力,是我太菜吗?
改别人代码的bug,觉得有些吃力,是我太菜吗?调试程序的能力确实是评估程序员整体技术水平的一个重要方面。然而,由于不同的程序员经常面临不同的开发场景,因此存在许多不同形式的bug。因此,如果调试一些复
改别人代码的bug,觉得有些吃力,是我太菜吗?
调试程序的能力确实是评估程序员整体技术水平的一个重要方面。然而,由于不同的程序员经常面临不同的开发场景,因此存在许多不同形式的bug。因此,如果调试一些复杂度很高的程序,即使是有经验的程序员也不会感到特别放松。
程序员调试程序的能力通常由三个因素决定:一是自己的经验;二是自己对业务的理解;三是算法设计的能力。
代码量对程序员的调试能力有最直接的影响。一般来说,程序员拥有的代码越多,调试能力就越强。这在调试一些常见的bug时尤其明显。很多初级程序员在程序出现bug时往往需要很长时间进行调试,而老程序员几乎一眼就能发现问题的关键是角色的编程经验。
程序员对业务流程的理解直接影响到调试能力,因为程序设计往往需要与业务流程相适应,特别是对于管理软件。许多复杂的逻辑来自于特定的业务规则,因此不理解业务规则就很难调试程序。事实上,许多程序员在中途接管程序代码时需要对业务有一定的了解,而这个过程往往很耗时。
算法设计能力也会在很大程度上影响程序员的调试能力。虽然目前很多应用级开发任务中关于算法的内容并不多,但算法设计能力对程序员的逻辑思维能力也有很大的影响。因此,具有较强算法设计能力的程序员往往能够更快地理解代码。
零基础想学习java,应该从哪学起?
事实上,这个问题对于任何语言都是一样的。从一门语言开始,我们首先需要了解语言语法(可以使用),然后了解标准库(可以使用)。有了这两个步骤,再加上一点其他语言的知识,我们应该可以开始了。我校招收的很多毕业生经过1-2个月的辅导,都能达到这个阶段。
剩下的是第三步,通过项目或产品的实践加深对技术和业务的理解。在这个阶段,我们通常依靠自学、谷歌和理解。两三年后,我们可以发现,有些人对技术和业务的了解很深(老手),有些人还很肤浅。这段时间通常是另一个跳槽阶段。在这个时候,不同的人的工资水平会有很大的差异。
总而言之,程序员最重要的是持续学习(第三阶段)。事实上,IT行业是一个需要不断学习的行业(因为技术更新太快)。初出茅庐,我们都有同样的基础和能力。这一差距将在2-3年后出现。如果你是贫穷的一方,那就意味着你工作不够努力。
最后,Java主要用于服务器。由于其出色的内存管理,它阻止了许多程序员的能力差异(能力较弱的程序员可以编写较少的糟糕系统),并且适合于长期的服务器项目(如web和其他非UI应用程序)。
虽然也有优秀的UI库(如SWT)和优秀的桌面应用程序(如idea、eclipse和netbean),但是桌面软件应用程序仍然很少,需要带JRE,所以负担相对较大。