㈠ 学计算机编程需要什么基础 入门先学什么
如果还没有想好学哪一门编程语言,没有确定目标,很容易无所适从。如果你想要认认真真去学编程,但是还没准备,可以看看以下几条建议。
1、数学基础。 从计算机和应用的发展历史来看,计算机的数学模型和体系结构等好多都是由数学家提出的,包括最早的计算机也是为数值计算而设计的。因此,要学好计算机是需要一定的数学基础的,初学者有高中水平就差不多了。
2、逻辑思维能力的培养 。程序员必须要有一定的逻辑思维能力,逻辑思维能力的培养更需要长时间的实践锻炼。但是也不必操之过急,逻辑思维说白了是一个技术,和打游戏,把妹,打拳击一样,多进场练习才是关键。如果做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
3、选择一种合适的入门语言 。网络编程目前较为流行的网络编程工具可谓“风格迥异,百花齐放”。每一种工具都有其独特的特点,在互联网实现上都有各自的优势序设计工具不外乎如下几类:①本地开发应用软件开发的工具有:Visual Basic、Delphi、VC++(C++ Builder) 等;数据库开发工具有:Visual Foxpro、Oracle Developer、Power Builder等。②跨平台开发开发工具如 java等。
4、注意理解一些重要概念 。程序设计的教程看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三。
5、掌握编程思想 ,学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习Java在学习中应把重点放在其语言基础、Java与ActiveX以及JavaBeans等组件之间的编程技术以及应用上来。你可以自己编一些较为经典的小程序来加深基本技能的掌握:用Java的图形处理能力编写纸牌游戏,用AWT编写扫雷或者俄罗斯方块、用Java的网络功能编写网络聊天室等等。关键是学一种思想,有了思想,那么我们就很容易触类旁通。
1、英语基础
计算机英语与传统的英语知识不同,需要了解的大部分是计算机的专业单词或者词汇,普遍较为简单。但是在高级编程中,会出现比较生涩的词汇,对于想要参与计算机语言设计以及在职业发展上有更多追求的同学可以自学一下大学英语。毕竟现在在学习IT技术上晋升的道路上,专业文档的阅读能力也是非常重要的。我们不可能每一句都依靠在线翻译,而往往很多学习材料都是英文版的,等到中文的翻译版出来,时间很不固定。所以强迫自己看原版的材料,强迫自己学习英语,都能加速学习的速度。
2、自学能力
计算机编程是一门技术专业,由于越来越多的源码开放,使得每个程序员都拥有了自行编码的可能。这也造成了计算机技术不断在更新和升级以及新的语言的出现,可以说学计算机是进无止境的。想要在计算机行业长久的走下去,学生自身的自学能力是不可缺的。自学的基础是学会查,在初期学习计算机编程时,我们几乎都是不懂的状态,学会查,尤其是查不明其意的名词时,理解了,学习起来就会运用了。
3、计算机操作系统原理
我们所有的开发或者说软件应用都是在特定的操作系统上进行的,如果不是,那只有一种可能,你自己在实现一个操作系统。所以我们计算机操作系统原理可以说是基础中的基础是必须要了解的。
4、数据结构和算法
这门课程能够决定一个人程序设计水平的高低,是学习过程中需要重点掌握的。C和C++都是可以选择的,前期可以先学C,再学C++会相对简单一些。在算法上C++复杂化了,所以先学C更好。
㈡ 小白,想入门程序员,应该从什么开始学,顺序是什么
小白想要成为程序员,首选是选择一门合适的语言,比如说:Python、Java、C、C++、GO语言等;其次,选择合适的学习方式,比如培训,周末班、脱产班还是网络班。
如果完全没有编程基础,建议大家学习Python,Python入门简单、语法清晰、通俗易懂,非常适合零基础人员。
㈢ 如果想成为一个程序员应该学习什么知识
声明:以后计算机也就没什么前景了 只能成为一个辅助工具
(1) 熟练掌握基本算法和数据结构,用C语言编制程序;
(2) 掌握数据结构、程序变速器和操作系统的基础知识;
(3) 了解软件工程、数据库、多媒体和网络的基础知识;
(4) 掌握数制、机内代码及其算术运算和逻辑运算的基础知识;
(5) 了解计算机的体系结构和主要部件的基础知识。
1.1按照软件设计说明书,能熟练使用下列程序语言编制程序
1.1.1C(美国标准)
1.2理解给定程序的功能,能发现程序中的错误并加以纠正
1.3具有良好的程序编制风格
1.4基本算法
1.4.1查找、更新、排序、合并及字符处理
1.4.2迭代、插值、数值积分、矩阵计算、议程求解和搜索求解
1.5程序编制方法
1.5.1分支、循环、子程序(过程和函数)、递归
1.5.2输入输出和文件的处理
模块2:基础知识(程序员级)
2.1软件基础知识
2.1.1数据结构基础
数组、记录、列表(list)、队列、栈(stack)、堆(heap)、树和二叉树的定义、存储和操作
2.1.2程序语言基础知识
·汇编、编译、解释系统的基础知识
·程序语言的数据类型
·程序语言的控制结构
2.1.3操作系统基础知识
·操作系统的类型和功能
·操作系统的层次结构和进程概念
·作业、处理机、存储、文件和设备等管理的基础知识
2.1.4软件工程基础知识
·软件生命周期各阶段的任务
·结构化分析和设计方法
·面向对象基本概念
·软件开发工具与环境基础知识
2.1.5数据库基础知识
·数据库模型
·数据库系统的结构
·SQL的使用初步
·常用数据库管理系统的知识
2.1.6多媒体基础知识
·多媒体基本概念
·常用图象文件
·简单图形(线段和圆)的计算机图示
2.2硬件基础知识
2.2.1数制及其转换
·二进制、十进制和十六进制等常用数制及其相互转换
2.2.2机内代码
·原码、补码、反码、移码
·定点数与浮点数的机内表示
·ASCII码及汉字编码等常用的编码
·奇偶校验码、海明码、循环冗余码(CRC)等常用校验方法
2.2.3算术运算和逻辑运算
·计算机中的二进制数运算方法
·逻辑代数的基本运算和逻辑表达式的化简
2.2.4计算机的体系结构和主要部件
·中央处理器CPU、存储器和输入/输出设备
·总线结构、指令流和数据流
2.2.5指令系统
·常用的寻址方式
·指令的格式、分类及功能
·指令的执行过程
2.3网络基础知识
2.3.1网络的功能、分类与组成
2.3.2网络协议与标准
2.3.3网络结构与通信
2.3.4网络的安全性
2.3.5Client-Server结构
2.3.6Internet和Intranet初步
㈣ 学习计算机编程需要什么基础知识
我觉得应该根据你的工作需要或者说你的发展方向而定。基本上两大类吧:C/C++和Java。比如,如果你要做企业级应用的你应该学习Java和C#;如果你想做嵌入式,那么应该学好C语言;其他情况下,在你不知道要做什么之前你可以选择学习C/C++。学会这两大类中的一类,对于你学习其他语言都将是比较轻松,包括脚本语言,动态语言…… 1、我的入门是从学习C语言开始的(其实课程是C++),这是我们学校的公共课,我上课比较认真(虽然老师讲得很差,而且一段时间后,我就发现自己的基础掌握比她好,当然理解深度没她好),因此,我认为对于完全没有基础的人而言,听别人讲比较容易入门。当时的教材是学校自己编的,挺烂的。 建议一(以C/C++为例),对于刚想进入编程的人(就是从来都没有接触过编程的人),最好是听课的方式(自己看的话估计要很慢,而且很痛苦),可以找视频或者培训等。C语言推荐入门教材:谭浩强的C语言,最新版是第三版,不过第二版应该也可以了(蓝色的)。说明一下:坚决不同意直接看K&R的《The C programming language》,这本书绝对不是初学者可以看懂的,里面讲语法的并不多,语法都是合在程序里面讲。不过这本书非常好,入门以后一定要看的一本书。 当然可以从C++直接入门,C++之父强烈推荐从C++直接入手。C++推荐入门教材:钱能的C++(红色的,清华大学出版),这本书第一版不是ISO C++,不过比较经典,作者现在也出了第二版了,第二版好像不是太好。国外的最好的入门教材据说是:《Acclerated C++》作者是Koenig和Moo夫妇,非常厉害。他们的着作还有《c陷阱与缺陷》《c++沉思录》。《Acclerated C++》这本入门的书我没有看过,我觉得还是先找本国内的书好好看,看的差不多了,国外的经典书籍随便看就会觉得很有味道,否则你可能会很受打击。 入门的书至少要看两三遍(要彻底理解哦 ):)。如果是C++,我建议后面类的部分至少要理解三到五遍。说明一下,c++模板的部分可以先不用看,如果有兴趣的话,等把c++学的差不多了,我觉得可以把模板、STL、泛型编程结合起来学习,这个又是一个很大的工作量了,又得下很大的功夫。所以说,C++博大精深啊。 建议二、学习过程中要结合简单的算法,像冒泡还有类似c语言程序百例这样的小例子做做;更进一步应该做点大一点的项目,最好是控制台程序。或者你已经着手学习win32、MFC或linux,你也可以结合平台做点小的项目。 那时我其实并没有考虑那么多,因为我不是学计算机的,因此我就把参加一些计算机之类的考试当作学习目标。我当时其实C++语言基础已经很不错了,但是上机实践很少(那时我没有电脑),因此参加省计算机二级,全国计算机三级和全国计算机四级考试,结果上机都没有通过。我很郁闷,二级的时候是我不知道怎么样进那个DOS界面把题目调出来,三级的时候是很快就编好了,也通过运行了,可是成绩出来却不及格,四级的时候是编好了,可能是我那题目比较难,好像用了两次循环,结果那破机器竟然承受不了。后来一乱就毁了(当然主要是上机太少了)。不过我那些上机都没有去补考。二级和三级的时候是自恃水平已经远远超过考试要求了(^_^,见笑了,可能是因为等级考试还是比较简单的),四级的时候则因为自己已经通过高级程序员考试,觉得补考上机好像没必要。(我高程和四级都是在2003年考的)。 建议三:定位学习方向(见附录一)并好好学习计算机基础知识。在你还不确定学习方向,或者你还在大学本科期间,那么我认为应该先把计算机的基础知识好好学习一下。我认为计算机必学的基础课程而且要精学——首先是数据结构,其次是操作系统、软件工程,数据库。这四门课不管你将来想从事哪个方向的基本上都会用到。当然,有时间的话,其他基础课都是应该掌握的,离散数学、组成原理、体系结构、网络、编译原理甚至跨学科的。方向是很重要的,因为知识其实是无限的,一个小小的领域就够你研究很久了。本科生可能还没有什么方向的感觉,但是到了研究生你一定要清楚自己到底想要做什么,要往哪个方面发展,不要盲目学,瞎学乱学,否则最后可能看似什么都会,其实什么都不会。 我也曾经学习过Java一段时间,这篇文章既然是谈编程语言的入门学习,我也简单说一说。因为有了比较C++扎实的语言基础,所以Java学起来比较轻松。我先找了国内一本薄薄的教材很快看了一遍(几乎都理解,但是只看了一遍),空闲的时间配合清华张孝详老师的java视频。以后其实才算我真正要开始入门JAVA的学习,我用了是《core java》中文第六版(本来想用候捷翻译的第二版的《Thinking in Java》,发现被同学弄丢了),这本书我差不多用了20天才把里面的知识都搞懂,当然包括程序风格的模拟,最重要的时我把有关GUI编程的那三章里面的程序例子几乎可以默写出来(当然,那是因为我理解了,其实这样就变成了我的知识了),里面的API我也记得差不多了。(说明:Java里面的GUI编程没什么用处了,建议大家先跳过,GUI不是Java的长处,如果以后需要的话再查手册或者再记忆学习)。 其实学习了C++以后,学习Java是比较容易了,但是建议不要两种都学啦,他们的用途是不一样的,你应该熟悉其中一种,更重要的是熟悉其应用领域所需要的专业知识甚至平台,以及使用他们的企业,有创业计划的还应该考虑一下他们的应用领域,最重要的是思考他们的潜在的应用领域。 对于初级的学习就讲到这里,接下去的学习其实都是高级部分,先不介绍了,因为:一、我自己都还没有学懂,这里乱吹会误人子弟。 二、高级东西的学习很多,有很多选择,又需要很多繁琐的知识,可能也一下子没办法讲清楚。
㈤ 学编程需要什么基础知识
学编程要具备一定的基础,总结之有以下几方面:
(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
(2)逻辑思维能力的培养 学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
(3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发 应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发 开发工具如 Java 等。 3)网络开发 对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。 以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。
希望对您有帮助。
㈥ 学IT需要什么基础知识
1、单纯学编程语言本身,对于一些英文符号,需要记忆,不需要理解(当然能理解有助于学习,不理解也可以编程,无障碍)。
2、当你想在学完C后提高自己编码能力和算法设计、模式设计软件工程能力,就需要用到你高中甚至大学的知识了。
3、投入时间学编程
4、具体用到的高中知识:
(1)排列组合
(2)集合论
(3)线性方程思想(在一些算法中)
(4)矩阵(如果有学的话)
(5)等价代换、数学归纳法、数列(算法分析中用到)
也就是说,偏向于用到代数知识而非解析几何或者立体几何(当然,如果深入,是涉及到这些的)。
5、程序编写主要是经验和逻辑思维能力。
经验占据了很大一部分的空间,逻辑思维能力是指对基础的灵活掌握和变通。
每一个人编写程序的角度和考虑的范围都不尽相同,所有代码有优有略。全在基础的掌握上。
(6)计算机程序员入门技术知识扩展阅读:
IT行业分析:
首先,在中国这么一个人口众多的国家,尤其是在北京、上海这种一线城市,如何脱颖而出很重要,本科学历,四级证书已经成了最基本的标志
第一次面试就让我感觉其非常有潜力,于是将他介绍给我前公司的老板,现在,差不多半年的时间,他的薪水已经由3.5K上升到了13K,远远高于我在公司时的薪资水平,呵呵,为什么,因为他玩命到疯狂的地步,每天没有任何的生活空间,坚持每晚2-3点才睡觉,疯狂的学习Linux系统运维的一切知识。
诸君,如果你没有这份坚持与执着,那就认真去考个学历,并且把英语搞好,我不是说有了这两样东西就会成功,你同样需要努力,但是相比之下,机遇更多一些~
其次,我们应该有一个良好的职业发展方向,我周围有很多朋友,也见过很多人,包括应届毕业生和工作了两三年的朋友,甚至有的朋友都工作了快5年的时间,仍然拿很低的薪水,勉强维持生计,聊天的时候会感觉自己很迷茫,不知道能做什么,也不知道该做什么。
这里,熊熊希望提醒大家,IT已经不是曾经的泡沫经济时代了,希望理性对待,如果你不是那块料(我的导师曾经说过一句话,IT人的成功是拿钱和命堆起来的,所谓钱就是疯狂的买书,看资料,命当然就是玩命学习了),那么在你还没有进入这行之前,请三思。
如果你已经选择了IT这个行业,那么恭喜你,虽然这个行业现在人数众多,但是90%还都停留在最初级的IT民工层次,只要你肯付出努力,你就会站在金字塔尖~
参考资料:网络-IT职业
㈦ 学习计算机技术 入门需要打好哪些基础
首先,要想学好计算机技术需要先从打字开始,熟悉键盘,快速的打字;其次,熟悉计算机硬件的组成部分,学会装系统。会使用常用的办公软件的应用(word,excel,ppt的使用)。c语言,c#面向对象程序。ps图形图像处理,网页制作,flash动画制作。
在学习计算机的过程中也需要常看一些计算机相关的书籍。推荐书籍《计算机应用基础》《计算机组装与维护》《photoshop图形图像处理》《Dreamweaver CS5入门与进阶》(网页制作)《flash基础动画》《面向对象程序C#》。
在学电脑之前,先消除对电脑的紧张感,其实学电脑是很轻松的事,电脑并不神秘,只是一种工具,电脑的内部工作原理很复杂,但不需要了解那些深奥的原理,只要知道怎样使用就行了,电脑的使用是比较简单的,和使用电视机,录像机没有什么区别。
使用遥控器选择电视频道,该频道的节目就出现在电视屏幕上,同样,只要给电脑些指令,就会按照要求工作,其次,别被电脑那些”高深”的词汇吓倒,诸如“Windows”,“鼠标”,“控制面板”。它们只是一些部件及文件的名字,不需要深入理解其意。
再次,应了解一点电脑知识的组成及发展,电脑知识分硬件部分的知识和软件部份的知识,硬件部分的知识,如计算机组成原理,硬件的组装,电工电子学等,软件部分的知识。
如操作系统(win-dows)的使用,语言程序的使用,办公软件office的使用,一般非计算机专业用户先只要熟练掌握软件部分的知识就足够了,当熟知这些知识后,自然就能由此及彼,由表及里地掌握电脑的其它知识了。
(7)计算机程序员入门技术知识扩展阅读;
计算机应用技术专业就业方向:
1、计算机专业毕业生可从事软件工程方向 ,学生毕业后可以到国内外众多软件企业、国家机关以及各个大、中型企、事业单位的信息技术部门、教育部门等单位从事软件工程领域的技术开发、教学、科研及管理等工作。也可以继续攻读计算机科学与技术类专业研究生和软件工程硕士。
2、通信方向也适合计算机系毕业生。学生毕业后可到信息产业、财政、金融、邮电、交通、国防、大专院校和科研机构从事通信技术和电子技术的科研、教学和工程技术工作。
3、网络与信息安全方向也是计算机系毕业生对口就业方向。宽口径专业,主干学科为信息安全和网络工程。学生毕业后可为政府、国防、军队、电信、电力、金融、铁路等部门的计算机网络系统和信息安全领域进行管理和服务的高级专业工程技术人才。并可继续攻读信息安全、通信、信息处理、计算机软件和其他相关学科的硕士学位。
㈧ 程序员必备知识有哪些
根据软考程序员职称的考试内容,我们可以得出,程序员需要具备以下的知识。但这些只是基础,还要不断扩展。
计算机硬件基础知识。
1. 计算机科学基础。
1.1数制及其转换。
二进制、十进制和十六进制等常用数制及其相互转换。
1.2数据的表示。
数的表示(原码、反码、补码表示,整数和实数的机内表示方法,精度和溢出)。
校验方法和校验码(奇偶校验码、海明校验码)。
1.3算术运算和逻辑运算。
计算机中二进制数的运算方法。
逻辑代数的基本运算和逻辑表达式的化简。
1.5常用数据结构。
数组(表态数组、动态数组)、线性表、链表(单向链表、双向链表、循环链表)、队列、栈、树(二叉树、查找树)、图的定义、存储和操作
1.6 常用算法。
算法与数据结构的关系,算法效率,算法设计,算法描述(流程图、伪代码、决策表)
2. 计算机系统基础知识。
2.1计算机基础知识。
2.1.1计算机系统的组成,硬件系统、软件系统及层次结构。
2.1.3 中央处理器CPU。
运算器和控制器的组成,常用的寄存器、指令系统、寻址方式、指令执行控
处理机性能。
2.1.4 主存和辅存。
存储器系统。
存储介质(半导体、硬盘、光盘、闪存、软盘、磁带等)。
主存储器的组成、性能及基本原理。
Cache的概念、虚拟存储的概念。
辅存设备的类型、特性、性能和容量计算。
2.1.5 I/O接口、I/O设备和通信设备。
I/O接口(总线、DMA、通道、SCSI、并行口、RS232C、USB、IEEE1394)。
I/O设备的类型和特性(键盘、鼠标、显示器、打印机、扫描仪、摄像头,以及各种辅存设备)。
I/O设备控制方式(中断控制、DMA)。
通信设备的类型和特性(Modem、集线器、交换机、中继器、路由器、网桥、网关)及其连接方法和连接介质(串行连接、并行连接,传输介质的类型和特性)。
2.2 软件基础知识。
2.2.1 操作系统基础知识。
操作系统的类型和功能。
操作系统的内核(中断控制)和进程概念。
处理机管理、存储管理、设备管理、文件管理、作业管理、汉字处理。
2.2.2 程序设计语言和语言处理程序基础知识。
汇编、编译、解释系统的基础知识。
过程(函数)调用。
2.3 网络基础知识。
网络的功能、分类、组成和拓扑结构。
网络体系结构与协议(OSI/RM,TCP/IP)。
2.4 数据库基础知识。
数据模型,ER图。
数据操作(关系运算)。
数据库语言(SQL)。
2.5 多媒体基础知识。
多媒体基础概念,常用多媒体设备性能特征,常用多媒体文件格式类型。
3.软件开发和运行维护基础知识。
3.2 软件需求分析、需求定义及软件基础知识。
结构化分析概念(数据流图(DFD)、实体关系图(ER))。
面向对象设计、结构化设计基础知识。
模拟设计、代码设计、人机界面设计要点。
3.3 程序设计基础知识。
结构设计程序设计,程序流程图,NS图,PAD图。
程序设计风格。
面向对象设计基础知识、可视化程序设计基础知识。
3.4 程序测试基础知识。
黑盒测试、白盒测试、灰盒测试基础知识。
4. 安全性基础知识。
安全性基本概念。
加密与解密基础知识。
5. 标准化基础知识
标准化基本概念
6. 信息化基本知识。
有关的法律、法规要点。
7. 计算机专业英语。
考试科目2:程序设计。
1. 内部设计
1.1 理解外部设计。
1.3 物理数据设计。
确定数据组织方式、存储介质,设计记录格式和处理方式。
2. 程序设计。
2.1 模拟划分(原则、方法、标准)。
3. 程序实现。
3.1 编程。
编程方法和标准。
程序设计语言的使用。
4.程序设计语言(C语言为必选,其他语言可以任选一种)。
4.1 C程序设计语言(ANSI C标准)。
程序结构,语法,数据类型说明,可执行语句,函数调用,标准库函数,指针。
4.2C++程序设计语言(ANSI C++标准)。
C++和面向对象程序设计,语法和程序结构,类、成员、构造函数、析构函数、模板、继承、多态。
4.3Java程序设计(Java 2)。
语言机制(程序结构和语法,类、成员、构造函数、析构函数、继承、接口)。
4.4Visual Basic程序设计(Visual Basic 6.0)。
用户界面设计。