1.不要使用相对路径 常常会看到: require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. 因此会检查过多路径. 如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录. 另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了. 因此最佳选择是使用绝对路径: define('ROOT' , '/var/www/project/'); require_once(ROO…
提高OC代码质量的小心机 一.OC特性 OC 为 C 语言添加了面向对象特性,是其超集; OC 使用动态绑定的消息结构,也就是,在运行时才会检查对象类型; 接收一条消息后,究竟应执行何种代码,由运行期环境来决定,而非编译器;ps:理解C语言的核心概念有助于写好OC程序,尤其要掌握内存模型与指针. 二.在类头文件中尽量少引入其他头文件 除非有必要,否则不要引入头文件.一般来说,应在某个类的头文件中使用 向前声明@class MEPerson;来提及别的类,并在实现文件中引入那些类的头文件.这样做可…
提高Java代码质量的Eclipse插件之Checkstyle的使用详解 CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具.它能够自动化代码规范检查过程,从而使得开发人员从这项重要但是枯燥的任务中解脱出来. CheckStyle检验的主要内容 ·Javadoc注释 ·命名约定 ·标题 ·Import语句 ·体积大小 ·空白 ·修饰符 ·块 ·代码问题 ·类设计 ·混合检查(包活一些有用的比如非必须的System.out和printst…
在这篇文章中,我将通过不同的自动化工具如CheckStyle,FindBugs,PMD以及Android Lint来介绍(如何)提高你的安卓代码质量.通过自动化的方式检查你的代码非常有用,尤其当你在一个团队中工作,为了在你的代码中保持严格的语法格式以及避免很多坏习惯和错误.我将仔细地介绍如何在你空闲的时候直接运用这些工具通过Gradle构建脚本以及如何配置它们. Fork该示例 我强烈建议你拷贝下这个项目工程,尽管我将介绍的案例都是来自它.与此同时,你将能够测试下自己对这些工具的了解情况. 关于…
1.不要使用相对路径 常常会看到: require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. 因此会检查过多路径. 如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录. 另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了. 因此最佳选择是使用绝对路径: define('ROOT' , '/var/www/project/'); require_once(ROO…
1.不要使用相对路径 常常会看到: ? 1 require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. 因此会检查过多路径. 如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录. 另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了. 因此最佳选择是使用绝对路径: ? 1 2 3 4 define('ROOT' , '/var/www/project/'); re…
[规范习惯]命名规范1-命名空间 使用<Company>.<Component>2-程序集不必与命名空间同名3-命名空间使用附复数4-避免与FCL的类型重名5-类型名称用名词6-接口名称用形容词,以I做前缀7-派生类命名用基类名做后缀8-泛型参数以T做前缀9-枚举名称用复数,枚举元素用单数10-公开元素命名用PascalCasing法[属性/字段/方法]11-私有元素命名用camelCasing法[变量/参数名/私有字段]12-使用类名作为属性名13-有条件使用前缀(不建议)14-…
随着富 Web 前端应用的出现,开发人员不得不重新审视并重视 JavaScript 语言的能力和使用,抛弃过去那种只靠“复制 / 粘贴”常用脚本完成简单前端任务的模式.JavaScript 语言本身是一种弱类型脚本语言,具有相对于 C++ 或 Java 语言更为松散的限制,一切以函数为中心的函数式编程思想也为开发人员提供了更加灵活的语法实现.然而,这种灵活性在带来高效的同时,也成为初学或者经验不足的 JavaScript 开发人员的噩梦.形式各异的代码风格.隐含错误的代码行为,严重影响了整体代码…
一.分析  常量的声明是每一个项目中不可或缺的,在Java1.5之前,我们只有两种方式的声明:类常量和接口常量.不过,在1.5版之后有了改进,即新增了一种常量声明方式,枚举常量.代码如下: enum Season{ Spring,Summer,Autumn,Winter; } 二.场景  那么枚举常量与我们的经常使用的类常量和静态常量比有什么优势呢?  1.枚举常量更简单  先把Season枚举翻译成接口,代码如下: interface Season{ int Sprint = 0; int S…
通过SetStretchMode(STRETCH_HALFTONE)实现,同时注意重新设置画刷起点 LRESULT CMainDlg::OnPaint(UINT uMsg, WPARAM wParam, LPARAM /*lParam*/, BOOL& bHandled) { CPaintDC dc(m_hWnd); CDC memDC; memDC.CreateCompatibleDC(dc); memDC.SelectBitmap((HBITMAP)m_cap_pic); dc.SetStr…
http://www.cnblogs.com/52php/p/5658031.html 不要直接使用 $_SESSION 变量 某些简单例子: $_SESSION['username'] = $username; $username = $_SESSION['username']; 这会导致某些问题. 如果在同个域名中运行了多个应用, session 变量可能会冲突. 两个不同的应用可能使用同一个session key. 例如, 一个前端门户, 和一个后台管理系统使用同一域名. 从现在开始, 使…
如何编写可维护的JavaScript代码 代码风格及规范 构建检查工具 jshint配置 http://jshint.com/docs/options/ http://www.cnblogs.com/code/articles/4103070.html http://www.iteye.com/news/28028-JavaScript-code-style-guide https://github.com/fouber/fis-lint-jshint https://github.com/al…
CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发者遵守某些编码规范的工具.它可以自己主动化代码规范检查过程.从而使得开发者从这项重要可是枯燥的任务中解脱出来. CheckStyle检验的主要内容  ·Javadoc凝视  ·命名约定  ·标题  ·Import语句  ·体积大小  ·空白  ·修饰符  ·块  ·代码问题  ·类设计  ·混合检查(包活一些实用的比方非必须的System.out和printstackTrace) 从上面能够看出,CheckSty…
17.不要直接使用 $_SESSION 变量 简单例子: $_SESSION['username'] = $username; $username = $_SESSION['username'];   改进后: define('APP_ID' , 'abc_corp_ecommerce');  //Function to get a session variable  function session_get($key)  {  $k = APP_ID . '.' . $key;  if(iss…
一.OC特性 OC 为 C 语言添加了面向对象特性,是其超集; OC 使用动态绑定的消息结构,也就是,在运行时才会检查对象类型; 接收一条消息后,究竟应执行何种代码,由运行期环境来决定,而非 编译器; ps:理解C语言的核心概念有助于写好OC程序,尤其 要掌握 内存模型 与 指针. 二.在类头文件中尽量少引入其他头文件 除非有必要,否则不要引入头文件.一般来说,应在某个类的头文件中使用 向前声明(@class MEPerson;)来提及别的类,并在实现文件中引入那些类的头文件.这样做可以尽量降低…
提高代码质量-工具篇 注:这是一篇翻译文章,原文:How to improve quality and syntax of your Android code,为了理解连贯,翻译过程中我修改了一些陈述逻辑和顺序,同时也加了一些自己的补充. 在这片文章中,我将从工具使用的角度上讲述如何提高 Android 代码质量,这些自动化工具包括 Checksytle.Findbugs.PMD 和 Android Lint. 团队中代码意识不一致,水平参差不齐,代码风格迥异,定下的规范也是熟视无睹.这时候就需…
英语每日阅读---5.VOA慢速英语(翻译+字幕+讲解):美国人口普查局表示美国人受教育程度提升 一.总结 一句话总结: a.Thirty-four percent - college degree:Thirty-four percent of U.S.-born Americans have a four-year college degree. b.Americans outside have lower education:The new study found that, in 2017…
说实话,在代码质量方面,PHP 的压力非常大.通过阅读本系列文章,您将了解如何提高 PHP 代码的质量. 我们可以将此归咎于许多原因,但这肯定不仅仅是因为 PHP 生态系统缺乏适当的测试工具.在本文中,我想向您展示一个简单的设置,用于项目的基本质量测试. 我不会详述任何特定的工具,而是专注于设定测试环境. 本文中有一个演示代码可以在 GitHub 上找到:https://github.com/mkosiedowski/php-testing-demo如果你对这篇文章中的例子有任何问题,可以参考.…
Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有价值的宝藏.有些Linux命令很少人知道,但不管你是新手还是高级用户,它们都非常方便有用. 少有人知道的Linux命令 这篇文章的目的是介绍一些少有人知的Linux命令,它们一定会高效地帮你管理你的桌面/服务器. 1. sudo !!命令 没有特定输入sudo命令而运行,将给出没有权限的错误.那么,…
原文:很少有人会告诉你的Android开发基本常识. 文章介绍了一些关于开发.测试.版本管理.工具使用等方面的知识.…
c++有一些在现实世界中很少看到的结构.这些结构有着自己的用法,但是要特别小心保守的予以运用.就像是网站 The Old New Thing首页标题上面的说的那样: “代码通常被读的次数原因超过了被写的次数,所以计划要遵循此道.” 在下面将介绍一些很少有人能够知道的c++构造函数,包括其中的运用场景,语法和陷阱. 运用场景 try函数块的应用场景一般局限于下面几个: (1)构造函数初始化列表: (2)基类构造含数据: (3)析构函数: 语法 对于函数 void f() try { /*...*/…
Microsoft Office是微软公司开发的一套基于 Windows 操作系统的办公软件套装.常用组件有 Word.Excel.Powerpoint等.当我们不需要再用了或者想安装旧版本的话,首先要卸载原有的版本.一般我们都是进控制面板卸载或者用软件管家卸载,但是这样操作常常会伴随各种问题,最常见的就是卸载不干净,使得安装其他版本失败. 其实微软公司提供了一套相应的卸载工具,可以将office软件从我们的系统彻底删除.卸载方法也非常简单,我们以卸载office2003为例. 1.首先双击打开…
之前在Windows 7中,只要关闭了UAC,给当前账户管理员权限,任何程序都会以管理员身份启动.现在,在Windows 10上就行不通了.而VS又需要管理员权限才能使用附加调试等一些功能.虽然我们可以右键"以管理员身份运行",但每次都这么搞,真的很烦人.经过一番gg,终于找到了如何默认以管理员权限启动VS的方法. 首先定位到VS的主程序,(可以通过VS的快捷键定位)devenv.exe 然后右键菜单中选择"Troubleshoot compatibility"(兼…
本文来告诉大家在C#很少有人会发现的科技.即使是工作了好多年的老司机也不一定会知道,如果觉得我在骗你,那么请看看下面 因为C#在微软的帮助,已经从原来很简单的,到现在的很好用.在10多年,很少人知道微软做了哪些,我在网上找了很多大神的博客,然后和很多大神聊天,知道了一些科技,所以就在这里说.如果大家看到这个博客里面没有的科技,请告诉我. 无限级判断空 在 C# 6.0 可以使用??判断空,那么就可以使用下面代码 var v1 = "123"; string v2 = null; str…
原文:WPF 很少人知道的科技 本文介绍不那么常见的 WPF 相关的知识. 本文内容 在 C# 代码中创建 DataTemplate 多个数据源合并为一个列表显示 使用附加属性做缓存,避免内存泄漏 使用 ConditionalWeakTable 做非 WPF 版本的缓存 使用代码模拟触摸 模拟 UWP 界面 模拟 Fluent Design 特效 在 C# 代码中创建 DataTemplate 大多数时候我们只需要在 XAML 中就可以实现我们想要的各种界面效果.这使得你可能已经不知道如何在 C…
title author date CreateTime categories C# 很少人知道的科技 lindexi 2019-11-29 10:12:43 +0800 2018-03-16 08:50:14 +0800 C# 本文来告诉大家在C#很少有人会发现的科技.即使是工作了好多年的老司机也不一定会知道,如果觉得我在骗你,那么请看看下面 因为C#在微软的帮助,已经从原来很简单的,到现在的很好用.在10多年,很少人知道微软做了哪些,我在网上找了很多大神的博客,然后和很多大神聊天,知道了一些…
原文:XAML 很少人知道的科技 - walterlv XAML 很少人知道的科技 发布于 2019-04-30 02:30 更新于 2019-04-30 11:08 本文介绍不那么常见的 XAML 相关的知识. 本文内容 Thickness 可以用空格分隔 使用逗号(,)设置多值枚举 使用加号(+)设置多值枚举 设置 Url 型的 XAML 命名空间(xmlns) 设置默认的 XAML 命名空间前缀 让你做的控件库不需要 XAML 命名空间前缀 Thickness 可以用空格分隔 当你用设计器…
title author date CreateTime categories C# 很少人知道的科技 lindexi 2019-05-27 19:33:36 +0800 2018-03-16 08:50:14 +0800 C# 本文来告诉大家在C#很少有人会发现的科技.即使是工作了好多年的老司机也不一定会知道,如果觉得我在骗你,那么请看看下面 因为C#在微软的帮助,已经从原来很简单的,到现在的很好用.在10多年,很少人知道微软做了哪些,我在网上找了很多大神的博客,然后和很多大神聊天,知道了一些…
1. 摘要 这是烂代码系列的第二篇,在文章中我会跟大家讨论一下如何尽可能高效和客观的评价代码的优劣. 在发布了关于烂代码的那些事(上)之后,发现这篇文章竟然意外的很受欢迎,很多人也描(tu)述(cao)了各自代码中这样或者那样的问题. 最近部门在组织bootcamp,正好我负责培训代码质量部分,在培训课程中让大家花了不少时间去讨论.改进.完善自己的代码.虽然刚毕业的同 学对于代码质量都很用心,但最终呈现出来的质量仍然没能达到“十分优秀”的程度. 究其原因,主要是不了解好的代码“应该”是什么样的.…
如果能在构建代码前发现代码中潜在的问题会怎么样呢?很有趣的是,Eclipse 插件中就有这样的工具,比如 JDepend 和 CheckStyle,它们能帮您在软件问题暴露前发现这些问题.在 让开发自动化 的本期文章中,自动化专家 Paul Duvall 将带来一些关于 Eclipse 插件的例子,您可以安装.配置和使用这些静态分析插件,以便在开发生命周期的早期预防问题. 关于本系列 作为一名开发人员,我们的工作就是为终端用户将过程自动化:然而,我们当中有很多人却忽视了将我们自己的开发过程自动化…