谦卑的程序员






         静水流深

April 15, 2009

PortableApps软件介绍 - 开发篇

Filed under: T.兵器谱 — Eric Tou @ 2:42 pm
Tags: , ,

  PortableApps.com将很多实用工具打包为Portable版本,以下是部分开发工具。

Firefox Portable

  没错,就是Firefox。没有插件,Firefox一无是处,有了插件,Firefox无所不能。作为一名“业内人士”,如果你在用Firefox但是没装过插件,那千万让别人知道。具体的以后在《Firefox插件 - 开发篇》介绍。

NotePad++

  Linux平台上有Vi、Emacs等强大的编辑器,但是相信我,学习成本很高,除了跨平台的使用习惯统一之外,专注于Windows的可以略过。

  Windows平台上开源免费的有NotePad2和NotePad++,两者都支持相当多的编程语言。相比较之下NotePad++个人感觉略强,而且有Portable版本。大家可以用来替代需要注册的UltraEdit。

  曾经有人说一款编辑器如果不支持脚本就算不上真正的编辑器,这个就见仁见智了。

KompoZer Portable

  Nvu是一款类似于FrontPage和Dreamweaver的免费的网页编辑器,但是目前已经停止更新。KompoZer是Nvu的非官方修正版本,并且继续保持更新。

  我用它来代替用了很久的Dreamweaver UltraDev。

WinMerge Portable

  版本比较工具,写代码的都应该知道干嘛的。

FileZilla Portable

  开源免费的FTP客户端,网站开发都会用到。虽然不是很完美,但是够用。不要忘记FlashFXP和CuteFTP是要注册地。

WinSCP Portable

  支持SFTP、FTP和SCP的客户端(FileZilla也已经支持SFTP),所以和FileZilla孰优孰劣是见仁见智的问题。

PuTTY Portable

  telnet和SSH客户端,网站开发操作远程主机的时候用得到。

PortableApps.com AppCompactor

  应用程序压缩工具,用来减可执行文件体积的,向来也就只有开发人员用,就归到开发篇里了。

March 5, 2009

Linux平台的SVN客户端RapidSVN

Filed under: T.兵器谱 — Eric Tou @ 8:00 pm
Tags: , , , ,

Linux平台上的SVN客户端选择

  在Windows上常用的SVN图形化客户端是TortoiseSVN,那么在Linux平台上呢?<Comparison of Subversion clients> 列举了Subversion的客户端。

  当然用不着在这么多选择里一一比较,从搜索的结果来看,比较多用到的是RapidSVN和eSvn(这两款都是跨平台的,支持Win、Linux、Mac OS平台)。至于选择RapidSVN的原因么,是因为RapidSVN在Subversion的老巢Tigris.org可是受到推荐的,而eSVN的主页我没打开,理由就是这么简单。

tigris_featured_projects

RapidSVN的特点

  • Simple - provides an easy to use interface for Subversion features
  • 简单 - 为Subversion的功能提供易用的界面
  • Efficient - simple for beginners but flexible enough to increase productivity for experienced Subversion users
  • 高效 - 对于初学者很简单,同时对于有经验的Subversion用户足够灵活以提高生产率
  • Portable - runs on any platform on which Subversion and wxWidgets can run: Linux, Windows, Mac OS/X, Solaris, etc.
  • 可移动 - 能在任何Subversion和wxWidgets能够运行的平台上运行:Linux、Windows、Mac OS/X、Solaris及其它(个人认为应该是Cross-platform跨平台比较贴切)
  • Fast - entirely written in C++
  • 快速 - 完全用C++编写
  • Multilingual - it has been translated to many languages already: German, French, Italian, Portuguese, Russian, Ukrainian, Simplified Chinese, Japanese
  • 多语言 - 已经被翻译为多国语言
  • Full support for Unicode
  • 完全支持Unicode编码

在Ubuntu上安装RapidSVN

  在大多数主要的Linux发行版本中都提供预编译的RPM格式的RapidSVN安装包,相关的信息请参考RapidSVN关于Linux/Unix安装的在线帮助

  RapidSVN已经是Debian发行版(也包括Ubuntu)的一部分,可以简单地使用Package Manager进行安装。

  比如在Ubuntu Server的桌面环境下,从菜单栏运行[Applications] –> [Debian] –> [Applications] –> [System] –> [Package Management] –> Synaptic Package Manager,找到RapidSVN并选择安装,系统会添加其它需要所需组件,提示插入系统的安装盘,然后到官方网站下载并完成安装。

synaptic_package_manager 

  之后打开[Applications] –> [Programming],就会发现RapidSVN的快捷方式。

  整个安装过程很简单,就像在Windows里添加/删除Windows组件一样简单。

rapidsvn_main_window

TortoiseSVN vs RapidSVN on Windows?

  TortoiseSVN只支持Windows,RapidSVN支持Windows和Linux。

  初步使用,RapidSVN的所有操作都集中在主窗口,远程的repository和本地的working copy都以bookmark的形式表示,和TortoiseSVN与操作系统的右键菜单以及文件管理器整合的方式不同。在使用习惯上不小的差异。

  是否需要把Windows上的Subversion客户端也统一为RapidSVN?仍然有待考虑。

December 23, 2008

CodeSmith的System.TypeLoadException错误

Filed under: T.兵器谱 — Eric Tou @ 6:00 pm
Tags: ,

环境
CodeSmith Professional 5.0.3 Revision 5757
Microsoft .Net Framework 2.0

  最近开始认真地折腾CodeSmith,在非常起始的阶段,为数据库的Table按照模板生成代码时遇到问题,对于初学者来说真是非常挫折。过程如下:

1.在Schema Explorer中创建数据库连接

codesmith_schema_explorer

2.在Template Explorer中选择要使用的模板。
 比如TableProperties,它可以为Table生成包含相应属性的类

codesmith_template_explorer

3.设置模板的参数
在此处填入要生成代码的Table名称,点击Generate,即可自动生成代码。

codesmith_tableproperties

  然而事情并不一番风顺,CodeSmith提示

System.TypeLoadException:
  Could not load type ‘System.DateTimeOffset’
  from assembly ‘mscorlib, Version=2.0.0.0, Culture=neutral,
  PublicKeyToken=b77a5c561934e089′.

  经过测试,在其他的数据库相关的模板中也出现以上错误。经过SQL Server 2000、SQL Server 2005 Express、Access 2003的测试和错误重现,也排除了因为数据库平台的原因。

  祭出google搜索,关键字CodeSmith + System.TypeLoadException,返回的结果不多,在CodeSmith Community中的一篇<Error when trying to run NetTiers in CodeSmith v5>提到了相似的问题。
  System.DateTimeOffset是.Net 3.5支持的新数据类型,CodeSmith 5.0支持.Net 2.0 3.0 3.5,但是似乎版本的兼容有些问题。我用的可是2.0。
  翻到第二页,发现解决的方法是:安装Microsoft .Net Framework 2.0 Service Pack 1
  Framework是随Visual Studio一起装的,VS的SP1装了,Framework的没有。想当然以为VS的SP1就是Framework的SP1,乌龙事件,差点把这个正解漏过。下载,安装,再试,问题解决。

  这个问题,究其原因,也许是安装CodeSmith的时候环境要求漏看了。不过安装过程中也没有提示,出错也没什么提示,对于刚开始试用的初学者来说,还是很容易受打击的,希望之后的版本能改进吧。
  总得来说是一个小错误,分享一下免得有人再走弯路。

December 22, 2008

思维导图(Mind Map)软件介绍

Filed under: T.兵器谱 — Eric Tou @ 2:18 pm
Tags: , , , , , ,

Office中的Word和Excel是我们常用的文档工具,Word以章节段落的线性方式而Excel以行与列的二维方式记录信息,而对于超出藩篱之外的放射性思考(Radiant Thinking)则显得力不从心。比如你可能很难用Word或Excel很好地记录和表达以下形式的信息。

guru_mindmap
图1:手写的思维导图(引用自维基百科

Office系列中的制图工具Visio提供了一种头脑风暴图(Brainstorming Diagram)来满足此类的需要,其实这正是被广泛应用的思维导图(Mind Map)工具的一种表现形式。

Mind Map:思维导图、脑图、心智图,由英国的Tony Buzan于1970年代创立的一种整理、组织和记录想法、观点以及信息的方式。可用于创意、规划、记录、整理、分析、解决。增进记忆、方便组织,激发创造力。与传统的方式有跳跃式的差异。个人认为比较重要的概念:放射性思考(Radiant Thinking)和语义的网状结构(Semantic network)

用思维导图能够:

  1. 头脑风暴
  2. 组织计划
  3. 知识管理
  4. 项目管理

还是来点实在的吧:上课记笔记,读书记笔记,会议记记录,画网站地图,编族谱,编电话薄,玩成语接龙,闲极无聊画猫猫...

要绘制思维导图,可以简单地从一张白纸和一支笔开始,也可以使用专门的软件。商业软件除了Visio之外,还有MindManagerInspiration。而免费方面则有多次入选Sourceforge月度精粹的开源的Freemind,以及国产的由商业软件转为提供免费开源版本的XMind

Freemind
Freemind基于Java开发,支持Windows、Linux和Mac OS多平台,有中文版,默认无便携版本(需配置),目前版本为0.81,完全版安装包大小约9M。这是我目前使用的笔记工具。

freemind

XMind
Xmind是国产软件,由商业软件开源而来,现分为Pro版和开源的免费版本。同样基于Java开发,支持Windows、Linux和Mac OS多平台,支持Eclipse Plugin。有中文版,有便携版本,目前版本3.01,Windows安装包16MB,支持多平台含JDK的便携版本62MB。

xmind

了解XMind是通过善用佳软介绍。XMind的界面比Freemind更为美观;额外支持鱼骨图、二维图、树形图、逻辑图和组织结构图;支持MindManager和Freemind格式的导入;支持思维导图的上传与共享。与Pro版相比仅缺少了录音、PDF导出等功能。还是相当值得一试的。
目前XMind与Freemind相比缺失的比较重要的功能是“目录结构导入”。

因为有相当的笔记使用Freemind格式,转换平台所需要的学习成本,决定暂时还是停留在Freemind,对XMind持观望的态度。新丁当可自由选择。

June 17, 2008

开源UML建模工具 - ArgoUML

Filed under: T.兵器谱 — Eric Tou @ 7:00 pm
Tags: , , ,

    Recently i am finding a suitable UML modeling tool, a replacement of Rational Rose. The final result is ArgoUML.
    ArgoUML is open source, includes support for all standard UML 1.4 diagrams. It runs on any Java platform and is available in ten languages.
    It means ArgoUML is portable (need JDK installed ) and cross platform. recently Portable became a more and more important requirement for me to choose a software.

    Here are other candidates:
Dia : an Open source, ‘Visio’ like, gtk+ based diagram creation program for Linux, Unix and Windows. It can be used to draw many different kinds of diagrams, not only the UML diagrams.
StarUML : an open source, UML/MDA modeling tool running on Win32 platform.

    Some commercial providers also release free, community edtion. Such as MagicDral UML.

WPMU Theme pack by WPMU-DEV.