首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

编程是个啥?

本文是按照我自己的学习和理解为从未接触过编程的小伙伴普及一下目前我了解到的编程最基础的入门概念。希望可以给想了解编程的人一点点基础的认识,引发大家对编程的兴趣。因为我也是刚刚开始尝试入门,因此有错漏之处,还请各位大佬指点。

01

编程是什么

首先,编程是什么呢?顾名思义就是编写程序,那什么是程序呢。专业的解释有程序就是数据结构加算法。没了解过的人可能有点懵逼,先别着急,所有的这些概念,我都会用自己的理解或者类比来解释,类比不一定准确,但是能够帮助大家有一个比较具体的概念,有利于入门阶段理解。首先来说算法是什么,算法可以说是做一件事情或者解决问题的方法,比如泡茶的算法可以是:烧水,洗茶杯,放茶叶,水烧开之后泡茶。当然机智如你可能发现了解决一个问题的算法有多种多样。数据结构就是数据在电脑中的存储调用等的方式(不理解的话可以先略过)。下面我还是用泡茶的例子来解释编程是怎么回事:

02

编程的过程和语言

在计算机发明以后,很多问题可以利用计算机高效的解决。因此我们将生活学习中的各种问题抽象概括出来,总结出固定的方法(算法),然后让计算机做(计算机最擅长做重复无脑的事情了)。因此我们得跟计算机交流,告诉它我们想让它做什么,但计算机也听不懂人话呀,因此只能用机器语言跟它交流。但机器语言太过于繁琐和复杂了,于是就进一步简化为人比较能够好记忆和理解的汇编语言,但汇编语言还是太过于繁琐和抽象了。因此人们就发明了高级语言,高级语言就有多种类型了,比如大家听过的C,C++,Java,Python等。因此编程的过程就是人们把解决一个问题的方法步骤总结出来形成算法,然后用高级语言写出代码,然后由编译器翻译成汇编语言(也有直接用汇编语言的大神),再翻译成机器语言,然后计算机明白了人的意思,就去执行你编写的程序。这里说的编译器呢,可以狭义理解为像VC6.0,VS,codeblock这种开发软件,就是可以写高级语言代码,它自动给翻译成计算机语言。

接着泡茶的例子,解决一个问题光有方法(算法)还不行,就像泡茶光有泡茶步骤还不行,还得有茶叶茶杯,水这些吧,这些东西就可以类比为计算机中的数据。这就是一个程序最基本的构成。

03

编程的用处

编程的主要用处就不用多说了,像电脑上的软件,手机上的软件,包括你现在用的微信,还有游戏等等,如果没有编程,那就不会有这些东西。对于非专业的我们,学习编程有什么用呢。个人认为,第一是学习编程可以让我们更好的理解现在我们所处的世界,每天我们接触到的东西都与它有关,了解一些基础会更好。并且如今人工智能,机器学习,虚拟货币比如比特币这么火,未来还会继续有更多新的类似的东西出来,学习一定的编程基础可以让我们更好的跟上这个时代,拥有更广的视野和更多的机会。第二是编程有助于锻炼我们的思维,包括整合资源的思维,划分系统的思维,推理和计算的思维能力等等。

04

学习编程需要学什么

那学习编程大概需要学些什么呢?那要看你的目的是什么了,如果是专业程序员那要学的东西可就多了,包括软硬件各种原理和各种语言。如果只是感兴趣想要大体了解一下,可以选择一门合适的编程语言,了解一些算法和数据结构,熟悉一种合适的编译环境就可以了。

05

一个最简单的例子

最后,为了让大家有一个比较感性的具体的认识,我用c++编了一个最简单的程序给大家参考。

代码如下:

运行结果为:

06

小结与补充

最后,总结一下,今天介绍了什么是编程,编程的过程和语言,作用和需要学习的东西。过程中有几段其实配图说明更好,但为了使有心的小伙伴能够总结输出一下,比如用思维导图的形式来总结一些,或者用箭头框图的形式来表示一下流程图,我就没有自己作图(真的不是因为我懒)。

目前我还处于尝试编程入门阶段,为了巩固自己学的东西还有给想入门的小伙伴分享一些我的理解,我写了这篇文章,由于水平有限和时间仓促,难免有不足之处,还请各位小伙伴指点。(我真诚的期望反馈)今天这种推文的形式改进也是我亲爱的小伙伴给我的反馈和建议,大家的反馈我会认真对待,希望可以做的越来越好。

或者各位小伙伴想看哪方面的内容,比如读书,学习,心理学,经济学,英语,历史,政治,新闻,旅游,情感(……)等等都可以,我有时候选择不好写哪些方面的内容,如果大家更对哪个方面感兴趣的话可以留言告诉我,我会参考着作出选择。也欢迎大家投稿,我们一起进步,共同成长。

说明

今天是我的生日,我想借此机会说明一下我做这个的初衷和愿景。

其实很早就有写一些东西的想法,不过因为懒以及其他原因一直没有动笔。在过去的一年里我的生活发生了很大的转变,让我不得不开始面对一些比较困难的问题。通过各种方式,我从哪些困难中慢慢走出来了。走出来之后,紧接着面临读研以及未来职业发展方面的选择。放假回家之后,我就在想着未来什么样的状态才是我的理想状态,我怎么能达到那种状态。经过仔细想过才发现,要达到理想的状态,现在这样子下去很难,因此想着要改变。

于是,我就自己想了很多,然后去关注了很多社会现状,发现未来的路或许很难走,看到了很多很多的困难和不确定。这些困难和不确定性一度让我很迷茫和焦虑。我自己就陷入那种状态中好一段时间,后来,我跟其他人交流,把这些东西表达出去,在这个过程中我尝试着放空自己,慢慢静下来思考。然后就像了我之前的文章中提到过的那样,我慢慢走出来,不在迷茫,改掉了一些思维习惯,确定了一些东西。(对此有兴趣的或者有相同问题想跟我交流的可以私聊哈哈)。

这些决定中,包括了我想坚持做一些事情,想来想去就决定写点东西。这样做的好处有提高思维能力、表达能力、加深对输入的理解和掌握、以输出带动输入等。这些我在昨天的朋友圈中也详细说过了。

还有其中可能是最重要的,就是通过做这件事来连接志同道合的小伙伴一起努力,共同成长。我的设想就是鼓励大家也去坚持一件小事,如果跟我们有共同理念或者同样想法的,可以加入我们,大家互相鼓励,互相学习,互相促进,形成一个很好的氛围,大家一起成长。目前已经有一部分小伙伴加入我们了,跟我们一起做一些事情,还有给我们一些反馈的小伙伴,也非常感谢他们,这让我们能够有进步。目前我想着如果有兴趣的小伙伴多了的话,后面可不可以建一个群,大家互相认识一下,分享一些读过的书或者看过的电影或者其他有趣的东西。就像之前读书分享群一样,方便的话也可以开线下读书分享会之类的。总之一群志同道合的年轻人一起应该可以做很多有意义的事情的。而且我觉得这件事本身就挺有意义的,这就是我的初衷和愿景。

我相信无论以前怎么样,以后都会越来越好的。就算道路有时候曲折,但前途一定回事是光明的。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190216G0GWR600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券