| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 938 人关注过本帖
标题:我该如何提高自己的程序设计能力
取消只看楼主 加入收藏
liangquan
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-4-13
收藏
 问题点数:0 回复次数:0 
我该如何提高自己的程序设计能力
我学习了VC、C++有一、两年的时间了。当然由于我不是计算机专业的(机械),编写程序只是爱好,所以程序编写的不专业。我现在非常希望提高我的编程能力,但我不知该如何下手。

我的感觉,程序关键要设计的好,所以我想我的问题应该是“如何提高自己的程序设计能力”,大家有什么建议么?

我把我的问题具体化吧:

1)我应该采用STL技术么?STL我只看了一点点,只粗略的会用vector,list。好像大型程序数据结构是关键,如果程序使用了STL,就不用自己编写各种链表、队列了,可是如果使用了STL,好像工程就不能导出成DLL了吧?我听说,大型一点的程序都是分模块编写的,比如有的模块编写成了DLL来调用,如果采用了STL,是否意味着放弃了DLL?

2)我应该采用什么样的编译器?推荐用VS6.0,可都说VS6.0对标准C++支持的不好。如果开发一个大型程序,用到标准C++,STL,VS6.0能搞定大部分的问题么?现在软件行业开发程序,用什么编译器?

暂时就这些问题吧。我觉得我的程序设计的不好,开发大一点的程序就混乱了,关键是基础不行,我是否应该补一下数据结构(有了STL,数据结构是否只是粗浅的知道就行了?)和其它计算机基础知识才行?补充哪些方面的知识呢?

这些问题可能太基础了,但还是希望得到大家的指点,非常感谢!


我的问题可能从专业角度看十分的离谱、可笑,可是我真诚的希望得到大家的回答。

我现在遇到的主要问题是这样的:

我想(正在)开发一个CAM(计算机辅助制造)软件。

软件涉及到许多的技术,比如OpenGL技术用来显示图形。

1)图形有许多种类,比如直线、圆弧、样条曲线、样条曲面。其中描述样条曲线是用一系列的点来描述的,点的个数是随机的、不确定的,所以用可以动态变化的数据结构来保存最合适不过了。我想用vector来保存应该从标准C++角度来描述比较合理吧?

2)还有,由于软件越开发越大,我试图采用分层的设计思想。比如样条曲线的核心算法为一层,将样条核心算法的计算结果送到OpenGL中显示为一层。这样,就应该把样条曲线的核心算法的一层封装成DLL,供上一层调用,才能比较的方便,是不是呢?

3)在分层的设计过程中,打算采用直线、圆弧、样条曲线、曲面用不同的类来进行表示,充分利用面向对象的开发方法,类的继承机制来组织。比如样条曲线类,其数据成员为一个vector类型的变量,构造函数的参数也是vector类型的。因为不同的类型,只有借助模板机制才能够比较方便的用统一的风格进行保存。那么我就遇到问题了,这样设计的样条曲线类,是不是就无法导出成DLL了?

4)或者上面的思路不对,我应该良好的进行点、直线、圆弧、样条曲线、曲面类的设计,设计好他们的抽象基类。用动态的数组保存他们的抽象基类的对象(或指针),来进行遍历。而底层的数据结构(比如动态数组),就只好自己开发了。这种数据结构不使用模板机制,而用保存抽象类的形式来进行组织。不使用模板机制,当然可以导出DLL了吧?

不知我说明白了没有。我曾经看过林锐(不知您知道不)开发的程序,他采用的我说的第4)中方案,为什么没用stl来开发,还是当时不太流行?

可能问的不专业,但还是期待您的答复,真诚的感谢。

我可能缺乏一些基础知识,如果您看出来了,麻烦您告诉我,我去学习。
搜索更多相关主题的帖子: 程序设计 能力 
2008-05-29 14:25
快速回复:我该如何提高自己的程序设计能力
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019076 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved