什么开发?什么是编程语言?你能学吗?你能做吗?--It’s not a joke!

  大家经常会听到说,谁谁谁是做IT的,开发件的,开发网站的,那什么是软件呢?什么又是网站呢?软件就是我们经常会用的一些app,一些应用程序,比如安装在我们电脑上的qq,微信,office办公软件Excel、word,看视频的暴风影音,下载视频的迅雷,看网站的浏览器等等都是软件,在比如我们手机上安装的抖音、qq、微信、陌陌、京东app、优酷视频app等等,也都是软件,而我们通过浏览器,比如IE浏览器,chrome浏览器,360浏览器等等来搜索某个网站,比如你搜索京东、淘宝等,你搜到京东,点开京东,你就看到了京东的网站,搜索其他的网站就看到了其他的网站,而你看到的网站什么样子的都有,做什么事情的也都有,比如京东就是卖东西的,百度就是用来帮你搜索到这些网站的,其实百度本身也是一个网站。那么这就是我们经常听到的软件和网站的意思。

  那么这些软件和网站用什么开发的,用的编程语言,现在比较火的编程语言有python、go、java、c、c++等等,所谓的程序员,就是会用这些语言来开发软件或者网站,那么这些编程语言到底又是什么呢?想弄明白这么问题,那首先你要明白,编程语言其实就是个语言,那什么是语言呢?英语、汉语、德语、法语、日语是不是语言,当然是了,是人与人之间沟通的介质,是说出来一些话,别人能听的懂,能够按照你说的语言做出相应的反应,比如,你说‘老铁,吃饭去吧?’,你的老铁听懂了你的意思,然后回上一句:‘走,吃饭去!’,他听到你的语言,然后经过大脑的处理,做出了对应的动作。而我们说的编程语言实际上就是要告诉电脑的话,让电脑经过加工处理之后,做出相应的你想让它做的事情。

  那么有人要问题了,我为什么要和计算机沟通,因为计算机就相当于你的奴隶,在早期时代,奴隶主让奴隶帮他做事情,而现在计算机就是人的奴隶,让它帮你做事情,程序员编程的本质就是让计算机去工作,而编程语言就是程序员与计算机沟通的介质。程序员要想让计算机工作,必须知道计算机能干什么,怎么干的,这也就是我们必须学习计算机基础的原因。计算机又叫做什么呢,叫做电脑,人理解语言靠的人脑,而计算机靠电信号的处理来理解程序员的编程语言,所以叫做电脑。而编程要做的就是写一堆电脑能够认识的语言,然后交给电脑去执行你想让它做的事情。比如说qq的一段语言程序,就是能够在使用qq的人的电脑上弹出一个聊天窗口,并且使用qq的人可以在这个聊天窗口来输入文字,这就是qq的那些程序中的,来告诉电脑要做的事情,那么使用qq的人就能够和别人打字聊天了。

  那么计算机能干什么呢?想知道这个问题,首先去看看计算机硬件基础知识,在下面的博客里面,你需要知道的主要有三大件,CPU、内存、硬盘。CPU是计算机的大脑,内存类似于人的记忆,临时保存信息,因为信息只要断电就丢失了,但是存取数据快(对电脑来说一切命令皆数据),而硬盘类似于人的笔记本,能够永久保存信息。CPU的运算速度最快,内存存储数据的速度比较快,但是没有CPU快,而硬盘是这三大件中最慢的,保存和提取数据速度最慢,而你写的程序代码(一堆语言),首先都是保存在硬盘里面的,当你去运行你的程序的时候,比如打开qq,运行qq,实际上是将硬盘上保存qq的那些代码(开发人员写的qq程序的那些编程语言,这也是为什么我们安装某个软件之后,会有很多的相关文件和文件夹生成到你的电脑上,那都是保存这个qq软件的程序语言文件)提取到内存中,然后靠一个叫做操作系统的老鸨子(你一般会在电脑上运行很多的程序,qq、微信、迅雷等,那么这些程序都加载到了内存中,而操作系统就是用来将内存中的程序有序的交给CPU来执行,比如我们的win10系统、win7系统、还有后面要学的linux系统,苹果电脑的mac系统等),来调用CPU去执行已经加载到内存中的应用程序,然后你的应用程序得到CPU的处理之后,就能够看到qq运行起来了,可以正常的收发消息了。为什么先加载到内存才能交给CPU来执行呢,因为硬盘的速度慢,CPU直接执行硬盘上的程序,会非常浪费CPU,CPU的时间都用来等待硬盘读取程序数据的操作了,从硬盘读取数据是不使用CPU的,所以用一个比较快的介质(内存)来做一个中间人,缓冲一下两者的速度。

  计算机硬件基础博客在这里啦,大家可以去简单学习一下,里面很多的名词,但是现阶段不需要完全掌握,简单了解一下就可以了。知道了计算机硬件基础,可以接着看看下面的内容 

  光有编程语言和硬件也并不能满足大家开发程序的需求,为什么这么说呢?

  程序用编程语言写程序,最终开发出的结果就是一个软件,既然是软件,那就与腾讯qq、暴风影音、快播等软件没有区别了。这些软件必须运行在操作系统之上,你肯定会问:为何要有操作系统呢?没错,远古时代的程序员确实是在没有操作系统的环境下,用编程语言之间操作硬件来编程的,你可能觉得这没有问题,但其实问题是相当严重的,因为此时你必须掌握如何操作硬件的所有具体细节,比如如何具体操作硬盘(现在你得把硬盘拆开,然后你能看见的所有的东西,你都得研究明白,因为你编程时要用到它),这就严重影响了开发的效率,操作系统的出现就是运行于硬件之上,来控制硬件的,我们开发时,只需要调用操作系统为我们提供的简单而优雅的接口就可以了

  所以一套完整的计算机系统分为:计算机硬件,操作系统,应用软件。因而我们的编程之路分为计算机硬件基础,操作系统基础,和开发语言编程三部分。其中加算计硬件基础在上面的博客中大家有了一些简单的了解,而操作系统其他基础的知识,我全部都放到开发语言的博客中了,因为学到编程语言的某个位置的时候再引出操作系统,你会更容易理解,那么第三项开发语言编程就是用来写应用软件的。我的博客主要就是针对开发语言学习的,其他的内容我会陆续的更新,欢迎大家来学习,只要你能够坚持学习,你一定能够学的明白,不需要考虑说,Jaden,我的智商不够啊,我说句不太好听的,你知道智商没有太低太低。。你肯定能够学的会!相信我!你是不是在笑啊,我可以想象到你看到这里的时候的表情,收起你猥琐和不屑表情吧,哈哈,专心学习,学会是主要的,其他都是次要的。那么有人问Jaden,学完能从事这方面的工作吗,那么我都会回问一句,你相信我吗?如果你相信,我告诉你,肯定可以从事这方面的工作! It‘s not a joke!!!

  

猜你喜欢

转载自www.cnblogs.com/cls-Jaden/p/11210619.html