Facebook Sharer
选择您要替换的背景颜色:
【农历新年】背景图片:
个性化设定
 注册  找回密码
123
返回列表 发新帖
楼主: fantasydevil
打印 上一主题 下一主题

16岁才开始学计算机会不会太迟呢?

[复制链接]

62

主题

5

好友

3715

积分

本站名嘴

Rank: 11Rank: 11

21#
发表于 2010-4-8 02:36 PM |只看该作者
本帖最后由 goodhermit95 于 2010-4-8 02:38 PM 编辑

回复 20# 宅男-兜着走


    我知道了,比如說...(goodday老大教的)

  1. if(progressbar1.value = progressbar1.maxvalue){progressbar1.value = progressbar1.minimum;}
复制代码
看起來上面這個比較長
如果你是這樣

  1. if(progressbar1.value = 100){progressbar1.value = 0;}
复制代码
第一個code,如果你改變progressbar1.maxvalue和minimum就不會有問題,但是第二個code就有問題了,而且如果你很久沒有動這個project你就會亂掉..

另外一種,

  1. private void button1_Click(object sender,eventargs e)
  2. {
  3. button1.text = "lol";
  4. }
复制代码

上面這個code,當時goodday說sender是這個void元件的properties,我就奇怪爲什麽sender只有.tostring和equalto,其實上面的寫法很奇怪,因為button1_click又用button1.text =,OOP的話應該是這樣(動物會排泄的原理)

  1. private void button1_Click(object sender,eventargs e)
  2. {
  3. (button)sender.text = "lol";
  4. }
复制代码
又來,比較長,不過打很多code的話會節省很多,這個是把sender(動物)轉成button(人),也就是每個元件都有text(如果沒有text就exception,也就是特別的動物)
好了,什麽叫做打比較多code?

比如說一個form裏面有100個button,我要按下的button.enabled = false,按下的而已,就要這樣

  1. //把全部的Click event 放在buttons_click
  2. private void buttons_click(object sender,eventargs e)
  3. {
  4. (button)sender.enabled = false;
  5. }
复制代码
如果你不這樣的話,

  1. private void button1_click(object sender,eventargs e)
  2. {
  3. button1.enabled = false;
  4. }
  5. private void button2.........
复制代码

打死你



還有一種我會的就是(也是goodday老大教的,話說當時他講我完全聽不懂有什麽用途……寫久了才發現到它的用途)
如果現在有menu strip,notify icon,context menu strip,button等等的功能都是做某某很長的code,如果我寫四個的話

  1. private void xxxxxmenustrip_click(object......)
  2. {
  3. //blahblahblah
  4. }
  5. private void xxxxxnotifyicon_press(object.....)
  6. {
  7. ///blahblahblah
  8. }
  9. //以此類推,做四次
复制代码
此時,如果你code有問題的時候,你就要改四次,而且很長,那麼很麻煩,你應該開多一個void然後這些就跑那個function

  1. private void xxxxxmenustrip_click(object...)
  2. {
  3. YOURFUNCTION();
  4. }
  5. //其他三個不重複了
  6. private void YOURFUNCTION()
  7. {
  8. //在這裡寫你的code有問題的時候改這裡就可以了
  9. }
复制代码
說到這裡,還有一個東西,如果YOURFUNCTION裏面需要menustrip等其他元件的某某資料(如他的text)

  1. private void xxxxmenustrip_click(...)
  2. {
  3. YOURFUNCTION();
  4. YOURFUNCTION_TEXT = (menustrip)sender.text;
  5. }
  6. string YOURFUNCTION_TEXT;
  7. private void YOURFUNCTION()
  8. {
  9. string aaa = yourfunction_text;
  10. }
复制代码
這就太麻煩了...

  1. private void xxxmenustrip_click(...)
  2. {
  3. YOURFUNCTION((menustrip)sender.text);
  4. }
  5. private void YOURFUNCTION(string text)
  6. {
  7. string aaa = text;
  8. }
复制代码

這樣就簡單多了,可說是效率吧……


回复

使用道具 举报

7

主题

1

好友

5108

积分

一流名嘴

Rank: 12Rank: 12Rank: 12

22#
发表于 2010-4-9 01:07 AM |只看该作者
回复  宅男-兜着走


    我知道了,比如說...(goodday老大教的)看起來上面這個比較長
如果你是這樣第 ...
goodhermit95 发表于 2010-4-8 02:36 PM



你所提供的例子中 button1_click 是用来 binding 按钮的事件
button1.text 則是按钮的属性
(button)sender 的目的是強制轉換 object 型态

這些必需在編寫前了解你的编程語言架构就自然會明白了


回复

使用道具 举报

46

主题

6

好友

6456

积分

百变名嘴

Rank: 13Rank: 13Rank: 13Rank: 13

23#
发表于 2010-4-9 02:22 AM |只看该作者
本帖最后由 宅男-兜着走 于 2010-4-9 02:39 AM 编辑

回复 21# goodhermit95
其实你写.net java 都好,其实不知不觉你已经在用着OOP了。 所以你才没什么 RASA 吧 ,你现在给的Reply,理论上是对吧~,我也是模模糊糊,感觉上要掌握到了~又好像没有。
不过,写,跟做出容易维护的 code 。。。。真的是不简单,最近也是开始写WPF, 遇到很多问题,看起来我觉得我自己的code 很好maintain,但是一Maintain起来才知道。。。。 一点都不好。。。


顺便借用这个帖发问:

WPF的话,如果像 Window Media Player 这样的UI,怎样随意更换 User Control? Page? 我看教程是用 MVVM(Prism) , 可是太乱了吧==
你们会怎么做?

顺便再问多一个问题。
Arduino大家认识吗??
http://www.ladyada.net/learn/arduino/
我研究了单晶片很久下,我还是无法开始写, 可这个电板让我燃气了希望,只要USB下去就能开始Program了,而且很多source @@|||。请问我哪里才能买到这个电板??


补充

  1. class CustomException : Exception
  2. {
  3. private string pMessage;
  4. public override string Message
  5. {
  6. get{
  7. return this.pMessage;
  8. }
  9. }
  10. .....
  11. }
复制代码
set message 不可以从base, 要Override ==


回复

使用道具 举报

62

主题

5

好友

3715

积分

本站名嘴

Rank: 11Rank: 11

24#
发表于 2010-4-9 09:55 PM |只看该作者
回复 23# 宅男-兜着走


     WMP幾??


回复

使用道具 举报

46

主题

6

好友

6456

积分

百变名嘴

Rank: 13Rank: 13Rank: 13Rank: 13

25#
发表于 2010-4-9 10:07 PM |只看该作者
回复 24# goodhermit95


    10 还是 11, 就是 vista , 7 的那个 version。


回复

使用道具 举报

1

主题

0

好友

11

积分

初级会员

Rank: 1

26#
发表于 2010-4-14 02:03 AM |只看该作者
学programming不错!


回复

使用道具 举报

3

主题

0

好友

252

积分

支柱会员

Rank: 4Rank: 4Rank: 4Rank: 4

27#
发表于 2010-4-18 04:07 AM |只看该作者
个个人都还蛮早就学programming了嘛~~还比我更精通咧~~我现在20才开始学罢了~~而且还听不懂那种~~楼主担心是多余的吧??


回复

使用道具 举报

62

主题

5

好友

3715

积分

本站名嘴

Rank: 11Rank: 11

28#
发表于 2010-4-18 10:25 AM |只看该作者
聽不懂你的意思,什麽叫做隨意更換control??


回复

使用道具 举报

0

主题

0

好友

3

积分

入门会员

29#
发表于 2010-9-7 10:27 AM |只看该作者
本帖最后由 StramgeFish 于 2010-9-7 10:29 AM 编辑

oop技术,在马来西亚好像还不大流行。
我认识的很多程序员都是在用vb6 托托控件写program而已,完全不知道其实他们正在利用的就是面向对象技术。
这点中国就做得很强,几乎所有程序员入门时都要学会oop。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2025-1-9 02:26 PM , Processed in 0.102557 second(s), 27 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

Ultra High-performance Dedicated Server powered by iCore Technology Sdn. Bhd.
Domain Registration | Web Hosting | Email Hosting | Forum Hosting | ECShop Hosting | Dedicated Server | Colocation Services
本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved
合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部