新手如何学习编程?

如题所述

学编程入门建议:
1.学编程要从根本出发,从理论上来说,需要广泛的阅读。了解算法的博大精深和计算机的基本理论。
2.从实践上来说,需要有广泛的练习,练习的广泛在于练习不同的内容。然后就是创新精神和数学思维能力,这些都是需要培养的。基础要打好学编程要具备一定的基础。
3.逻辑思维能力的培养、学程序设计要有一定的逻辑思维能力。“思维能力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-05-07

  刚开始学习编程语言,要怎么去做,动手编写一个编译器,学习一下较为底层的编程方式,是一种学习计算机到底是如何工作的非常有效方法。编译器通常被看作是十分复杂的工程。事实上,编写一个产品级的编译器也确实是一个庞大的任务。但是写一个小巧可用的编译器却不是这么困难。

  这个秘密是,首先介绍编程入门教程,找到尽可能小的项目,然后想要的功能加入。这种方法也意味着在他那篇著名的文章中提到的“一个编译器构造的快捷方式”阿卜杜勒阿齐兹Ghuloum说。但是这种方法确实工作。只需要按照第一步操作本文中,可以得到一个真正可用的编译器。当然,它只能被编译的编程语言是非常小的子集,但它确实是一个真正的编译器可用。你可以自由地扩展这个编译器,然后了解更多,更深的了解。
  从某种意义上来说这比写一个scheme的编译器要困难一些(因为必须去解析C那复杂的语法),但是在某些方面又很便利(不需要去处理运行时类型)。要写这样一个编译器,只需要从那个可用的最小的编译器开始。没有变量,没有函数调用,没有额外的依赖,甚至连if语句,循环语句都没有,一切看起来是那么简单。

  踏出了编程入门教程第一步,接下去怎么做就全看自己了。可以按照文章所指导的全部做一遍,然后制作一个更加复杂的编译器。需要去写一个更加精巧的语法树来生成汇编代码。接下去的几步分别是:(1)允许返回任意的值(比如,return3; 一些可执行代码);(2)添加对“非”的支持(比如,return ~1; 一些可执行代码)。每一个额外的特性都可以教你关于C语言的更多知识,编译器到底是怎么执行的,以及世界上其他编写编译器的人是如何想的。这是构建 babyc 的方法。Babyc 现在已经拥有了if语句,循环,变量以及最基础的数据结构。


下面给大家展示一下国内最权威的.net训练营学习路线图:

本回答被网友采纳
第2个回答  2020-10-22

熟悉以下关键东西,可以边学边做,定期训练,经常思考,长期积累:

1、语法。

2、基础理论(数学、数据结构、算法等)。

3、设计方法(编程原则、设计模式、框架设计等)。

4、库(核心、基础、UI、扩展、游戏引擎等)。

5、计算机相关(操作系统、网络、图形学等)。

6、领域知识(游戏设计、网站设计等)。

7、开发工具(编辑器、IDE、自动部署等)。

8、项目管理(进度管理、分工协作、Bug管理、版本控制等)。

最普遍也是最重要的能力:创造力。努力分析并理解好做什么以及怎么做。要知道上面那些东西一开始都是不存在的。

具体方法包括:

1、快速阅读入门教程和书籍,适合学习语言和基础库。比如我学Java读的《Java编程思想》,练习题做过一点,然后学ActionScript就没读过书,只读过Adobe官方文档《ActionScript 3.0编程》。

2、阅读库的文档、实例、源码。比如Flash、Flex开发,熟悉官方API很重要,很多细节要具体使用时才注意到,这时候最好做个笔记,虽然我从没看过我的笔记。

3、做一个自己感兴趣或熟悉的小项目,比如我就以黑白棋游戏作为多个语言的试水项目,一样的逻辑,便于把关注点放在语言特点上。

4、自己动手丰衣足食。厨师有菜谱,程序员可没菜谱。比如我做游戏,最关键的游戏编程知识全部是动手学出来的,很少有专门针对某个业务领域(如游戏)的编程书籍,要么是入门书,要么是模式书(如算法)、理论书(图形学),很少有书籍教你如何开发一个45度角地图系统加编辑器的,全靠自己思考,以及看前人的代码,需要时找些网络资料。关键是,可以培养最重要的创造力。

对于算法和设计模式,可以研读下,但是关键还是靠平时如何使用了。新手勉强不来的。

项目管理方面的,就得靠工作经验了,多思考多提意见不要只走流程。

第3个回答  2023-05-02
首先,入门编程需要一个循序渐进的过程,需要先了解基本的编程语法,从解决基本的数学问题开始,进而展开编程语言的学习。其次,入门编程要构建一个初步的编程思维。所谓的编程思维就是通过编程语言来解决问题的思路和方式,简单的说就是一个抽象的过程。锻炼编程思维一个最为有效的办法就是完成大量的实验,通过对于实验的不断总结从而形成自己的编程思路。所以,学习编程如果有捷径的话,那么就是不停地做实验。最后,入门编程需要有一个完整的知识结构,这个知识结构涉及到操作系统、计算机网络、数据库、算法设计和数据结构,在当前的大数据、云计算时代背景下,还需要掌握大数据和云计算的相关知识,尤其是IaaS和PaaS。这些知识完全可以在学习编程语言的过程中同时学习,这些内容的掌握程度对于编程能力会有较大的影响。最后,目前编程语言比较多,对于基础比较薄弱的初学者来说,可以从Python语言开始学起。推荐教程:北京尚学堂Python400集,内容多并且系统。从入门开始,适合小白上手,有项目,不枯燥。老牌机构讲师,专业并且干货多。在他们的官网上或者B站上都有,可以去看看,评价不错,是我目前看到的最值得推荐的教程。
跟对人,选对书!我是码农阿勇,一个致力于分享编程知识的平台!
编程的话,是一种技能,理论上,和其它技能学习的方式都差不多,以练习为主,但注意的是,编程有个编程思维的东西,你得用这个思维去理解,否则,是入不了门的。练习编程思维这种感觉,就像是武侠小说里面的任督二脉,编程思维会了之后,你就开始真正入门了,它就像你的地基,至于其它语言,都是在上面建房子而以。我记得大一刚入门编程时,全班半期考就一个人及格,就是因为编程思维,大家大脑转不过弯。对了,如果你数学基础好,这里是有加分的,如果基础不好也没关系,慢慢的,一边编程,一边也会提高你的数学能力。现在网络比较发达,资料很多,你可以找几篇编程思维的文章看下,语言不限。选择一门语言我是二十年前上的大学,所以当初的入门语言是C语言,如果你不是科班出身,我觉得就不要选C了,科班会教很多语言,我数了下,当年学了有不下七、八种语言,其实用的不多,有些也淘汰了。你可以选择当下最热的语言进行,个人建议Python,学习Python的话,即使你不是做编程工作,它也可以成为你的助手。当然,如果你对Web开发比较感兴趣,你也可以学习JavaScript。学习的话,可以看书和上网查资料,但对于新手来说,直接看视频是比较好的,基础视频基本是不用钱的,可以上慕课网,搜索些基础视频,一边看视频一边写代码,记住,编程是个工程活,一定要写代码,不写的话,看完就忘。开始一个项目语言学会后,不代表你会编程,你可能会写几行代码,或者一些小工具,但要做项目,是需要掌握一个语言生态体系的,而生态体系,又需要找一个方向。我这边举个Web方向的例子,你想做Web前端开发,你得知道什么是HTML、CSS、JavaScript什么是ES6、7等什么是NPM、Node.js什么是模块化、什么是组件化、什么是函数式编程什么是React、什么是Vue等等当然,这些可以是你做完项目后知道的,也可以是你买本成体系的专业书籍知道的,是的,开始项目后,才开始你的成长之路,这时候,你得开始读书了。如果你不喜欢读书,那真的不适合编程了,编程真正上体现了什么叫做终身学习。如果你没有比较好的项目,我建议,你如果学习JavsScript的Web方向编程,建议你做个Web版本的ToDO试下,一个比较简单,但是可以涉及很多方面的项目,网上也有很多例子,你可以一边做一边学习。如果是Python,我建议你先做爬虫类的项目,自己做个电影站之类的工具,爬取一些数据,试验下。不断的坚持最后就是不断的坚持了,你会碰到很多问题,这些问题,你一定得去Google和StackOverflow,然后经常翻一翻Github上别人的一些代码,基本上就开始成长之路。
先要了解编程是要干什么。编程,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。为了使计算机能够理解人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。对于计算机来说,一切不过都是数字。那我们编写代码的目的其实就是告诉计算机两件事,一是有哪些数,二是该怎么算!因此程序的组成也就是两个部分:数和数的组织方式,即数据结构,和运算的逻辑,即算法。而所有的编程语言就是要把这两个部分的内容表达好。
一个完整的编程语言,一般会包含如下内容:数据的声明与类型、运算符与关键词、3大语句(赋值、选择、循环)、数据结构、方法、类等。其中数据的声明与类型、数据结构是用于表达数和数的组织方式;剩余的除了类以外则是表达运算的逻辑;而类是最特殊的,它既包含数据结构又包含运算逻辑。
有了以上对编程语言的整体了解了以后,就是逐个理解掌握相关的知识点。而这些知识点往往是一个拉一个,理解了一个后面那个也就好理解:一切根源是数。数要分类型->类型,数要存储->变量、常量,数之间有关系->数据结构,数要计算->运算符,数要按照规则计算->3大语句,计算规则要整理出来重复使用->方法,数与方法关系紧密要在一起->类、封装,类与类之间有相似性->继承,继承的各子类有差异->多态,封装、继承、多态搞到一起->面向对象编程我们要把握这些语言知识点之间的这种脉络,知道他们因何而来,又会往哪里去发展,最重要的是知道它们的出现是为了解决什么问题。
在掌握语言的基础上,还要学习如何运用计算机的资源。计算机资源是由各种平台进行封装,以SDK的形式提供的。编程语言是一种表达的能力,而JDK、AndroidSDK等SDK则是资源的使用,也就是表达的内容。我们要分清语言与资源的区别,才能最终运用自如。学习其实就是一个学会分类的过程,知道哪是哪,知道分门别类,找起来才不会找错。
在学习编程时往往会遇到一个难题:计算机专业相关的知识点非常多,看起来又高深莫测的样子。要能够掌握而且快速掌握大量的编程知识,我们要有一个干净利落的切入角度。我们首先要弄清楚一个问题:什么是知识?知识就是解决问题办法的总结。我们接触到的所有知识都是为了解决某个问题才出现的,你知道了那个问题,明白了别人解决问题的思路,这个解决办法也就掌握了。很多同学陷入知识的海洋弄得云里雾里辨不清方向,就是因为不知道这些个知识是干嘛用的,不知道它们是为解决什么问题而出现的。而计算机技术里的很多知识更是这样,为了解决问题而出现,出现就是一大串。你不知道它要解决什么问题,就等着被绕晕吧。所以我们先要把编程中遇到的问题找出来,再理解这个问题是怎么解决的,而这个解决的办法就是所谓的“知识点”。因此要经常发出“灵魂三问”这种学习的方法叫做“面向问题的学习方法”。用这种学习方法,在学习中接触到新知识的时候,马上意识到这是某种问题的解决办法,并且从问题切入,相信很快就能把新知识理解并加以运用。
最后,也最根本的一条,编程的学习是拿来用的,也只有会用才能真正掌握语言,理解编程相关知识。想学编程的话,可以来看看我发布的零基础学编程课程,学起来既简单又很好玩喔。
传统的教室培训有许多好处,但它不适合持续学习的模式或当今IT人员繁忙的日程安排教室学习有时需要提前几个月安排,具体取决于课程可用性和员工的工作重点而且,固定时间的小组培训课程也不太可能是最适合你学习速度的理想之选课程的许多部分甚至可能与你在企业中的特定职业角色无关随着业务和IT需求的快速变化,你是否能够确保在教室培训结束后马上就能用到课堂上学到的知识?你是否需要在不久的将来刷新一些知识,例如在实施和升级之前或是在解决新出现的业务问题时?一次性教室学习的局限性使其非常不适合今天的许多IT专业人士数字化培训正在迅速普及,因为它非常适合时间紧迫的IT人员,能够满足其持续学习的需求它可以让您只在您需要的时候学习您需要的东西,无需参加整个课程或花时间前往异地按照您自己的节奏,根据需要随时暂停和重复分段按照您自己的时间表,根据您的工作日历将培训分成几天或几周数字化学习的越来越显著的优势在于其地点上的灵活性你可以在自己的书桌前、员工培训室或家庭办公室中舒适地学习也许你经常外出,往返于业务地点或客户项目现场?或者在日常通勤中学习?无论在哪里学习,自考总是不建议的,谁试谁哭
我建议你可以选择一门简单的容易入门的语言python。头条上一搜一大把入门视频。可以帮你快速找到编程的乐趣和感觉。最重要的是建立你的自信心。有了兴趣和自信以后,如果还想深入和提高。就可以尝试学习数据结构和算法。头条里也有很多视频教程。这样可以帮你步入专业。之后你可以尝试学习Java或者go。多学一门语言可以让你有不同的体验和认识。之后你可以尝试学习架构知识,阅读DDIA。我正在分享阅读这本书,挑战的是英文版。你可以到我的主页里看看。
想学编程,首先得选一门编程语言,常见的编程语言有:c/c++,擅长性能,但是开发效率低
java,性能略差,但是开发效率较高,基础库非常完善,可用框架非常多。python,性能差,但是开发效率高。常言道,人生苦短,我用Python就是因为这个。js,主要用在前段,后端可以用但是很少。php,主要用在后端。go,主要用在后端,兼顾性能和开发效率。dart,非常有竞争力的编程语言,flutter框架使用的语言,未来跨平台领域大有可为Kotlin,goole力挺的替代java开发androidapp的编程语言。还有很多。根据自己的需求,选择一门,然后学习基础语法,基本用熟练,然后就可以尝试一些简单的项目了,这个时候一定要多阅读别人的代码,学习别人的数据结构的设计,语法的运用之类的,同时也要自己多动手练习。做出来几个简单项目后,你的自信心会大增,兴趣也会更加盎然。接着就可以尝试稍微复杂点的项目,实现自己设想的一些idea了。如果你选择在工作中提升,切记:工作可能会让你失去编程的乐趣。但是,记住,这不是编程发生了变化,而是压力、质疑、辛苦等让它失去了乐趣。希望你能坚持下去,终能拨开云雾,进入新的更高的境界。
PS、AI是UI设计师必不可少的两项技能,对于想要学习UI设计的人来说,首先就是要学会使用PS和AI。如何才能快速学会这两样呢?下面,千锋UI设计培训就给大家分享20天学会UI设计(PS+AI)入门教程。课程介绍本套课程主要讲解了PS的工具使用,介绍了蒙版,通道,滤镜,图层样式和图层混合模式等的基础和应用案例。重点讲解了AI的基础使用方法,并结合AI软件讲解了如何进行品牌形象设计。学完课程可以让你熟练使用PS,掌握人像修图,高级抠图,图像合成,海报制作,轻质感图标制作等。熟练使用AI软件,并能掌握logo设计、名片设计、单页、折页、易拉宝等设计,掌握VIS手册的组成及设计制作。课程目录第1章PS1.初识Adobe2.PS的版本迭代3.PS入门介绍和用途04PS界面及工作区介绍05PS首选项设置06文件的新建与打开07文件的存储和格式08图层的认识09图层的分类及功能10PS软件的基本操作11移动工具的基本使用12图层的对齐13图层的分布对齐14选框工具及选区的加减运算15选框与填色的综合使用16选区的羽化17套索和多边形套索工具18磁性套索工具19魔棒工具的使用20快速选择工具21选择并遮住-细化毛发22抠头发23PS的色彩范围24裁剪工具25透视裁剪工具26切片及切片选择工具27图框工具28画笔工具29画笔面板30定义画笔预设和载入画笔31颜色替换工具32橡皮擦工具33背景橡皮擦34魔术橡皮擦工具35污点修复画笔工具36修复画笔工具37修补工具38内容感知移动工具39红眼工具40仿制图章工具41图案图章工具42历史记录画笔工具43渐变工具44油漆桶工具45钢笔工具的基础使用46形状工具的基础使用47形状工具的应用48布尔运算应用49布尔运算应用250文字工具51字符和段落面板52路径文字53模糊与锐化工具54涂抹工具55加深减淡工具56海绵工具57图层蒙版58剪贴蒙版的应用59蒙版的应用60图层蒙版的应用-加倒影61色相饱和度62色彩平衡63可选颜色64色阶65曲线66通道67通道应用-抠头发68表面模糊滤镜69高斯模糊滤镜70动感模糊滤镜71径向模糊滤镜72扭曲-波纹73扭曲-极坐标74扭曲-球面化75风格化-风76风格化-凸出77液化78液化-瘦脸79高反差保留磨皮80图层样式(一)81图层样式(二)82图层样式(三)83图层样式(四)84图层样式(五)85溶解模式86去亮、去暗型原理解析87去亮型应用案例88去暗型应用89叠加和柔光模式90图层混合模式应用(一)91图层混合模式应用(二)92什么是AI93界面分布和功能介绍94新建文档95打开文件96存储文件97AI的基础操作98填色与描边99矩形工具组100选择工具与直接选择工具101卡通形象绘制102魔棒与套索工具103钢笔工具组104剪刀与刻刀工具105文字工具106直线工具组107画笔工具组108旋转与镜像工具109摩天轮插画制作110形状生成器111形状生成器的应用112形状生成器应用(二)113实时上色工具114实时上色工具的应用115渐变工具116混合工具117混合工具的应用118渐变与混合工具的应用119路径查找器(一)120路径查找器(二)121路径查找器的应用122AI综合应用-MBE风格图标123综合应用-logo图标的制作124综合应用-炫彩字制作125综合应用-2.5D字体126综合应用-偏移路径127综合应用-圆形切图形128综合应用-剪切蒙版制作纹理背景129综合应用-网格工具制作渐变背景130综合应用-符号131综合应用-飞出的粒子132综合应用-流光星球133综合应用-炫彩渐变线条134AI夜景插画-背景打造135AI夜景插画-树木制作136AI夜景插画-树木制作(二)137AI夜景插画-月亮和萤火虫制作138AI夜景插画-麋鹿制作139AI夜景插画-叶子制作140什么是字体141字体设计的重要性与方法142字体的性格143基础造字法144矩形造字法145钢笔造字法146几何元素法147笔画减细法148形象替代法149笔画的简化150了解LOGO设计151LOGO设计创意手法152首字母创意手法153首字母创意手法(二)154具象手法155徽章设计手法156徽章设计手法(二)157名片设计规范158名片设计排版设计159名片设计(一)160名片设计(二)161名片设计(三)162名片设计(四)163什么是DM单页164DM单页制作规范165DM单页页头设计166DM单页排版设计167DM单页页头设计168宣传单页设计(二)169三折页设计规范170三折页设计(一)171折页设计(二)172折页设计(三)173折页设计(四)174易拉宝设计规范175易拉宝设计(一)176易拉宝设计(二)177企业VIS178基础识别系统179应用设计系统
编程是个很广泛的词吧,编程其实是有很多语言的,如果不看语言的话,大致也可以分为前端与后端(注:其实编程不只是前端和后端,但是新手入门的话,建议还是从前后端会比较容易点,之后就会牵扯到框架等复杂的技术)。前端是指Web页面(网站页面)或app等前端界面,后端就是负责实现前端的功能业务,将前端需要的数据返回给前端显示或做出反应。新手编程入门可以从这几点出发:1.知道自己想要做什么编程(前端或后端);2.知道是前端还是后端之后,还要知道想要先从什么语言入手。前端的话,建议可以先从HTML+CSS入手,后端的话,建议可以从C#入手,这只是本人的建议,并不是绝对的;3.知道了自己想从哪个语言入手的话,就可以上官网查看文档,看demo,如果还是不明白的话,就可以上网去搜索该语言的入门视频,现在网络教程都是很详细的;4.编程入门之后就可以尝试去实现下自己想的页面或功能,这会增强自己的信心。编程语言其实是有共通性的,如果你做到后面的话,就会发现学习其它语言就会快很多了,新手入门,不要急,慢慢来,坚持就会有收获的。
刚开始学习编程语言,要怎么去做,动手编写一个编译器,学习一下较为底层的编程方式,是一种学习计算机到底是如何工作的非常有效方法。编译器通常被看作是十分复杂的工程。事实上,编写一个产品级的编译器也确实是一个庞大的任务。但是写一个小巧可用的编译器却不是这么困难。踏出了编程入门教程第一步,接下去怎么做就全看自己了。可以按照文章所指导的全部做一遍,然后制作一个更加复杂的编译器。需要去写一个更加精巧的语法树来生成汇编代码。接下去的几步分别是:(1)允许返回任意的值(比如,return3;一些可执行代码);(2)添加对“非”的支持(比如,return~1;一些可执行代码)。每一个额外的特性都可以教你关于C语言的更多知识,编译器到底是怎么执行的,以及世界上其他编写编译器的人是如何想的。这是构建babyc的方法。Babyc现在已经拥有了if语句,循环,变量以及最基础的数据结构。下面给大家展示一下国内最权威的.net训练营学习路线图:
第4个回答  2020-09-18

现如今科技在飞速发展,而许多计算机专业甚至其他领域都需要专业的编程人员,也就是俗称的“程序猿”。而且只要自己能力够好,程序猿虽然枯燥无味,却是一份薪水很可观的职业。那么该如何学习编程呢?


    通过高校来学习编程

现在许多的高中生就需要考虑自己以后的人生方向,自己想要做什么,如果想做一名程序员的话,就应该提前找好在自己高考能力范围内、而且在自己喜欢的专业教学水平中有拔尖水准的高校去努力,争取考上他,这将是你决定人生的第一步。

当然,仅仅局限于高校里所授知识是不够的,应该多多请教有编程工作经验或者渠道的老师问他们编程的路该如何走比较好。自己要勤加利用休闲之余学习自己所学的编程语言更深层次的一些东西。

    通过报名专业培训机构来学习编程

专业的编程培训机构并不像大学里面还会教教你别的科目,而是一天下来全是有关编程的东西,强化魔鬼训练一段时间(可能几个月也可能至少半年)。

出来之后就仿佛一个瘦骨嶙峋的人服役两年兵出来的感觉一样,就算你之前没有任何底子,只要你认真按老师要求做,你出来就可以找岗位工作了。毕竟专业的培训机构只给你强化训练编程,这和普通高校还是有所不同的。

    自学编程

其实不得不承认有一些智商高的人自学编程也是很简单的事情,这里建议自学编程的人去购买国外编辑出版的编程书籍,国外的编程书籍写的内容水平要比国内的高,这个是不可否认的事实。


学习编程还有最重要的一点,就是你在学习之前要考虑好你自己以后的从业方向,到底是学什么语言自己才能吃得香,自己是做前端还是后端等等,这些都是需要提前考虑的事情,考虑好了才能有明确的方向去学习。

相似回答