Javascript初學者課程(7)-條件式應用

Javascript初學者課程(7)-條件式應用
Javascript初學者課程(7)-條件式應用

本日的JavaScript教學就是要教你正確應用條件式哦!

if 條件式

一般來說,在使用 JavaScript 編寫程式碼時, 前端工程師建議,如果希望程式能依據不同的狀態,而執行不同的操作時,就需要使用條件陳述式(conditional statements)

我們可以使用if 條件式來敘述:當一個指定的條件成立(為真)時會執行的程式碼,用白話來說就是「當…條件成立時,則會執行…程式」。

if 條件式的 JavaScript 語法如下:

See the Pen JavaScript7-if-1 by Tedutw (@Tedutw) on CodePen.

只有當指定的條件成立時,程式碼才會執行。

下面為 if 條件式 的範例,聲明當「變數 Num1 小於 變數 Num2」的條件成立時,才會顯示「JavaScript其實不難啊!」。

See the Pen JavaScript7-if-3 by Tedutw (@Tedutw) on CodePen.

承上面的例子,當「變數 Num1 小於 變數 Num2」的條件不成立時,則程式會自動跳過要執行的代碼,不會顯示「JavaScript其實不難啊!」。如下所示:

See the Pen JavaScript7-if-4 by Tedutw (@Tedutw) on CodePen.

else 敘述

當條件不成立時,除了不讓程式執行之外,我們還可以有其他選擇,可以使用「else」語句來指定當不符合指定條件時,所要執行的動作。承上方例子,當不符合「變數 Num1 小於變數 Num2」 的狀況時,就顯示「前端工程師都必須學JavaScript」。

See the Pen JavaScript7-if-5 by Tedutw (@Tedutw) on CodePen.

else if 敘述

if 條件式 中,我們還可以加入「else if」敘述另一個條件。當所指定的條件不成立時,是否還符合另一個條件。如以下例子所示,當變數「age」大於 17 的條件成立時,則顯示「成人」;若不成立,則看看是否符合另一個條件(變數是否大於 11)。當另一個條件成立時,則顯示「青少年」;若兩個條件都不成立,就顯示「兒童」。

See the Pen JavaScript7-if-6 by Tedutw (@Tedutw) on CodePen.

 

 

 

 

 

 

 

推薦文章:
Javascript初學者課程(8)-條件判斷式應用


Javascript初學者課程(1)-如何在網頁中嵌入?


Javascript初學者課程(2)-變數教學


還在困擾不知垃圾如何分類嗎?人工智慧資源回收機器人終於出現啦!


不能不會的Python基礎概念1-加減乘除四則運算練習


達內教育學員見證


身為前端工程師的你還分不清Div及Span標籤應用嗎? (上)


44歲媽咪順利轉職網頁設計師, 家庭事業都得意


從無到有 挑戰14小時取得Google證照


擺脫設備工程師血汗職涯, 零基礎的我成功轉職 Python 資料工程師


2天考取Google Ads證照!新手廣告投放攻略


零基礎如何花 14 小時考取 GoogleAds 認證?五種 GoogleAds 廣告不藏私攻略

Javascript初學者課程(6)-邏輯運算子應用

Javascript初學者課程(6)-邏輯運算子應用
Javascript初學者課程(6)-邏輯運算子應用

本日的JavaScript教學就是要教你正確應用邏輯運算子哦!

邏輯運算子

JavaScript教學裡,其中的邏輯運算子,又稱為「布林運算字(Booleen Operators)」,是可以用來評估表達式,並且回傳 true 或是 false。

邏輯運算子 敘述
&& and 運算子:若兩個運算元為真,則回傳「ture」
|| or 運算子:若其中一個運算元為真,則回傳「ture」
! not 運算子:若運算元不為真,則回傳「ture」

See the Pen 邏輯運算子|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.上表中的JavaScript 運算子,範例如下所示,前兩個分別為「and 運算子」、「or 運算子」連接兩個布林表達式,最後一個為「not 運算子」接一個布林表達式。

條件運算子

也有一種 JavaScript 的邏輯運算子稱為「條件運算子」,它會根據指定的條件而指派一個值給一個變數,寫法如下:

 variable = (什麼樣的條件) ? 第一個值:第二個值

範例如下所示:

 

See the Pen 條件運算子|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

在以上例子中,假設變數 age 的值小於 18 的話,則變數 isAdult 的值將為「未滿18不得入場」,若變數 age 的值為 18 以上的話,則變數 isAdult 的值將為「18歲以上可以入場」。

 

 

 

 

 

 

 

推薦閱讀:
Javascript初學者課程(7)-條件式應用


Javascript初學者課程(1)-如何在網頁中嵌入?


Javascript初學者課程(2)-變數教學


Javascript初學者課程(3)-資料類型應用


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


前端工程師必備「Emmet」基礎教學(1)


再也不用為了回收分類發愁了!!交給人工智慧就對了!!


Python與R語言誰是贏家?盤點5個即將消失的程式語言(上)

Javascript初學者課程(5)-賦值運算子應用

Javascript初學者課程(5)-賦值運算子應用
Javascript初學者課程(5)-賦值運算子應用

本日的JavaScript教學就是要教你正確應用賦值運算子哦!

賦值運算子

JavaScript教學中,你會發現到JavaScript 中的賦值運算子,其賦值運算符號是「=」。第一次接觸程式碼的人可能會以為它是「等於」,其實並非如此。它實際上意思是指把右邊表達式的值賦給左邊的運算數。

JavaScript賦值運算子 敘述 範例
x = y x = y
+= x += y x = x + y
-= x -= y x = x – y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

你可以在JavaScript 中的同一行中,使用多種運算子,如在下面例子所示:

See the Pen 賦值運算子|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

你也可以運用多種變數,例子如下:

See the Pen Addition-2|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

 

 

 

 

 

推薦閱讀:
Javascript初學者課程(6)-邏輯運算子應用


Javascript初學者課程(1)-如何在網頁中嵌入?


Javascript初學者課程(2)-變數教學


電影迷工程師分得出片中的Python,Java嗎?(上)


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


美國NASDAQ上市公司、外商IT教育培訓企業


日本研發的人工智慧機器人,真的能成為完美人妻?(上)

Javascript初學者課程(4)-數學運算子應用

Javascript初學者課程(4)-數學運算子應用
Javascript初學者課程(4)-數學運算子應用

本日的JavaScript教學就是要教你正確應用數學運算子哦!

數學運算子

JavaScript教學中的數學運算子,其作用是對數字(文字的形式或是變數的形式)進行函式運算。

運算子 敘述 範例
+ 加號 1 + 1 = 2
減號 2 – 1 = 1
* 乘號 2 * 3 = 6
/ 除號 10 / 2 = 5
減去 var a = 10; a–; Now a =9
% 餘數 20 % 3 = 2
++ 遞增 var a = 10; a++; Now a =10
遞減 var a = 10; a–; Now a =9

從下面例子中,你可以看出它是利用加號運算子來決定兩個數的和:

See the Pen Addition|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

你也可以運用多種變數,例子如下:

See the Pen Addition-2|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

承第一個例子,假如我們把「var x = 20 + 30」使用字串表示,變成「var x = “20 + 30″」的話,答案就不會是 20 + 30 的和,而是以字串形式呈現如下:

See the Pen Addition-string|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

減、乘、除運算子

四則運算中,除了上述介紹的加號運算子外,JavaScript 的減、乘、除運算子範例如下所示:

See the Pen 減、成、除運算子|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

遞增與遞減運算子

JavaScript 的遞增運算子「++」把數值加一,至於運算元的前後,意義各不相同:要是置於運算元的前方,則回傳被遞增的值;要是至於運算元的後方,則回傳原值,然後才遞增運算子。這樣解釋看似模糊,請見範例如下:

把遞增運算子放在運算元「y」前方的例子:

See the Pen 遞增運算子++var|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

把遞增運算子放在運算元「y」後方的例子:

See the Pen 遞增運算子var++|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

同理可證,遞減運算子「–」則是把數值減一,於運算元的前方,則回傳被遞減的值;要是至於運算元的後方,則回傳原值,然後才遞減運算子,範例如下:

把遞減運算子放在運算元「y」前方的例子:

See the Pen 遞減運算子–var|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

把遞減運算子放在運算元「y」後方的例子:

See the Pen 遞減運算子var–|Math Operator|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

 

 

 

 

 

 

推薦文章:
Javascript初學者課程(5)-賦值運算子應用


Javascript初學者課程(6)-邏輯運算子應用


Javascript初學者課程(1)-如何在網頁中嵌入?


控制Python的結構這邊告訴你(H)


AI 人工智慧竟是中美貿易戰的關鍵!(上)


前端工程師必備HTML5入門課程:SVG簡介


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

 

Javascript初學者課程(3)-資料類型應用

Javascript初學者課程(3)-資料類型應用
Javascript初學者課程(3)-資料類型應用

本日的JavaScript教學就是要教你正確應用資料類型哦!

資料類型

「資料類型(Data Types)」是關於一個可以運行的程式中的值的種類。JavaScript 變數可以支援各式各樣的資料類型,例如數字(類型)、字串(類型)、陣列(類型)等。

不同於其他的程式語言,JavaScript 不會特別因「不同的數值類型(如整數、數值長短、浮點等)」而賦予不同的定義。

JavaScript教學中的數值,是可以帶小數點的或是整數的形式呈現的。

See the Pen Data Type-1 by Tedutw (@Tedutw) on CodePen.

浮點數

JavaScript的數字可以有小數點,如下例所示:

See the Pen Float|Data Value|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

字串(Strings)

JavaScript「字串(Strings)」常常被用以承裝、處理文字。

一個字串可以是引號中的任何文字,這對引號可以使用單引號或是雙引號,如下範例:

var name = 'Márquez';
var text = "His name is Marc Márquez";

你可以在引號中,再加入引號。如單引號中加入雙引號、雙引號中放置單引號,只要兩種引號不要一樣就可以了。

var text = "His name is 'Marc Márquez'";
var text = 'and his opponent's name is "Valentino Rossi"';

承上例,除了使用不同樣式的引號外,我們還可以使用反斜杠(\),如下所示:

var text = "His name is \"Marc Márquez\"";
var text = 'and his opponent's name is \'Valentino Rossi\';

布林值(Booleans)

JavaScript布林值(Booleans)」中,我們可以擁有一到兩個值:不是 true 就是 false。

Booleans 適用於當你需要一個資料類型,而該資料類型又只有兩個值(如「是或不是」、「對或錯」)的場合時。範例如下:

See the Pen Booleans|Data Value|JavaScript Tutorial by Tedutw (@Tedutw) on CodePen.

 

 

 

 

 

推薦文章:
Javascript初學者課程(4)-數學運算子應用


Javascript初學者課程(5)-賦值運算子應用


Javascript初學者課程(6)-邏輯運算子應用


前端工程師必備RWD概念:行動設備優先的設計考量


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


前端工程師一定都認識的標籤們,今天就雙手奉上了!(上)


2019最熱門的前十大程式語言, 給初學者的你一條明燈!

Javascript初學者課程(2)-變數教學

Javascript初學者課程(2)-變數教學
Javascript初學者課程(2)-變數教學

本日的JavaScript教學就是要帶你認識它的變數哦!

變數

一般來說,「變數(Variables)」是用來承裝資料數值的容器。在同一程式中,變數的值是可以改變的。

JavaScript 中,以「var」來宣告變數。寫法如下所示:

var x = 777;

在上述例子中,數值 777 被指定給變數 x。

JavaScript 對於字體的大小寫是敏感的,大小寫被視為不同的變數,例如變數「Name」與「name」就是被視為不同的變數哦。

等號

JavaScript教學中,等號 (=) 被稱作「分配」運算子,而不是「等於」運算子。

例如,「x = y」就是「把數值 y 分配給 x」,而不是「y 等於 x」。

使用變數

現在,我們將一個值「777」分配給一個變數「x」,並將其輸出。程式碼與結果如下所示:

See the Pen var.js by Tedutw (@Tedutw) on CodePen.

為變數命名

JavaScript 中的變數名稱,對於字體的大小寫是敏感的,大小寫被視為不同的變數。如下例,我們將 x 由小寫改為大寫,程式碼與結果如下所示:

var x = 100;
document.write(X);

See the Pen Naming Variables by Tedutw (@Tedutw) on CodePen.

因為大小寫不同的緣故,所以 x 與 X 被判定為不同的變數。因此上面的程式碼並沒有產出任何的結果。

JavaScript 變數命名原則:

  • 命名的第一個字,必須是英文字母、底線(_)或是貨幣符號($)。後續的字可以是英文字母、數字(注意:數字不能作為第一個字)、底線或是貨幣符號($)
  • 變數名稱不能包含一個算數或是邏輯運算子,像是加(+)減(-)乘(*)除(/)的的記號都不能用。注意:連接線(-)會被視為減號,因此命名中也不能含連接線。)
  • 變數名稱不能包含特殊符號,例如「my#num」、「num%」等。
  • 任何的 JavaScript 名稱都不能含有空白字元。
  • 以下圖片為「JavaScript 保留字」一覽表,表中的任何字都不能用於命名變數。

 

 
 
 

 

 

 

 

 

 

推薦文章:
Javascript初學者課程(3)-資料類型應用


Javascript初學者課程(4)-數學運算子應用


Javascript初學者課程(5)-賦值運算子應用


Photoshop一學就會的萬用技能!-如何毛髮去背?


美國NASDAQ上市公司、外商IT教育培訓企業


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


AI人工智慧世代即將來臨,準備好這四種能力就不怕被取代!!

 

Javascript初學者課程(1)-如何在網頁中嵌入?

Javascript初學者課程(1)-如何在網頁中嵌入?
Javascript初學者課程(1)-如何在網頁中嵌入?

本日的JavaScript教學就是要教你如何把它應用在網頁中哦!

JavaScript 簡介

JavaScript 可說是目前最普遍的程式語言之一,一般常用於網頁前端開發。JavaScript 不但可以為網頁添增互動元素、進行數據處理,還有創建各種應用程式(行動裝置 App、桌上型電腦的應用程式、遊戲等等。)

就跟著JavaScript教學一起來寫出你的第一個 JavaScript 程式!

首先,讓我們一起來使用 JavaScript 寫出第一支程式:讓瀏覽器上顯示「Hello World!」字樣,程式碼如下:

See the Pen My first JavaScript by Tedutw (@Tedutw) on CodePen.

由以上程式碼可知:函數「document.write()」可寫入字串在 HTML 檔案中。此功能可用於編寫文字檔案以及 HTML 檔。

如何在網頁中寫入 JavaScript 腳本

我們可以在 HTML 檔中,寫入任意數量的腳本(script,JavaScript 的別稱,也可以「.js」稱呼)。通常,腳本標籤「<script>…</script>」會放在 HTML 的 <head> 與 </head> 中間:

<html>
   <head>
     <script>
     </script>
   </head>
   <body>
   </body>
</html>

嵌入外部的 JavaScript

除了上述可直接在 HTML 檔案中寫入 JavaScript 腳本之外,我們還可以嵌入外部現成的 JavaScript 檔案。這類現成的 JavaScript 的檔案類型為 .js 檔。嵌入外部檔的語法為「<script src=”檔案名稱”>…</script>」,是可以放在<head>…</head>標籤或是<body>…</body>標籤之內。舉例來說,現在我們要在 HTML 中嵌入外部的 .js 檔「demo.js」,寫法如下所示:

<html>
   <head>
     <script src="demo.js"> </script>
   </head>
   <body>
   </body>
</html>

至於外部現成的 .js 檔,檔中文字就不能包含<script>…</script>標籤了。承上例,這個外部的 .js 檔「demo.js」內容如下:

alert("Welcome to my page!");

則執行結果如下所示:

 

從外部置入 .js 檔的好處比在 HTML 檔內寫入 JavaScript 腳本還多,像是:

1. HTML 原始碼與 JavaScript 分開放置,較好閱讀、維護

2. 當JavaScript檔案被 cache 過後,網頁載入速度就會更快

JavaScript 中加入註解的方法

有時在程式碼中,我們會加入註解,並告知該程式碼的作用。在「/ *」和「* /」之間編寫的所有內容,都將被視為註解,可以單行也可以多行。如下所示:

<script>
    /* 這個code
    會製造出一個
    上面寫著
    「Welcome to my page!」
    的訊息對話框 */
       alert("Welcome to my page!");
</script>

 

 

 

 

推薦文章:
Javascript初學者課程(2)-變數教學


Javascript初學者課程(3)-資料類型應用


Javascript初學者課程(4)-數學運算子應用


馬斯克證實自立的人工智慧公司OpenAI,什麼原因讓他鐵了心?


受不了電子書這麼沒有翻書的感覺!但HTML5教學救了我!


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


網路行銷課程降低你的出錯率增加你的曝光率

終極解密!!一窺前端工程師/後端工程師/全站工程師的差異!

終極解密!!一窺前端工程師/後端工程師/全站工程師的差異!
終極解密!!一窺前端工程師/後端工程師/全站工程師的差異!

今天就要帶你揭開前端工程師/後端工程師/全站工程師的神秘面紗!

現今的社會,業界對於網站開發工程師的需求,一直都沒有停止過,這同時也吸引很多非本科系出身的同學想轉職到網站開發工程師。但是常常聽到網站開發工程師還有分成「前端工程師」、「後端工程師」,還有綜合上述的「全站(full-stack)工程師」。這三種職位到底差在哪裡?該選哪種學習比較好上手呢?因此本篇文章幫助你先了解網站開發的分工定義、技能需求,才能幫助你找到適合自己的目標、更有效率學習,更快達成轉職網站開發工程師的願望哦。

前端工程師

網站的「前端」是與用戶直接交互的部分,包括你在瀏覽網頁時接觸的所有視覺內容–從字體到顏色,以及下拉菜單和側邊欄。這些視覺內容,都是由瀏覽器解析、處理、渲染相關HTML、CSS、Javascript 文件後呈現而來。

技能與工具

前端開發,就是要創造上面提到的網站面向用戶的部分背後的代碼,並通過建立框架,構建沉浸性的用戶體驗。為了能實現這個目標,開發需要熟練運用下列語言、框架、工具庫——三大語言:HTML,CSS,和Javascript

此外,掌握jQuery 和LESS 等工具庫也很重要,它們能幫助開發者以更高效的方式編碼;很多前端開發崗也要求Ajax 方法的使用經驗,它可以幫助你使用Javascript 在後台從服務器拉取數據,協助實現頁面的動態加載。

打個比方,前端工程師的工作專注於「房屋」裝修,而蓋房子的工作由後端開發者負責。通過一些專門的工具,前端開發者與設計師/用戶體驗分析師密切合作,幫助構建原型或是線框圖,參與產品開發到發布的全過程。

一些前端工程師甚至能準確定位影響用戶體驗的特定問題,並給出建議或是代碼解決方案,對產品設計帶來積極影響。在專業能力外,與其它團隊協作,以理解特定目標、需求、機遇,以及高效的執行力也非常重要。

這聽起來工作內容很多,但相對回報是十分豐厚的。「我是一名技術人員,也是一名設計者,在數字平台上使用標記語言和代碼修改視覺元素並與之互動是很自然而有趣的體驗,」有八年前端開發經驗的Mikey Ilagan 說「這讓我能夠直接影響到用戶體驗,操縱應用和網站裡用戶所見並直接與之交互的元素,這非常棒!」

總之,前端開發者要為後端開發者搭建的「房屋」進行內部設計和裝修工作。裝潢風格由房屋所有者指定。Apptix 的產品市場負責人Greg Matranga 表示:「前端開發者有時更容易為他們的工作感到振奮,因為他們有更廣闊的空間發揮自己的創造力。」

後端工程師

是什麼給網站前端提供支持?數據存放在哪裡?這就涉及後端內容了。網站後端包括服務器、應用還有數據庫。後端開發者構建並維護這些組件,為網站提供多方面支持。

由上圖可以看出,UDN 的讀者來源,大部分來自 Search (搜尋引擎)輸入特定關鍵字後,進到 UDN 的網頁;而東森新聞雲的讀者最多都是從 Facebook 等 Social 社群網站的連結進來。

技能與工具

為了讓服務器、應用、數據庫能夠彼此交互,後端工程師需要具有以下之技能:

用於應用構建的服務器端語言:PHP, Ruby, Python, Java, .Net 等;
數據相關工具:My SQL , Oracle, SQL Server等;
PHP框架:Zend, Symfony, CakePHP等;
版本控制工具:SVN, CVS , Git 等;
還要熟練使用Linux 作為開發和部署環境。

後端開發者使用這些工具編寫乾淨、可移植、具有良好文檔支持的代碼來創建或更新 Web 應用。但在寫代碼之前,他們必須先與客戶溝通,了解其實際需求並轉化為技術目標,制定最有效且精簡的方案來進行實現。

「我熱愛後端開發因為我喜歡操縱數據」,資深後端開發者就職於 Wildbit 的 JP Toto 說。「現在共有和私有 API 已變成移動設備、網站以及其它互聯繫統交換數據的必備通道。創建對大家有用的API 是我工作裡非常鼓舞人心的部分」。

全端工程師

全端工程師,最初是 6 年多以前由 Facebook 帶動的概念。全棧的核心,是指這批開發者能夠承擔包括前端、後端在內的所有功能開發任務,他們擁有一個技能全家桶。

「能夠同時承擔服務器端和客戶端工作會為你帶來更多機會,」 Grovo 的全端工程師 Federico Ulfo 說「當然這也就意味著更多的挑戰。以廚藝作類比,掌握烹飪和烘焙都需要時間與經驗積累,同時掌握兩者要花費更多精力。照著菜譜做誰都可以,我此處所說的是做出真正美味東西的能力。」

技能與工具

全端工程師也通常在服務器端進行編程工作,但他們熟練前端語言,能夠操縱網站面向用戶的部分。基本上可以形容他們是百事通。

全端工程師需要對 Web 架構的每一個層次都有足夠的了解:搭建和配置Linux 服務器,編寫服務器端API,利用客戶端Javascript 代碼驅動應用,將設計層面的東西轉化到實際的CSS 代碼。掌握並使用大量工具的同時,全端工程師需要敏捷地分配服務器端和客戶端任務,提供解決方案並對比不同方案的優劣。

 

 

 

 

推薦文章:
還在猶豫怎麼用Class選擇器?前端工程師分析給你聽!


零基礎也想成為前端工程師?那你一定要知道這”三大”內容!


資深前端工程師之Emmet教學(1)標籤名稱如何快速產生?


網路行銷的7大心法1內容行銷是不可或缺的!


從七個不同的方向來解釋Python和Java的不同之處!!


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


SEO優化剖析!隱藏在URL網址下的真實面貌!?

五大程式語言即將消失,竟是因為Python太強大!?(下)

五大程式語言即將消失,竟是因為Python太強大!?(下)
五大程式語言即將消失,竟是因為Python太強大!?(下)

這些曾經風光的程式語言,一一被Python取代?其背後的原因竟是…?

目錄

  1. 為何我們會想寫這篇文章?
  2. R
  3. Ruby
  4. Perl
  5. Objective-C
  6. Haskell

3. Perl:程式語言中的瑞士刀,曾是駭客首選,如今卻漸漸不合時宜

具有 32 年歷史,極簡又有效率的程式語言 Perl 曾經是精通指令 (command-line) 的駭客高手首要之選,應用於 CGI、系統管理、架設網站等都行,有伺服器端的瑞士刀之稱。 駭客只要輕輕輸入一些指令,指定的檔案就會彈指之間被重新格式化了!

鼯鼠有五技而窮,在主機的運維管理方面,Perl 不如專門的伺服器工具如 Chef 和 Puppet,Chef 和 Puppet 等工具使用的代碼經過優化,可自動完成大部分的系統工作,而不像 Perl 要編寫通用型的 shell 腳本來配置機器。

說到簡單的腳本,Python 的可讀性更高,比 Perl 更有優勢。

老一輩的駭客文化正在消逝當中,開發者也從 Perl 轉向其他的程式語言,雖然現在仍有一些舊的網站使用 Perl,但 Perl 在未來有可能從 IT 界消失。

4. Objective-C:由蘋果開發,但也被蘋果「邊緣化」

已經 35 歲的 Objective-C 是由蘋果開發的,是通用、高階、物件導向的程式語言。但蘋果在 2014 年發表 Swift 並鼓勵使用者轉往 Swift,更快、更好上手的特性,讓許多工程師新手們趨之若鶩。

雖然目前全世界用 Objective-C 開發的 App 至少有一百萬個,而 2014 年 6 月才誕生的 Swift 變成主流的 iOS 開發語言之前還要再經過好幾年的時間。你用 Objective-C 的技能在現階段內,也許比 Swift 更容易找到工作。但如果你是 APP 的獨立開發者,或著你學習 iOS 是為了將來有個工作或副業的話,建議你放棄 Objective-C 轉而去學習 Swift,一來你的學習時間大大縮短,二來 Swift 取代 Objective-C 是必然的趨勢。

5. Haskell:曾被 FB、GitHub 等大公司採用

Haskell 曾被知名 IT 企業如 Facebook、GitHub 採用,是一種標準化的,通用的純函式程式語言。但是 Haskell 在 RedMonk 的排名從 2012 年 13 名一路下滑到榜單邊緣的 19 名,且始終沒有反彈跡象,因此即便有被大公司採用的資歷、且預計會在 2020 年進行重大標準更新也將被視為是前途堪慮的程式語言。

 

 

 

推薦文章:
程式語言大不同!軟體工程師淺談Python跟Java區別~


想轉行當工程師,什麼程式語言最適合初學者?


想要自學Python?首先你要先懂它是誰!


前端工程師CSS基礎功之背景位置設定


前端工程師省時神器!用Emmet快速產生標籤名稱!


挑對Java課程,讓你從零起點到獨當一面的工程師只需六個月!


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

五大程式語言即將消失,竟是因為Python太強大!?(上)

五大程式語言即將消失,竟是因為Python太強大!?(上)
五大程式語言即將消失,竟是因為Python太強大!?(上)

曾經風光的五大程式語言接二連三消失,取代它們的竟然是Python?!

目錄

  1. 為何我們會想寫這篇文章?
  2. R
  3. Ruby
  4. Perl
  5. Objective-C
  6. Haskell

 

為何我們會想寫這篇文章?

科技發展的速度之快,讓背後的基底-程式語言,也隨之瞬息萬變。今日需求量最高的程式語言,不一定能應付明日興起的新科技;明年誕生的程式語言,也許會讓新一代的工程師更好上手、更易閱讀,而取代了當代排名第一的程式語言。若想成為 IT 界數一數二的頂尖工程師,你必須要掌握當下最熱門的程式語言,不斷的練習直到熟能生巧為止。為了要盤點近期內可能會有那些程式語言被淘汰,達內教育評價小組參考了軟體評價公司 TIOBE 與專注於軟件開發人員行業的分析公司 RedMonk 的排行,還有科技傳媒 Dice 自家的職務公告資料庫。看看你所精通或正在修習的程式語言是否上榜吧!沒有的話,恭喜你;若有的話,也不要覺得白費功夫,只要加緊專攻它的「替代品」就好了!例如你擅長數據分析專門的 R 語言,就加碼學習更易上手的 Python ,而且已經有基礎的你會學得比 Python 初心者更快!一起來一探究竟吧!

1. R 語言-曾是用於數據分析、機器學習的首選語言,自2017年開始漸漸被Python取代

由 S 語言發展而來的 R 語言,比起其他應用於數據科學的程式語言,有更強的物件導向功能。加上再資料分析、資料探勘方面皆有專業且完整的模組,再矩陣運算、向量運算等常用的功能都有高階的運用,且平台適應性強 (Linux、Windows 都可用)、程式碼。因此曾經是用於資料分析的寵兒。

但是同領域的後起之秀 Python,除了擁有上述所列的 R 語言的優點外,還有更豐富的資料結構來實現更精準的資料訪問和記憶體控制,多維陣列(可讀寫、有序)、元組(只讀、有序)、集合(唯一、無序)、字典(Key-Value)等等。

Python 在各方面的表現都具有一定的水準,不論是對呼叫其他的程式語言、連線並讀取來源資料、對系統的操作、或是表達和文書處理,Python 都佔上風。 而 R 語言則是在統計方面比較突出。

 

 

2016 年與 2017 年在數據分析、數據科學和機器學習上,Python、R、兩者共同使用,以及其他平臺的人數對比。

 

根據專注於「數據分析」領域的網站 KDnuggets 調查顯示,從 2017 年,在數據分析、資料科學和機器學習上使用 Python 的人口開始多過於原本的主流 R 語言。

2. Ruby:最容易上手的程式語言,但市場需求也在下降

炙手可熱的程式語言學習平台 Coding Dojo 下架了曾經是前十大受歡迎的程式語言 Ruby 的課程。曾經風靡一時的 Ruby,竟也掉出了 TIOBE 的 Top 10 榜單,並且在 IEEE 榜單中也有同樣的遭遇。根據 Dice 的資料,企業對 Ruby 的需求大幅下降,光是在 2018 年就掉了 56%。

 

 

 

 

推薦文章:
五大程式語言即將消失,竟是因為Python太強大!?(下)

你聽過的大企業都投入AI領域,你還不趕緊來個Python課程先?

想轉行當工程師,什麼程式語言最適合初學者?

前端工程師和後端工程師差異今天一次全部告訴你!!

人工智慧讓你報告簡報時不再吃螺絲?來看看微軟的新功能-簡報教練!

厭世代正風行?來上Java課程可以幫你扭轉困境!

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~