大学期间,我和老师做过一些小项目,自认为自己很牛,当时还去过一些公司面试做兼职,但是就是不知道为什么没有回复。那个时期的我,压根不知道自己不知道,还以为自己懂很多,现在想起自己以前就好笑,那个时候还算不上程序员,顶多只能算是个业余编程爱好者。
表现:假自信、过度承诺、满口我能行没问题、看不起其他程序员….
阶段二:知道自己不知道(Conscious incompetence)
工作后,发现自己在项目中工作时遇到困难不知道怎么解决,和身边人一比发现自己明镇知识很欠缺,这时候知道自己技不如人,很多地方都不足,需要大补才行,这个烂态时候就是大家所说的初级程序员阶段,这个阶段必须依靠别人指导。
表现:有点心虚、虚心学习、偷偷努力、羡慕牛人…
阶段三:知道自己知道(Conscious competence)
工作三四年后,自己的技能逐步提高,成为了项目组的技术大拿,这时候也很自信,知道自己能够解决遇到的所有问题,这时候就是高激历粗级程序员阶段了。
表现:自信、比较客观、真正承诺、有点自我…
阶段四:不知道自己知道(Unconscious competence)
工作多年后,随着自己知识的深度和广度的提高,越学发现越不懂,有时好觉得自己以前真是浪费了太多时间。虽然觉得自己还有很多需要提高,但是对工作中遇到的问题基本没有解决不了的,这个时候很多知识都自成体系,解决问题也有了自己的潜意识,有时连自己都不知道自己知道,这时候属于架构师级别了。
表现:开放、主动、好学、谦虚…
1、自学算法。 因为编程语言实现了它们自己的排序和搜索,所以自学猜镇成才的程序员总是倾向于学习如何使用它们,而不是去了解它们的工作原理。
2、自学计算理论。 这是关于计算机如何解决问穗携粗题,以及编程语言如何构建的一门科学。从有限状态机到 Λ 演算,在这一类中,有一大堆重量级的主题。
3、自学纯数学。 传统的计算机科学涉及范围广泛的重要数学主题,包括线性代数、微积分、概率论和统计学。
4、自学大〇符号法(Big O notation)。 这个改编自数学领域的工具,让开发人员能够描述并比较不同算法的隐巧整体性能。
扩展资料很多新手都是初生牛犊不怕虎,因为不了解编程领域,便不假思索地定了一些很高的目标,比如想进大厂,想做有复杂度的项目,想短时间学习一门语言并找到工作。
理想非常充实,而现实却很骨感。可能低估了进入该行业的难度。不是您可以仅凭意图快速完成学习过程的。
一定要先易后难,一步一来,例如,首先了解语法,尝试编写一个demo,接着了解高级特效,实现高级特性,然后自己脱离教程写一些代码,最后做项目,大概是这样的一个逻辑。
实际上,对于新来者来说,完成这些步骤并不容易。别看学习基本语法并不难,但是如果想入门,可能会遇到很多问题,例如环境配置在安装和使用IDE之后,代码语法错误,编译错误和执行 错误对于新手来说很难解决。如果不借助外力,基本上是无从下手的。
程序设计步骤过程:孙轿1、 分析问题,抽象出描述问题的数据模型;
2、 确定问题的算法思想;
3、 画出流程图或结构图;
4、 分配存储器和工作单元(寄存器);
5、 逐条编写程序;
6、 静态检查,上机调试。扩展资料
程序设计是给出解决特定问题程序的过程,是软件构则带肆造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。专业的'程序设计人员常被称为程序员。
任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。在计算机技术发展的早期,由于机器资源比较昂贵,程序的时间和空间代价往往是设计关心的主要因素;随着硬件行闷技术的飞速发展和软件规模的日益庞大,程序的结构、可维护性、复用性、可扩展性等因素日益重要。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)