首页IT科技编程语言中真正跨平台的是什么语言类型(成为跨平台的C++程序员 C++ language ITeye论坛)

编程语言中真正跨平台的是什么语言类型(成为跨平台的C++程序员 C++ language ITeye论坛)

时间2025-09-18 20:33:19分类IT科技浏览6201
导读:最近看到javaeye 上的坛友,想达到 “有勇气说自己会c++,标准c++,而且能跨平台” 这样的目标。身边有不少想学习C++的朋友,就这个问题,说说我的理解...

最近看到javaeye 上的坛友                ,想达到

“有勇气说自己会c++                      ,标准c++        ,而且能跨平台                ” 这样的目标              。身边有不少想学习C++的朋友            ,就这个问题                      ,说说我的理解

跨平台的C++程序员也曾是我的目标           ,不过多年来        ,我只有在windows和 unix 下的开发经验                       ,所我的经验来自于这两大平台                        。

带具体任务进行学习

如果没有具体的任务做为目标              ,你的学习将没有效率可言    ,并且知识都本都停留在书面上                        ,过段时间                  ,你又基本上都忘记        。

因此在学习C++过程要不断给自

己设定任务          。 并且将这个任务不断非富,不断重构

                       。

以下我举例来说明: 编写双人对弈的五子棋 ver 1.0

在unix下使用GCC + MAKE + VIM (跨平台的编辑器)

来完成这个任务                    ,熟悉C++的基本语法                      ,学习使有类或者结构来表达领域的概念            。在这个期间尽可能的少用库(除非不得已)    ,界面显示是次要问题                ,在控制台上

显示即可       。

达到标准: 五子棋可以双人对弈                      ,源代码有信心给人看, 基本符合代码大全的标准 : )

目的: GNU下的开发环境, C++ 程序对 类              、指针                        、基本算法        、内存管理问题 的学习                      。

五子棋 ver 2.0 (重构 ver 1.0)

自己学习模版          、STL 以及 Boost 然后来重构之前的 ver 1.0 版本                。 尽可能的使用STL, 使用boost 的

smarty 智能支持来管理内存    。

达到标准: 程序代码行数要减少至原来的 50% 以下                      。

目的: 对泛型抽象及模板技术的初步学习以及熟悉 STL 库和 BOOST 库

五子棋 ver 3.0 (增加对弈结果保存以及复盘的功能)

加上以上两个功能        ,需要做不少的工作                    。要考虑各种外部资源不满足的情况。

达到标准: 功能上满足要求            , 并且能实现破坏性测试( 存盘文件不存大                      , 棋局文件内容错误)

目的: 数据保存                       、对象序列化            、 异常       、异常安全                      、外部资源管理的学习

五子棋 ver 4.0 (支持网络对战)

学习网络编译           ,基于TCP来实现

五子棋 ver 5.0 (支持与电脑对战)

进行算法的学习        ,提供人工智能能力                       ,并有难度级别

五子棋 ver 6.0 (提供可操作的界面)

可操作的界面              ,可以是windows 下的    , 也可以是linux 还可以考虑与python 结合 学习混合编程                  。 另外这个只影响界面层的代码                        。

达到以上6个版本                        ,你已经是一个跨平台的标准C++的程序员                  ,以后完全可以自己来解决C++领域的大部份问题    。 另外你的这个作品,对于找工作来说                    ,已是利器                      ,无往而不胜

在学习过程注意几点:

除了版本1.0 和 6.0 外    ,程序要尽可能的使用标准库                ,跨平台的库 放弃使用便捷的IDE                      , 在unix 下 vim + gcc + gdb + make 才是C++开发的主流.

有选择的阅读

C++ 书藉非常之多        , 其它如设计领域                、网络编程    、多线程多进程编程                      、界面开发 等资料十在是太多              。你无法全部读完            ,还是有选择的来阅读                        。

书一定要

区分这书是手册类型的                      ,还是系统理论型

的        。

前者在需要时查就可以           ,后者则需要精读        ,有了实战后再读          。

推荐几本需要精读的书

《深入理解计算机系统》 《C++ 程序设计语言》 《代码大全》 《C++ 语言的设计和演化》 《C++ Templates 中文版》 《unix环境高级编程》 豆瓣上我推荐的书单 http://book.douban.com/doulist/518190/

其它的书找点电子版来读吧                       ,或以后再读                       。

blog http://zuowj.com

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
站内流量与站外流量的关系(SEO关键词:站内与站外流量数据趋势分析) 钱多多浏览广告赚钱(如何加入点刷广告赚钱吗-“钱多多”广告机“SCMA”**,谨防点广告赚钱骗局,众多投资人血汗钱打水漂!!)