Tag: 编码风格

SQL格式标准

在我上一份工作中,我们研究了一个非常重要的数据库应用程序,并且开发了一些格式化标准,这样我们就可以用通用的布局编写SQL。 我们也开发了编码标准,但是这些都是更具体的平台,所以我不会在这里讨论它们。 我很想知道其他人使用SQL格式标准。 与大多数其他编码环境不同,因为我没有在网上find很多共识。 要涵盖主要的查询types: select ST.ColumnName1, JT.ColumnName2, SJT.ColumnName3 from SourceTable ST inner join JoinTable JT on JT.SourceTableID = ST.SourceTableID inner join SecondJoinTable SJT on ST.SourceTableID = SJT.SourceTableID and JT.Column3 = SJT.Column4 where ST.SourceTableID = X and JT.ColumnName3 = Y 在“select”,“from”和“where”之后,对换行有一些不同意见。 select线上的意图是允许其他操作员(如“顶部X”)不改变布局。 接下来,简单地在关键查询元素之后保持一致的换行,似乎导致了良好的可读性水平。 在“from”和“where”之后放弃换行是一个可以理解的修改。 然而,在诸如下面的“更新”这样的查询中,我们看到“where”之后的换行给了我们很好的列alignment。 同样,在“group by”或“order by”之后的换行使我们的列布局清晰易读。 update TargetTable set ColumnName1 = @value, ColumnName2 […]

大型项目的首选C / C ++标题策略?

在处理一个大的C / C ++项目时,你有关于源代码或头文件中#include的一些特定规则吗? 例如,我们可以设想遵循这两个过分的规则之一: .h文件中禁止#include ; 每个.c文件都要包含所有需要的头文件 每个.h文件都应该包含所有的依赖关系,即它应该能够单独编译而不会出现任何错误。 我想在任何项目之间都有权衡,但是你的是什么? 你有更具体的规则吗? 或任何解决scheme争论的任何链接?

为什么写'sizeof(char)`如果字符是1是标准的?

我正在做一些C编码,阅读了一些C代码后,我注意到有代码片段 char *foo = (char *)malloc(sizeof(char) * someDynamicAmount); 所以我想问问什么更多的C – ISH方式来分配char数组的内存? 使用sizeof(char)并假定代码是针对任何标准更改的代码,或省略它并直接使用该数字?

你如何testing你的Request.QueryString variables?

我经常使用Request.QueryString[]variables。 在我的Page_load我经常做这样的事情: int id = -1; if (Request.QueryString["id"] != null) { try { id = int.Parse(Request.QueryString["id"]); } catch { // deal with it } } DoSomethingSpectacularNow(id); 这一切似乎有点笨重和垃圾。 你如何处理你的Request.QueryString[] ?

什么是你最喜欢的C ++编码风格成语

你最喜欢的C ++编码风格成语是什么? 我正在问风格或编码排版,比如放大括号的地方,关键字后面是否有空格,缩进的大小等。这与最佳做法或要求相反,例如总是使用delete[]删除数组。 下面是我最喜欢的一个例子:在C ++类初始化程序中,我们把分隔符放在行的前面,而不是后面。 这使得保持最新更容易。 这也意味着版本之间的源代码控制差异更为清晰。 TextFileProcessor:: TextFileProcessor( class ConstStringFinder& theConstStringFinder ) : TextFileProcessor_Base( theConstStringFinder ) , m_ThreadHandle ( NULL ) , m_startNLSearch ( 0 ) , m_endNLSearch ( 0 ) , m_LineEndGetIdx ( 0 ) , m_LineEndPutIdx ( 0 ) , m_LineEnds ( new const void*[ sc_LineEndSize ] ) { ; }

Visual Studio中的Alphabetizing方法

有什么插件或工具可用于Visual Studio 2008 alphabetize方法? 理想情况下,我想要一个工具,将按字母sortingselect,或指定types(即只有方法,而不是成员variables),自动或按需。

设置顶部和左侧的CSS属性

出于某种原因,我无法使用以下JavaScript设置“顶部”和“左侧”的CSS属性。 var div = document.createElement('div'); div.style.position = 'absolute'; div.style.top = 200; div.style.left = 200; document.body.appendChild(div); 使用Firebug我可以看到div获取的position设置为"absolute"但top和left属性没有设置! 这是为Firefox 3.6。

在方法中使用const而不是variables的优点

每当我有方法中的局部variables,ReSharperbuild议将它们转换为常量: // instead of this: var s = "some string"; var flags = BindingFlags.Public | BindingFlags.Instance; // ReSharper suggest to use this: const string s = "some string"; const BindingFlags flags = BindingFlags.Public | BindingFlags.Instance; 鉴于这些是真正的恒定值(而不是variables),我明白,ReSharperbuild议将它们改为const。 但除此之外,使用const(例如更好的性能),还有什么其他的优势,certificate使用const BindingFlags而不是方便可读的var关键字吗? 顺便说一句:我只是在这里find一个类似的问题: Resharper总是build议我做conststring,而不是string ,但我认为这是关于一个类的领域,我的问题是关于局部variables/常量。

isset()vs strlen() – 一个快速/明确的string长度计算

我遇到这个代码… if(isset($string[255])) { // too long } isset()的速度在6到40之间 if(strlen($string) > 255) { // too long } isset()的唯一缺点是代码不清楚 – 我们不能立即告诉正在做什么(见pekka的答案)。 我们可以在一个函数strlt($ string,255)中包装isset(),但是我们放弃了isset()的速度优势。 我们如何使用更快的isset()函数,同时保持代码的可读性? 编辑:testing显示速度http://codepad.org/ztYF0bE3 strlen() over 1000000 iterations 7.5193998813629 isset() over 1000000 iterations 0.29940009117126 编辑2:这是为什么isset()更快 $string = 'abcdefg'; var_dump($string[2]); Output: string(1) “c” $string = 'abcdefg'; if (isset($string[7])){ echo $string[7].' found!'; }else{ echo 'No character found at […]

检索项目的父项时出错:找不到与给定名称相匹配的资源'@android:style / TextAppearance.Holo.Widget.ActionBar.Title'

我正在实现ActionBar设置文本的颜色使用这个样式脚本在XML中,但得到错误,当我运行我的应用程序的时间有没有人知道我有什么想念 这是我的style.xml文件 <!– Start with the Holographic Light theme –> <style name="Theme.IOSched" parent="android:style/Theme.Holo.Light"> <item name="android:windowBackground">@drawable/window_background</item> <item name="android:actionBarStyle">@style/ActionBar</item> <!– custom attributes <item name="textHeaderMaxLines">@integer/text_header_max_lines</item> <item name="trackAbstractMaxLines">@integer/track_abstract_max_lines</item>–> </style> <style name="Theme.IOSched.Home" parent="style/Theme.IOSched"> <item name="android:windowBackground">@drawable/window_background_home</item> <item name="android:actionBarStyle">@style/ActionBar</item> </style> <style name="ActionBar" parent="android:style/Widget.Holo.Light.ActionBar"> <item name="android:background">@color/actionbar_background</item> <item name="android:textColor">@color/accent_1</item> <item name="android:titleTextStyle">@style/ActionBarText</item> </style> <style name="ActionBarText" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title"> <!– getting here error–> <item name="android:textColor">@color/accent_1</item> <item name="android:textStyle">bold</item> </style> […]