零基础学习编程一般需要多长时间成手?
零基础编程人员学软件开发需要多长时间?学编程需要多长时间,也要看个人的理解能力,理解快的很容易上手。其次,就是学软件开发的方式,看你是自学还是培训?这两种所花费的时间也是不同。下面我就给大家的详细的分析下。
1、选择自学。
a、有些人自制力强每天可以拿出很多的时间去学习,这样花费的时间就会比较短(具体时间无法确定)。
b、有些人天天吊儿郎当,三天打鱼两天晒网的话,那到底需要多长时间就真的不好确定了,甚至有很多人在学习的途中坚持不下来半途而废的也不再少数。
所以长沙一度IT学校荣老师想在这里慎重的提醒一句,如果你是零基础的话,建议不要自学。因为网上看书或者视频,都是比较落后的教材了,而且网上的那些视频教学都不够系统,老师也不能由浅入深的方法去讲解,这样你自学起来就比较苦难,还有就是遇到问题也不能及时解决,就算你再有兴趣,在这样的情况下也无法继续下去,最终就是放弃,这样一来就浪费时间了。
2、选择培训。
如果是通过参加编程培训的方式学习编程的话,这个就取决于专业的学校所开设的班级,一般是有大学生班,学习时间一般是在5-6个月,高中生班,学习时间是在两年左右,现在也有初中生开始学软件开发了,一般学校时间是在4年左右的样子。
参加IT培训可以有这几点好处:
a、掌握较先进的技术。
b、增加实际工作经验。
c、获得更多就业机会。
所以零基础改行学软件开发要多久,自己看了上面的解说,应该就清楚了吧。
寻求一位能将我带上计算机编程之路的老师,本人编程0基础
除非保持很近的距离与密切关系,否则带你上路也许只是说说上有些戏,实际是不可能。下面给你一些我的意见,不敢自称是编程的开发大师,但是见解一定能对你有帮助的。
前提,真的有心,真的有兴趣:
这真的是前提,是你的源动力,恒心与质量都由这个决定,如果没有了这个前提,你的学习将会半途而废,或“未曾起飞已堕落”。
========================================================================
1.它是什么、它有什么用、它怎么用
这是一个通用的自学步骤(适合学任何知识),先了解它是什么很重要,这有助于你去探索它有什么用。是一个从顶开始的自然框架,最好能用思维导图去表现你的“研究结果”(对,在你还没掌握任何技术的时候,你便已经可以把它的结构关系呈现在具有强表达关系能力的思维导图上,对你以后的扩展学习很有帮助)。然后再拿着这份思维导图,你便可以很有目标的逐个领域研究----它怎么用。
2.什么是过程式编程,什么是对象式编程
这是在研究“它怎么用”的时候,一并需要研究的两种编程方式,目标是理解对象式编程(过程式相对容易理解)。这两部分与技术无关,是编程的思维方式,但了解过程却必须有一些基本的简单的代码例子才能理解的抽象。也就是说,只要你会了最基本的If、控制台(一个用于显示程序结果的平台,通常是跟使用的开发软件工具中提供)输出,你便可以用这些基本的知识来理解抽象的对象化编程(OOP)的精妙。
3.横向比较、作出选择、深入技术实现、初步实践
横向比较,是比较不同的语言的优缺点,这需要你知道并了解很多与编程相关的专用术语。例如C、C++、JAVA、C#、Objective-C、VB、PHP、Python、Perl、JavaScript等等等,你要以一个足够高的自信度去看待它们的优缺点(自信的意思是,并不需要已经很有经验才可作语言的横向比较)
然后作出你的选择,这很多时候需要根据你自己想涉足的方向及横向比较综合才能有好的选择。例如如果你要开发的是苹果设备下使用的软件,那么你就还是直接选择Objective-C吧,没有其它语言可以代替它。
深入技术实现,确定了是攻哪门语言后,然后再放慢节奏,着重看看要实现不同的效果,背后涉及的技术是怎么实现的,这通常是跟很多框架(Framework)有关。现代的编程是不需要从头到尾自己实现的,而是有很多针对不同领域的“工具库”,只要你会调用工具库,便已经可以轻松实现很多功能,例如影音播放,这么多的格式支持、这么多的数学压缩算法,与其将心思放在研究这些功能的实现细节,倒不如放多点时间研究如何让这些工具能更合理的应用在你的程序中(对象化思维)。
初步实践,这是让你进步与记忆巩固的有效方法,从最简单的“HelloWorld"开始,一点一滴地面对每一个”成功“的喜悦,你便越来越神。
4.正确对待Bug、质疑、突破
Bug是程序的一部分,没有一个真正没有Bug的程序的,所以要喜欢Bug,在你解决Bug的同时,其实你在成长着。
质疑,要敢于质疑现在的编程思维中或技术中或这或那的不合理,虽然这很难,但是它们都是存在的,相信我一句话:"物似主人形”,编程思维与技术,源自于人对物的观念。所以,如果你能看出他们的观念上有什么问题,同样的问题也会在它们发明的编程语言上找到。我举个很简单的例子,苹果的Objective-C,他展现的是乔布斯与别不同的人生态度与观念,因此Objective-C无论在技术上还是思维上,都与其它阵营中的不一样。
突破,这才是真正属于你自己的,不确定是在哪方面,但是这种精神却是你能够用“编程”来“绘画”(不是真的绘画,而是说你写的程序从结构关系上去看清淅合理得像一幅画一样,没有一丝的混乱与刻意妥协或临时应变)的重要情绪,每样事物一定不在上限的,一定不是静止不前的,是谁先看到了哪个突破的问题。有版可见,有样可照,乔布斯无论从产品设计、到编程语言改进、到产品服务的定制、到营销战略,哪个领域见到的不是突破?
5.外用武器:数据库、TCP/IP协议通讯、数据加密、绘图
只有语言,要实现完整的商业或游戏应用是不实际的,其实语言只是“调用指令”,所以有需要了解这些在语言之外的一些东西,是如何使用的,以及重要的是如何在你选择的语言里使用。
至此,你已经可以具有开发像样的商业应用与简单的游戏开发了。
=======================================================================
6.设计模式(对象化编程高阶)、架构设计、敏捷开发、UML
这三部分与语言毫无关系,是编程思维的进阶提高,适合任何语言的,具有这些能力,你便可以很轻松地参与到一个团队的设计,甚至是主导这个设计团队的运作。
7.3D、数学矩阵、算法、黄金分割(在视觉设计中的美学理论)
这些是让你有能力设计精美的游戏的有效内容,它表现得不是语言本身,如果说第6点说的是宏观上的优化编程思维,那么第7点就是微观上编程的特殊实现。
8.系统、编译原理
并不是所有人都有这个水平到这个领域,因为涉及的东西太多了,还跟汇编、硬件、外设等打交道。但是到过这里的人,一出剑便死伤一大遍。如果还能在这个领域突破,那么他便是引领计算机(不只是编程)发展的重要人物。
兄弟,不知道我列出的这些,对于你来说是打击还是引导,如果你真的是有兴趣,你的感觉应该是获得了一个大纲,能够让你从中有选择有目的地去自学。但如果只是三分钟热情,那么很快你便会在第3点前便已经倒下,因为涉及的内容真是太多了。如果没有特殊武器,估计全部了解便够你钻研个20年(当然只是1、2、3不需要这么久,别被我吓着了)
========================================================================
当然,我会有“秘密武器”同时给予你。
秘密武器就是思维导图与速读。
A。思维导图,它从来没有正式地出现在讨论编程的领域里,但是它的”弟弟“UML、敏捷编程中有很多变形的应用。总体的来说,它的作用就是让你能更清淅地组织任何信息,然后等待你灵光一闪的时候,在原有的图上作进一步的推进、演变、记忆。
B。速读,是一个从来跟编程不沾边的领域,都是老老实实地、缓慢地一本一本书,一章节一字句地理解积累。而速读,是人的天生有的潜能。当前大学生一分钟能看800字左右,而掌握速读的人,可以轻松的以一分钟20000字的速度吸收知识,而且关键点、理解力与记忆都比传统的看书方式要强。恐怖的速度是手的翻书速度跟不上眼睛的吸收速度。
要实现思维导图、速读这两种能力,其实所花的时间并不需要很多,一个月便有明显效果,如果能放多点时间则更好。我个人觉得,放一年的精力去研究也不浪费,他会带给你以十年为单位的高速知识吸收效率,而且是任何领域,呵呵,你是真的可以大声地叫那些”教授“、”博士“、”研究生“,”你们不知道的事情,还有很多。“
========================================================================
别以为这样就完了,还有终极武器。
X.终极武器----冥想
这是让你有莫名的突破力、创造力、透视力、分析力、灵感..................的终极武器,能让你从对宇宙与生命意识之间的关系,悟出无法形容的很多能力与认知(包括人、社会、编程的问题),是突破灵感的主要来源地。
冥想其实无处不在,当一个程序员专心地编程的时候,便是处于冥想状态。但是通常程序员专注的是如何实现,而不是如何发现自己的本质与连接自己的高我版本。若腾出每天那么几分钟到1小时的时间去冥想,随着时间的推移,你可以大声地跟那些”科学家“说:"AllIsOne,你们不知道的事情太多,跟你们认为的完全不一样。”
本回答由提问者推荐
我想学编程 基本0基础的 求师傅教我怎么学 指明学习的道路 谢谢
0基础,英语数学不好,要学编程难吗?求师傅全程教导
主要是你的逻辑思维能力,涉及到算法的,和数据就有关系了。。