從專業(yè)技術(shù)看,工業(yè)軟件開發(fā)其實(shí)也不是特別難。關(guān)鍵是思維方式要融合,還要融合得天衣無縫。
我經(jīng)常講一個(gè)段子:老婆讓程序員出去買五個(gè)包子;如果遇到賣西瓜的,就順便買一個(gè)過來。結(jié)果,程序員買了一個(gè)包子回家。他的理由是:看到賣西瓜的了。如果這是個(gè)段子的話,下面的故事是真實(shí)的:我的一位軟件專業(yè)碩士畢業(yè)的同學(xué)讓一位程序員在“386”上加上“111”。結(jié)果,程序員給他的數(shù)是“386111”。
程序員的思維方式與“正常”的思維確實(shí)不太一樣。正如司機(jī)選擇路線的邏輯,和步行者不一樣。前些日子,我參與一個(gè)討論:如何把大的軟件,拆成小的APP。我說:沒有必要把大的拆小,只要把其他功能封閉就可以了。在物理世界里,“拆”是更經(jīng)濟(jì)的,但在軟件的世界里,“封”往往更經(jīng)濟(jì)。最近大數(shù)據(jù)技術(shù)之所以稱為熱點(diǎn),是因?yàn)橛?jì)算機(jī)的發(fā)展,讓一些“笨辦法”變得更有效了。
我曾經(jīng)要同事寫段程序。寫完后,他讓我檢查。看完后,我要求他重寫這段代碼。他問我:什么地方錯(cuò)了?我回答說:我看不出哪里錯(cuò)了,但我無法證明你是對(duì)的。
這個(gè)故事則反應(yīng)了工業(yè)軟件的特點(diǎn):對(duì)可靠性要求特別高。這種特殊性,讓工業(yè)軟件的思維方式,與普通軟件開發(fā)又有所不同。
有位同事,寫了3000行程序。調(diào)式結(jié)束后,我讓她把三個(gè)全局變量改成兩個(gè)。這樣,整個(gè)程序都要重寫。我對(duì)她講:這樣做的目的,是讓檢查的人方便。因?yàn)樽鰴z查的時(shí)間,比寫程序的時(shí)間要長(zhǎng)。可謂“一天編碼、十天檢查”。所以,檢查的效率高了,整個(gè)研發(fā)的效率也就高了。有時(shí)候,工業(yè)軟件往往是“一行代碼描述功能,十行代碼防錯(cuò)”。因?yàn)楣I(yè)軟件往往不允許在使用過程中出現(xiàn)嚴(yán)重的BUG。
為了提高可靠的程度,寫軟件時(shí)要考慮到各種意外的場(chǎng)景與異常。正常的場(chǎng)景只有一個(gè),而意外的場(chǎng)景可能有很多。可謂“一種正常場(chǎng)景,十種異常場(chǎng)景”。而現(xiàn)實(shí)中,最難防備的就是“預(yù)料之外”的問題。這就要求對(duì)工業(yè)場(chǎng)景特別熟悉
工業(yè)人的思維方式,與學(xué)術(shù)界差別很大:你以為某個(gè)技術(shù)可以提高產(chǎn)量,但現(xiàn)實(shí)中可能不能用:因?yàn)樗赡苡绊戀|(zhì)量。你以為某個(gè)改進(jìn)可以提高質(zhì)量,現(xiàn)實(shí)中可能也無法用:因?yàn)樗赡苡绊懓踩⒎€(wěn)定。不理解這些“約束”,就寫不出合用的軟件。
要解決這些問題,本質(zhì)上都是要解決知識(shí)融合的問題。對(duì)于不善于交流、不喜歡討論的中國(guó)人來說,知識(shí)融合是個(gè)很大的挑戰(zhàn)。有時(shí)候,與其讓別人說明白,還不如自己成為這個(gè)領(lǐng)域的專家。其實(shí),我的建議是:至少你要成為半個(gè)領(lǐng)域?qū)<遥拍苋ラ_發(fā)工業(yè)軟件。
本文來源:郭朝暉
原文標(biāo)題:工業(yè)軟件與知識(shí)融合
文章出處:【微信公眾號(hào):智能制造】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
程序
+關(guān)注
關(guān)注
117文章
3786瀏覽量
81016 -
工業(yè)軟件
+關(guān)注
關(guān)注
2文章
187瀏覽量
16019
原文標(biāo)題:工業(yè)軟件與知識(shí)融合
文章出處:【微信號(hào):mfg2025,微信公眾號(hào):智能制造】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論