[介紹] 專為編程愛好者而設計的挑戰平台 – HackerRank

Share

最近筆者在這場疫情中,發現了這個可以學習與挑戰編寫程式的平台。我自己使用了十幾天,發覺它很值得初學者甚至高手們來玩一玩,所以就決定寫篇文章推薦一下。

這個學習編程的平台並不是單純的「學習平台」。它的介面設計刻意先擺放考題,後擺放相應的教材,強調使用者要先用腦袋思考解題,當使用者遇到困惑時才去參考教材。這有別於所謂的「傳統學習平台」,要一步一步地跟隨教學來編程,再去考題。我認為前者才是學習編程的應有態度。很多時候我們要學習一種東西,都必須問自己為什麼要學這種東西,因為學習動機會影響學習態度和成果。我認為學會編程的最終目的就是來解決難題。所以對我來說,每完成一個考題,都會有一種成就感。久而久之就會很享受編寫程式的過程,好像玩遊戲,完成一關又一關,挑戰越來越難的關卡。

登入介面

它除了給編程愛好者使用之外,也給一眾老闆們尋找隱世高人。

因為我現在還沒有能力請員工,所以按 Sign Up & Code 就可以了。

還有,我不想記太多帳號密碼,所以直接用 Google 帳戶登入。

使用介面

如果你是登入為工程師介面,它將會有五個分頁, 分別是練習 ( practice ) 、證書 ( certification ) 、競爭 ( compete ) 、工作 ( jobs ) 及排行榜 ( leaderboard ) 。練習分頁會有個很簡潔的儀表板,有不同分類的課題等著大家去發掘,考證書,學技巧,學程式語言等。

由淺入深

這平台有一個三十日編程的挑戰,內容都是編程的基本功。它每天都會發佈一節課題,電郵提醒你回來編程。而課題內容直接參考了一名金髮女生 blondiebytes 的教學影片《30 Days of Code!》。她的頻道很值得你去訂閱,很好看。真的,相信我 :) 。相信這個課題很適合初學者或者是對於自己基本功不太有信心的人。當然,如果對於自己編程的能力有自信的話也可以當做一個複習。

練習方式

練習分頁有六個小分頁,分別是:問題、提交紀錄、排行榜、討論區、編輯、教學。

如之前所說,題目排最前,教學排最後。大家可以先了解題目內容,才考慮要不要看教學。我相信高手們根本不用點教學吧?

它的教學介面跟學校沒甚麼差別,上方有一個影片,下方就是圖解,有程式碼案例解釋等。可是如果只是忘記了語法,可能找 Google 搜尋會比較快。

每課問題都解釋得相當詳盡,如果想考入 Google 團隊的話,可能要閱讀一下解題,習慣把每個問題。但它還是缺乏了計算時間複雜度和空間複雜度的一環,或是限制複雜度的答題。不過這已經是入門技巧,還是讓用家自己慢慢來吧。

每次提交答案前都可以先運行它提供的測試用例或是自家測試用例,debug 都很方便。

考取證書

考取證書前都要輸入一些簡單個人資料,確定好才進入。

因為考取證書都是限時作答,所以建議各位有足夠準備才開始點進去。而它的作答方式跟一般練習介面一樣,可以先運行它提供的測試用例,之後才提交答案。它也會提供模擬題目讓你熟習一下使用介面。

工作機會

這個平台還有一個分頁列出了各大公司的招聘資訊,可能真的有機會去美國工作?

排行榜

HackerRank 的 rank 就是排行的意思,完成各類挑戰都會有相應分數。這裡可以比較自己與高手們的表現。有趣的是它會依照你提交答案的時間複雜度來分高下,想登榜還是要下點苦功。

競爭模式

用戶自己出題,難度各有不同,題目都有張貼限期。就是高手們解悶的地方?

現在學習編程的方法真的多元化,還記得小時候學 Java 要到圖書館借閱書籍。我也相信編程會越來越普及,筆者都要拿好自己的飯碗,學習更多。

本次介紹到此為止,大家如果有學習編程的有趣體驗,歡迎在下方留言交流哦!


探索更多來自 砂煲部落格 3Bro Blog 的內容

Subscribe to get the latest posts sent to your email.

You may also like...

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料