‘壹’ 自学编程有哪些困难和障碍
其实你这个问题比较难回答,因人而异。
简单说几点问题及决方案吧。
1、不知道从什么地方看起,解决方案就是从第一章看起。
2、不知道如何编写第一个程序,很简单,解决方案就是:
(1)用书上的例子
(2)独立完成最简单的一个完整流程,如从写代码到完整产品,如软件就是一个提示框,硬件完成一个闪灯。
3、不知道程序怎么编写,这个是刚学习的通病,其实很简单,按照你的想法编写,错了也比不编程好得多,慢慢改进就会很精简。
4、不知道怎么更好的编写,其实编写程序有一些思想在里面多看看编程思路的书。
下面是总结的经验:
1、程序细化,利于组建其他程序。
2、程序模块化,利于整体调用。
3、分类程序段,使程序思路清晰。
4、合并相同和相似的代码,编写成一个函数,用到此功能调用此函数。
5、编写通用程序,载入不同的脚本实现不同的功能。
6、编写程序工具,不同功能的模块可以用程序工具来编辑,比用代码编辑方便。
7、用通用的现成功能库来提高工作效率。
8、持续优化重构和改进,提高代码质量。
9、建立通用数学模型,使一类事物用一个统一模型表示。
10、预留一些接口,提高程序的可扩展性。
11、添加一些注释、流程图、说明文档使思路清晰。
这样你编写的程序会可读性强、重复错误少,代码量少,时间少。其实好的代码往往比不好的代码可以差几十倍的代码量。
‘贰’ 编程难吗可以自学吗
首先,编程是可以自学的,但前提是你自制力学习力非常好,也需要你对编程有很大的兴趣。
要说编程难不难,这给你总结下编程的难点吧:
1、初学者。编程是用计算机语言和计算机交流,你输入什么,你期望计算机理解之后,输出你需要的结果。所以这个过程可以概括为“输入–计算–输出”。学习一门计算机语言,说难不难,说易也不太容易,为什么呢?如果你是编程的初学者,你要上手一门语言,是非常困难的(天才除外);但如果你是精通一两门语言,再去学其他语言,可以说一个星期就能熟悉。所以,对大部分初学者来说,编程语言是难点。
2、编程思想。程序员一定要有编程思想。跳过初学者这一关,假设你可以对任何语言顺手拈来、即插即用,那么,你水平就一定很高了吗?其实不然,这只能说明你学习能力上一层楼了,但并不说明你就多么厉害。比如,你熟悉设计模式吗?设计系统的时候有没考虑扩展性?是否考虑到性能问题……如果整天只做crud,不去关注以上问题的话,瓶颈是很难突破的。那么编程思想何来?就要平时多阅读这类的书籍和文章,比如设计模式,比如高并发系统设计相关知识等。除此以外,还要多思考,为什么这样设计,所谓学而不思则罔,思而不学则殆!
3、沟通能力。好了,即使你掌握多种语言,又可以把系统设计要得很溜了,但是如果你是个不会说话的哑巴,你就无法表达出自己的思想,无法向老板展现你的才能,那么你的职业生涯会受到很多限制。我自认为本人的沟通能力是弱项,自己也在不断努力改善这点。现在每次参加讨论的时候都会积极发言,表达自己的观点,除此之外还报了一些口才课,来提升自己的表达能力。
当然,每个人的逻辑思维能力不同,兴趣点不同,总有一部分人觉得容易,一部分人觉得吃力。但只要你想学,肯定能学会。
学习编程是一个漫长而痛苦的过程,需要持之以恒的耐心,千自万不能急于求成。对于一名初学者来说,最重要的还是打好基础。说实话入门不难,但是想做精就比较困难了。
希望能帮到你,望采纳!
‘叁’ 为什么零基础自学编程者,大多半途而废
笨学不会
同理,反应慢学不会,年龄大学不会??
反向引申,听懂学会,理解能用,学过了学会了,学习了学成了??
讲到这里这篇文章其实已经可以结束了,因为真理就是那种大家心里都明白,却不愿意相信的东西。为什么这么说,因为这是我的心路历程啊。
注意!下面要讲故事了。
这是一个真实的故事。有个叫雅子若宫的日本老奶奶,今年81岁,这两天火了。
知乎自古出大神,怎么办?大神的话我得看看。
仔细一看,不得了,大神们也分两派。人生到哪都得站队。
唯心派
@卡昂格贺:
大多数人的努力程度,自学不了任何东西。
@王海波:
不光编程,零基础学任何东西都很容易半途而废。关于梦想这件事,很多人梦是梦了,却不够想。真的很喜欢么,真的很想做成么?半途而废,基本上都是空梦而没有足够想。
@伍一峰:
自学从来不是一件容易的事,需要强大的自制力和明确的目标,最好还有旺盛的热情。而且自学往往意味着,业余、课外,不学是不会死的。
@古居延:
没有必须掌握它以实现某种目的的决心与毅力。
@James Swineson:
因为不知道学编程为了什么,无目标,只是听说学这东西好而已。没有创新或者改变的动力,是做不出什么东西的。
唯物派
@wsivoky:
他们用火药去制造了烟花,而不是大炮。
编程不是一个充满技巧的超炫玩具,而是解决问题、提高效率,甚至赚钱的强大工具。请正确使用。
@ffy:
因为编程不是“学”会的,是“用”会的。
我用matlab,看了一个暑假的书,到时一用啥都不会,后来有个事要写程序,感觉得到了很多。
@文枫:
我总是在工作或学习中必须要用到某种编程语言时才开始现学现用。把解决实际工作中的具体任务作为学习的最终目标,可以增强学习动机和欲望。不过在这之前,需要掌握一些计算机编程的基础知识。
学习毕竟不像阅读小说和浏览知乎,浅尝辄止难以学有所成!
@刘昕宇:
多半是没人带!
早期学习靠兴趣,但是大部分?潘浚??爸杏龅降奈侍饣岱浅6唷?/p>
有时候,遇到卡的地方,真是很受不了,
卡着卡着,就不学了。
@匿名用户:
第一个是没人陪:自个摸黑前进,哪个标签是做什么的都很难了解到。
第二个是没资源:国内编程圈没有国外那么有分享研究带新人的精神,更多的都是等着国外的东西传进来,好自个在工作中赚更多钱。
第三个就是国内各种搂钱教材的功劳了,不用说你懂的。
这个队好站。这次小智两边都站。因为不管唯心还是唯物,对我来说,每一个我都有,每发生一个都能让我半途而废。毕竟,我的人生格言是:世上无难事,只要肯放弃。
你们,也是吧?
针对这种懦弱癌,也不是无药可救。在没有退路的情况下,我们每个人都能激发出前所未有的潜能。根据分析,自学编程主要有以下的拦路虎:
没有目标,不知道学来干吗?
我的目标是写一个类似于俄罗斯方块一样伟大的游戏(因为,我曾经的绰号是俄罗斯方块之王),当然你的目标可能是理想、梦想、大神、大虾、挣钱、买房子、娶媳妇、生孩子??
拦路难度:跟你的目标坚定度成正比。
找不到系统的学习资源
这个很可怕,而且是个死循环。因为是小白,所以找不到也不知道什么是系统的学习资源,因为没有系统的学习资源,所以无从下手;因为无从下手,所以难以构建系统的学习框架;因为难以构建系统的学习框架,所以一直都是小白。
拦路难度:
专业名词太多
编程对于小白来说,太多晦涩难懂的概念,每个知识点过一遍都不知道过了什么。(字典,模块,集合?)
拦路难度:
没有人指点
“解惑”也是学习中很重要的一环,当然也可以上论坛提问,但是这样一是效率低,二是有些问题,高手不屑于回答,而且还会调侃一下(这是不是也是其中一个障碍呢)
拦路难度:
除了第一个,好像都是无解的。所以,小智又发现了一个宇宙级的“矛与盾”:
不会学=学不会
不会学学不会
那么,
在国内,要“会学”有多难?
现在来说,
来智游就够了!
没有目标?没关系。这里有无数有着坚定目标的同路人,被他们的前进的步伐裹挟着的你,原地踏步就代表着退步,进步从来都是不由自主的。
没有系统的学习资源?这里有一套教研系统在为每门专业的课程“输血”。智游会定期组织行业大牛和每个专业所有的老师进行教学教研会议,对各类课程进行升级,对课程的整体设计体系进行合理的编排。
专业名词太多?没有人指点?我们的老师会全天候指导和随班陪学,即使毕业工作后也提供远程技术指导。