關於“瘋牛文字”開發雜想

原创 2004年10月06日 00:03:00

設計“瘋牛文字”最醜陋的表單那天,是2004年2月28日,到現在已經半年多了。

最早開發“瘋牛文字”時,我剛剛開始接觸DotNet編程不久,因此它是我牛刀初試的第一個作品。當初也只是想把它做成一個簡單的文本編輯器去參加系裏的比賽。那時的1.0版本只實現了類似於Notepad的一些非常簡單的功能,而且bug狂多,沒想到還得了獎呢!後來學習比較緊張,就把繼續開發的日程一拖再拖,直到今年8月份才真正開始實施。8月底時,在福州的家中發佈了2.0版本(沒敢發到網上去,怕被罵),這個版本的功能已經很強了,不過略顯臃腫。

如果說“瘋牛文字”有什麼地方讓我覺得很高興,那無疑是“替換”模組。當時幫我測試軟體的人都不怎麼看好我“瘋牛文字”,覺得我使用的基於rtf的控制項RichTextBox,已經封裝了幾乎所有的強大功能,我做的事只不過是直接用罷了。其實這也有失偏頗,因為我的查找替換模組基本上是我自己用代碼實現的,尤其是替換這一塊,當文本被鎖定時,需要進行的判斷異常複雜,稍有不慎程式就會崩潰,所以必須自己來設定演算法,光是這一模組就讓我熬了兩次夜,要知道,這個功能在MS Word裏可沒有呀呵呵——當你看見程式嚴格地按照你的思路來跑時,你的心裏就TMD一個字:爽!

關於“瘋牛文字”下一版本有什麼值得改進的地方,我也一直在思考著。我簡單地說一下:
“瘋牛文字”的值得詬病之處很多。最噁心的就是一個這麼簡單的程式,居然占的記憶體快賽過MS Word了,佔用資源大是DotNet程式的通病,沒法根治,我只是希望在3.0版本時把程式精簡一下,比如在2.0版本時,主表單一啟動,所有的對話方塊都載入到了記憶體中,這種齷齪的事在3.0裏絕不會再發生了。
還有就是保存介面設置的問題,我只想到在卸載表單時把所有設置資訊寫在一個檔裏保存起來這種淳樸的方法,我會把它加到3.0版本裏的。
另外就是如何改寫註冊表使RTF文件直接和“瘋牛文字”相關聯的問題,以前我一直在回避這個問題,現在我已經找到了答案了。這也將是3.0最激動人心的一處改進吧!等到那時,我會把“瘋牛文字”發到Internet上的。

其實我本人從一開始就很清楚,“瘋牛文字”中的所有功能都已經包含在MS Word裏,所以它一直被我定義為“開發給自己用”的軟體。自己用自己的軟體有個缺點,就是怎麼看怎麼順眼,不想用別人的軟體那樣,總是用一種批判的態度來用,因此你也不太可能給自己提出很多很尖銳的意見。這就是2.0版本後,我一直想不到我還可以添加什麼革命性的功能的原因了呵呵。嗨~~自己用吧!

PS:關於在DotNet框架下開發程式的便捷,你是不是覺得很爽啊?我接觸DotNet是零三年底,之前我沒怎麼大用其他的編程語言,用的比較多的可能就是C和VB。VB固是簡單,但是如果想寫一些有個性的東東,動輒就要調用API,很不方便;而在DotNet中,大部分的功能都被封裝到了命名空間裏,用起來極爽。但是,爽過之後心裏難免有些空虛,因為我們再也不想費神去對系統的底層進行什麼操作——開發是便捷了,而我們的水準卻大不如前了。如果你也是VB鍾情者或是C#發燒友的話,來~~我們一起默哀30秒!

[嵌入式]source tree设计原则之项目目录架构-摘自《现代嵌入式系统开发专案实务》

1. driver:驱动程序目录。(1) boot loader:boot loader程序目录;(2) hardware:各个装置的驱动程序;a. include:驱动程序的header file;...
  • afei818
  • afei818
  • 2010年08月04日 08:11
  • 932

隨想:軟件開發文檔

    其實做哪一行都一樣,要想做好一件事,需要有個標准,有個規范,而且這個規范不是條文口號式的,而是實實在在的能為工作帶來品質提升的內容。從事這個行業有好幾年了,經歷過小的,大的,標准的,非標准各種...
  • truexf
  • truexf
  • 2007年02月09日 10:56
  • 970

转一篇文章,归纳总结的不错,共同学习:《Domino Web 开发规则》

转自:http://space.itpub.net/24998103/viewspace-695431     Domino Web开发规则   Domino Web开发规则之一:Notes...
  • CrazyNotes
  • CrazyNotes
  • 2012年11月15日 11:34
  • 1158

iOS开发之旅之App的生命周期

iOS开发之旅之App的生命周期,分析iOS应用的生命周期以及基本结构。
  • bboyfeiyu
  • bboyfeiyu
  • 2014年11月30日 15:04
  • 3114

WEB开发2017的路线图

在github有一个网站画了这样一个图,可以参考一下:https://github.com/kamranahmedse/developer-roadmapPython游戏开发入门http://edu....
  • caimouse
  • caimouse
  • 2017年08月27日 17:45
  • 495

OCMOD代码调整系统(Modification System)

OCMOD代码调整系统(Modification System)
  • wqching
  • wqching
  • 2015年12月31日 19:27
  • 730

Python模块结构与布局操作实例

#coding=utf8 #起始行 #!/usr/bin/env python #模块文档 ''' 合理的Module布局: (1) 起始行(Unix) (2) 模块文档 (3) 模块导入 (4)...
  • henni_719
  • henni_719
  • 2017年02月17日 15:14
  • 210

Hi3516A开发--接触

终于拿到Hi3516A板卡了,接下来开启我的h265学习之路。
  • qq_29350001
  • qq_29350001
  • 2016年09月12日 10:31
  • 1315

设计师整理的系统开发流程-简洁又有重点

软件系统,要求在收集用户需求后,开始原型设计,再执行架构设计和模块设计工作,最后才是开发测试。...
  • lejuo
  • lejuo
  • 2014年06月09日 17:50
  • 1127

Ruby中文社区的开源项目平台已经成功搭建起来了

Project Management System and SVN ready 大家好,很高兴的宣布Ruby中文社区的开源项目平台已经成功搭建起来了。 Ruby中文社区致力于为Ruby在中文社区的繁...
  • zhuzhao
  • zhuzhao
  • 2007年07月30日 08:24
  • 1857
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:關於“瘋牛文字”開發雜想
举报原因:
原因补充:

(最多只允许输入30个字)