提到百度無(wú)人車,相信大家都清楚吧!早前,百度無(wú)人車在烏鎮(zhèn)試乘,為了測(cè)試無(wú)人車剎車功能,李彥宏請(qǐng)寫(xiě)無(wú)人車代碼的工程師去攔車,有人說(shuō)這簡(jiǎn)直是一道送命題。
今天我們不談?wù)撨@個(gè),談?wù)摰氖前俣葻o(wú)人車三千多個(gè)場(chǎng)景,竟然有一萬(wàn)多個(gè)if。
有網(wǎng)友在網(wǎng)絡(luò)上發(fā)帖稱,據(jù)百度無(wú)人車內(nèi)部員工說(shuō),無(wú)人車?yán)锩嬗?000多個(gè)場(chǎng)景,有10000多個(gè)if,簡(jiǎn)直是很坑。這位網(wǎng)友還稱,if還在不斷的增加。無(wú)人車是專家系統(tǒng),這樣的無(wú)人車可以上路嗎?你們敢不敢去坐?
這位發(fā)帖者稱自己只是想看看其他大神是怎么搞自動(dòng)駕駛的,完全沒(méi)有黑百度的意思。那么其他網(wǎng)友又是怎么評(píng)論的呢?
網(wǎng)友一:三千多個(gè)場(chǎng)景才1萬(wàn)多個(gè)if,平均下來(lái),一個(gè)場(chǎng)景才4個(gè),不多呀!
網(wǎng)友二:我覺(jué)得才1萬(wàn)多個(gè)if,挺少的。
網(wǎng)友三:統(tǒng)計(jì)Linux kernel代碼,居然有超過(guò)30000個(gè)if,而且不斷增加。難道這樣的系統(tǒng),我們就不敢用了,那么我們還敢上網(wǎng)嗎?
網(wǎng)友四:三千多個(gè)場(chǎng)景才一萬(wàn)多個(gè)if,真的不算多,因?yàn)橐紤]很多情況。要是if少了,大家才不相信。
網(wǎng)友五:一個(gè)場(chǎng)景才用3個(gè)if,技術(shù)人員的技術(shù)水平簡(jiǎn)直太高了。
網(wǎng)友六:這么多場(chǎng)景才這么一點(diǎn)if,百度真的很牛逼!
網(wǎng)友七:為什么不用switch?
從這些網(wǎng)友的評(píng)論來(lái)看,百度無(wú)人車的if不僅不會(huì)太多,而且能體現(xiàn)百度技術(shù)人員超高的水平。其實(shí)代碼中,if要適當(dāng),像百度無(wú)人車的if,其實(shí)剛剛好。那么如果代碼里寫(xiě)很多if,會(huì)不會(huì)影響效率呢?
關(guān)于這個(gè)問(wèn)題,有人覺(jué)得代碼里if太多,會(huì)影響閱讀效率,因?yàn)樘鄆f嵌套,看代碼時(shí)簡(jiǎn)直是辣眼睛。也有網(wǎng)友覺(jué)得,if多調(diào)試?yán)щy、閱讀困難、修改困難。關(guān)于代碼里if需要多少,你怎么看?