计算机基础知识对编程的重要性

码农和架构师的差别在哪里

从题目看文章,大家的第一想法是本篇文章是一篇讲述计算机基础知识和编程之间的关系,但是为什么开篇是这样的呢?当然这样的开篇并没有多大的意义,唯一的目的就是吸引读者而已。

纵观计算机专业的学生在毕业之后大多数会走向编写程序的道路,当然也会有部分同学有自己更感兴趣的事情,从而在毕业之后选择其他的职业。在这里根据我个人在毕业之后的编写程序的道路,写下一点总结,希望能和大家交流,有什么不对的地方,希望大家能给我指正,因为我个人觉得“三人行必有我师”是一句很有道理的话,每个人对同一件事情都有自己的看法,也就会发现别人没有发现的但是又有一定道理的观点。

上面的话说的有点模棱两可了,主要也是受到自己最近所阅读的书籍的影响,废话不多说,接下来进入正题。

这一节的题目有点大,码农和架构师的区别在哪里呢?如果问你自己你会怎么回答呢?对于我来说,主要的区别在于以下几个方面,相比与码农来说架构师具有更加扎实的基础知识、更好的抽象能力、更丰富项目经验。

扎实的基础是必备的而且是最为基本的条件,但是就我个人看来,目前的大部分学校的计算机相关专业的学生基础都是非常的薄弱,不是为了应付考试就是为了应付面试,才去把相应的计算机的基础课本翻出来看看背背,应付完了之后一段时间之后就忘记了,因为觉得这些东西没有什么用,而且枯燥乏味,不如动手写两行程序更让人有一种满足感。于是我们放弃了计算机基础知识的学习理解,慢慢的转向机械式的调用API,虚假的成就感挡住了我们前进的道路,限制了我们思考的深度。越是在这种情况下,我们反而会自我感觉良好,觉得好像自己如果毕业之后马上就能大展手脚,成就一番事业。然而一切的一切都是一叶障目,挡住了我们本来应该前进的步伐,而停滞不前,大学的时光就这样被白白的浪费了。只有当我们真正的参加到工作、接触到了更多的真实的项目、更多有经验的人的时候我们才发现原来自己在学校引以为豪的东西只不过是井底之蛙眼中的那一小块天空,在这个时候我们的眼光慢慢的打开,看到了我们以前一直没有注意但是又熟悉的东西。但是我们基本上只是熟悉而已,在这种情况下才明白计算机的基础知识是多么的重要,它是你理解更高层次的概念的引路石,没有它们做铺垫完全就没有办法理解程序语言中的很多概念,不能很好的掌握其中的设计思路、设计理念,就没有办法写出高质量的程序,一旦出现问题就像无头苍蝇找不了前进的方向、然后就病急乱投医,花了大把的时间却没有得到多大的成果。慢慢的慢慢的感觉如果自己不把那些基础知识恶补起来,那么在自己职业前进的道路上会非常的艰难。

刚才上面的那些都是我个人的真实的写照,那段经历也是我为什么一直强调计算机基础知识重要性的原因了,当然后来我自己也恶补了基础知识,并且将其应用到了我的日常工作中,对我自己的提升是非常显著的,包括在源码的阅读上,以及重要框架的设计上,都有着举足轻重的作用。

在恶补计算机基础知识的过程中,我发觉有一些概念是很抽象的,文字没有多长,但是就是很难将该段文字总结的场景或者是过程在大脑里面清晰的还原(对于抽象的概念,我会通过翻阅其他的资料将它和某个场景或者过程联系起来,这样对抽象的概念的理解会更加的深刻,而且不容易忘记),在这种情况,需要的是翻阅相关的资料,以及思考,在现代这个互联网的时代,我们渐渐的喜欢快节奏的东西、喜欢上不用太多思考的东西,所以我们离思考也越来越远,但是很多深刻的东西仍然需要我们不断的思考才能理解其本质,才能真正的唯我们所用,只有唯我们所用了,我们才能在其基础上创造更多更好的东西。

项目经验当然也是必不可少的,项目经验带给我们的思考是技术和需求的一个契合的问题,什么样的需求用哪些技术能更好的完成,以及技术之间如何搭配使用可以达到更好的效果,这就有点感觉想厨师通过不断的试菜完成自己的菜谱一样,通过项目的锤炼,总结出自己的菜谱。

计算机基础知识包含哪些?

在这里说计算机的基础知识有点妄自菲薄了,毕竟自己接触计算机的时间也不是特别久,而且也没有什么建树,不过抱着分享的态度在这里陈述一下我个人的理解。

首先不得不说的是《计算机操作系统》,计算机操作系统是非常重要的基础知识,建议在学习操作系统的时候,仔细去了解一下操作系统的启动流程,操作系统的启动流程对于真正理解什么是操作系统有着特别重要的作用。里面进程、线程概念一定要深入的理解,建议配合《Linux内核源码的分析》来看,这样可以有一个比较直观的感受,当然还有内存的管理机制也是非常重要的,如果对于以后想要从事操作系统底层开发的人来说,还需要了解可执行文件的格式相关的信息,如果想要自己动手写一写,可以先从修改和编译Linux内核开始,当然还有一本书籍也不错《30天自制操作系统》,这本书呢必须得有一定的硬件基础才能看懂,建议看一些系统结构相关的数据,还有就是不得不参考的《intel80386》的手册。

还有就是《计算机网络》,在现在这个互联网的时代,计算机网络是根本,所有必须的好好的学习,这些基础知识不论是对以后写程序,还是以后生活中的使用都是至关重要的。

最后就是《编译原理》、《数据结构》,这两本书籍建议好好的品读,比如说《编译原理》能帮助我们理解为什么程序从源代码到可执行程序的过程,还有就是不同语言之间如何相互调用的(同时也必须了解可执行文件的格式)。比如《数据结构》可以帮我们理解数据库的实现原理,文件系统的实现原理等等,建议可以看看《Linux内核的设计与实现》中的ext2文件系统的实现源码!

最后还有就是好好的把数学学好,什么《高数》《线数》等,特别在图形图像里面用的很多

多的就不多说了,如果把计算机的基础知识学好了,其他更加高级的技术只是在基础知识上的重新组合!

原文地址:https://www.cnblogs.com/eunace1/p/9545537.html

时间: 2024-08-07 20:45:23

计算机基础知识对编程的重要性的相关文章

平面设计 计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut

电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut

计算机基础知识及UNIX发展史

Technorati Tags: UNIX发展史,存储知识,ABI,API,开源协议 TOC[-] 1.计算机系统组成机构 2.冯诺依曼体系结构 3.服务器硬件简介 4.存储容量换算 5.存储基础知识 6.操作系统 7.开发相关概念 8.UNIX发展史 9.开源协议 10.Linux哲学思想 计算机基础知识及UNIX发展史 1.计算机系统组成机构 计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成,如下图所示: 2.冯诺依曼体系结构 1946年数学家冯·诺依曼于提

学习编程语言应该掌握哪些计算机基础知识?

随着软件开发技术的不断发展,编程语言的使用也越来越方便,总的来说编程语言并不难学,即使没有任何计算机基础,也可以通过一个系统的学习过程来掌握编程语言. 目前经常使用的编程语言有几十种,包括Java.C.Python.C++.PHP.C#.JavaScript.R.Scala等,这些编程语言往往都有自己特定的使用场景,在难易程度上也有一定的区别.通常情况下,Java可以用于Web开发.大数据开发.Android开发等,C语言可以用于操作系统开发.嵌入式开发等,Python可以用于Web开发.大数据

第一章 计算机基础知识

第一章 计算机基础知识 第一部分 概述 1.1946年2月15日,第一台计算机 ENIAC 2.物理原件(电子原件) 第一代:电子管.第二代:晶体管.第三代:中小规模集成电路.第四代:超大规模集成电路.第五代:超导材料.第六代:人工智能.#考试考到第四代. 3.计算机的分类 巨型机,大型机,中型机,小型机,微型机 现在的巨型机也是存在的 4.微处理器(CPU.中央处理器)由控制器.寄存器.运算器组成 第二部分 微机系统的组成 CPU>内存>外存 #速度 CPU和内存之间有一个CACHE,叫做高

【核心整理】那些让你起飞的计算机基础知识:学什么,怎么学?

我之前里的文章,写的大部分都是与计算机基础知识相关的,这些基础知识,就像我们的内功,如果在未来想要走的更远,这些内功是必须要修炼的.框架千变万化,而这些通用的底层知识,却是几乎不变的,了解了这些知识,可以帮助我们更快着学习一门知识,更加懂得计算机的运行机制.当然,在面试中也经常会被问到,特别是对于应届生,对于春秋招,也可以看看我前阵子写过的文章历经两个月,我的秋招之路结束了!.也有读者经常问的计算机基础知识究竟是指啥?学习顺序?推荐书籍? 我公众号的读者学生以及非科班的应该挺多的,所以我今天这篇

如何成为一名黑客(网络安全从业者)——计算机基础知识篇

大家好,我是Mr.Quark,大家可以叫我夸克,欢迎大家在微信公众号(Quark网络安全)上给我留言,如果有时间我一定会一一回复大家的.今天我将和大家一起学习"如何成为一名黑客"或者说"如何成为一名网络安全专家". 在进入正题之前,我们先来给黑客下一个定义,毕竟如果连黑客的含义都不了解,成为黑客更是无从谈起. "黑客"称呼的变迁 在很久很久以前(别问我有多久,不要在意这些细节),"黑客"指的是喜爱钻研技术.精通计算机技术的程序

计算机基础知识学习

第一周学习 一.知识方面,总得来说,就是学习计算机基础知识. 1.从计算机的发展,应用,组成,网络等方面了解: 2.对计算机操作系统的学习:常用的操作系统,操作系统的功能.分类: 3.办公软件的学习:Word\Excel\ppt,像Word中编号格式.自动生成目录,Excel中条件格式的应用,图表插入,以及各种基础函数的使用: =SUM(Eoo*$E$3,Foo*$F$3,Goo*$G$3)  表示:用E\F\G列的各数与E3\F3\G3相乘后求和,count(if)\a 计数函数, =COUN

01.04_计算机基础知识(键盘功能键和快捷键)

* A:键盘功能键 * a:Tab * b:Shift * c:Ctrl * d:Alt * e:空格 * f:Enter * g:Window * h:上下左右键 * i:PrtSc(PrintScreen)屏幕截图* B:键盘快捷键 * a:Ctrl+A 全选 * b:Ctrl+C 复制 * c:Ctrl+V 粘贴 * d:Ctrl+X 剪切 * e:Ctrl+Z 撤销 * f:Ctrl+S 保存 ###01.05_计算机基础知识(如何打开DOS控制台)* A:xp下如何打开DOS控制台?