從乙個簡單的邏輯看嚴謹的軟體設計

2021-06-08 18:53:58 字數 1275 閱讀 5240

我想作為軟體設計人員,我們都知道軟體設計的成本和軟體維護的成本,哪個大。乙個軟體的維護成本可能比設計的成本要多出好倍,但是,我想說,如果有乙個好的軟體設計,那麼會大大降低軟體的維護工作量的,這一點,是我深刻體會到的。

下面我們來舉乙個例子,這是我在乙個實際的專案中所犯的錯誤

介面的主要內容如下:

兩個下拉框的屬性設定如下圖所示:

我原來的**是這樣的:

if (ddladult.text != "不攜帶")

else

if (ddlchild.text != "不攜帶")

else

所犯的錯誤:

自己想當然地把下拉框的text屬性認為是listitem(當前選擇項)的text,其實它所指的是selecteditem的value屬性。所以說它永遠也不可能等於「不攜帶」,那麼orderinfo的familymember也就永遠為「是」,所以,造成的後果是,即使使用者選擇的都是「不攜帶」,那麼是否攜帶家屬也會顯示為「是」。但是對於攜帶家屬的情況沒有影響。錯誤現象如下圖所示:

下面是修改後的**:

if (ddladult.selecteditem.text == "不攜帶")

else

if (ddlchild.selecteditem.text == "不攜帶")

else

總結:

當時這個需求是後來客戶才提出的,所以在做的時候,有些倉促,可以看出,寫的if語句也很爛,降低了**的可讀性。同時,通過這個問題反應出了乙個在程式設計中乙個很重要的思想,那就是要做到「嚴謹」!我不可能說如果做到「嚴謹的設計」會把所有的錯誤避免掉,但是,起碼會減少一些低階的錯誤。有的時候,這些低階的錯誤甚至是致命的!試想如果開發的是乙個醫療系統、金融系統。

自己當時想的是,快點把它做完了,功能完成了,就好了,這樣用得時間就少了。可是回過頭來想一想,真得是節省了時間了嗎?出了錯誤,客戶就會報怨,自己又想去找錯誤,找到錯誤又要除錯、改正,審核資料,我想如果用這些時間用在設計上,應該是綽綽有餘的。

在此提醒自己和有這方面問題的博友,要用心去做軟體!

從乙個笑話看軟體開發管理

關於軟體開發的笑話有很多,下面這個是我剛在qq群裡的看到的 1.程式設計師寫出自認為沒有bug的 2.軟體測試,發現了20個bug。3.程式設計師修改了10個bug,並告訴測試組另外10個不是bug。4.測試組發現其中5個改動根本無法工作,同時又發現了15個新bug。5.重複3次步驟3和步驟4。6....

從乙個笑話看軟體開發管理

關於軟體開發的笑話有很多,下面這個是我剛在qq群裡的看到的 1.程式設計師寫出自認為沒有bug的 2.軟體測試,發現了20個bug。3.程式設計師修改了10個bug,並告訴測試組另外10個不是bug。4.測試組發現其中5個改動根本無法工作,同時又發現了15個新bug。5.重複3次步驟3和步驟4。6....

從乙個笑話看軟體開發管理

關於軟體開發的笑話有很多,下面這個是我剛在qq群裡的看到的 1.程式設計師寫出自認為沒有bug的 2.軟體測試,發現了20個bug。3.程式設計師修改了10個bug,並告訴測試組另外10個不是bug。4.測試組發現其中5個改動根本無法工作,同時又發現了15個新bug。5.重複3次步驟3和步驟4。6....