只精通一门C语言的人,算不算程序员?

小竖彡


纯粹的就标题中的问题来说,如果一个人精通C语言,当然是程序员,而且是非常优秀的程序员!C语言是一个非常基础的语言,很多在其他语言中可以忽略的概念,比如内存垃圾处理之类的,在C语言中都需要自己去实现。

并且很多的语言都是以C语言语法为参照的,比如非常常见的 PHP 等等。所以,一个人如果精通C语言的话,可以在非常短的时间内入门其他的很多语言。因此题目就很诡异了,只精通C语言,怎么可能呢?

在目前这种需求复杂多变的情况下,一个工程师经常会用到各种不同的语言去实现各种需求,作为一个优秀的C语言工程师,只掌握C语言的情况是非常少的。或多或少的都会去了解和使用一些其他的编程语言的。

很有可能提问者是一个编程语言的初学者,目前正在入门C语言编程技术。想要询问的点应该是,如果只掌握C语言,那么能不能够称之为程序员,并且因此找到一个不错的工作的。

我只是一个前端工程师,换句话说,我只掌握 JavaScript 这一种编程语言。Html 和 Css 这两个算不算编程语言还另外一说,我这里姑且不算吧。

以我掌握的粗浅的 Js 语言都可以找到一份不错的工作,我相信,如果你真的能够把 C 语言学好的话,找个工作应该是没有任何问题的,毕竟现在程序工程师的人才缺口还是非常大的。

即便你想要去学习其他的语言,我也建议你先把C语言学习好,因为作为一个基础语言,C可以让你领悟很多的编程思维,这些在以后的学习其他的语言的时候,可以无往而不利。

就我本人而言,虽然只是一个前端工程师,但是因为工作的原因,也会不由自主的去学习一些其他的语言,比如 Bash 脚本语言、Python、GoLang 等等。因为,总会用到的,要用到了,就不求人了对吧。

好好学吧。不过不要轻易使用精通这个词汇。我做了十几年前端工程师了,我也不敢说我精通前端语言。毕竟,知识增量每天都在增加,学无止境啊!

我是 FungLeo ,每日回答各种科技相关的问题,撰写各种科技文章,如果喜欢我,不要犹豫,赶紧关注我吧!

有不同的观点,欢迎在评论区中留言,我们一起讨论哦!


FungLeo


还是现身说法吧。


我本人就是一位只精通C语言的程序员,大概从21岁上研究生开始接触编程语言,到现在一位36岁的老码农,中间学过C++,C和Java。唯一可以称得上精通的就是C语言了。


之所以如此,当然也是有着鲜明的现实背景的。最主要的原因就在于我是一枚嵌入式软件工程师,是在MCU上写代码的,而C语言基本上就是嵌入式软件开发领域的王者,在MCU上很难看到其它编程语言的用武之地。


多年下来,在下编程无数,也做成了几款电子产品,在公司里,给的职位和薪水也是按照“程序员”的岗位来的。所以,“只精通一门C语言的人,算不算程序员?”,你说我算不算?


文艺佛系程序猿


先说一个行业内一个非常有趣的事情,刚入行没多久在简历上基本上都会写上精通某种编程语言,在这个行业混的日子久了,再次投简历的时候关键字已经从精通变成了熟练或者熟练,这是逐渐对编程一个认知的过程,开始觉得能写代码或者做项目都觉得是精通了,发现随着做项目的深入,想要精通一种编程几乎是不可能完成的事情,编程基本上越做越觉得自己知识的浅薄,需要学习的东西实在太多。

如果一个精通C语言的人都不能被称之为程序员,那么称职的程序员真就不多了,不是所有的程序员都是对某种编程语言都是精通的,能精通编程语言的人在编码界也是稀有动物般的存在。要精通一种编程语言,除了非常雄厚的编程基础之外,还需要现场实际解决问题的能力,一个问题普通的程序员也能解决,高手一样能够解决,但实际产生的效果是不一样的,高手解决问题想到的是框架方面东西,一旦解决可能类似的一个体系的问题都会得到解决。

既然说到C语言的话题,一个程序员如何做到精通C语言?

1.编程基础,基础是一切的根底,没有基础想要有更大的发展几乎是不可能的事情,所以C语言常见的语法以及比较深层次的语法都要了然于胸,基础的学习是不间断性的,有些人教材上翻越上百遍,而且每次看都有不同的感觉,每次都有不同的感受和领域,所有创造性的源泉都来源于基础,C语言常见比较难的知识点有指针以及多级指针的组合使用,递归,回调,结构体操作,函数等等,当然还有一个宏操作,很多框架为了效率考虑把基本的函数操作设置成宏的方式,但代码读起来可能就比较繁琐。

2.经历多次大的项目洗礼,想要精通一种编程语言一定是要有这种编程语言经历过大的项目,只是语法上的熟悉不算精通,需要实战验证,实战就是解决问题的能力,框架思想也是在实战中磨练出来的,实践多了吃的亏多了自然就会想解决问题的方法和策略,遇到的问题积累起来,然后加上理论依托,设计出来的东西一定稳定高效。

3.海纳百川,吸收众家之长,平时多读取相关的文档资料,只是靠自己去学,肯定不能做到知识广度,需要多交流,最好的方式就是加入开源社区,在里面吸取众人的精华,提炼成自己的。而且还要具备分享精神,在网络上总结一些经验之道,供大家分享并且从中吸取教训。

坦白而言能精通一种编程语言是一件可遇不可求的事情,比修炼自己成为一个架构师还要难,也不是每个人都能达到这种高度,如同有些技术人员一辈子可能就适合做点单元模块,整个体系就是无法驾驭。

学习C语言切入别的编程语言都会方便许多,毕竟在研究框架的时候,有了C语言的基础就能了解的更加透彻,而且在掌握了一种编程语言之后,还能有触类旁通的效果,用同样的方式复制新的编程语言速度会快很多,而且在学好一门编程语言之后再去学习别的开始时候的感觉特别清爽。

希望能帮到你。


大学生编程指南


只精通一门C语言的人远远算不上程序员,别说一个C语言了,就算你只精通Java,精通C++,都算不上程序员,为啥?请继续往下看:

一、程序员要懂业务

会一门C语言意味着你可以按照C语言的语法写出一段代码来,但也仅仅是一段简单的代码。想让代码有灵魂,也就是能够解决实际中的一个问题或者满足客户实际的一个需求。试想,客户要求你做一个网络视频传输的模块,需要你理解视频从客户服务器到终端整个的交互流程才能写出这个系统,而你只会用scanf函数从键盘读取一个数据,再用printf函数把数据输出,这只能说明你C语言语法学的好,但是有什么用?帮助客户解决了什么问题?

二、程序员要懂算法

算法是程序的灵魂,程序员在写每一个C语言代码时都不知不觉用到了某种算法。最常见的一个就是人间识别算法。

也许你用C语言指针很溜,用C语言链表很顺手,用C语言二维数组更是不在话下,但是光会写这些就能识别出一张人脸吗?显然不可能。

算法就像一个印有规则的一张纸,你看着这张纸上的规则,利用你学到的C语言语法按照规则写代码,算法的灵魂就在代码中。

三、程序员要懂多个编程语言

给客户做业务,光懂一门编程语言远远不够。比如你懂Java,安卓开发很溜。但是你要在安卓手机上实现对视频截图,此时仅懂Java是不够的,这种涉及到视频处理的底层功能得借助于native方法,而native方法往往是通过C语言实现的。

很多时候做项目都是多个编程语言相辅相成,共同完成一个目标的。


上面所说的还仅仅是程序员要学的很小的一部分,程序员要学的实在是太多,而且技术更新日新月异,要时刻保持一颗学习的心!


C语言编程答疑


只精通一门C语言的人,算不算程序员?很多程序员根本就不敢说自己精通某一门开发语言,而更多的是熟悉,真正精通了的话那是非常的牛。如果真是精通了一门开发语言,不只是程序员,更是专家级的程序员。目前看似市面上C语言招人不多,但C语言精通的人很吃香。

不只是C语言,任何能够精通一门的程序员都是很牛的程序员。绝大部分程序员也只是说很了解或熟悉某种语言,比如熟悉Java、Python、或PHP等,能够完成相对复杂一些的项目而已。真正涉及到复杂或大型的项目开发,或者涉及到开发语言深层次的使用,很多程序员就可能只能一边干项目一边借助搜索引擎或求助另外的高手了。

现在程序员数量相对过剩,只是说对项目或开发工具泛泛而知一些,但说到精通或非常了解熟悉开发工具的,这才是市场吃香的程序员。这也是即使竞争再强,都能找到工作找到饭吃的人才,这是市场所欠缺的。比如你说精通C语言,如果能够用C语言写出一个像Java这样的开发工具,那你就是牛人。能够写出一个像Linux这样的操作系统,那也是相当的牛。


如果能够精通C语言,能够发挥的地方是相当的多。C语言不但影响了现代大多数的主流编程语言,而其也是各种软件程序、嵌入式系统开发、操作系统等中使用最为广泛的工具。所以精通C语言,现在市场上还是有用处的。


目前大部分应用型程序员,基本上做到一专多能,可以说职场上就会有利了。能够把那一专的开发工具做到精通,然后也熟悉其它一两门开发语言,了解应用领域内相关的知识,在职场上能混得风生水起。


更多分享及互动,欢迎点击右上角关注【东风高扬】。


东风高扬


什么是程序员,程序员的定义是什么?看看来自于维基百科的定义,如下;

程序员(Programmer,Computer Programmer 或 Coder),它可以指在程序设计某个专业领域中的专业人士,或是从事软件撰写,程序开发、维护的专业人员。

程序员指的是在程序设计某个专业领域的专业人士或者从事程序开发和维护的专业人员。而精通 C 语言能够干什么呢?C 语言太强大了,几乎是所有大学编程的入门必须语言。我们一起来看看 C 语言能够干什么?

C 语言很强大,很牛逼,可以做如下东西:

  1. C 语言可以做嵌入式开发。51 单片机、ARM 等....

  2. C 语言可以做服务器开发,游戏服务器端大多都是 C/C++ 开发的。

  3. C 语言,可以写游戏。cocos2d-x 就是 C/C++ 写的。DirectX 也是。

  4. C 语言还可以写驱动的开发,各种硬件的驱动都是 C /C++ 写的。

  5. C 语言可以做视频图片流媒体处理。

  6. C 语言不仅如此,其实 C 语言也可以写界面,例如 soui 就是用 C 写出来的。

而且很多系统的底层都是用 C 写的。 C 语言学好了,真的可以干很多事情,你能说精通 C 语言不算程序员么?

我可以负责任的告诉你:如果你精通,精通 C 语言的话,你就是大神,不仅仅只是个小程序员。你说的可是精通啊!


非著名程序员


这年头,会写helloworld的都自称程序员。我告诉你吧,只有被公司聘请为程序员的人,才能算是程序员。


程序员江湖


我工作了十几年还未真正碰到一个真正精通C的人,自吹精通C语言的,基本都是菜鸟。高手和大神不会自吹精通C,因为C几乎渗透到计算机,微机等等有关CPU的硬件中。况且很多计算机语言只要对C熟悉,上手很快很容易,所以题主就一标题党


气球一元一个


不算。

因为敢说自己精通C语言,敢说这话的人基本都是大神级别了,已经算不上程序员这么低级的工种了。

敢说自己精通C++的,估计这种人……年薪百万算是被压榨了。一般程序员顶多算是C++入门或者会用。


薛定谔的猫老大


首先,我定义一下什么为精通 C 语言。精通 C 语言可以算非常牛逼,你要知道 C 代码是如何通过词法分析器,语法分析器,语义分析器将 C 语言转化成汇编,然后汇编代码如何汇编,生成目标文件之后再通过链接脚本才能链接成可执行文件。然后加载器如何将只执行代码进行加载执行。这才能叫精通!!!!!其他都叫熟练使用 C 语言!!!如果你精通 C 语言之后学习一门新语言的花费时间为 3 分钟。就是针对那些整天说什么 精通 C 语言其实就是辣鸡


分享到:


相關文章: