编程新手从什么开始学好?

新手编程到底从什么开始学好呢? 一般有三种选择,Java, C, C++这是目前主流的3种开发语言。

按学习时间长短分Java学习时间最短易上手,C次之,C++学习需要的时间最长。

由于本人没有学习过Java,所有对它不是很了解,能看懂会修改,但写工程有难度。但是你要快速入门,快速找到工作,学习Java吧。

如果你是在校学生,或者是立志在编程上有建树请学习C,C++(没有诽谤Java的意思)

个人观点建议从C开始,这个是有它的特点决定的。

C的特点

1、 是一种结构化语言。层次清晰,便于按模块化方式组织程序,易于调试和维护。

2、 C语言的表现能力和处理能力极强。不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,它还可以直接访问内存的物理地址,进行位级别的操作。

3、由于C语言实现对硬件的编程操作,所以既可用于系统软件的开发,也适合于应用软件的开发。C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类计算机上,从而形成了多种版本的C语言。

4、由于C语言允许直接对位、字节和地址进行操作,能实现汇编语言的大部分功能。

5、目标代码质量高,程序执行效率高。

总体上来说,C语言的优点是简洁、紧凑、使用方便、灵活、易于学习和应用。仅有32个关键字。9种控制语句,程序的书写形式也很自由。

理由:简单易学,高效,可移植性高。

C++ 是C的plus版是C语言的超集。

1 、它既保持了C语言的简洁、高效和接近汇编语言等特点,又克服了C语言的缺点,C++比C语言更安全。

2、支持面向对象程序设计的特征。C++既支持面向过程的程序设计,又支持面向对象的程序设计。

3、C++程序在可重用性、可扩充性、可维护性和可靠性等方面都较C语言得到了提高,使其更适合开发大中型的系统软件和应用程序。

4、C++设计成直接的和广泛的支援多种程序设计风格(程序化程序设计、资料抽象化、面向对象程序设计、泛型程序设计)。

总体上看C++出具有C语言的特点,更具有一些高级功能。但是学习起来肯定是比C有难度,特别是一些面向对象,继承,重用性等高阶功能(模板,STL)。

对比以上三种基础类语言,根据自己的情况来决定从那个开始吧。条条大路通罗马。

大家如果对编程感兴趣,想了解更多的编程知识,解决编程问题,我们这里有java高手,C++/C高手,windows/Linux高手,android/ios高手,请大家关注我的微信公众号:coder_online

学习编程应该如何入门?

可以从自己感兴趣的领域入手,从基础到进阶学习相关的编程语言,逐步实践做项目。

  • Python——一种很好的入门语言,用于web应用程序、游戏领域、人工智能和大数据
  • Java——用于无数种程序中,从游戏到web应用程序再到ATM软件
  • HTML——任何web开发人员的基本起点
  • C语言——是一种较古老的语言,C仍然是一个强大的工具,是C++、Objtovi-C的基础
  1. 看书、看博客、学课程或者看视频等
  2. 模仿着书上或者博客的代码,进行复现,复现不重要,思考才是关键 ️
  3. 思考学习别人思路后,脱离书本和博客,完全自己实现功能
  4. 自己实现一些 DEMO,看别人项目代码,与别人讨论,提升代码能力
  5. 在别人的框架和要求下,写代码实现业务
  6. 自己负责别人设计的模块的实现
  7. 独立设计业务模块并开发实现
  8. 负责大项目框架设计和拆分,带领别人进行开发
  9. 其他高阶的架构和管理工作,已经不仅仅是代码能力了

在学习任何一门编程语言之前,你需要先设置编写代码的环境,无论是在线的还是下载的免费版本,你都需要通过自己的实践去检验书上的每一个概念。

阅读和理解是不一样的,实际上尝试自己写代码、运行它,会更有利于学习过程。

不管用什么语言编程,官方文档永远是学习最好的选择,最新最详细的代码说明都在官方文档里。

Python也是这样,虽然市场上的教程多如牛毛,但官方文档必须要看的。

现在既有英文也有中文版,非常方便。

https://docs.python.org/zh-cn/3/

读论文的时候会附带代码,或者去github这样的网站也有很多开源项目,大家可以找想要的方向或者感兴趣的代码看。

  • github:https://github.com
  • codeforge:http://www.codeforge.cn
  • codesoso:http://search.codesoso.com
  • 开源中国:https://www.oschina.net/

——— 看哪些书?

  • 《重构》: https://book.douban.com/subject/30468597/
  • 《Clean Code》: https://book.douban.com/subject/4199741/
  • 《代码大全》: https://book.douban.com/subject/1477390/
  • 《编写可读代码的艺术》: https://book.douban.com/subject/10797189/
  • write-readable-code: https://github.com/biezhi/write-readable-code
  • 《Effective java 》: https://book.douban.com/subject/3360807/
  • 《 The Clean Coder》: https://book.douban.com/subject/26919457/
  • 《架构整洁之道》: https://book.douban.com/subject/30333919/
  • 《人月神话》: https://book.douban.com/subject/1102259/
  • 《领域驱动设计:软件核心复杂性应对之道》: https://book.douban.com/subject/5344973/
  • 《代码的未来》: https://book.douban.com/subject/24536403/
  • 《深入浅出设计模式》: https://book.douban.com/subject/1488876/
  • 《软件架构设计:大型网站技术架构与业务架构融合之道》: https://book.douban.com/subject/30443578/
  • 《微服务架构设计模式》: https://book.douban.com/subject/33425123/

兴趣是最好的老师,学习过程中的“正向”兴趣循环对于坚持学习至关重要。强烈的兴趣与不断获得的成就感是整个学习过程的“引擎”,它可以为你的整个学习任务提供强大动力。

之所以很多人觉得编程难,也是因为没有找到兴趣或者适合自己的学习方法。

另外在我们此前接受的应试教育中,都是一套清晰的标准,因此我们看重的是追求标准答案。而编程需要我们形成系统的学习方法,在面对实际问题的时候,需要一套行之有效的方法论支撑其解决问题。

而编程的核心,不是编程,不是语法,也不是算法或数据结构本身,而是如何分解问题——利用规律建立解决问题的模型。

gitHub:https://github.com/

gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名gitHub。gitHub上面有很多资源,很多开发者都会在上面找各种各样的开源项目来学习,可以从中获取到不同的知识、内容、信息。阿里、腾讯、字节跳动、美团、Google、Micosoft等国内外大厂都有自己的Github开源库。

Stack Overflow:https://stackoverflow.com/

这是全球最大的程序员问答网站,拥有非常多高质量的问答。如果大家在开发过程中遇到bug了,可以去上去搜一下,只要搜索的方式对,99%的问题都能搜到答案。

segmentfault:https://segmentfault.com/

号称中国的Stack Overflow,很强的IT专业技术问答网站,不懂得编程问题随便问,很多牛人解答的,可以闲逛,对技术积累很有用。

博客园:https://www.cnblogs.com/

博客园是一个面向开发者的知识分享社区,也是非常老牌的技术社区。博客园一直致力并专注于为开发者打造一个纯净的技术交流社区,推动并帮助开发者通过互联网分享知识。

开源中国:https://www.oschina.net/

开源中国是目前比较受欢迎的中文开源技术社区,致力于传播开源的理念,推广开源项目,为IT开发者提供了一个发现、使用、并交流开源技术的平台。

  • Github:https://github.com/这不是一个专门的刷题网站,而是代码托管平台,里面有数百万个Python项目,其中不乏优秀的Python学习类资源。
  • 力扣:https://leetcode-cn.com/Leetcode是一个专业的刷题网站,上面有很大大厂面试的真题,当然大家可以根据类别去刷题。
  • 牛客网:https://www.nowcoder.com/牛客网提供相当多企业面试题库,主要面向编程、管理、营销等各行各业的面式题,内容丰富。
  • 和鲸社区:https://www.heywhale.com/home一个数据科学社区,其中以Python环境为主,主要是提供了各式各样的数据科学项目,大家可以进行代码项目练习。
  • 趣IT:https://www.funit.cn/互联网求职刷题神器,大厂真题、专项练习、面试讨论社区等等可以针对不同阶段学习的小伙伴求职、自测能力使用。

如何开始学编程

  

        当然学习编程之前必须有个预备操啊,上学时代我们学习之前就必须做早操啊,做完才可以去学习,编程也不例外,虽然我挺不喜欢早操,那也没办法,谁叫你是学生,是学生就必须去做预备工作。

        预备工作:工具:一台电脑(这不是废话吗?),一本关于c语言教程的书(本人推荐C  Primer Plus 第五版)

        操作流程:第一步~启动电源,第二步~开机(怀疑小编是不是哪根线搭错了),第三步~下载一个非常有用的软件,小编就是使用visual stido2013这个强大到屌炸天的编译器,会带给你全新的体验。

        有了编译器还不够,虽然强大,也不足以让你可以自己无师自通,不用学习就可以操作的吧,如果是的话,那么快点做我师傅吧,太牛了你,你就是百年难遇的彗星,那么耀眼,话说回来彗星我连见都没见过。

        这时候你就需要一本c语言的书来帮助你学习,小编觉得书才是学习的真正意义上使得你明白透彻。

        有了书籍就会有相应的习题给你去做,如果你单单在书上写,那我可以告诉你你真的是又傻又天真啊。编程最忌讳的就是不敲代码而是写代码,如果你在这个编译器去操作,了解一些环境让自己的代码可以适应这个环境,不然的话,你就好像又回到了解放前啊,回到了那个黑暗的时代,那是上学读书的死记硬背死读书的时代啊。

        你也知道编程本来就是一个枯燥乏味的事情,如果只是一个人去学习,没有互动,没有朋友的监督,没有朋友的支持,一路下来都是自己去学的话,那么我可以很负责任的告诉你,你别这样下去了,这样真的会给自己逼疯,你可以尝试在qq社交工具认识自己志同道合的朋友,一起奋斗,一起努力,一起敲代码,一起抱怨,一起开心。总之朋友才是学习的动力,也是学习维持的润滑油。

        如果你具备了以上几点,那么恭喜你,你可以去学习了,去探索自己的一番新天地,别再生活在压抑的世界,因为这是你,你就必须好好珍惜自己。

本文属原创,拒绝转载,谢谢!

如果对编程感兴趣,想了解更多的编程知识,解决编程问题,以及入门指导,帮你解决编程中遇到的困惑,我们这里有java高手,C++/C高 手,windows/Linux高手,android/ios高手,请大家关注微信公众号:程序员互动联盟或者coder_online

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。