编程语言成长经历
怎样才算真正掌握了一门计算机语言?
想做软件首先得先掌握一门编程语言。初学编程都是从一门基础的编程语言开始的。很多大学生在学校里学了很多编程,那只能说是学过,而不是掌握,要真正掌握,必须得经过实践,理论上的熟练不算真正掌握一门编程语言。
一.基本的语法
首先要清晰基本的语法结构,包括关键字、流程控制、IO操作、网络操作、异常处理等等,不同语言的基本语法有一定差别,但是在整体内容上也有一定的共性。
二.具备一定的编程思想
所谓编程思想就是通过编程语言来解决实际问题的思路和方法,也可以理解成逻辑思维。学习编程一般都是理科生,数学知识都挺扎实,编程知识也可以理解为数学知识。
三.实践操作能力
要想掌握一门编程语言,就不能只停留在理论层面,实践能力是很重要的,实践能力也是评判编程能力的重要指标。
计算机语言指用于人与计算机之间通讯的语言,是人与计算机之间传递信息的媒介,是把指令传达给机器使电子计算机进行各种工作的方法。
即是如此,也就是说你能熟练的与计算机交流、交谈,能获取它的信息,能命令它做任何事情,那就便算是真正的掌握了一门计算机语言。
编程的目的:编写设计一个程序,使运行它的终端设备为我们做特定的事情。使用编程语言是为了和计算机沟通,编程中写的一行代码其实就是对计算机说的话,只有计算机明白了我们的意图的时候才会按照我们说的去做。
计算机语言分为高级语言和低级语言。越高级的语言,使用起来就越容易,也更接近人类说的日常语言,而越低级的语言九越复杂、不容易懂,甚至可以由0101组成。
计算机语言和人类语言的不同:
1、计算机语言是精确的。计算机无法理解不精确的指令,在写代码的时候我们会反复推敲这一句会不会得到我们预期的效果,是不是一个准确的没有歧义的指令。
2、描述的事情不一样。也就是要处理的事情其实是不一样的,现实世界中的常识往往帮不上你什么忙,你主要描述的是数据,计算机的运行机制,不同设备之间的数据交换协议。
3、计算机语言每一句有目的性。在编程语言中,每一句编程语言都会在计算机中发生特定的行为,所以每一句代码都需要有它的目的。
怎样才算真正掌握了一门编程语言?这是我工作5年来的经验!纯手打,真实感受。
1. 熟练基本语法
掌握一门编程语言,基础语法必须熟练。从变量、循环、数组、指针、类等,都需要深入理解。这些知识虽然简单,但是理解原理也要花费时间。我平时面试别人时,发现很多人虽然知道概念,深入描述时显得很不专业。
2. 掌握高级特性
除了基本语法以外,语言的高级特性,是你区别其他菜鸟的关键。比如:泛型编程、设计模式、编程技巧等,都是需要进一步掌握的,虽然部分知识很少用到,但是确实解决关键问题的利器。
3. 使用第三方库
学习使用第三方库,会让你的编程如鱼得水。比如Boost、Qt等大型库,可以让你开发出企业级的代码。当然也有许多小巧精致的库,在解决某些问题上让你如鱼得水。所以学会使用第三方库,让你可以复用前辈们的优秀代码。
4. 了解专业知识
除了语言方面,了解计算机相关的知识,也是重中之重。无论是:数据结构、操作系统、计算机网络、计算机组成原理等,都是你迈向大神的必经之路。话说这四门课是计算机专业课,科班必学,实属精品。
掌握一门编程语言应该分几个阶段:
1.掌握编程语言的基本语法,打好基础。
2.能应用编程语言做一些界面交互的东西,应用基本的框架实现数据的增、删、查、改,实现真实的界面和数据的交互。
3.熟悉设计模式,能更好的重构代码甚至独立搭建框架,开发中能考虑到代码的各种性
能包括安全性,稳定性,易维护性等,在实际开发中遇到问题能及时提出很好的解决方案做出安全、稳定、高效、用户体念好的系统。
总结:做到第2点基本算是掌握了这门语言了,后面需要更多的实践才能达到第3点的状态。
掌握一门编程语言,其实不是那么困难。而你所要说的,真正掌握,就需要投入大量的精力和技术投入了。如果要是这样,那么要掌握编程语言在各个领域的开发思想和将开发思想转化为编程语言进行代码开发。这要求有一定的编程语言,语法基础,并加上在该领域的深入研究。其实这是一个不断深入学习的过程。没有一个人可以说是精通或者全面通,即便他自己那样说。只能说是他擅长某一领域而已。
程序员学的就是编程吗?要学多久?
作为你一个曾经的程序媛来回答这个问题。
程序员学的不一定是编程,举2个例子:
1、A学的是食品安全
毕业后在一个食品厂从事食品安全的工作,每天的工作单调清闲,于是他想考中大研究生,对计算机比较感兴趣,就去买了基本教材来看,看了又想实习一下,没电脑,就去单位的电脑室混,电脑室的人,给他一个难题,说让他帮忙写个工资管理的程序,他摸索了一个月,就弄出来,把人给吓了一跳。
之后他研究生也没考上,就想着跳槽吧,斗胆去了一个知名的软件企业应聘,居然被面上了,做到华南区总监。
再后来他的几位同事出来创业,也拉上他,现在企业已经在新三板上市了,他也是但技术总监。
2、B学的是机械
B学的是机械,不知道他怎么来做软件的,我认识他的时候,他已经是大项目经理了,不怎么编程了,不过听人家说他SQL写得超好,有时出现BUG什么,让他来帮忙看。他做个好几个大项目,还获奖,后来自己带了一帮程序员兄弟出来创业。
不是的,程序员不仅需要学习编程,还需要学习许多其他的技能和知识,例如数据结构和算法、计算机组成原理、操作系统、网络编程、数据库等等。此外,程序员需要不断地学习新技术和新领域,以保持其竞争力。
至于学习的时间,这取决于你要学习的技术和领域。例如,如果你要学习一门新的编程语言,那么可能需要花费几个月或几年的时间来完全掌握它。但是,如果你要学习一个现有领域的新技术,可能只需要花费几个小时或几天的时间。因此,具体要学多久,还要看你要学习的内容和目标。
如果你是有计算机基础的,那学起来会比较快。如果是0基础,那学起来相对来说就比较吃力了,有很多基础要打。
学编程不需要多久3个月就能上手,我见过很多优秀的985硕士毕业的,零基础女生一个月就能做一些增删改查,虽然初期也会出一些小问题,但是自学能力确实很强,正常同学一般3个月就能上手开发,当然最好有一个好师傅带着,然后针对自己学习的领域去深挖。
还需要学人情世故,还需要学习自己的不可替代,还需要学习开“卷”有益,还需要学习一些软技能,还需要学习你这个业务的深度,做好普通开发入门简单,变得优秀很难~
我是文老爷, 一名程序猿,我来回答这个问题。
从程序猿的字面的含义上来看,程序猿学的就是编程,而且主要的工作也是编程。但是,真的就是就是学编程吗? 作为一名程序猿,我来告诉你想要成为一名程序猿,到底需要学那些东西?
首先,一门编程语言是必不可少的,这就是你理解的学编程,因为一门编程语言是从事程序猿这个行业的基础,不管你干什么方向都要会一门,哪怕你就只会C语言,你也可以找到工作。现在业内主要流行的编程语言有C/c++、java、Go、python、C#等,编程语言有很多,不同的方向对与于编程语言的要求也是不一样的,因为这些适用的场景也不同。
其次,就是计算机的基础了,为什么一些公司招聘的时候会在招聘的要求中,第一条就是 要求计算相关专业,就是因为在学校的时候会接受一个完整的计算机体系的课程的学习。这些知识包括,计算机网络、操作系统、数据库、Linux系统知识、数据结构与算法、编译原理、软件工程、设计模式、数学知识、英语等,因为坐在平常的工作少中,你不仅仅是写几行代码,你还要知道为什么这么写,用什么样的数据结构更优,SQL语言怎么优化,选用什么样的中间件最好,除了问题改怎么样去定位、是不是网络、系统的原因。因此,你必须要知道这一个体系的东西,你才能做好手头的工作。
最后,就是你想要发展方向需要学习的内容了,程序猿这个职业会分很多的岗位,比如后台开发、测试、运维、大数据、人工智能算法相关、信息安全相关等,每一个细分的都有其对应知识需要学习,可以看我的这片文章:
在我的回答主页中
程序员
那要看你如何定义“程序员”了,如果简单定义为“会写程序的人”,那技能的要求不多;
1.会打字
2.会用搜索引擎
3.会写代码
但是如果将“程序员”定义为“能够编写出高效、可靠、维护性强的代码,并以此为生”的人,那技能的要求可太多了,毕竟IT行业是一个不断学习,不断前进的行业。
1.计算机组成原理
2.数据结构和算法
3.离散数学
4.组合数学
5.某种编程语言
学会了C语言,多久可以熟悉Java?学会JAVA能干什么?
您知道您用的windos大部分都是C写的,少部分汇编,所以C很强大了。接下来你想学J***a,J***a运行的jvm上,你问可以干什么,通俗,易懂一点就是构建可以运行在虚拟机上的jar包,建立数据库交互,深入一点就是各类框架Web端服务端等等等
数据库和前端技术都会用的话,算法和数据结构都比较熟悉。那么你可以用两周学习J***a基础语法。再用两个月学习练习一下J***a的框架。应该就可以了。J***a的灵魂在于框架。
谢谢邀请,
从事软件开发十几年了,主要的开发方向是嵌入式,主要涉足到三种编程语言,c/C++ j***a,最早也是从C语言开始入行的,C语言在那个年代就是几乎是大学里面必备的第一门的编程语言,开始学习C语言也是完全的无感,学习编程的过程就是培养计算机语感的过程,开始完全的迷糊到后来的慢慢有了写代码的感觉都是需要一步一个脚印慢慢走下来的,一般人学习C语言开始学起来比较亢奋,后来慢慢接触到实际的东西就越来越感觉力不从心了,这是学习编程最初的盲区,很多人在这个阶段都开始有放弃的念头了。
所以讲编程还是有一定门槛的,特别是现在门槛也是越来越高,现在给人的感觉不参加培训根本拿不到工作的机会,因为现在参加工作之前都必须要培训加工下心里才有底,即使基础还可以的人也会参加培训弥补,整个软件行业就业就有这种大趋势了,当然如何对待培训的态度问题了,培训主要起到***的作用,不要真觉得零基础去就能成为大神出来,主要起到催化剂作用,能找到入门的路子就已经很不错了,基础不错更多的是查漏补缺。
有点离题了,现在说到学习编程语言的过程,如果在真的掌握C语言的基础上,才去学习j***a就会感觉变得轻松许多,虽然两种的编程思想都不一致,但基本语法在学习起来就会比较方便,概括来讲都归属于计算机语感,感觉有了学习起来就方便快捷多了。可能在C语言里面实现一个功能基本的单位叫函数,在面向[_a1***_]的语言中就是方法体,因为面向对象的编程离不开类的存在,类主要组成单元属性和方法,名字不一样,具体在实现功能上思想是一致的,做个排序算法核心点都是一样的,可能长期在C语言下面编程觉得很多基本功能都要自己去实现,而在j***a中开源社区里面太多的功能模块存在,很多可以直接拿过来去使用,感觉爽多了。
如果对于C语言在熟悉的程度上再去学习j***a基本上1,2月就能上手搞代码了,如果是一个C语言的大神切入学习j***a一个月内就能写代码了,所以讲C语言学习的层次不一样对于j***a的感知人知也会不一样,C语言掌握的越深刻对于j***a的学习就会月快速。
学会了j***a能做点什么,现在j***a已经是当仁不让的第一编程语言,从客户端的开发到服务端无处不在,学好了j***a的就业空间非常大,很多人刚入行的人觉得现在编程领域已经饱和了,但企业对于高手的招聘一直就没有停止过,所以讲能力不足才是无法适应的前提,建议学习编程语言先紧着一门语言学的足够熟练,不要同时搞几个一块学,看着数量非常多,但每个都没搞定导致质量底下。
希望能帮到你。
谢邀,作为一名j***a程序员,我来回答你的问题吧。
j***a是一门计算机语言,说的通俗一点就是可以和计算机沟通的语言。J***a语言在经过多年的发展,现在已经是第一大语言了(php,Python,c,别喷我)。
学会C,多久熟悉j***a
我之前做j***a,后来做了golang,我只用了2周学习了基本语法。2个月左右,可以熟练开发了。
J***a能干什么?
1、j***a可以写web程序,例如今日头条的网站,一些购物网站。国内的阿里是j***a大厂,为j***a生态做出了很大的贡献。在这里对阿里表示敬意。
2、j***a可以写安卓,大家直到安卓语言和j***a很类似,kotolin直接就是j***a衍变过来的,直接兼容j***a语言。
3、小程序,公众号之类的都可以用j***a开发
4、学了j***a再学其他语言,我就是现在在做golang开发。再学其他语言,会轻松很多。
谢谢邀请!
作为一名IT行业的从业者,同时也是一名计算机专业的研究生导师,我来回答一下这个问题。
首先,当前学习J***a语言是不错的选择,而且具有C语言基础对于学习J***a语言会有一定的帮助。
学习J***a语言可以从事以下三大方面的开发任务:
第一:J***a Web开发。J***a Web开发是J***a传统开发方向之一,整个IT行业内有大量的J***a程序员在从事Web开发。***用J***a语言从事Web开发的特点是性能稳定且功能扩展性强,J***a语言在后端服务处理方面具有丰富的解决方案,大型互联网平台通常都会***用J***a语言来完成服务实现。学习J***a Web开发需要学习三部分内容,其一是J***a语言基础;其二是J***a框架开发(Spring系列);其三是分布式开发,学习时间因人而异,通常3个月左右能够入门。
第二:大数据开发。***用J***a进行大数据开发也是比较常见的选择,由于Hadoop平台本身是***用J***a语言实现的,所以在Hadoop平台下很多程序员都会***用J***a语言来完成应用开发。学习大数据开发需要掌握两大块内容,其一是J***a基础,最好学完J***a Web开发的内容;其二是大数据平台内容,需要掌握平台的API,由于大数据的内容比较多,所以学习周期会比较长,通常需要6个月左右能够入门,达到实习岗位的要求。
第三:Android开发。目前Android平台的app开发也需要***用J***a语言,虽然当前也可以***用kotlin,但是更多的Android程序员会选择使用J***a语言。随着移动互联网的快速发展,从事Android开发的程序员也非常多。相比于大数据开发来说,学习Android开发要容易很多,具有C语言基础的情况下,通常2个月左右就能够入门Android开发,达到实习岗位的要求。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网方面的问题,或者考研方面的问题,都可以咨询我,谢谢!
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/17162.html