自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

人人都該學(xué)寫代碼的反思:我們更該學(xué)習(xí)的是"電腦思維"

開發(fā)
大家對(duì)程序設(shè)計(jì)多少有點(diǎn)理解是好事,但寫代碼不該成為最終的學(xué)習(xí)目標(biāo)。寫代碼是一種工具,是達(dá)成目標(biāo)的方法。那么真正的目標(biāo)是什么呢?Yevgeniy Brikman 認(rèn)為,讓大家學(xué)會(huì)全新的思考模式才是真正的目標(biāo),我們?cè)撛囍鴮W(xué)習(xí)電腦科學(xué)而不只是寫代碼。

[[113186]]

Photo Credit: 電影「實(shí)習(xí)大叔」劇照

近年來,程序設(shè)計(jì)在全球掀起一股熱潮,寫代碼不再是男性專屬,而是不分男女老幼的全民運(yùn)動(dòng)了。

Yipit 創(chuàng)辦人曾說:「coding 不是程序員的專利,每個(gè)人都要學(xué)習(xí)寫代碼」,例如在全球各地舉辦的 Rails Girls 工作坊,就幫助許多女性進(jìn)入 Ruby 以及 Rails 的程序世界。

除了擺脫過去寫代碼是男性專屬的既定印象,寫代碼的年齡層也有年輕化的趨勢(shì),像是 Rails Girls 創(chuàng)辦人推出教小朋友寫代碼的繪本、英國小學(xué)生使用 iPad 學(xué)習(xí)寫代碼等新聞屢見不鮮。

此外美國非營利機(jī)構(gòu) Code.org 曾找來多位科技名人如 Bill Gates、Mark Zuckerberg 以及體育界和政界明星拍攝短片,倡導(dǎo)每個(gè)人都該學(xué)習(xí)寫代碼,呼吁社會(huì)該更加重視軟件教育以解決工程師稀缺的問題。(來自愛爾蘭 CoderDojo 則是鼓勵(lì)年輕人與小朋友寫代碼的非營利組織,他們分布在全球的多個(gè)城市)

然而,面對(duì)這股全民寫代碼的浪潮,曾任 TripAdvisor 軟件工程師、現(xiàn)任 LinkedIn 資深軟件工程師的 Yevgeniy Brikman 發(fā)表「」一文,他認(rèn)為大家在學(xué)習(xí)寫代碼的同時(shí),更重要的是學(xué)習(xí)電腦科學(xué)的思維模式。

大家對(duì)程序設(shè)計(jì)多少有點(diǎn)理解是好事,但寫代碼不該成為最終的學(xué)習(xí)目標(biāo)。寫代碼是一種工具,是達(dá)成目標(biāo)的方法。那么真正的目標(biāo)是什么呢?Yevgeniy Brikman 認(rèn)為,讓大家學(xué)會(huì)全新的思考模式才是真正的目標(biāo),我們?cè)撛囍鴮W(xué)習(xí)電腦科學(xué)而不只是寫代碼。

接下來,將會(huì)解釋兩者的差異,并解釋為何學(xué)習(xí)電腦科學(xué)更為重要。

歡迎來到真實(shí)世界

[[113187]]

首先,或許很多人會(huì)想問:無論是程序設(shè)計(jì)或電腦科學(xué),到底跟我有什么關(guān)系呢?為什么我該關(guān)心?

事實(shí)上,在閱讀本文時(shí),你可能正使用 Chrome 或 Firefox 瀏覽器,用的是 Windows 或 OS X 系統(tǒng)。并且你今天大概花了一些時(shí)間收發(fā) email、瀏覽微博動(dòng)態(tài)或在優(yōu)酷上看了幾個(gè)熱門視頻?,F(xiàn)代人的生活與電腦緊密連結(jié):醫(yī)療記錄、稅務(wù)記錄、個(gè)人履歷等等,各種想得到的服務(wù)幾乎都能在電腦上操作。

而你使用的智能手機(jī),使用了 GPS 定位,配備相機(jī)、觸控屏還有許多其他的 APP 應(yīng)用。此外你每天接觸的電視節(jié)目、電影、音樂、游戲等等都與電腦繪圖和數(shù)位音效處理緊密相關(guān)。

出門在外你可能會(huì)使用 Google Map 尋找路線,現(xiàn)在 Google 無人駕駛車都可以行駛在一般的道路上。而飛機(jī)則有自動(dòng)駕駛、甚至在高空中也有 Wifi 及通訊系統(tǒng)。更高上大一點(diǎn),太空中的衛(wèi)星正圍繞著地球,提供著氣象資訊與衛(wèi)星影像。

軟件正在吃掉全世界。但這一切都還只是開始,在人們意識(shí)到這件事之前,大家早已用起穿戴設(shè)備、只能家居。用電腦控制家里的門禁。也許在不久的將來,機(jī)器人會(huì)清潔環(huán)境,出門乘坐無人駕駛車、住在虛擬現(xiàn)實(shí)世界里。

剛剛提到的所有的科技都是由軟件驅(qū)動(dòng),滲透到生活中的各個(gè)層面。大家都被程序環(huán)繞,未來,代碼量只會(huì)不斷增加,所以電腦科學(xué)和代碼與每個(gè)人的生活都有緊密連結(jié)。

什么是電腦科學(xué)?

 

根據(jù)維基百科定義,電腦科學(xué)是系統(tǒng)性研究訊息與計(jì)算的理論基礎(chǔ),以及研究它們?cè)陔娔X系統(tǒng)中如何實(shí)作與應(yīng)用的實(shí)用技術(shù)學(xué)科。以下是幾個(gè)電腦科學(xué)相關(guān)概念解釋:

[[113188]] 

問題解決(Problem solving)透過學(xué)習(xí)演算法,像是 divide and conquer、 recursion、heuristics、greedy search、 randomized algorithms 等,幫助你解決問題。

邏輯(Logic)使用精準(zhǔn)和正式的方法去思考,包括 abstraction、 boolean logic、number theory、set theory 等理論,幫助你更嚴(yán)謹(jǐn)?shù)慕鉀Q問題。

數(shù)據(jù)(Data)你會(huì)開始接觸資訊理論并開始提出類似「什么是資訊?」、「如何呈現(xiàn)資訊?」等這類問題。

系統(tǒng) Systems 如何設(shè)計(jì)并建立一套復(fù)雜的系統(tǒng)且同時(shí)滿足一連串的要求和限制呢?系統(tǒng)工程幾乎在所有的商業(yè)模式中都是是相當(dāng)重要和基本的。

思考(Thinking)理解人類心智的最好方式便是復(fù)制,像是人工智慧 AI、自然語言處理等是走在最前端的科技,其不近牽涉了電腦科學(xué),同時(shí)還有:生物學(xué)、心理學(xué)、哲學(xué)和數(shù)學(xué)。

注意到了嗎?上面完全沒有提到跟寫代碼相關(guān)的詞條,這是因?yàn)閷懘a只是實(shí)現(xiàn)電腦運(yùn)算的一種工具,寫代碼并不包含在電腦科學(xué)的概念宗旨里。

電腦科學(xué)不只是跟電腦相關(guān),就如同天文學(xué)不只是望遠(yuǎn)鏡、生物學(xué)不只是顯微鏡、化學(xué)不只是燒杯試管一般??茖W(xué)是與工具無關(guān)的。

——Michael Fellows and Ian Parberry

事實(shí)證明,比起電腦,我們更倚賴另一種運(yùn)算工具:大腦!而電腦科學(xué)的目標(biāo)正是要教導(dǎo)我們以一種全新、普世且能被廣泛應(yīng)用的方式思考。當(dāng)科技變得越來越普及時(shí),這種全新的思考方式將會(huì)變得跟物理、數(shù)學(xué)、生物、歷史等學(xué)科一樣重要。

總而言之,光是思考是不夠的,我們必須知道如何應(yīng)用。在物理領(lǐng)域,我們以磁鐵、棱鏡進(jìn)行實(shí)驗(yàn);在生物領(lǐng)域,我們以培養(yǎng)皿、試管進(jìn)行觀察;在電腦科學(xué)領(lǐng)域,我們學(xué)習(xí)寫代碼。

#p#

什么是程序設(shè)計(jì)?

 

程序設(shè)計(jì),或說是寫代碼,是指對(duì)電腦下指令以讓其完成某項(xiàng)特定的動(dòng)作。如果從來沒寫過代碼,您大概曾經(jīng)在 App 中點(diǎn)擊過某些按鈕,這些 App 正是由許多程序代碼組成,透過程序代碼告訴電腦如何展示界面、要在哪里取得數(shù)據(jù)以及如何回應(yīng)使用者的點(diǎn)擊。

程序設(shè)計(jì)完全是基于上述電腦科學(xué)的原則,剛剛談到的邏輯、演算法、系統(tǒng)工程等能用來建構(gòu)任何事情,從你正用來閱讀本文的瀏覽器到飛機(jī)上的自動(dòng)駕駛程式都可以。即使程序設(shè)計(jì)牽涉到許多數(shù)學(xué)與結(jié)構(gòu),但這同時(shí)也相當(dāng)能激蕩創(chuàng)意的實(shí)作。用一條條的代碼,把想法化為真實(shí)存在的產(chǎn)品。

學(xué)習(xí)程序設(shè)計(jì)能為你帶來不少好處,以下 Yevgeniy Brikman 提出三點(diǎn):

1、DIY

如果你會(huì)寫代碼,你就能建立專屬于自己的產(chǎn)品,從最簡單的開始,例如用 Excel 表格計(jì)算自己的稅務(wù)問題。更難一點(diǎn), 建立自己的網(wǎng)站、開發(fā)自己公司的 App 甚至打造一款手機(jī)游戲與朋友共享。

2、故障排除

一旦你開發(fā)了 App,便會(huì)發(fā)現(xiàn)要開發(fā)其他 App 也沒那么難了。一旦你不再害怕電腦未知的部分,你就朝著成為技術(shù)專家又前進(jìn)了一步。當(dāng)科技滲透生活的各個(gè)部分,去了解并且探索。如何操作它,就變得跟學(xué)習(xí)如何閱讀一樣重要。

3、職業(yè)生涯

學(xué)習(xí)電腦科學(xué)的目標(biāo)不是為了成為專業(yè)工程師,如同我們從小在校園里學(xué)習(xí)數(shù)學(xué)、物理、化學(xué)一樣。不過如果發(fā)現(xiàn)自己對(duì)電腦科學(xué)有興趣的話,不難發(fā)現(xiàn)軟件工程是現(xiàn)在成長最為快速、高薪的工作選項(xiàng)之一。

把電腦科學(xué)和程序設(shè)計(jì)結(jié)合在一起

最后讓我們?cè)倏偨Y(jié)一下:

電腦科學(xué)是一種新的思考方式,其中的概念對(duì)處在充滿科技環(huán)境中的每個(gè)人都相當(dāng)有用。

程序設(shè)計(jì)是學(xué)習(xí)電腦科學(xué)相當(dāng)重要的一環(huán),用于將電腦科學(xué)的思維付諸實(shí)行。然而,程序設(shè)計(jì)本身并不該被視為學(xué)習(xí)終極目標(biāo)。

如何開始第一步

[[113189]]

身處在這個(gè)時(shí)代,幸運(yùn)的是我們手邊有許多資源能從馬上開始自學(xué)電腦科學(xué)!事實(shí)上,這可能是最好入門的學(xué)科了,你只需要一臺(tái)電腦就夠了,正在閱讀本文的讀者大概都具備了這兩項(xiàng)基本條件了!LOL~

透過以下學(xué)習(xí)平臺(tái),大家今天就能開始上電腦科學(xué)的第一課:

大學(xué)課程

  1. Coursera
  2. Udacity
  3. MIT OpenCourseWare
  4. Stanford Engineering Everywhere
  5. Academic Earth

線上課程

  1. Khan Academy
  2. Treehouse
  3. MIT Scratch
  4. Codecademy
  5. Code School

社團(tuán)與組織

  1. CoderDojo
  2. Girls Who Code
  3. Girl Develop It
  4. Code.org
  5. Coding meetup Groups

原文鏈接:http://www.inside.com.tw/2014/05/20/dont-learn-to-code-learn-to-think

責(zé)任編輯:林師授 來源: inside.com
相關(guān)推薦

2015-03-13 10:40:37

2015-12-15 09:42:52

TCP網(wǎng)絡(luò)協(xié)議

2018-08-05 06:48:34

2017-02-24 13:32:21

創(chuàng)業(yè)農(nóng)場農(nóng)夫

2012-09-20 10:50:34

IBMdw

2021-10-27 09:20:56

Bug代碼語言

2019-09-08 18:24:53

代碼程序員技術(shù)

2017-10-31 15:40:36

Linux學(xué)習(xí)步驟

2013-03-25 11:28:40

2021-12-13 22:47:31

人工智能機(jī)器人學(xué)習(xí)

2019-02-26 15:34:27

AI 數(shù)據(jù)人工智能

2024-08-28 10:04:17

2013-03-12 13:52:56

編程

2010-08-25 10:35:31

微軟

2020-06-20 14:15:53

信息安全數(shù)據(jù)技術(shù)

2017-12-19 15:20:47

代碼應(yīng)用架構(gòu)

2017-08-07 18:35:52

機(jī)器學(xué)習(xí)統(tǒng)計(jì)與計(jì)算發(fā)展啟示

2020-02-26 11:11:50

運(yùn)維微盟系統(tǒng)故障

2018-12-19 17:20:17

2021-07-26 09:43:24

代碼MapStructs項(xiàng)目
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)