03.06 怎么学好编程?

隐者77535942


我是一个编程爱好者,从来没有上过什么关于编程的课程,完全靠自己自学摸索出来的。最初是在报纸上看到一个flash动画制作教程,在学习过程才知道还要写代码,当时很傻眼,因为根本看不懂。于是我找来一些程序设计方面的书,从此开启了我业余编程之路。



摸着石头过河容易走弯路,捞到什么学什么,c语言、汇编语言、java等都学了一通,但什么也不精通,直到04年开始流行个人主页,我也跟着玩起了网页制作,从asp转向了dotnet。虽说我不是专业的程序员,但有时也能把编程作为兼职,给客户开发一些网站,企业管理方面的软件,15年我开发的一个软件还获得了全国教育类软件工具一等奖,现免费服务于全国数千所学校。


要想学好编程,并不是一件容易的事,需要耐住寂寞、静心学习。兴趣是最好的老师,任何事情只要你保持着热情,你就会获得持久学习的动力。其次要学习一些计算机的基础知识和程序语言基础,很多人自学时都会忽视这方面知识的学习,连什么二进制都没明白,那就没得玩了。再次根据需求选择程序语言,针对一门语言学透学精,你就是专家,千万不要什么都去学,最后什么也没学好。第四要注重实践,在学习过程中要不断上机练习,才能真正提高自己的编程能力。很多时侯是看得懂代码,但让自己设计开发时却啥也不会,这就是实践太少的原因,适当做一些小的程序提高设计能力。


哥不是飞博


作为一名过来人告诉你

本人机械专业,农村人上大学才玩到电脑,大二开始自学编程(因为机械课程内容枯燥,就业一般,饿不死也吃不饱)。

自学编程,首先是突破口,你觉得编程干什么比较有意思。我当时觉得写网站很有意思,而且这方面的视频教程很多,所以坚持了三年。我毕业的时候,已经自学了HTML,CSS,JAVAScript,ASP PHP,注意一定是从简单到复杂,跟着视频一步一步模仿,而且一定是做实际项目而不是整天玩概念或者语法规范,模仿到熟练,你就会有自己的想法,去不断尝试按照自己的意图实现自己想要的功能。最后我基本已经理解了一门编程语言的学习过程,这对我后续的编程很有好处(这是一种自信,就像你英语学到一定水平之后,不会担心跟外国人普通交流有问题。编程也是一样,你不断练习,写到五千行,一万行代码的时候,你就像英语有了足够的词汇量,不怕,不迷茫了)

毕业之后我从事的是工控的程序开发,跟写网站用的完全不一样。从写机器人应用程序,到写机器人控制器算法。用到的是C#,C++和PLC,但是基本编程思路在,换个语言并不困难(大体上都是入门需要一到两个月,熟练半年,精通两年),都是从使用别人到模仿别人,然后有自己的想法,实现自己的想法这么一个过程。总体来说,编程都是靠自学,不会的自己百度,到了一定水平之后再去跟高手交流请教,再提升。你啥也不会去问别人,自己也问不出头脑,人家回你你也不知道行不行。

为什么想自学编程,想转行。这么多行业,为什么想转编程?工资高。为什么编程相对工资高?因为这个行业不吃大锅饭,凭自己本身拿工资。只要够努力,硬件只要一台电脑,能做成什么样全靠自己,不怨天不尤人。如果你也渴望成为更好的自己,而当前的处境又让你无能为力,建议你早点转型,即便失败也不会后悔当初没去尝试。


acetaohai123


这个问题有点广泛了,首先你要确定一门编程语言,确定好一门语言后要坚定,不要别人说另外的语言好就去学别的,因为任何语言都有优点和缺点,这个很重要!而且所有的编程语言都有类通的地方,精通一门语言后第二门语言就容易多了,这里我推荐你学python,因为将来的人工智能会很多作用到这门语言,而且我们经常实现的功能他也可以编写出来,第二,找一个好的学习教程,零基础的教程,怎么找?百度去!有钱就去报学习班!第三,经常自己出动去编写一些小程序,例如电脑定时关机,例如帮自家杂货铺编写一套进存销软件?例如编写一套专门采集美女图片的软件?熟练语言会更快,会更快的形成自己的编程思想。这个很重要! 另外祝你好运



百语杂谈


我就是自学的,我大学读的石油工程,但是没有兴趣。后来学校让考计算机二级,自己先看了一本计算机c语言二级的题库加讲解的书,对编程有了个了解。过了二级以后,就看java,java基础快看完的时候感觉java竞争太大了,计算机专业都在学。我就决定做php了,其实php竞争也很大,大三找了一个实习干了半年就辞职了,因为压力很大。回学校继续学linux和补习php的知识还有计算机其他的基础课。毕业时同学给推荐了一个石油化工专业的工作,我就去干了半年,php忘了很多知识。现在辞职学前端呢,过几天去北京了,先住老乡那,然后一边学习一边找前端的工作。。😂


下班养仓鼠


我就是自学的,我大学没考上计算机系,读的工程类的专业,毕业后自己学的C语言,JavaScript等。我个人认为自学最重要的是兴趣和坚持。学习C语言的时候买了块stm32的板子,照着例子一个一个做,看到自己写的程序能够跑起来,实现各种功能就会觉得很开心,学习语言光靠看书不行,一定要练手。把C语言学好之后,像JavaScript之类就会很容易,随便看看文档,了解下dom,canvas等,我就自己实现了网页版的传奇demo(gameloop.sinaapp.com),这里我还是强调兴趣,我学习编程最初的动力就是想做游戏。从09年开始算起,我到现在接触过的语言有C语言,JavaScript,Java,lua,C#,go等,都是类C的,其他类C语言基本能看懂。

很多自学的人可能语言关没过得了,最终放弃了,我觉得可能学习的方法不对,光看书不动手。或者一些人从C语言入手,C语言语法虽然简单,但要做出像样的东西非一朝一夕之功。如果自学一段时间后C语言还没入门,建议去学习下JavaScript和lua之类的脚本语言,这类语言入门容易,可以做出一些实际的东西出来,对保持信心和兴趣会有帮助。

语言关过了就是环境和生态关,前辈们都说,语言即生态,光学了个C语言语法什么用也没有,我们还要去了解如何调用相关的系统接口,如何自己实现一些简单的数据结构,比如链表,动态数组,哈希表等。到了这个阶段,我们就必须有计划的去看前辈们的源代码。

这个时候我们也要明确自己的发展路线,我们到底是做嵌入式,还是做web,还是做桌面,做web的话是做前端还是做后端?是做应用还是做底层?发展路线定好了,我们就找相关路线上的优秀开源项目源代码来读。我个人选择的是web后端,偏底层,我阅读了nodejs,nginx,openresty等优秀的web服务端代码,并在此基础上做一个一个开源小项目luaio(https://github.com/coordcn/luaio)

读源代码是一个枯燥的过程,有的代码可能需要读10遍以上才能领会,而且我们不能光读,还要在阅读理解的基础上自己去实现源代码的一些功能。如果这个过程坚持下来,慢慢的,语言及语言相关生态就熟悉了,自己就慢慢的能从模仿到独立设计了。

最终我们会融入开源社区,从开源中来,到开源中去,加油!


领地传奇


第一种方法:

看书。买自己想要学习的编程语言相关的书,先从基础开始。边看书,边在电脑上操作。有恒心,有耐力,忍的住寂寞就能学习的很快。

第二种方法:

看网上的视频教程。像百度传课,腾讯课堂,网易云课堂等在线教育平台。跟着教程里的操作,自己也实践操作。

第三种方法:

去培训教育机构,但个人不是很推荐,现在市场上的培训机构都是赚钱为目的的。挑选培训机构一定要留心,再留心。去培训机构的好处是,至少有个活人在教你,还有很多同学,可以交流,有问题还能问老师。不用像看书一样枯燥乏味。

建议:

无论通过哪种方式学习,学习的都是基础知识。在基础阶段,使用编程工具的时候,最好别用带自动补全功能的工具。这样才能记的牢,稳固根基。带自动补全功能的工具,只是在将来运用种提高效率。

我自己学的C语言,php。现在在学python。都是自己看教程,看书学的。只要想学,耐得住性子,基础知识很容易掌握。





风轻云淡978


C语言好难

C语言是大学学习的第一门编程语言,对于编程没有任何概念的人来说确实比较难,听老师讲课甚至于一头雾水,鸡同鸭讲,对牛弹琴。

为什么难,因为编程语言是一种需要不断练习才能发现编程之美的语言,光听不练一辈子也学不会编程。跟着书上例子练习,对指针,结构,变量,函数,排序算法,树,深度优先DFS算法,广度优先BFS算法,动态规划,栈,队列,图,数组,内存,线程等都写写例子demo,然后思考为什么这么写,熟能生巧才能入门。



助攻

学习C语言,个人觉得环境和氛围很重要,如果宿舍6个人5个人在玩游戏,你在学C语言肯定学不好。要去寻找志同道合的同学一起学习,比如去参加ACM或加到实验室跟着师兄们一起做做项目打打杂,从中能学到一二。如果已经工作的小伙伴就在公司内部多请教同事,互相交流,经常泡写技术论坛,项目上自己多深入研究,学好C语言指日可待。



总结

综上所述,想要学好编程,感兴趣肯钻研是第一位,让你去编程如同割肉那建议还是乘早转行,做自己喜欢的事情。

氛围环境是第二位,找一些志同道合的小伙伴一起学习,交流,有时候自己编写的程序在别人看来漏洞百出但你自己还沾沾自喜洋洋得意。

跟着项目并能获得回报是第三位,俗话说有钱能使鬼推磨,如果你的程序能变现,让你获得回报,那会提升你十倍学编程的动力,不逼一逼自己,你永远不知道自己的潜力有多大!


电视鹏


这个公司有点牛!免费教你学编程,还送免费软件和免费培训

牛的公司有哪些?世界500强?中小企业就没有牛的公司了吗?有!

公司存在的意义在于创造价值,不止于为自身的盈利,还要为用户创造价值,可以和客户合作共赢,那就是牛企!

这个公司,免费教用户学编程,还送免费软件和免费培训,帮客户省钱,还能帮用户拓宽业务,它叫乐图软件。

颠覆行业的革新产品

企业信息化是一个必要的发展策略,但在管理软件的个性化定制上,统代码开发会花费大量的开发时间和成本,这让对大多数企业来说都是一个不小的负担。

前金山软件技术团队发现了企业对管理的这些需求,研发了“表格编程技术”,打造了云表企业管理软件开发平台,通过这个平台,企业可以免代码开发属于自己的管理软件。

作为一个开发工具,云表足够易学好上手,它是一个成熟的企业软件开发平台,只需简单的点击拖拽以及中文文本输入就能完成系统的搭建,真正做到了免代码、免编程技术、免数据库知识的企业管理系统开发流程,几乎任何人都可以参与系统开发。

企业管理软件PaaS模式已经在渐渐崛起,但大多数的快速开发平台都是模块搭建的,本质上还是类似于标准软件无法做到更细致的个性化搭建,而云表可以让用户从绘制表格开始自定义,从系统功能到表格单元格的尺寸、文字都可以个性化定制,能满足任何行业、任何企业对个性化管理的需求。

免费软件、免费培训

乐图软件这个公司的建立初衷就是帮企业解决个性化管理的难题,合作共赢,他们很多做法都十分良心。

为了让用户更好地解决自身企业的信息化管理难题,云表常年为用户开设免费培训班,参加过云表的10个课程培训,基本上就能在云表平台上搭建自己的系统了。

而对于小微企业,他们还有特设的成长助力计划,他们会免费提供特工版本的云表平台软件,可以让用户永久使用,帮助了很多企业实现了个性化的管理。

许多对信息化管理要求不高的企业,也都在用云表的免费软件,云表有OpenAPI功能,能对接第三方软硬件,所以还有的企业本身已有其他IT资产,也在用云表搭建系统补足功能。

云表的免费平台和免费培训为许多企业节省了很多信息化的成本,甚至还能为用户创造价值。

用户成为了代理商

学代码要很多年才能成为软件工程师,在云表培训班学会怎么用平台开发软件,只需要几周甚至几天。

有不少用户通过云表开始了“创业之旅”,他们购买了云表的开发平台甚至直接用免费版的开发平台,开发出了各种行业适用的管理软件,成为了云表的代理商,将软件销售给了更多用户。

甚至有代理商用云表开发了一款垂直行业的进销存软件,第一年就有了超过300万的销售额,也有的用户开发了自己企业的管理软件之余,开发了上下游供应链企业适用的软件进行销售,本来是实体企业也做起了软件开发,拓宽了企业的业务。

牛企很多,但云表牛就牛在可以和用户互惠互利,不仅解决企业信息化管理难题,还能让用户学会技术,让用户用技术赢取利润。

实用的软件和培训课程,免费送给你

第二步:关注本号+私信发:云表

按以上操作完成后,系统会自动发送软件给你私信哦,请留言、关注、私信!


优品资源


初学编程建议先参考一些网上教学视频(比如慕课网上的课程),因为口语化的表达更容易被接受,效率会比看书高一些,至于编程语言,一般可以从Visual Basic(见效快,容易获得成就感)和Python(推荐,一门较为现代化的语言,也容易上手)开始学习,然后接触C语言和Java(如果有心于软件开发,你总会用得到这两门语言)。

对编程有大致了解之后,就可以上机实践,实践非常重要,它直接反映着你的执行力,这个阶段越早进行越好,一开始会出错没有关系,这是积累经验的必然过程,接下来就是你的修炼时光了,出错、查错、百度、修改,编程其实就是一个发现问题再解决问题的过程,你一定要学会坚持"问题导向",要有一颗不达目的不罢休的心,当然在这个过程中你还会发现很多新概念、新工具(避免有的杠精说怎么啥啥啥都不提),但这些都不重要,毕竟具体问题具体分析,去学习自己需要的就好,如此反复三四年,再去接触实际的项目(这个提升能力的速度更快),你基本就能成为所谓的程序员了,但如果想成为合格的软件工程师、架构师,则还有很长的路,这要求你掌握更多其他的能力,不过这就是后话了。


Lazarus__


很高兴能回答您这个问题,以下我为大家分享,我个人对这个问题的看法与想法,希望我的分享能给大家带来帮助,也希望大家能够喜欢我的分享。

看到这个问题,作为一个从业15年的IT老兵,个人建议学习编程不用着急马上入手学习编程语言,应从计算机原理开始,由底层上上层,循序渐进,由硬件到软件。虽软所花的时间会长一点,但会学的比较扎实。

计算机原理

首先最好学习下计算机背景知识,包括计算机发展历史,二进制计算原理。总之从科普角度全面的了解计算机的含义。这块的资料很容易在网络上获取。其次学习下计算机的硬件知识,包括CPU,内存,输入输入设备,搞清楚这些设备的用途,有条件的话可以跑跑电脑城,自行配置组装一台计算机,这是有好处的。

学习以上的内容原因在于再高级的计算机语言,都要通过控制硬件来实现。先熟悉硬件,了解计算机的运行机制,才会对软件设计有扎实的理解。

入门编程语言选择

选一门相对“低级”的语言,比如C语言,它其实是一种介于高级语言和低级语言之间的语言,它有控制硬件的能力,可以通过指针直接操作计算机内存。学习好C语言可以让你透彻的理解计算机原理,也会对变量,数组,内存存储等这些基本概念有本质的理解,这些是其他语言所不能带给你的。一般来说,熟练掌握C语言后,学习其他语言会比较容易。另外,C语言得入门书很多,比如谭浩强版本得就比较经典。

习惯的培养

最后,编程要一开始就养成良好的习惯,例如变量命名,书写格式都要有规范。刚开始看似会浪费时间,但习惯养成后,以后就轻松了。此外,要重视架构,架构即设计模式,它本身也是软件工程中的一个重要组成。编写一个程序的时候不能只顾完成功能即可,一定要思考软件能不能分个模块,能不能层次化,方便以后扩展。比如完成一个特定功能有好几种算法,那能不能设计成工厂模式,方便以后扩展算法,这样做,看似代码复杂化了,但是其内涵就要比普通做法提升了很多。所以设计模式其实就是编程思维的一种重要表现形式。

在以上的分享关于这个问题的解答都是个人的意见与建议,我希望我分享的这个问题的解答能够帮助到大家。


分享到:


相關文章: