第1章 游戲之樂——游戲中碰到的題目

研究院舉辦過幾屆桌上足球(football)公開賽,第一屆的冠軍是一位文靜的女實習生。
這一章的題目原計劃叫做“Problem Solving”——運用所學的知識解決問題,直譯為“問題解決”,甚為不美。事實上這里面大部分題目都是和游戲相關的,因此本章改名為“游戲之樂”。這些題目從游戲和作者平時遇到的有趣問題出發,向程序員提出挑戰。
個人電腦(PC)在蹣跚起步的時候,就被當時的主流觀點視為玩具。PC上的確有各種各樣的游戲,電腦上的游戲是給人玩的,如果你愿意,CPU也可以讓人“玩”。
筆者曾經用“CPU使用率”這個問題問了十幾個應聘者,一個典型的模式如下。
我:筆試考得怎么樣?發揮了多少水平?
答:我不習慣在紙上寫程序,平時都在電腦上寫……
我:那你對Windows、操作系統這些東西熟悉嗎?
答:那是相當熟悉……
我:好,那你可否在這筆記本電腦上幫我解決一個問題——讓CPU的使用率劃出一條直線,比如就在50%的地方。
這個時候可以觀察應聘者的好幾個方面。
1.應聘者面對這個陌生問題的時候如何開始分析。
有人知道觀察任務管理器如何運行,有人在紙上寫寫畫畫,有人明顯沒有什么想法。
2.當提示可以在網上搜索資料時,應聘者如何尋找資料,如何學習。
比如,有一位學生很快地用快捷鍵在IE中打開了幾個Tab窗口,然后每個窗口輸入不同的搜索關鍵字。當我提示在MSDN上查找一些函數的時候,有些人根本不知道MSDN網站應該怎么用。有些人反復讀了函數的說明,仍不得其解。
3.在電腦上是怎么寫程序,怎么調試程序的。
有人能很嫻熟地使用C/C#的各種語言特性,很快地寫出程序,有人寫的程序編譯了好幾次都不能通過,對編譯錯誤束手無策。程序第一次運行的時候,任務管理器的CPU使用率不按預想的軌道運行,這時候有人就十分慌亂,在程序中瞎改一通,希望能“蒙”對。有人則有條理地分析,最后找到并解決問題。
我想,45分鐘下來,應聘者的思考能力、學習能力、技術能力如何,應該很清楚了。行還是不行,雙方都明白了。
這一章的其他題目大多和游戲有關,同學們在玩“空當接龍”“俄羅斯方塊”,甚至“魔獸”的時候,有沒有動過好奇心——這個程序為什么這么酷,如果是我來寫,應該怎么做?有沒有把好奇心轉化為行動?
喜歡玩電腦、會玩電腦的人,也會運用電腦解決實際問題,這也是我們要找的人才。
- .NET之美:.NET關鍵技術深入解析
- OpenShift開發指南(原書第2版)
- 零基礎學Scratch少兒編程:小學課本中的Scratch創意編程
- Java高手真經(高級編程卷):Java Web高級開發技術
- AIRAndroid應用開發實戰
- SAP BusinessObjects Dashboards 4.1 Cookbook
- Domain-Driven Design in PHP
- Spring Boot實戰
- 細說Python編程:從入門到科學計算
- JavaScript悟道
- Xamarin Cross-Platform Development Cookbook
- Python 快速入門(第3版)
- The Applied Data Science Workshop
- C# 10核心技術指南
- 新手學ASP.NET 3.5網絡開發