急,能不能plc编程软件这样的软件,

中国领先的IT技术网站
51CTO旗下网站
程序员想要通晓多种编程语言可以这样做
归根究底我们为什么要学习新的语言呢?因为没有哪种工具是适用于所有目标的。而我们有着不同的项目,不同的问题,不同的体系结构。也许在启用新的应用程序和选择技术堆栈之前,我们首先应该考虑的是解决实际的业务问题,然后才能选择出最切合实际的最佳工具。
作者:王国峰来源:码农网| 10:21
学习一门新的语言是一种冒险。我总是热衷于尝试新的东西&&学习新的语法,了解不同的模式,乃至彻底改变思维方式。不幸的是,许多开发人员对此不以为然,甚至可能是深恶痛绝的&&学习新语言,就得走出舒适区,花时间花精力来学习新的理念和方法。
这段日子,我每天都要用大约5种不同的语言来写不同的项目!
我应该先学哪种语言?
有关这方面的讨论真可谓数不胜数。很多刚进入编程社区的初学者,都会问这个问题,简直就是前赴后继。有些人建议先学不费力的,如Python和 Ruby,也有的人认为应该先学例如C、C++和GO这类难一些的低层次的内容。我要说的是我们在选择新的语言之前,应该注意以下几个要点。
从我的经验和先前的学习路径看,这是最重要的概念之一。我很庆幸我一开始学的是C,接着尝试了C
++,一段时间之后,我又投入了Java的怀抱。然后是Scala,以及现在我开始玩Ruby。同时,我对Objective-C、Python、甚至是 OCaml也有所涉及。哦,对了,最近我正在捣鼓Swift和CoffeeScript。
如果我一开始学的是JavaScript、Python或Ruby,那么后面去理解什么是类型和变量就会非常困难。理解静态和动态以及弱类型和强类 型系统之间的区别,对于领悟语言的工作原理是至关重要的。我无法想象,如果我一开始不能掌控类型,那么后面涉及到的声明与定义,以及汇编与解释之间的差 异,会是让人多么头大的一件事。
不过,也有很多开发人员希望能有立竿见影的效果:既想快速看到结果,又不愿意过多地了解细节。他们喜欢接轨新的应用程序。最好是不用动脑子的语言, 碰到这样的他们最开心了。因为在他们眼中,掌握
integer、string和boolean是学习编程的超级大障碍。最好能够毋须分辨类、对象和方法,直接写代码:
scala&&println(&Hello&World!&)&Hello&World!&&&&&print&&Hello&World!&&Hello&World!&2.2.1&:001&&&puts&&Hello&World!&&Hello&World!&
不可否认这种途径能够给人信心,让人觉得自己学到了新的东西。
首先,请明确你属于哪种类型,摆正自己的位置。你想要探究隐藏起来的工作原理吗,喜欢深入研究本地执行吗?愿意去理解语言结构吗?又或者你只在乎能有快速的结果,不想了解虚拟机和编译工作,并且语言内部机制对你而言也一点都不重要?
从自己的利益角度考虑
你可能需要处理哪些数据?你打算写复杂的业务系统还是相对简单的CRUD创业公司?请基于可能会让自己感兴趣的内容来确定工作领域。
所以,如果你确定你想要去企业工作,那么你可以试试Java或者.NET。如果你倾向于黑客并高度注重安全问题,那么不妨学习C/C
++或Bash。如果你梦想成为一名Web开发人员,那么先掌握PHP、JavaScript或Ruby吧。如果你想要编写一些机器、机器人、汽车或其他 电子方面的程序&&也行,先学C
++或Python吧。你喜欢捣鼓移动设备?那么Java、Swift或C#就应该是你的首选。如果你喜欢数学和算法,那么Lua、Erlang或R就很 适合你。等等等等,不胜枚举。总之&&一切取决于你的目的和爱好。
语言内部机制
你有组织化的堆栈内存吗?你在程序中传递变量时使用引用类型还是只使用值类型?你是否利用指针和析构函数来控制对象的生命周期?你是自行清理存储器还是使用相关的垃圾收集器?你是否计算和跟踪引用类型和子类?
这些都是我们平时不会关心的问题。但是有时候,它们却是一些你不得不处理的概念,所以理解内部机制很重要。虽然现在你会觉得这些概念很复杂,理解起来很难,因为终有一天,你会庆幸自己现在的选择,有道是,书到用时方恨少,不要到用的时候追悔莫及。
我应该学习哪些语言?
社区&&StackOverflow、Reddit
下面是一些Reddit上面有关于通用编程的内容:
你也点击&或在特定的语言社区中寻求帮助。许多乐于助人的高手就在那里等你。
函数库之所以重要是因为它能让你有效利用现有资源,而不必再&重新发明轮子&。我们通常需要解决特定问题,实现业务规则,处理重要进程,从数组中找 出所需元素,利用给定字符串,过滤特定集合等等。最好语言本身或者第三方函数库能够提供一些可以加快开发进程的实用程序、辅助工具和数据结构。
下面是一些不同语言的社区函数库代码仓库:
Java、Scala、Groovy:
JavaScript:
保持对第三方支持可扩展性、开放性和易于集成等方面的审查。
从创造者/维护人员那儿获得文档和支持
你阅读文档吗?文档是不是易于理解的,全面的,最新的?更新频率如何?有多少维护人员,是否也在社区中?从文档中你能提取多少信息?你能否轻松驾驭不同的部分?
这是一个非常有效的观察报告。只要有创造者提供有助于学习和理解语言的文档,其他的其实无所谓。例如,Ruby就有不少提供文档的网站,如:,。 Scala也有相当不错的API说明书。
语言的创造者对待社区的态度也很重要。他能否像Ruby创始人Matz一样愿意接受和倾听反馈?他是否像Scala之父Martin Odersky一样有着纯粹的经营方针?又或者他是否会像Clojure的发明者一样鼓励社区发展?
资源和实例&&博客、GitHub代码仓库
下面是一些可作为起步指导的好例子:
至于网上教程,下面这些是很不错的门户网站,如:
不妨去看一看。
没错,前面我们谈论了思想、激情,以及一些抽象的概念,但是最后所有这一切都归结到资金,也就是金钱。在选择语言之前最好先搞清楚哪种薪酬/需求相 对比较高。当然,你也可以纯粹是因为好玩而选择它。新事物总在不断地出现和发展,虽然这可以拓宽我们的视野,但学一些有用的东西还是非常重要的。在这种情 况下你有以下两种解决方案:
学习当前市场上最流行/需求量最大的语言/技术/框架。这能确保你不但能找到工作,还能获得优渥的报酬。
按照自己的观点学习。这可能有点难以想象。因为谁也不能打包票说下一个流行的就一定是这种编程语言。试想一下,10年前你要是说Ruby会成为当 前社会的宠儿,谁会相信。还有Scala和GO,没人知道之后,比如说,5年以后它们会发生什么变化。如果你现在选择了它们&&那么,要么你将成为高薪专 家,因为以后会变得非常普及;要么你只是掌握了一种没用的,被淘汰的语言。
点击这里查看市场分析:。
我要不要一次学习多种编程语言?
刚开始&&不要这么做。从长远来看&&是的,你应该学习多种编程语言。
当你刚踏上编程之旅时,你应该只专注于一种语言。你需要掌握所有的概念,全神贯注于学习某个特定区域。
当你已经是一个有一定经验的,那情况就有所不同了。由于你已经知道内部机制和程序的工作原理,这时你需要做的就是学习新的语法和新的范式,因为很多概念在不同语言里面都是相通的。
万事开头难,一旦正确起步之后,就会像滚雪球一样越滚越顺。
那么归根究底我们为什么要学习新的语言呢?因为没有哪种工具是适用于所有目标的。而我们有着不同的项目,不同的问题,不同的体系结构。也许在启用新的应用程序和选择技术堆栈之前,我们首先应该考虑的是解决实际的业务问题,然后才能选择出最切合实际的最佳工具。
不要从工具和兴趣爱好入手。要从问题着手,然后找出解决方案。只有在了解这些的基础上,你才能选出合适的语言,帮助你用最有效的方式实现业务规则。
当然,如果你通晓多种编程语言,那你肯定能更快,更高效。因为你总是可以挑选出完美的工具,用最经济的方式解决问题,并提供最有力的实现。
下面这些是我认为对大家学习初级概念很有帮助的书。
下面这些工具可以用于比较编程语言&&不但包含语法,还包括社会普及程度和社会支持程度。
下列资料展示了学习不同的语言和新架构的方法和原理。
最后,如有不同意见,欢迎指正。【编辑推荐】【责任编辑: TEL:(010)】
大家都在看猜你喜欢
热点热点热点热点热点
24H热文一周话题本月最赞
讲师:5人学习过
讲师:36人学习过
讲师:5人学习过
精选博文论坛热帖下载排行
本书是数据库系统方面的经典教材之一。国际上许多著名大学包括斯坦福大学、耶鲁大学、得克萨斯大学、康奈尔大学、伊利诺伊大学、印度理工学...
订阅51CTO邮刊怎么学习编程_百度知道
怎么学习编程
最初阶段就是看书阶段,多买点入门的书籍看看。等到你看得想动手的时候,就敲几个代码试一试,测试不成功不要紧,遇到什么问题就在网上搜索答案,实在解决不了就取找别人的实例,抄袭源码是允许的。等到逐个解决你能想到的问题的时候,你可以尝试一下做项目,上网接项目或者找身边的人要项目做。做项目就要求比较全面了,不懂得你要及时求助,当天解决,不能拖,因为代码这玩意不好记的。实在走不通的时候你可以去找别人帮你完成。当项目做成功后,你就要尝试攻克各种难题,别人无法解决或者很难解决的问题。比如API接口问题、单片机上机位下机位问题、网站DIV拖拽问题、HTML5+CSS3与IE兼容性问题、游戏脚本与模型导入压缩问题、JQeury文件篡改问题、视频流、语音识别、图形图像识别、跨平台等等需要切实大家解决的问题。
其他类似问题
为您推荐:
提问者采纳
做一个程序员就是要把人类世界的问题用计算机的方法去解决和展现、sql:Visual Basic ,现在比较热门的语言有Java(适用于网络编程。 5、Dlphi等等,如自编资源管理器,不仅仅因为效率,由原来的BASIC发展。亲自动手进行程序设计是创造性思维应用的体现,是用于交流的。如代码的缩进编排,c ;对服务器开发工具如,程序就是计算机的语言和人类语言的翻译者?这个很重要、 面对各种各样的语言,如何学好开发平台上疲于奔命、JSP .网络开发对客户端开发工具如,IT市场需要什么。编程时: 1,不要认为编程很难,语法很简单。因为毕竟世上没有永远不过时的东西嘛,看结果,并且随着时代的发展,找个中等课题。要做到这一点必须在反复的实践,让他把你的意愿翻译给计算机、Power Builder 等,你就学什么,出学者有高中水平就差不多了,因为计算机不能识别高级语言,我就是从它开始的。就像你要将你的意愿告诉计算机,丰富编程实践、Oracle Developer 。 3。 编程是要用计算机能够识别的语言让计算机去运行、结合身边的事,最早的计算机也是为数值计算而设计的,或看别人的程序。如果想做一个合格的程序员,机器只认识0和1,一些语言被改进了(如c语言发展了c++、易用、c语言(尽管很老了。 基础要打好 学编程要具备一定的基础,编制一段程序、找数学题!下面说明一些常用的编程语言。 (3)选择一种合适的入门语言,熟悉算法和基础函数,不要去学你喜欢的,另外,并且与平台无关)、变量命令规则的一致性:Visual Foxpro ,完成一个功能,语言就是具有这个功能的,非计算机专业的学生几乎都要学习它): (1)数学基础 、JAVA,如果想以后搞得大一些,一些语言已经被淘汰了。 (2)逻辑思维能力的培养 、ISAPI 。 6。 (但现在已经过时) 培养好的编程习惯 编程入门不难。编程是很有意思的事情,上机运行,我的感觉是你还是先学习VB吧。等你把这些东西学的有点门路了,应按什么样的顺序学呢。 2、代码的注释等、都是一定要学的,自己仿照着写一遍,写个小程序解决:Java Script 等。良好的编程风格可以使程序结构清晰合理;数据库开发工具有、先照书上的题目写、自己出题目学习编程是一件好事.跨平台开发开发工具如 Java 等,现在很热门。编程风格的好坏很大程度影响程序质量,了解算法的博大精深和计算机的基本理论,自已想办法实现,同样、CGI 等,但入门后不断学习是十分重要的,微软将Java弄成了C#)、ASP ,最重要的是掌握编程思想?程序设计工具不外乎如下几类,翻译可以有好多种,题目的设计是有道理的巩固基础知识,他们的功能确实很好,Delphi也很不错的,可是效率很高,但是美国的一些大学仍然将此语言作为编程的入门课程),就要敢于自己动手去体验。 3。而且可以向多种语言发展,需要广泛的阅读.本地开发应用软件开发的工具有、比较,各人的思维方式不同,先用高级语言编出程序,现在所说的语言多指高级语言。谁都有第一次:PHP ,我的感觉是,也有好多的人在学习,通过交流可不断吸收别人的长处,可是因为种种原因,大学的计算机。 然后就是创新精神和数学思维能力.然后再完善,不要盲乱学习。如果我建议的话。要想成为一名优秀的程序员。 C语言 是一种可移植性和多系统平台的编程语言 JAVA 是一种功能强大可移植性强的开发语言 HTML 是一种超文本标记语言 Java Script 是一种基于客户端的脚本语言 程序语言。 多问多学习 掌握编程思想必须在编程实际工作中去实践和体会,每种语言都有自己的特点,遇到问题要多想几种解决的方案、从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的.从自己熟悉的事情入手,再接触Delphi Java甚至是微软的。 新手学编程要从根本出发 从理论上来说.要知道,看看IT界、VC++ ( C++ Builder ) 等,具体设计时不要拘泥于固定的思维方式、vc++比较好一些,C++,要学好计算机就要有一定的数学基础。选 VB 作为入门的方向对出学者是较为适合的,界面设计是可设化的,需要有广泛的练习。编程是一种融汇贯通的东西.NET的几种语言,练习的广泛在于练习不同的内容,相对来说较为漫长,大多数人在如何学好语言,学会基础到后边就越来越简单了,但是很多高级程序员嘲笑vb为玩具语言。 4,只要明白了大概。 总结 1.NET,现在的计算机语言有好多种.要反复破坏代码,总结之有以下几方面,可移植性很好,如成绩统计、观察。有些问题只有通过实践后才能明白。 2,各有高招,有机结合或仿照,你就要有一个翻译,也不要去费劲脑子想该学什么.把教材中的例子,易学。至于Java或者微软吹嘘的。 从实践上来说、自编写字板之类。以上不同的环境下几种开发工具中 VB 法简单并容易理解,你不可能有太多的时间学这么多多东西,也只有实践才能把老师和书上的知识变成自己的.必须经常反复上机练习,从破坏中寻找代码的规律、NSAPI 。每种语言都有自己的特点,顾名思义就是一种语言、总结中逐渐地积累。因此,任何产品都是有例子的,帮助自己提高水平、VB(即微软的Visual Basic。在此期间要注意养成一些良好的编程习惯,小一点的、Delphi ,到头来你只会敲写代码,我们不必等到什么都完全明白了才去动手实践,“思维能力”的培养要长时间的实践锻炼,你还是从VB或者c语言(也有些人说c++比较好)开始吧、分析。但是作为一个中学生。 7。编程起步阶段要经常自己动手设计程序,练习WINDOWS下的编程、角度各异。因此在学习编程的过程中,也是培养逻辑思维的好方法,这些都是需要培养的、学程序设计要有一定的逻辑思维能力。这就要多交流。 8,高手都是这样成材的,根据你的情况选一种语言进行专业学习,祝学习顺利,所以要再用专门的编译程序将高级语言翻译成计算机可以识别的机器语言,不过之前你得先了解你学习编程的目的是什么,其实它并不难,因为目的决定你的发展方向,还因为平台可移植性好,且使程序代码便于维护。目前对于编程有很多种编程语言以及相对应的开发软件
其他6条回答
不过我同学说那太难我也想学C语言来着,最后连考级都没去,交钱去学了都不怎么样!我倒是觉得Access好不怎么难
C++还可以,不是太难的,它和C差不多,对于初学者来说就是买一些最基本的C语言书都可以,主要是经常的上机,刚开始要了解最基本的语法,比如怎么输出“Hello,World!”这样简单的语句,还有怎么定义变量啊什么的一步一步来,我开始学的时候也有点晕,主要是上学时不经常上机的结果。书的话你可以买C语言程序设计就可以了,主要是基本语句的了解后,在熟悉其他的条件语句,分支语句。学过C一般C++就不用学了,我们都是上完C就直接用 C++了。加油啊,主要是要对编程感兴趣,没有学不会的,要给自己信心,不难的,呵呵。
本人也是从零基础学习编程语言的,现在在一家软件开发公司....起初我学的是java,因为C++嘛在企业级单位很少用到,而java作为面向对象的语言,功能也非常的强大,之前没有领悟到,现在慢慢体会到了,学完java就可以往深里学,学习SSH框架,jsp,学会使用Eclipse等软件开发简单项目,以及服务器Tomcat.....如果确实想学的话我也可以给你提供些资料,PDF文档。想学的话加QQ或者给我留下你的E-mail我发给你几篇文章,回去好好看下。
心急吃不了热豆腐。慢慢来,先学c语言,打好基础,再学c++。我学了一个学期的c语言,貌似学得还不错。要相信:吃得苦中苦,方为人上人
多做练习最好还要多看别人的成功案例,并试着修改,变成自己的逻辑和思想。才能算是消化了、掌握了。
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁学习编程的过程中可能会走哪些弯路,有哪些经验可以参考?
最好能讲一下自己学习这门语言的方法。
按投票排序
130 个回答
回头看学生时代,最大的弯路就是怕走弯路、想不走弯路。纠结该学什么语言、该研究哪个方向、该做项目还是啃算法,生怕一失足成千古恨,踏上一条不归路。很久之后才发现,与其纠结选择,不如找个点坚持下去。好比爬山,你在山脚下纠结该从哪条路上去,而实际上,每一条都能通往山顶,每一条都不会是笔直平坦的。你怕错过另一条路的风景踟蹰不前,却不知道只要登上山顶就可以一览众山小。如果一定要说个经验教诲,那就是尽可能多地写代码、读源码、读文档。有两个词,一个叫做功不唐捐,一个叫做殊途同归。
“走弯路也是累积经验的过程” —— 不能赞同更多。但是从题主问这个问题来看,应该是抱有快速学习和成长的愿望,这个时候就不仅仅要考虑长远的成长和经验积累了,我相信题主更在乎的是性价比——我付出的学习成本是否能较快的看到回报。这个时候,确实是应该正视学习方法,避免少走弯路。举个例子,我们团队是偏底层JAVA中间件,但免不了也要做一些web页面、前端程序,来展示数据、做后台管控。团队里都是算法好手、分布式精英,然而面对javascript、css时却步履维艰,margin、padding调的一头雾水,稍微难一点的交互、拖动功能就捉襟见肘。此时可以很明显的看到团队里的同学有两种人,一种会各种google、百度,搜到demo,照葫芦画瓢,写出丑陋的代码完成任务交差;另一种会去买一本《Javascript权威指南》猛啃几个月,成为一代js大师。这两种人,哪种走了弯路?长期来看,一代js大师肯定功德圆满,简历上可以自信的加上精通js一栏;而应付交差的同学则无甚亮点。但是短期来看,应付交差的同学快速完成了前端任务,把时间和精力都投入到中间件最精髓的分布式、高并发、性能优化上,对自身、对团队都提供了巨大的价值;而一代js大师这段啃书时间则耽误了他在项目上的贡献。我大学的时候Spring正火的无法无天,按耐不住买了一本《J2EE without EJB》砖头宝典,啃的不亦乐乎,但现在已经记不起书里的任何内容。最终让我真正理解IOC、DI精髓的,还是在后来的一次J2ME小项目,当我new出几十个角色对象、把它们在各自的构造函数里传来传去、自己都理不清对象之间的依赖关系时,我才发现我需要的是Spring的理念。这段小经历,对后来各种工作都受益匪浅。我抽象能力有限,没法总结出一套少走弯路的方法论,但我可以举出几个“走捷径”的例子,以供参考:大二的时候做公交车线路查询软件,我有限的程序思维在遇到会出现环路的公交线路算法时完全崩塌,再也没有信心能凭着自己的能力做出这个软件。直到后来一门让人厌恶的离散数学课上,我无意翻到了图论的那一章……结果就是我不仅完成了半年前的这个软件,而且还得到了大学四年唯一的一门90分。大三的时候做手机客户端,解决少数民族的文字输入法,当用户提出手写识别的需求时,一直在堆砌代码的我束手无策,直到在图书馆无意翻到一本神经网络的书的第九章——有监督的hebb学习……迄今为止,没有读研的我,依然还能拿神经网络的知识去面试刚毕业的硕士同学。在IBM实习的时候,SOA火遍全世界,想学都不知道这是个啥玩意儿,打开几份IBM的SOA教学文档,把人看的三观尽毁、自我否认的情绪弥漫良久。直到进入支付宝,在测试环境想要测一个中游系统的功能时,各种在上游系统找入口、在下游系统找输出,才真正理解SOA是个什么玩意儿。类似的事例很多很多,如果说学习真的有捷径,那我能想到的就是目标性很强的——实践出真知。最近在学习erlang,我的学习方法很简单1 找到一个对自己项目可能有益的应用场景(比如快速文件传输)2 按网上教程手把手搭建环境3 抄一段client-server交互的代码、一段文件I/O有关的代码4 修改+尝试+google这么浮躁的年代,确实没有心思去啃砖头书了。各位原谅我的急功近利……
花很多时间比较语言的优劣。有这些时间两门语言都入门啦。怕吃亏是学习的一个大忌。工业语言和新型现代语言都值得学习。
转发近2000的编程心得:一个编程新手的自我修养原文标题:我多么希望我学编程时,有人教会我这些事。原文地址:原文作者:Cecily Carver搬砖及翻译:米洛这篇文章在Medium上人气很旺。转发量和评论数都爆表。原作者回顾了自己漫长的编程学习之路,从中总结了许多个人经历,走的弯路,和教训。我翻译了这篇长文中的大部分内容,希望能帮到题主及所有关注这个问题的朋友们:1. 在学习编程之前,想清楚自己到底想写什么程序。学习编程基本就是在学习建造东西。如果你知道你到底想造什么,你的编程学习之路将会豁然开朗。如果你的目标只是“学习如何编程”,却不知道自己到底想写出什么样的程序,也不知道这些程序将如何让你的生活变得更美好,你很有可能会感到编程学习令你沮丧,受挫。说起来还有点丢脸,我最早想学习编程,是因为我想证明我聪明。并且,我也想做一份属于聪明人的工作。我还喜欢思考数学及理论。因此,编程怎么看都和我很搭。但是这些想法都不足以延续我的编程学习热情。直到有一天,当我终于发现如何将科技(编程)与我的真爱---音乐和文学---联系在一起时,我才真正爱上编程。那么,你到底想用编程来干嘛呢?网站?游戏?iPhone应用?一个让你暴富的初创公司?交互式艺术作品?你是想让你的老板对你刮目相看,还是想写个程序让电脑帮你完成一个枯燥的任务,以让你能花更多的时间看水獭的萌照?也可能你只是想在职场中更具竞争力,为你的简历加一个潮词(编程),或者满足你学校的毕业要求。这些都是有价值的目标。你需要搞清楚自己的目标,然后有针对性地学习。2. 编程一点也不神秘,一点也不难。编程和其他技能没有本质差别。就像语言学习里有语法和单词;就像数学里有不同的步骤和不同的题目;就像所有的技艺和手艺,编程里也有前人总结的针对不同任务的技巧,工具,和好的习惯。这些东西,你都可以自由使用,修改,或者弃用。有个人曾这样断定,程序大牛和编程界的芸芸众生之间有一个明显的区别---后者往往缺乏足够的智慧在编程界获得真正的成功。在这个人看来,这种智慧包含对指针 (pointers) 和递归 (recursion) 的理解。我在学校曾学过指针和递归。在学生时代,能理解指针和递归的感觉真心超级爽。这种快感激发我踏上了计算机学习之路。但在课堂练习之外,我极少有需要去碰这两个概念。并且,当我在教别人如何学习编程时,我也一次又一次地发现,人们不用这两个概念也能写出很有趣,很赞的程序。所以,不要害怕,也不要去想自己是否足够聪明。想这些都没意义。是的,编程任务越复杂,越难懂,你就需要越高超的技巧才能完成。但哪个领域不是如此呢?除非你这辈子就靠编程讨生活了,否则你不太可能需要去理解编程中的递归。3. 没人能一次搞定当你第一次学习编程时,你会很快撞上这么个问题。你觉得你已配置好一切了,你查了又查,但你的代码就是有!问!题!你对如何排错毫无头绪。错误信息(如果运气好你有的话)很有可能对你说的是---“我了个大艹”。这个时候,你很有可能想要放弃。你觉得你永远不可能搞定,觉得自己就不是编程的料。嘿!当我第一次尝试编写C++程序,运行,却只得到 “segmentation fault” 这样的错误代码时,我也有过一样的沮丧感。但是这种经历对任何一个水准的程序员而言,都再正常不过了。有过这种经历,并不代表你的智商,技术悟性,或你和编程的适合度有任何问题。不管你是编程新兵,还是程序大牛,你都会遇到这样的经历。而新兵和大牛的区别就在于如何对待这样的经历。新兵和大牛的一大区别就是信念。什么信念呢?就是深信出错的原因是符合逻辑的,并可以找到的,深信问题可以被解决,深信总有办法实现自己的目标。从0到1之路也许并不明显,但只要你有耐心,你通常都可以找到。4. 总有人说你做的不对。大括号{}应该怎么放放?该不该不用tab来缩进?该不该对代码添加注释?对于这些问题,大家的做法各有不同。没有谁有标准答案。很多程序员热衷推销自己的偏好的那种处理方式,但这不意味着答案只有一个。事实上,与那些说我做的不对的人面对面,然后再努力去搞懂他们说的到底是不是对的,这种来来回回,是我职业生涯的压力源之一。如果你与一个团队的其他成员一起写码,总会有人不认同你的某些行为。有时他们是对的,但事实上你到底是!对!是!错!永远值得你亲自去推敲。有时他们纯粹就是无理取闹,你别理他们就好了。5. 总有人会说你不是一个真正的程序员看看这些说法吧!“HTML不是真正的编程语言。” “如果你不用vi,你就不是真正的程序员。” “真正的程序员得懂C语言。” “有些人就是不适合编程。” “有些人就是学不会。” “你根本就不是真正的程序员,我才是。” 要我说,编程对于不同的人有不同的含义。同时,编程的含义随着时间的流逝也在变化。有趣的是,那些能让初学者,甚至是编程老鸟,更快上手,更省事的工具,包,框架等往往会被贴上 “真正的程序员不该使用” 这样的标签。这种贴标签行为背后是一种恐惧:如果任何人都能称自己为程序员,那这个头衔就将毫无意义。不过,我认为这种闭关自守的行为是有害的。去用那些让写程序变得容易的工具吧。如果那意味着你用 Stencyl 或者 GameMaker 来写游戏,而不是从零开始写一个新的,没事,只管去做。如果你第一次尝试编程是从HTML或者Excel宏开始,没事,只管去做。哪个(编程方式)你能坚持下去,你就用哪个。随着你技术不断提升,你就会发现那些便利工具对你的限制大于对你的帮助。那时,你就会去寻找更强大的编程工具。但大多数时候,很少有人会看你的代码,或者问你用什么编程工具。你的程序到底好不好用才是真正重要的。6. 坚持比方法更重要。关于 “正确编程学习法” 和 “最佳编程学习法” 的文章有很多。的确,学习编程的方法有很多。你可以看书来学,你可以做练习来学,你可以给别人的程序捉虫来学。当然了,也有很多种编程语言你可以挑选来作为你的第一门语言。自学型的编程课程或者讲座系列常常有个问题:一开始你总会学得很爽,但难度会陡然上升。print命令总是很简单,但要真正搞定一个实用程序的编写,往往让人抓狂。你很有可能觉得跟着教程走却并没搞懂,然后你就开始抱怨教程有问题。当你撞上这个 “编程玻璃顶” 时,那些教程和线上资源对你的意义已经不大了,因为他们默认你已经是一个编程好手了。更让整个编程学习进阶之路变难的因素是,你根本不知道自己缺什么 (you don’t know what you don’t know) 。甚至,搞清楚自己接下来需要什么都成了难题。 不管上什么编程课,你都会有这么一段 “撞墙期” 。唯一的解决办法就是坚持到底。这意味着你要不断尝试新事物,学习新知识,不断地,一步步地,去解决问题,去编出你要的程序。如果你这时认真回看自己的编程初心,你就更有可能获得成功。坚持到底,就会胜利。这就是我之前提到的信念的价值所在。如果你真的坚持到底,你就真的会胜利。原作者推荐了这本书:原作者推荐了这个博客:本次搬砖及翻译到此结束。由于时间仓促,难免会有一些差错。大家如找出翻译有误之处,烦请私信告诉我。十分感谢!另外,祝大家周末愉快。
不要浪费时间把vim配置成IDE,最终我还是用Eclipse写代码……
尽管我觉得我从知识的掌握上是走了很多弯路,但是这些弯路都培养了我的debug能力和独立思考的能力,我觉得都是值得的。
最大的弯路就是“因为怕走弯路而连试都不试一下”。
我的弯路就是不够努力。。。其实都不难,只要努力,用心,都能学会成为高手
大忌就是不肯学新东西。时刻记住“选择最适合任务的语言,而非最熟悉的语言”这句话,往往能事半功倍。
别纠结于选择,重要的是坚持.
已有帐号?
无法登录?
社交帐号登录

我要回帖

更多关于 plc编程软件 的文章

 

随机推荐