JBTALKS.CC

标题: 16岁才开始学计算机会不会太迟呢? [打印本页]

作者: fantasydevil    时间: 2010-4-4 02:19 AM
标题: 16岁才开始学计算机会不会太迟呢?
本人今年16岁,有一写Pascal的基础,请问这种年龄了才开始准备学计算机会不会太迟了呢?
作者: myEsc    时间: 2010-4-4 02:44 AM
你所谓的学,是学用电脑,networking,programming还是其他什么? 太过笼统了
作者: 呆板笨蛋    时间: 2010-4-4 06:54 AM
告诉你我17岁才学~在告诉你我今年17岁 = = ~
作者: 宅男-兜着走    时间: 2010-4-4 01:08 PM
回复 1# fantasydevil


    12.岁 - 小学了基本的电脑==
    15.岁 - 学了怎么打Game, 网络游戏 == |||
    18~22岁- 学怎么制作软件应用。 ==。。。。

    你说不会迟呢? 还来得及。 你还年轻。
作者: 呆板笨蛋    时间: 2010-4-4 10:03 PM
回复  fantasydevil


    12.岁 - 小学了基本的电脑==
    15.岁 - 学了怎么打Game, 网络游戏 == || ...
宅男-兜着走 发表于 2010-4-4 01:08 PM

16岁和17岁你在放空?
作者: 宅男-兜着走    时间: 2010-4-4 10:06 PM
回复 5# 呆板笨蛋


    没啦, 就做工啊, 赚钱。 18~19 才开始学篇写程序啊。 我自己都觉得很迟下了。那些小时候开始就学篇程的,多么强大, 羡慕他们。
作者: 可栗兔    时间: 2010-4-4 10:25 PM
有心学就不要怕迟~重点是你有心学吗~
作者: kidd86    时间: 2010-4-4 11:34 PM
還有看天分的...
作者: DevilBat81    时间: 2010-4-4 11:48 PM
不会啦,那个年龄不算迟,最重要是有恒心。
作者: 光阁    时间: 2010-4-5 09:53 AM
有心学就不怕晚
重点是你肯不肯花时间去学,有没有毅力啊
作者: goodhermit95    时间: 2010-4-5 11:54 AM
我啊……
6 - 在電腦室玩無聊的game
7 - 學校電腦玩無聊的game
8~11 - 這個時期最麻煩,每次自己亂亂按東西按到有問題,但是看了電腦技術人員弄后就學到東西
12 - 會Format了
13~15 - 學Programming
作者: kitchan53    时间: 2010-4-7 02:27 PM
回复 4# 宅男-兜着走


    那么介不介意跟大家分享一下?
我也想学耶~ 第一个步骤是什么?
作者: 宅男-兜着走    时间: 2010-4-7 03:53 PM
回复 12# kitchan53
你是问我怎么Turn On 电脑还是 Shut down 电脑? 还是 打Game 怎么打? 怎么 Save game?
如果是上面的我不分享 关于学篇程怎么开始请看下面。
=====================================================================================================
如果是你问楼上的应该会回答你,先开始懂得使用Google, 跟找Google。
假设是我, 也会这样回答你(暗笑 )。 可是 Final Year 了, 我不想当掉, 所以就做点善事。
但是报读课程的话也是好啦。而且是最好,至少还有个老师能够指导你,跟指示你。

怎么开始?

1. 选个语言先, 你可以任意选, Java, C# , C++ , C , VB ... blah.... , 你喜欢的语言就好了。 (我是Java, Action Sctipt 起步的 == )什么语言适合0的新手,我也不懂。 你自己 Survey 下。

2. 选个开发工具, 篇写工具, 当然也要符合到你的语言。

3. 买本书叫做 Programming for dummies series的,书皮大多数是黄色的,不然就Deitel 的也行(书名, (程序语言)How to program)。

4. 有了基本的概念, 请自己上网找Article 下来参考人家怎么做,怎么写。然后自己多多练习。

5. 自己出题目给自己做。

6. 后期可以开始学OOP了。

7. 已经很Pro 了, 就学怎么去偷懒了。 不过我还没到这个境界。
作者: goodhermit95    时间: 2010-4-7 04:27 PM
回复 13# 宅男-兜着走


    OOP到底是什麽來的?什麽用途?能舉例嗎
作者: 呆板笨蛋    时间: 2010-4-7 05:34 PM
17岁才学programing和Linux OMG 我迟了~
作者: 宅男-兜着走    时间: 2010-4-7 05:37 PM
回复 14# goodhermit95
用途啊。。。 很抽象,因为都是抽象的东西, 说不完的。 基本的你应该懂吧写个Class。 比如说一个 Object , 一个Class 一个面向对象的原理, 进行封装, Inherit , 扩展的。


举个无聊的例子, 比如说, 生物, 人类Inherit 了 生物。 生物都会排泄。

  1. Class 生物 {Field, Properties , void 小便()}

  2. Class 人类 : 生物{ }

  3. 那么就可以 生物 human = new 人类();
  4. human.排泄();

  5. == .......
复制代码
另外个例子就是。。。

  1. Class ValidationException : Exception
  2. {
  3.   public ValidationException(string message)
  4.    {
  5.        base.Message = message; << 忘记是要Call setter 了还是可以直接Set == // 给Visual studio 宠坏了。
  6.    }
  7. }

  8. //然后你就能Programatic 的方法Throws 掉Exception
  9. //比如说

  10. FormEntity
  11. {
  12. private string entityType;
  13. public string EntityType
  14. {
  15.     set{
  16.           if(value == "no type")
  17.               {
  18.                   throw new ValidationException("Entity type set error.");
  19.               }else{
  20.                            this.entityType = value;
  21.                        }
  22.          }
  23. }

  24. }

  25. 然后就每次要Set 资料的时候就能...
  26. try
  27. {
  28. new FormEntity().EntityType = "no type";
  29. }
  30. catch(ValidationException ve)
  31. {
  32. MessageBox.show(ve.Message);
  33. }catch(Exception ex)
  34. {
  35. MessageBox.Show(ex.Message);
  36. }

复制代码
目前我理解到的部分很浅,但是认识到一个好处就是, 当Input 的部分,经常会有写错误, 但是这些错误都要重复性的去Validate, 判断。
可是因为 OOP 的原理, 你先预测可能会用到的可复用的部分。 然后就一直重复的使用这些Class 或Object, 来达成避免重复的Code 出现, 或同样的动作。
但是说是简单, 但是真的设计起这些模式的时候是很头痛的。

当然上面说的是基本的, 也是废话来的。也是最简单的。如果你要学的话, 可以学学 .net 网站 的 Pattern design 是比较深入的 OOP 模式设计。
作者: kitchan53    时间: 2010-4-7 07:19 PM
回复 13# 宅男-兜着走


    多谢~ 我慢慢消化先...
作者: 宅男-兜着走    时间: 2010-4-7 10:11 PM
回复 17# kitchan53
消化 == 。。。 其实也不是什么金玉良言啦。 就来来去去还是要看自己的。
你没兴趣的话,什么都是假。要会,就要懂得去爱上它。
作者: goodhermit95    时间: 2010-4-7 10:12 PM
本帖最后由 goodhermit95 于 2010-4-7 10:15 PM 编辑

回复 16# 宅男-兜着走


    這個是個基本概念!
很抽象……還是不懂什麼來的,怎樣才算OOP
啊,那麼就是生物會小便,那麼我就可以說人會小便,節省coding字數增加效能?
原來我program用了那麼多OOP我還不知道……
作者: 宅男-兜着走    时间: 2010-4-7 10:42 PM
本帖最后由 宅男-兜着走 于 2010-4-7 10:46 PM 编辑

回复 19# goodhermit95

所以我才说这个是基本啊~
可是 OOP 说的封装继承。 开放封闭原理== 很复杂下? 我也模模糊糊。在学着去了解什么时候可以用到。

这宝贵的Link 给你吧。 这些就是你要的例子。
http://www.dofactory.com/Patterns/Patterns.aspx
里面有形容一些比较红的Design pattern。
比如说,Factory , Prototype, Singleton 那些。

省Code 是不会, 只是某些地方能覆用。 要搞清楚。

而且我不见得 OOP 真的会提高效能==。。。。  因人而异的吧。
说用 OOP, 用? 用的是OOP的模式设计
还是 OOP 的概念。
这点就搞模糊人了。 ==

算了~ 我自己也是要加强加油吧~
作者: goodhermit95    时间: 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. }
复制代码

這樣就簡單多了,可說是效率吧……
作者: Super-Tomato    时间: 2010-4-9 01:07 AM
回复  宅男-兜着走


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



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

這些必需在編寫前了解你的编程語言架构就自然會明白了
作者: 宅男-兜着走    时间: 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 ==
作者: goodhermit95    时间: 2010-4-9 09:55 PM
回复 23# 宅男-兜着走


     WMP幾??
作者: 宅男-兜着走    时间: 2010-4-9 10:07 PM
回复 24# goodhermit95


    10 还是 11, 就是 vista , 7 的那个 version。
作者: tjrong    时间: 2010-4-14 02:03 AM
学programming不错!
作者: sk1447    时间: 2010-4-18 04:07 AM
个个人都还蛮早就学programming了嘛~~还比我更精通咧~~我现在20才开始学罢了~~而且还听不懂那种~~楼主担心是多余的吧??
作者: goodhermit95    时间: 2010-4-18 10:25 AM
聽不懂你的意思,什麽叫做隨意更換control??
作者: StramgeFish    时间: 2010-9-7 10:27 AM
本帖最后由 StramgeFish 于 2010-9-7 10:29 AM 编辑

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




欢迎光临 JBTALKS.CC (https://www.jbtalks.cc/) Powered by Discuz! X2.5