最先进项目中需要用到C++做开发,所以开始学习C++,典型的眼高手低,刚开始觉得还算上手,之后越学越觉得复杂。
相比C#,C++确实需要开发者投入更多的精力去设计与维护。
以下是最近对C++开发的一些感受,记下它们,希望在今后的日子有所帮助。
1.命名规范很重要。它能让代码具有很高的可读性,代码文档干净,统一
一套统一的系统内部,确实需要重视命名规范,之前在Vistual Studio下进行C#开发,由于IDE的强大和对C#的熟练,没有养成良好的代码风格,如今在Xcode下才明白找不到变量的痛苦。
2.基础知识必须过硬
C++开发中,很多问题都出现的那么突然,只能根本出发,一步一步排除问题,这就要求对整个计算机工作原理有一定的认识,再有就是数据结构和算法以及通用设计模式等等,能让我们更快发现问题,并且解决问题
3.高度的警觉性
.NET优势在于它强大.NET Framework提供了内存管理机制和强大的公共基础库,让开发者把精力放在产品的业务逻辑本身。由于.NET慷慨大方,使得我在开发过程中不拘小节,不用在乎内存管理,不必要太注重性能,转入C++之后,处处不顺,时间花在了最基础的地方。所以以后的日子里,无论做什么,都必须认真仔细,不要再没必要的地方浪费时间
4.心态决定一切
^ ^
THE END . 2013-12-07-02:08:08 . Stephen Lee to Self
随机推荐
-
itextSharp 对pdf的每个页面添加footer/header
static void SetAllHeaderFooter(string inputPath) { PdfReader reader=new PdfReader(inputPath); PdfSta ...
-
Linux的inode的理解 [转]
Linux的inode的理解 [转] 一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存51 ...
-
什么是透明(和Windows主题有关系),研究TLable和TPanel是两个好例子
在controls.pas单元里只有判断,没有赋值,所以一直不是很明白.于是在stdCtrls.pas里找了几个例子,直观加深一下印象: constructor TCustomLabel.Create ...
-
use EXPORT和use EXPORT_OK
我不明白 use EXPORT和use EXPORT_OK的区别,大多数资料提到了一些: @Export 允许 导出模块的函数和变量到用户的名字空间使用标准的导入方法. 这种方式,我们不需要创建模块的 ...
-
response.sendRedirect 传递参数的问题
response.sendRedirect是通过浏览器来做转向的. 假设在A.jsp页面设置request.setAttribute("username","admin& ...
-
记一个手游app数据文件的破解
出于一些非常猥琐的须要,同一时候自己也想做一些新奇的尝试,周末用了大半天时间破解了某款手游的数据文件. 过程比我预想的要顺利,主要原因还是我们开发者的懈怠.咳咳. 步骤例如以下: 下载安装包,解压,发 ...
-
Windows Azure中的Affinity Group
Affinity Group: (近亲组?个人认为直译为近亲组更好一些,不知道官方是怎么翻译的). 如何创建Affinity Group 1. 进入https://manage.windowsazur ...
-
让MFC程序隐藏运行界面
在MFC中隐藏运行界面确实花花点功力. 针对对话框程序,一种不是很好地实现方法是在OnPaint函数中添加如下代码: CWnd::ShowWindow(SW_HIDE); 添加后执行会发现屏幕会闪烁一 ...
-
javascript中外部js文件取得自身完整路径得办法
原文:javascript中外部js文件取得自身完整路径得办法 有时候我们需要引入一个外部js文件,这个js文件又需要用到自己的路径或者是所在的目录,别问怎么又这么变态的需求,开发做久了各种奇葩需求也 ...
-
Android菜鸟的成长笔记(6)——剖析源码学自定义主题Theme
原文:Android菜鸟的成长笔记(6)--剖析源码学自定义主题Theme 还记得在Android菜鸟的成长笔记(3)中我们曾经遇到了一个问题吗?"这个界面和真真的QQ界面还有点不同的就是上 ...