找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
伊莉需要你的贊助和支持認識好友、聊天,分享生活趣事你準備好成為出色的版主了嗎?
riongecosplay出包王女3dge按摩
神話世紀牝犬の儀女則校中字gemg@無碼mlb

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

(10月新番)[繁]魔王20

✌ 國漫【凡人修仙传

✡ 斗破苍穹 年番/鬥

[繁]最狂輔助職業【話

[繁]精靈幻想記 第二

[繁]嘆氣的亡靈想隱退
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 16820|回復: 9
打印上一主題下一主題

[原創]個人的寫程式小技巧[複製鏈接]

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

帖子
155
積分
1282 點
潛水值
47955 米
跳轉到指定樓層
樓主
發表於 2016-12-3 10:16 AM|只看該作者|倒序瀏覽
本帖最後由 tryit244178 於 2016-12-5 11:00 PM 編輯

想要漂亮的原始碼,除了有意義的變數宣告外
提供一下我個人寫程式的小技巧
讓有興趣的人參考參考

=====================================

模組化你的程式碼!
看看下面的程式碼…
  1. Sub TestA()
  2.         Text1.Text = "TestA"
  3.         Button1.Enabled = False
  4.         i = 1
  5. End Sub

  6. Sub TestB()
  7.         Text1.Text = "TestB"
  8.         Button1.Enabled = True
  9.         i = 1
  10. End Sub
  11.         .
  12.         .
  13.         .
複製代碼

仔細一看,內容都是類似的!
寫個副程式,把它們包裝起來吧!
  1. Sub Test(ByVal strValue As String, ByVal blnValue As Boolean)
  2.         Text1.Text = strValue
  3.         Button1.Enabled = blnValue
  4.         i = 1
  5. End Sub
複製代碼

=====================================

用函數來傳回布林值!
臨時想不出例子,總之很好用!!
  1. Function CheckState() As Boolean
  2.         [程序]
  3.         Return True
  4. End Fucntion

  5. If CheckState = True Then
  6.         [程序]
  7. End If
複製代碼

=====================================

假設有個整數變數 i ,它會記錄執行後的結果
我們會用它記錄的結果來執行程序
  1. If i = 1 Then
  2.    [程序]
  3. End If

  4. If i = 2 Then
  5.    [程序]
  6. End If

  7.         .
  8.         .
  9.         .
複製代碼

或是
  1. If i = 1 Then
  2.    [程序]
  3. ElseIf i = 2 Then
  4.    [程序]
  5. ElseIf i = 3 Then
  6.         .
  7.         .
  8.         .
  9. End If
複製代碼

比起用If一行一行判斷,改用Select Case吧!
  1. Select Case i
  2.         Case 1
  3.                 [程序]
  4.         Case 2
  5.                 [程序]
  6.         .
  7.         .
  8.         .
  9. End Select
複製代碼

=====================================

寫個從1加到10的程式碼
  1. Dim intCount As Integer = 0

  2. For i As Integer = 1 To 10
  3.         intCount += i
  4. Next
複製代碼

有個自已呼叫自已的方法,叫做遞迴!(這個有好有壞,但很華麗XD)
  1. Function Count(ByVal intValue As Integer) As Integer
  2.         If intValue = 0 Then Exit Function
  3.         Return intValue + Count(intValue - 1)
  4. End Function

  5. '傳回55
  6. Debug.Print(Count(10))
複製代碼

=====================================
其他的還沒想到,歡迎補充




...
瀏覽完整內容,請先 註冊登入會員
分享分享0收藏收藏1支持支持1
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。

使用道具檢舉

Rank: 2Rank: 2

帖子
1334
積分
991 點
潛水值
30737 米
頭香
發表於 2016-12-5 10:07 AM|只看該作者
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com
遞迴是很好用,
不過用的時候要小心一點,
初學者很容易不小心跳不出來。

點評

tryit244178 無限迴圈是好朋友!寫程式的人都有一個!(啥  發表於 2016-12-5 02:55 PM

使用道具檢舉

dashixiong168 該用戶已被刪除
3
發表於 2017-1-7 10:37 PM|只看該作者
成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。
看起來還不錯用!! 又學到了新用法,感謝分享!

點評

tryit244178 參考參考吧:)  發表於 2017-1-20 11:46 PM
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

Rank: 2Rank: 2

帖子
241
積分
299 點
潛水值
22810 米
4
發表於 2017-1-16 09:28 AM|只看該作者
若新密碼無法使用,可能是數據未更新。請使用舊密碼看看。
前面的例子, 可以簡單彙整成幾個條列,
* Duplicated code (重構-壞味道)
* 避免直接存取變量, 如:OO常見get/set
* 狀態機處理模式


網上很多編程原則可以參考, 像是,
* SOLID
* 重構書中所提的壞味道
* 編碼風格
  (各公司組織, 語法, 甚至於各個專案, 都可以定義; 重點在一個專案中應該一致)

每個步驟都不是很特別, 都是很常見的語法, 差別只在於, 願不願意去用; 以及是否會去思考, 用與不用的差別.
...
瀏覽完整內容,請先 註冊登入會員

點評

johnwanz 這也是一本討論設計原則及習慣的一本好書.  發表於 2017-2-3 08:45 AM
tryit244178 最近倒是看到一本"無瑕的程式碼"有點興趣  發表於 2017-1-31 04:46 AM
johnwanz 網路上搜尋一下, "重構:改善既有程式的設計" 作者:侯捷 (中文版也許比較容易讀)  發表於 2017-1-23 09:29 AM
tryit244178 壞…壞味道!?  發表於 2017-1-20 11:44 PM
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。

使用道具檢舉

Rank: 1

帖子
1700
積分
174 點
潛水值
46010 米
5
發表於 2017-3-23 01:18 AM|只看該作者
分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。
本帖最後由 zxc693491 於 2017-3-23 01:19 AM 編輯

我認為初學先多看看別人寫的,並去理解會比較好上手
畢竟人類一開始都是靠著模仿成長的,成熟了自然會獨立
舉自己當例子,排列一直是程式設計很重要的一個概念
C=A:A=B:B=C,如此交換A與B值等基礎我花了很多時間在記熟如何寫出這樣的迴圈,像是氣泡排序法之類的,
但用多了發現,實務上死背這些似乎沒有幫助,應該多試試看自己的想法,搞懂了再去用這些編好的模組,像我在排列時會直接寫個簡單的陣列全部存進去,用內建的函數讓他自己排序,雖然在實際上是多此一舉,但編寫的時候自己可以更快去處理,也減少bug的產生,當然對於龐大的程式不適合如此就是了。
...
瀏覽完整內容,請先 註冊登入會員





點評

tryit244178 贊成。先懂基碼,再套模組。我也喜歡看別人寫的程式碼,是條捷徑  發表於 2017-3-23 08:12 AM
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

黑輪兄 該用戶已被刪除
6
發表於 2018-4-6 09:45 PM|只看該作者
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php
這東西很好用耶,讓我的程度又成長許多

點評

tryit244178 好說好說  發表於 2018-4-7 04:57 PM

使用道具檢舉

帖子
10
積分
0 點
潛水值
7040 米
7
發表於 2018-5-26 08:43 PM|只看該作者
其實我才剛學VB所以有很多會看但不會寫,這篇文章給了我許多啟發

點評

tryit244178 初學可參考5樓的zxc693491大大說的方法  發表於 2018-5-27 10:38 AM

使用道具檢舉

帖子
46
積分
28 點
潛水值
15047 米
8
發表於 2020-4-5 11:42 PM|只看該作者
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。
謝謝大大的分享..大大辛苦了
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。

使用道具檢舉

帖子
14
積分
1 點
潛水值
1731 米
9
發表於 2022-4-2 04:08 PM|只看該作者
所有積分大於負-100的壞孩子,將可獲得重新機會成為懲罰生,權限跟幼兒生一樣。
長知識了,感謝分享~~~
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php

使用道具檢舉

帖子
10
積分
1 點
潛水值
2395 米
10
發表於 2022-12-7 11:04 PM|只看該作者
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部