您的位置:首页 > 编程语言 > C语言/C++

程序设计学习与总结1

2014-12-16 20:36 134 查看


程序设计是程序员的必备技能,目前高校对于编程语言的教学大部分选择从经典的C/C++入手。编程语言的发展犹如史诗巨制一般灿烂,且种类繁多,但他们中一些有过短暂的辉煌,一些在专用领域有着统治地位,一些随着时代的发展而逐步被边缘化,而一些经典语言活跃至今。随着科学技术的进步,越来越多的新兴编程语言出现,伴随着时代浪潮涌向时代之巅,比如Java、PHP、苹果的Swift、谷歌的Go等,但新兴的编程语言有其独特的应用体系,如Java的可移植性和大数据平台构建,PHP的网站架构等,但这并不意味着经典语言的没落。从侧重于热门程度且每月更新的TIOBE编程语言排行榜上可以发现,C/Java/OC/C++等始终稳居前四名,这说明经典的C语言在实际应用中仍然具有无可替代的作用。

 

诚然,编程语言有上百种之多,按用途划分就有很多种类,如底层驱动,操作系统内核,服务器脚本语言,系统架构语言,数据库操作语言,数据统计分析语言等。按照语言的设计思想可以分为面向过程和面向对象,如C是面向过程的,而C++、Java等是面向对象的。对于语言的学习,还是从经典的C/C++学起,因为C家族语言具有很标准的语法定义,结构逻辑和设计思维,掌握了C/C++就具备了编程语言的思维,再学习其他语言时很容易上手。

 

学习程序设计从学习一门编程语言开始,但一定要学的深入,所谓深入指的是即掌握语言的编程技巧,也具备相关的应用实践,而且更要善于总结在学习和实践过程中的思考,并整理成博客与人分享,对于程序员来说这是一个很重要的习惯。对于C/C++语言的学习,我想从语言用途,开发环境,书籍推荐以及应用实践四个方面提出一些建议。

 

C语言是高级计算机程序设计语言,其诞生是为了开发历史上最优秀的操作系统—UNIX。1989年确立了ANSI
C标准。

语言用途:底层驱动,操作系统内核,系统中间件,网络通讯协议等

开发环境:Window操作系统下的Visual
Studio系列;Linux系统下的GNU工具链如gcc编译器、gdb调试器等

书籍推荐:必备书籍《The C Programming Language》;应用方面《Linux权威指南》+《UNIX环境高级编程》

应用实践:我很推崇在掌握基本C语言编写技巧后,进行实际应用的实践,由于Linux操作系统对于程序员重要性不言而喻,所以在Linux上进行C语言实践是非常必要的,可以通过实现基本的进程间通信(IPC)去了解C语言通过何种方式实现网络通信协议,这将会很有趣。

 

C++是基于C语言基础上开发的一种面向对象编程语言,不是简单的对C进行扩充,C++核心思想是面向对象,而这种思想决定其更有利于开发大型应用程序。

语言用途:桌面应用程序编写,管理系统设计等

开发环境:Window操作系统下的Visual
Studio系列;Linux系统下的GNU工具链如g++编译器、gdb调试器等结合QT图形界面库

书籍推荐:必备书籍《C++ Primer》,《数据结构》《Effective
C++》,《More Effective C++》等;应用方面可以去了解MFC或者Qt相关具有图形界面的应用程序设计,此类可以根据兴趣选择;进阶方面可以选择阅读《STL源码剖析》,《大话设计模式》等对C++语言更深入的理解。

应用实践:C++目前使用非常广泛,在Window操作系统桌面应用程序很多都是基与MFC开发的,随着Qt的兴起和其灵活的信号和槽机制,也使得C++在开发图形界面应用程序时多了个选择。仍然建议,在学习C++基础的时候,应该对数据结构和算法等概念要有详尽的理解,这会对程序设计有很大的帮助。

 

2014年对于互联网来说是意义非凡的一年,京东、阿里巴巴先后上市,
BAT忙于三巨头收购入股构建生态圈。随着O2O(Online to Offline)兴起,互联网行业不仅改变了我们的生活方式,也改变了我们的消费习惯,更提升了程序员在社会中的地位。技术驱动型的公司如谷歌,亚马逊,阿里巴巴等,因其优异的技术能力得以在未来的竞争中具有明显优势,而程序员功不可没。

 
   对于工科学生来说,这意味着程序员成就了互联网,也让大数据等热门技术应用于生活中的方方面面。但更希望程序员能成为一个有想法的人,而是否有想法将决定你是永远的码农还是未来的架构师。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息