Guest:
Register
|
Login
|
Member List
|
Search
|
Statistics
|
FAQ
Language
----------
Simplifed Chinese
Traditional Chinese
English
CnPack Forum
»
CnPack IDE 专家包(CnWizards)
» 关于结构高亮(Structure Highlighting)的一些想法
‹‹ Last Thread
|
Next Thread ››
Poll
Trade
Reward
Activity
Printable Version
|
Email to Friend
|
Subscription
|
Favorites
Subject: 关于结构高亮(Structure Highlighting)的一些想法
lextm
灌水科科长
UID 771
Digest Posts
1
Credits 115
Posts 77
点点分 115
Reading Access 10
Registered 2005-3-28
Location Shanghai
Status Offline
#1
Post at 2006-9-15 13:42
Profile
|
Site
|
Blog
|
P.M.
|
关于结构高亮(Structure Highlighting)的一些想法
很多人,包括从前的我,都喜欢CodeRush或者Castalia提供的结构高亮。这也难怪这个论坛里面这么多留言希望CnWizards加上这个功能。
但是,这个功能很容易造成两个问题。
一,IDE执行效率明显变差,即使使用的只是局部高亮。
二,把编程习惯搞坏了。
问题一比较好解决,当我开始用这台新电脑的时候,我发现效率问题交给一个强大的CPU就好了。
问题二,则似乎很多入门级别的开发者根本不会意识到。这也是这里讨论的重点。
为什么需要结构高亮?仔细想一想,无非是太多的代码挤在一起。怎么会挤在一起呢?我想很多情况下,就是有一个其大无比的函数,有多层的if-else嵌套。
但是,解决这个看不清问题的方法是结构高亮吗?我的答案是“错”,绝对应该是重构,而且首先考虑的就应该是Extract Method。都有这么明显的怪味道了,难道不该重构代码吗?
现在的我,虽然不像某些书中所说一个函数仅仅10行,但是基本上一屏都不到,所以,有了JCF.exe的一点点帮助就足够了。
所以,我的结论是,还是不要在CnWizards里面加入这个东西的好。毕竟,开发本身比较麻烦,实际效果,又有点姑息养奸(言重了一点)的味道。
我认为,学习重构,时常重构,才是提升自己的一条正确道路。
Passion
(LiuXiao)
管理员
UID 359
Digest Posts
19
Credits 6838
Posts 3591
点点分 6838
Reading Access 102
Registered 2004-3-28
Status Offline
#2
Post at 2006-9-15 13:58
Profile
|
Blog
|
P.M.
工具和自身习惯的关系就像发明家和懒人。
发明家的劳动造就了很多懒人,但倘若懒人自己变懒后失去了生活能力,那也不能怪发明家。
wenfei
普通灌水员
UID 599
Digest Posts 0
Credits 71
Posts 69
点点分 71
Reading Access 10
Registered 2004-12-7
Status Offline
#3
Post at 2006-9-16 00:16
Profile
|
Blog
|
P.M.
楼主一点、二点都不同意。
首先,问题一好解决吗?恰恰相反,Castalia也没解决这个效率问题。换强劲的CPU能算根本解决方法吗?而且怎么能保证所有用户都有强劲CPU?如果在能解决效率的基础,开发出这样一个有效的功能,何乐而不为呢?
其次,我同意楼主说的编程要遵守规范,养成好习惯。但有时候长函数是不可避免的,看看VCL源码中也有很长的函数。结构高构高亮在阅读代码的时候,对快速理解层次结构,是十分有效的,当然也就提高了开发效率。而提高开发效率,我想本就是CnWizards的宗旨吧。
Delphi初学者
VictorWoo
灌水科科长
UID 1975
Digest Posts
1
Credits 114
Posts 98
点点分 114
Reading Access 10
Registered 2006-3-11
Location 福建
Status Offline
#4
Post at 2006-9-17 12:03
Profile
|
Site
|
Blog
|
P.M.
|
|
to lextm大侠:
最近也在看侯捷译的重构,反观原有代码,对其重要性身有体会。
不过我觉得重构还不足以作为取消结构高亮的充分条件。
因为我们每天不仅要写代码,还要读大量的代码,难免别人的代码会出现层层嵌套的if..else
社会和学校不同,老师有义务培养所有学生的编码风格,而社会上的工具就像双刃剑,看你怎么用了。
所以工具的开发者可以不用太多顾虑
Poll
Trade
Reward
Activity
CnPack Forum
CnPack English Forum
> CnWizards IDE Wizards
> CVSTracNT
> Announcements & Others
All times are GMT++8, the time now is 2024-11-27 10:56
Powered by
Discuz!
5.0.0
© 2001-2006
Comsenz Inc.
Processed in 0.019211 second(s), 8 queries , Gzip enabled
TOP
Clear Cookies
-
Contact Us
-
CnPack Website
-
Archiver
-
WAP
Member's CP Home
Edit Profile
Credits Transaction
Public User Groups
Buddy List
Main
Page Views
User Agents
Posts History
Top Forums
Top Threads
Post Ranking
Credit Ranking
Online Time
Team
Moderation Stats