`
pcajax
  • 浏览: 2112151 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

做一个项目,平时都用到哪些工具提高效率(下)

阅读更多

接上回,继续分享.NET开发中关于工具的使用经验
15  报表工具。数据的导入导出是系统的一项基本功能,我们让用户辛苦的输入那么多数据,现在是让用户享受成果的时候,你的程序要能用各种方法分析用户的input,甚至你也要帮忙用户分析performance.
常用的报表Weekly report,Monthly report,Efficiency report by group/by employee,WIP report都要熟练掌握。
以前的一个项目选用Crystal report,SQL Server 2005发布后,我们又多了一种选择:Reporting Services. 微软的工具一向简单好用,入门容易,尽管如此,你还是要熟练掌握给报表传参数,设计报表公式,区分RDLC和RDL(本地模式和服务器模式),还有动态调用报表。
报表还支持调用自定义程序集。以前做的一个项目,在报表里面实现多语言版本,所有的label的Text属性都是调用DLL的类中的属性,做得相当漂亮。
截一个图,分享一下
参数选择区域
image 报表结果
image
报表中的Logo和公司相关的内容已经被我去除)
最好还做一个报表管理器,集中管理所有的报表。
16 任务记划,Bug追踪。
这个内容在之前我已经分享过,请看这里
软件错误报告与反馈
17 需要熟练掌握SQL脚本书写,最好有大量的SQL代码供你参考。SQL Server本身自带的联机从书就是很好的SQL代码库,你的电脑中最好有SQL Server 2000,SQL Server 2005,SQL Server 2008三个版本的联机从书,查找SQL代码才会轻松自如。另外,经常看的书的随书源码也要保存好,必要的时候都可以参考
image

《SQL Server精华.chm》这本电子书也最好要用,关于SQL的问题,总结的很全面。
如果你做过报表项目,你对SQL的理解应该是超过一般人的。写程序的时候,SQL不好写的,可以放到程序中去实现,比如字符串处理(权限字符串的分解与判断),计算处理(decimal的精度计算)。
但是,在做报表的时候,你没有办法这么做,你必需老老实实的在SQL脚本中考虑好所有问题的处理方法,然后用T-SQL写好,于是,痛苦过后是对SQL脱胎换骨的理解。
报表开发商注意到这个问题,现在Reporting Services支持调用程序员自己开发的Assembly,非常方便,报表的开发商为程序员打开一座后门,你可以从那里逃走,不必在冰天雪地,360度空翻,裸求SQL的写法,呵呵。
18  需要了解一些常见的生产业务系统的动作流程。
做了几年的程序,我们程序最了解的系统应该是系统管理(System Administration),一些常见的部门用户角色权限之类的系统,这样还不够,你还需要了解一些业务系统。
以行业来分,做哪一行,对该行业的生产运作流程,大概应该有个了解,
以通用性来分,生产管理(operation managment),项目管理(project management),品质管理(QC management),人力资源管理(HR management), 采购管理(purchase management),你都应该有所了解。
看书是一种学习的方法;有机会到他们的工厂去参观一下,也是一种方法,而且印象更深刻;
把人家的产品文档,用户手册下载下来,对照软件和用户手册一起看,一边操作,也是一种办法;
以我的理解,每个细分的领域,还是有很多项目可做。通常人家不愿意花银子做,请不起开发人员;想做软件的人(user)没有决定权,有决定权的人(boss)没有做软件的想法;或是找不到信任的人,宁愿不做,还是用EXCEL的版本,春去冬来,年复一年。
19 需要大量的例子程序,编程的时候想都不用想,代码拷贝过去程序就做完了。
这里面需要积累,不是一朝一夕能完成的。做过的项目,好好整理一下,实在认为惨不忍睹(项目被改的面目全非,完全不是当初规划的样子,设计和编程完全脱节),把技术要点整理一下,下次做新的项目好用;还有,微软定期公布的demo,training kit, 你也要下载下来,保存好。
我记得.NET 1.1发布的时候,101 sample code, 一个MSI文件,6MB左右,被我拷贝了很多份。每学一次,就按照自己的理解去改动一下它的例子,看看能不能运行,结果是否是预期的。
image
最近微软又在大肆宣传它的Visual Studio 2010和.NET 4.0,现在还是beta 2,预计下个月就RTM。
你可以视而不见,当做没有这回事。也可以像我一样,把你电脑里的美女帅哥图片删除一些,留点空间给这些demo,sample code,training kit存放。跟着微软混,这些东东迟早是要的。
20  需要一个合理的流程。boss开过很多次会,都提到过这个流程,分享给大家
讨论需求-->设计,开发-->调整,培训,推广-->反馈,跟进,完善—> 再讨论,演化
你可以把软件工程书里的那个流程那拿来和这个流程比较,以此评判我们公司的水平有限,我的水平有限。以公司的角度,
按时按质的完成任务,是职业化员工的必备技能。
每到一个公司,都有他自己的文化,你会发现书中所说的都是理想的状态。这种文化有时候是好的,是做事的一种默契,有时候也有弊端,他会抗拒变化,因为承担不起变化的责任而拒绝变化,抗拒改变。
做一个项目要老老实实的分析需求,设计,开发;实施一个项目要有一些为人处事的伎俩和手段;在我手里,也有失败的项目,不是程序不好,
程序可以持续改进,可以做CIP,从demo—>trial—> trial run,至始至终,向上得不到支持,向下面对一大群EXCEL终实用户的反抗,那个项目真是累死人,
我只好give up.
21 业务开发平台。这个东东,可能是管理软件开发的终极解决方案,像工厂一样,生产企业管理软件。
平时我们见到的factory,是生产产品,现在可以生产企业管理软件的factory诞生了。
以我的理解,需要这四个东东
1) 业务实体设计器,可以生成业务实体,同时导出为SQL代码和C#程序代码
2) 窗体设计器,可以生成用户界面
image

这是《俊先企业管理软件开发平台》中的例子,一个完整的窗全设计器,可以生成窗体代码,在运行时用反射技术,加载窗体,执行。
我自己私下里也折腾过这个东东
image
用XML文件来表示窗体,运行时动态解析窗体文件。XML文件可以放到硬盘里,也可以放到数据库中。
CREATE TABLE [dbo].[Form](
    [GUID] [uniqueidentifier] NOT NULL,
    [Name] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [Text] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [Definition] [xml] NULL,
    [DataTable] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [LastUpdateTime] [datetime] NULL,
    [Workflow] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_Form] PRIMARY KEY CLUSTERED
(
    [GUID] ASC
)WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

3) 流程设计器  直接用工作流本身的流程设计器,自己提前先设计好接口加再进去,否则那些外部方法和事件可能会找不到接口而不能编译通过
clip_image002

4) 报表设计器
image

有些工具是自己折腾的,有些东东是别人的作品,我只是拿来用,有些工具是在别人基础上,进过我的重新规划设计;这些东东只是自己的私房工具,没事的时候瞎折腾,并没有在公司的产品中应用,我敢截图出来与大家分享。不要向我索取,很多东东你都用不上,你只是好奇,真的,相信我。
22 需要一个门户站点,来管理任务,问题,项目。
推荐你用SharePoint Services,这东东70MB多,如果买了Windows Server 2003的License,这个工具包是免费的,好用,稳定,可扩展。
下一个版本我打算把公司的WCF服务器驻留在这里,把报表服务器也驻留在这里,成为公司内部的team site。
image

美观大气,可扩展性好。
写到这里,也写的差不多了,还有几个条目,没想好具体内容,暂且不表。
应该说,不是这些工具重要,而是人更重要,人对了,软件和项目就对了,整个世界就对了。

分享到:
评论

相关推荐

    leetcode所有报错-Awesome-Bookmarks:前端开发提高效率的一些库和软件

    本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文 如果你有好的推荐你可以提 issue 或者 pr 来告诉作者 推荐库 这里主要...

    代码语法错误分析工具pclint8.0

    好了,这时VC tools菜单下应该又多了一个pclint_project项了,你以后可以用它来对一个VC项目运行lint检查程序了. (二)SourceInsight中集成pclint程序的方法. Windows平台下也有好多人都喜欢用SourceInsight编辑C/...

    Virtual Serial Port Driver Pro(虚拟串口工具)

    平时我们在传输数据时,一般都是利用U盘拷贝下来,载入到另一台电脑上,这样非常麻烦,效率也是非常的低下。而virtual serial port driver就不同了,它能通过互联网络的形式实现数据传输,想想比与前者,virtual ...

    6前端面试一面 6:开发环境相关知识点与高频考题解析.md

    工程师的开发环境决定其开发效率,常用的开发环境配置也是面试考查点之一。 ## 知识点梳理 - IDE - Git - Linux 基础命令 - 前端构建工具 - 调试方法 本小节会重点介绍 Git 的基本用法、代码部署和开发中常用的 ...

    leetcode所有报错-lmsite-bookmarks:lmsite-书签

    本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文 如果你有好的推荐你可以提 issue 或者 pr 来告诉作者 推荐库 这里主要...

    leetcode所有报错-vuepress-demo:文档示例

    本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文 如果你有好的推荐你可以提 issue 或者 pr 来告诉作者 推荐库 这里主要...

    leetcode所有报错-personal-bookmarks:个人书签

    本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文 如果你有好的推荐你可以提 issue 或者 pr 来告诉作者 推荐库 这里主要...

    leetcode所有报错-my-favorite:个人收录网址

    本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文 如果你有好的推荐你可以提 issue 或者 pr 来告诉作者 推荐库 这里主要...

    代码段:收集开发中常用到的代码片段和遇到的BUG以及某些时候的编码练习

    这个时候又需要把项目找到或者再去网上搜索,效率一点都不高效。如果统一把各种代码片段安装规范的结构写下来,既方便遇到问题来查看,也方便平时来熟悉这些代码 目录 评论 CSS js 节点js 壳 安全 C / C ++ 媒体 ...

    c语言编写单片机技巧

    而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。 如果对单片机C语言有...

    awesome-bookmarks:精选的精彩清单

    本项目为个人技术收藏集,里面会不定期分享一些作者平时用到的一些库,或者常用的网站和小工具。同时作者也会在上面不定期的写一些简单的博文 如果你有好的推荐你可以提 issue 或者 pr 来告诉作者 工具 Webpack ...

    计算机应用基础实训总结报告-.doc

    而这次培训的内容最显著的特点,就是实用性 和工具性很强,都是平时工作中经常用到的。参加培训的第一课时,我就专心致志地听 讲,把学习内容与以前操作不规范或不熟练的地方进行对比,感觉学 习效果很好,受益匪浅...

    编写程序高手的造就的文章

    平时要有意识提高自己写代码的速度,其实你一天写15行有效代码,与你写50行有效代码,其品质是差不多的。你应该把那些业界平均水平抛诸脑后,把超越自己做为唯一目标。等到你写了很多各式各样的代码,你的水平就不...

    2011毕业生实习报告范文

    明确工作任务后,则要做一下工作前的准备工作,于是我便到我们小组的工具存放区找来一些工作中需要用到的相关用具(比如:胶料袋子、脱模剂、产品标识单等)。在机台位置上根据员工作业指导书上的操作流程进行正常作业...

    二十三种设计模式【PDF版】

    有经验的面向对象设计者会告诉你,要一下子就得到复用性和灵活性好的设计, 即使不是不可能的至少也是非常困难的。一个设计在最终完成之前常要被复用好几次,而且每一次都有所修改。 有经验的面向对象设计者的确能...

    vf学生公寓管理系统 信息与计算科学的课程设计

    比如数据类型的定义错误,字符的错误输入等等,这些虽然都是小问题,不过在具体实践过程中却浪费了不少时间,看来平时要多多的实践才是,除了要考虑问题周到还要多多注意一些细小的问题才是,做的熟练了问题也很容易...

    如何学习ACM,看后受益匪浅

    (但是树往往是很重要的分析工具)除此之外,排序和查找并不需要对所有方式都能很熟练的掌握,但你必须保证自己对于各种情况都有一个在时间复杂度上满足最低要求的解决方案。说到时间复杂度,就又该说说哈希表了,...

    如何让你的XP系统更加安全

    安装在WindowsXP操作系统中的许多程序,都要求用户具有一定的管理权限才能让用户使用程序,因此为了能够使用好程序,我们有时需要为自己临时分配一个访问程序的管理权限。在分配管理权限时,我们可以先普通用户身份...

Global site tag (gtag.js) - Google Analytics