點學寫靚PROGRAM

315 回覆
17 Like 1 Dislike
2017-04-12 21:52:11
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol
2017-04-12 21:55:10
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp
2017-04-12 21:59:07


巴打想法認真幾好,又可以俾自己用下for,while個啲,唔會一味用死if,搞到for,while個啲用得唔熟,我自己就用太多if同for,搞到while,do while唔多識用,多得巴打提醒下,之後自己會注意多啲

for同while根本係兩個唔同目的,係絕對唔應該撈亂用。


自己因為新手上路真心唔係好完全識分咩時候用for更好,幾時用while更好。自己while又用得少,搞到極唔熟,有時候覺得while個度寫得啱,但又run唔到……所以自己下意識依靠多咗if同for,根本惡性循環,唔練多啲真係停滯不前

for (; true;){
}
while (true){
}
有咩唔同 ?

個人偏好用for 做 iterator. 個 for clause 控制個iteration flow, 主要係sequential 嘢同埋你大概知幾時完 (for each, for (int i = 0;i < arr.Length; i++) etc)
Loop through list and array 用while 都做到但 for 好似易睇啲


While 就係有個執行condition, 而係一真做至condition 唔再同為止
個condition 係code 入邊可能會改
While (condition) {
// condition might change here. Stops when it happens; break as needed
....
}

有時想行至少一次又可以用 do while

可以用for 做到個人鍾意寫for 多啲 感覺易明啲

手機打懶fix casing 梳

萬一個iterator係冇Length,iterator只係知有冇next record, 咁樣情況用while, 會容易理解過for loop
例如sql cursor, stream, queue

其實都要睇下你用咩data structure同random access of element好似係
例如linked list random access由頭loop落去

list[9]: 0開始 loop到9
list[10]: 0開始 loop到10


可以用 linq 之類 expression 去 subset 咗個 list 先 iterate

唔係用 while loop 可能要每次check 個 condition
2017-04-12 22:00:35
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

老就唔好學啦
後生d仲話有得跟下
2017-04-12 22:00:38
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?
2017-04-12 22:03:03
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

老就唔好學啦
後生d仲話有得跟下


幾多歲係 cut off
2017-04-12 22:08:55
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

每次有人話有興趣programming我都會推薦CS50
https://www.inside.com.tw/2014/12/17/harvard-cs50

2017-04-12 22:22:41


巴打想法認真幾好,又可以俾自己用下for,while個啲,唔會一味用死if,搞到for,while個啲用得唔熟,我自己就用太多if同for,搞到while,do while唔多識用,多得巴打提醒下,之後自己會注意多啲

for同while根本係兩個唔同目的,係絕對唔應該撈亂用。


自己因為新手上路真心唔係好完全識分咩時候用for更好,幾時用while更好。自己while又用得少,搞到極唔熟,有時候覺得while個度寫得啱,但又run唔到……所以自己下意識依靠多咗if同for,根本惡性循環,唔練多啲真係停滯不前

for (; true;){
}
while (true){
}
有咩唔同 ?

個人偏好用for 做 iterator. 個 for clause 控制個iteration flow, 主要係sequential 嘢同埋你大概知幾時完 (for each, for (int i = 0;i < arr.Length; i++) etc)
Loop through list and array 用while 都做到但 for 好似易睇啲


While 就係有個執行condition, 而係一真做至condition 唔再同為止
個condition 係code 入邊可能會改
While (condition) {
// condition might change here. Stops when it happens; break as needed
....
}

有時想行至少一次又可以用 do while

可以用for 做到個人鍾意寫for 多啲 感覺易明啲

手機打懶fix casing 梳

萬一個iterator係冇Length,iterator只係知有冇next record, 咁樣情況用while, 會容易理解過for loop
例如sql cursor, stream, queue

其實都要睇下你用咩data structure同random access of element好似係
例如linked list random access由頭loop落去

list[9]: 0開始 loop到9
list[10]: 0開始 loop到10


可以用 linq 之類 expression 去 subset 咗個 list 先 iterate

唔係用 while loop 可能要每次check 個 condition


所以functional programming一開始processing power唔夠高既時候興唔起來
要等到近年大家都開始隨便寫code唔太需要注意resource limit既時代先重新興起
2017-04-12 22:23:36
其實《Clean Code》歸納左好多寫靚code既skill
不過我個人對呢本書評分唔高,睇到訓著,但還是值得推薦

----------
再分享一下,如果有試過緊急補鑊,去maintain前人唔知寫左咩既legacy code, 好多時都會貪方便,用debugger trace到有問題既code上面直接用if 去判斷做hotfix....久而久之,好容易變成有一堆專處理special case既if...愈main 愈辛苦


仲有global variable到處非都係死罪

其實refactoring 入面提左一大堆bad smell, 睇晒佢起碼識得判斷自己係咪寫緊伏畀自己
https://sourcemaking.com/refactoring

遇過A class call B class
跟住B class call C class
跟住A class 用返個C class global varibale拎返data...

global左就斷左dependency...都未算係recursion
這樣是否正確其實好視乎個business domain決定
domain driven design有機會寫到易明既code....


其實好常見, 睇下framework就知
2017-04-12 22:24:08
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!
2017-04-12 22:39:39
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!

睇SICP既過程就會好自然學左Lisp....
2017-04-12 22:48:52
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!


C 都係好老嘅 language 都好多人用
每個language 有自己強短處
冇必要一概而論
講笑講句五十幾就又年輕啲又廢中
感覺好玻璃心
2017-04-12 22:50:21
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!

睇SICP既過程就會好自然學左Lisp....

老實學Lisp我會揀睇其他書
btw SICP我覺得係學algebra
2017-04-12 22:52:16
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!

用開Elixir
不過Lisp都有好處,唔駛學咁多嘢,當然用就係另一回事
2017-04-12 22:54:49


自己因為新手上路真心唔係好完全識分咩時候用for更好,幾時用while更好。自己while又用得少,搞到極唔熟,有時候覺得while個度寫得啱,但又run唔到……所以自己下意識依靠多咗if同for,根本惡性循環,唔練多啲真係停滯不前

for (; true;){
}
while (true){
}
有咩唔同 ?

個人偏好用for 做 iterator. 個 for clause 控制個iteration flow, 主要係sequential 嘢同埋你大概知幾時完 (for each, for (int i = 0;i < arr.Length; i++) etc)
Loop through list and array 用while 都做到但 for 好似易睇啲


While 就係有個執行condition, 而係一真做至condition 唔再同為止
個condition 係code 入邊可能會改
While (condition) {
// condition might change here. Stops when it happens; break as needed
....
}

有時想行至少一次又可以用 do while

可以用for 做到個人鍾意寫for 多啲 感覺易明啲

手機打懶fix casing 梳

萬一個iterator係冇Length,iterator只係知有冇next record, 咁樣情況用while, 會容易理解過for loop
例如sql cursor, stream, queue

其實都要睇下你用咩data structure同random access of element好似係
例如linked list random access由頭loop落去

list[9]: 0開始 loop到9
list[10]: 0開始 loop到10


可以用 linq 之類 expression 去 subset 咗個 list 先 iterate

唔係用 while loop 可能要每次check 個 condition


所以functional programming一開始processing power唔夠高既時候興唔起來
要等到近年大家都開始隨便寫code唔太需要注意resource limit既時代先重新興起



咁睇你點睇
好多新語言有abstraction 啲low level 嘢唔使自己寫
Maintainability 同 performance 有時有 trade off
C# 有 garbage collection 會有 overhead, 但會簡化好多程序少啲有 bug
想快可以用c assembly 之類
睇你 project 要 scale 幾大 打算用幾多年 嗰步驟有幾 critical. Over engineering 有時個ROI 唔喺度

Speed to the market + agility 有時重要過 performance
好programmer 應該會明呢啲 tradeoff
2017-04-12 23:20:09
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

20
2017-04-12 23:21:55
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

每次有人話有興趣programming我都會推薦CS50
https://www.inside.com.tw/2014/12/17/harvard-cs50

2017-04-13 06:14:19

switch本質上同if無分別,寫switch,extends都係要加幾行,有咩分別,if就難maintain,switch就會易?咁Python咪好難maintain?
用dictionary store起個state,如果係range check又點做?

係架,如果你覺得不寫if練功法太容易,你可以限制埋自己寫switch
range check唔係重點,用if之前讓自己三思,令自己討厭if
寧願寫for(){ if() } 都唔畀自己寫if(){}else if(){}else if(){}
寧願寫switch case都唔寫if

多數program switch case有個特性, 就係只做最簡單分類,基本上做logic flow既機會比較多, 我正正就係唔想係logic flow畀if出場


巴打想法認真幾好,又可以俾自己用下for,while個啲,唔會一味用死if,搞到for,while個啲用得唔熟,我自己就用太多if同for,搞到while,do while唔多識用,多得巴打提醒下,之後自己會注意多啲

for同while根本係兩個唔同目的,係絕對唔應該撈亂用。


自己因為新手上路真心唔係好完全識分咩時候用for更好,幾時用while更好。自己while又用得少,搞到極唔熟,有時候覺得while個度寫得啱,但又run唔到……所以自己下意識依靠多咗if同for,根本惡性循環,唔練多啲真係停滯不前

for (; true;){
}
while (true){
}
有咩唔同 ?

係可以寫到,但係使用嘅目的係唔同
2017-04-13 06:18:55
起ive 學完 vb 之後
發現自己可以理解到少少c++ code
但係都係睇唔明Python


仲有就要通宵dup code 效率高好多

點解Python都睇唔明,唔明點解唔洗寫type?
2017-04-13 06:36:59

switch本質上同if無分別,寫switch,extends都係要加幾行,有咩分別,if就難maintain,switch就會易?咁Python咪好難maintain?
用dictionary store起個state,如果係range check又點做?

係架,如果你覺得不寫if練功法太容易,你可以限制埋自己寫switch
range check唔係重點,用if之前讓自己三思,令自己討厭if
寧願寫for(){ if() } 都唔畀自己寫if(){}else if(){}else if(){}
寧願寫switch case都唔寫if

多數program switch case有個特性, 就係只做最簡單分類,基本上做logic flow既機會比較多, 我正正就係唔想係logic flow畀if出場


巴打想法認真幾好,又可以俾自己用下for,while個啲,唔會一味用死if,搞到for,while個啲用得唔熟,我自己就用太多if同for,搞到while,do while唔多識用,多得巴打提醒下,之後自己會注意多啲

for同while根本係兩個唔同目的,係絕對唔應該撈亂用。


自己因為新手上路真心唔係好完全識分咩時候用for更好,幾時用while更好。自己while又用得少,搞到極唔熟,有時候覺得while個度寫得啱,但又run唔到……所以自己下意識依靠多咗if同for,根本惡性循環,唔練多啲真係停滯不前

for (; true;){
}
while (true){
}
有咩唔同 ?

係可以寫到,但係使用嘅目的係唔同

見到啲人寫for(;;) 多啲
2017-04-13 06:44:03
其實《Clean Code》歸納左好多寫靚code既skill
不過我個人對呢本書評分唔高,睇到訓著,但還是值得推薦

----------
再分享一下,如果有試過緊急補鑊,去maintain前人唔知寫左咩既legacy code, 好多時都會貪方便,用debugger trace到有問題既code上面直接用if 去判斷做hotfix....久而久之,好容易變成有一堆專處理special case既if...愈main 愈辛苦


仲有global variable到處非都係死罪

其實refactoring 入面提左一大堆bad smell, 睇晒佢起碼識得判斷自己係咪寫緊伏畀自己
https://sourcemaking.com/refactoring

遇過A class call B class
跟住B class call C class
跟住A class 用返個C class global varibale拎返data...

global左就斷左dependency...都未算係recursion
這樣是否正確其實好視乎個business domain決定
domain driven design有機會寫到易明既code....


其實好常見, 睇下framework就知

其實我覺得佢唔洗咁寫
我都見過play framework用類似既方法
例如test script到行段code
然後有個singleton pattern 拎返server 個instance

但無記錯個program只係
A class call B class 讀個csv
然後A 用返 C 拎個csv data
2017-04-13 08:30:08

係架,如果你覺得不寫if練功法太容易,你可以限制埋自己寫switch
range check唔係重點,用if之前讓自己三思,令自己討厭if
寧願寫for(){ if() } 都唔畀自己寫if(){}else if(){}else if(){}
寧願寫switch case都唔寫if

多數program switch case有個特性, 就係只做最簡單分類,基本上做logic flow既機會比較多, 我正正就係唔想係logic flow畀if出場


巴打想法認真幾好,又可以俾自己用下for,while個啲,唔會一味用死if,搞到for,while個啲用得唔熟,我自己就用太多if同for,搞到while,do while唔多識用,多得巴打提醒下,之後自己會注意多啲

for同while根本係兩個唔同目的,係絕對唔應該撈亂用。


自己因為新手上路真心唔係好完全識分咩時候用for更好,幾時用while更好。自己while又用得少,搞到極唔熟,有時候覺得while個度寫得啱,但又run唔到……所以自己下意識依靠多咗if同for,根本惡性循環,唔練多啲真係停滯不前

for (; true;){
}
while (true){
}
有咩唔同 ?

係可以寫到,但係使用嘅目的係唔同

見到啲人寫for(;;) 多啲

Array checking我會用for loop
單一用既話兩個冇咩分別
如果for loop同while loop入面加if
我覺得while會行多一步
2017-04-13 11:07:10
for, while ....真的有討論價值嗎
2017-04-13 12:36:35
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!


Language成日轉,theory比較穩定。學Clojure不如讀lambda calculus。一理通馬國明,識任何一種Lisp dialect要Clojure上手其實唔難,好似係。
2017-04-13 14:42:26
打搞下我重來未學過programming 但有興趣了解 接觸下 應該如何入手開始? 求引導

你幾歲先

有關係咩
咁我五十幾係咪要學cobol

用lisp

You mean ((()))))((())Lisp (((((((())))))))))))((())?


而家學Lisp-based language, 建議你學Clojure, 個人都年輕啲, 唔好好似啲廢中/老咁走番去學啲老餅嘅Common Lisp, Scheme呀嗰啲!


Language成日轉,theory比較穩定。學Clojure不如讀lambda calculus。一理通馬國明,識任何一種Lisp dialect要Clojure上手其實唔難,好似係。

點解我完全未聽過
吹水台自選台熱 門最 新手機台時事台政事台World體育台娛樂台動漫台Apps台遊戲台影視台講故台健康台感情台家庭台潮流台美容台上班台財經台房屋台飲食台旅遊台學術台校園台汽車台音樂台創意台硬件台電器台攝影台玩具台寵物台軟件台活動台電訊台直播台站務台黑 洞