PIXNET Logo登入

Java瑪奇朵-非本科系的IT吃喝電玩日誌

跳到主文

歡迎光臨Java工程師在痞客邦的小天地

部落格全站分類:職場甘苦

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 5月 22 週三 201921:00
  • Python不只可以做人工智慧,還可以畫皮卡丘?!


大家知道Python跟人工智慧有關係~但大家知道Python也能繪圖嗎?看看工程師是怎麼把皮卡丘畫出來的吧!!

Detective-Pikachu.jpeg


前陣子上映的名偵探皮卡丘劇照
 
大家都想到前陣子上映的動畫電影「名偵探皮卡丘」票房成績不俗,賣座程度僅次於「復仇者聯盟-終局之戰」。雖然電影中的那隻皮卡丘是以「賤萌」的形式呈現,但也激起許多工程師小時候時看「神奇寶貝」中,那隻呆萌的皮卡丘的回憶。在大陸就有熱血的 Python 工程師使用 Python 的 「海龜」 Turtle 繪圖模塊,畫起皮卡丘來,而且還畫得唯妙唯肖的!先看看以下的效果吧:
 
用Python來畫皮卡丘
大陸網友文摘菌用Python來畫皮卡丘,畫得唯妙唯肖 (圖片來源:https://mp.weixin.qq.com)

 
步驟:先選好畫板大小、設置好畫筆顏色、粗細,再定位好位置後,開始畫鼻子、頭、耳朵、眼睛、嘴、身體、手腳、尾巴。Python 的 Turtle graphics 模塊,中文直譯為「海龜繪圖」,是提供給兒童學習程式語言用的模組。想像螢幕上有一隻帶著畫筆的海龜在 X,Y 軸平面座標上,從座標 (0,0) 出發。你給牠下指令「turtle.forward(15)」,牠就會往前走 15 像素的距離,接者你下指令「turtle.right(25)」,牠就會朝向順時針 25 度的方向轉彎。不斷對著海龜重複著這類型的指令,海龜就能完成一幅圖畫。
 
海龜繪圖
透過定位下指令移動畫筆位置的海龜繪圖(Turtle graphics)模塊

 
上圖用 Python 繪製的皮卡丘,就是靠著不斷的指定座標,定位與方向而完成的。以下提供這個範例的部分 Python 程式碼以供參考:

import turtle as t
def infoPrt():
print('coordinate: ' + str(t.pos()))
print('angle: ' + str(t.heading()))
t.pensize(3)
t.hideturtle()
t.colormode(255)
t.color("black")
t.setup(700, 650)
t.speed(10)
t.st()
#t.dot()
t.pu()
#t.goto(-150,100)
t.goto(-210,86)
t.pd()
infoPrt()
# 头
print('头')
t.seth(85)
t.circle(-100,50)
#t.seth(78)
#t.circle(-100,25)
infoPrt()
t.seth(25)
t.circle(-170,50)
infoPrt()
# 右耳
print('右耳')
t.seth(40)
#t.circle(-250,52)
t.circle(-250,30)
infoPrt()
# 右耳尖
t.begin_fill()
# 左
t.circle(-250,22)
#t.fillcolor("pink")
# 右
t.seth(227)
t.circle(-270, 15)
prePos = t.pos()
infoPrt()
# 尾巴
t.pu()
t.setpos(p_tail)
t.pd()
t.begin_fill()
t.seth(50)
t.fd(25)
t.seth(-50)
t.fd(30)
p_tail1=t.pos
t.seth(-140)
t.fd(36)
t.end_fill()
t.seth(39)
# 右尾和h1
t.fd(72)
# 右尾和v1
t.seth(125)
t.fd(48)
# 右尾和h2
t.seth(40)
t.fd(53)
# 右尾和v2
t.seth(88)
t.fd(45)
# 右尾和h3
t.seth(35)
t.fd(105)
# 右尾和v3
t.seth(105)
t.circle(850, 8)
#t.fd(105)
t.seth(215)
#t.fd(125)
t.circle(850, 11)
t.seth(280)
t.fd(110)
t.seth(220)
t.fd(50)
t.seth(309)
t.fd(56)


上面只提供一部分代碼,因為完整的多達 360 行。其實使用 Turtle 海龜模組畫圖,原理非常的簡單,只要先定位好座標再畫出曲線就可以。難的是每個部位的位置怎麼定位。如果Python 初學者不想畫那麼複雜的話,可先學習只畫出皮卡丘的臉即可 (如下圖)。作法參考另一位網友的 CSDN 博客文章: 「教大家用python画皮卡丘的脸」。
 
用Python畫出皮卡丘的臉
Python初學者可先學習畫出皮卡丘的臉 (圖片來源:https://blog.csdn.net/hl_zmfh/article/details/83215693)

其實除了 Python 以外, Java 也有 Turtle 海龜繪圖功能。有興趣的人可以試試用 Java 畫皮卡丘看看喔。
 
 
 
其他閱讀
Python課程的AI新境界!!在家就能享受全球頂級咖啡師的咖啡?
想進聯發科研發AI人工智慧晶片嗎? 先來上先修Python課程吧!!
Python課程就快取代JK羅琳寫出哈利波特續集了!?
重新學習UI UX Python課程 打好基礎輕鬆領高薪
有一個傳說 來上Java課程還能任高薪職缺 媒合率竟高達百分之90
在苦惱履歷上技能要填什麼嗎? Java,UI課程等等證照幫你解決這個問題!!
程式課程選達內,美上市IT課程教育集團
(繼續閱讀...)
文章標籤

Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(15)

  • 個人分類:
▲top
  • 5月 22 週三 201908:00
  • Adobe國際認證集團和達內教育共同攜手培育國際藝術人才!!

Adobe國際認證集團和達內教育共同攜手培育國際藝術人才!!

大家耳熟能詳的Adobe國際認證集團和達內教育合作啦!!心動不如馬上行動!!還沒報名達內的快衝啊!!
(繼續閱讀...)
文章標籤

Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(12)

  • 個人分類:
▲top
  • 5月 21 週二 201922:00
  • 前端工程師不能錯過的HTML5:七個內容模組簡介

前端工程師不能錯過的HTML5:七個內容模組簡介

若你是菜鳥前端工程師的話那一定不能錯過今天的HTML5入門小講座!!一次給妳七種內容模組!!千萬不要錯過~
(繼續閱讀...)
文章標籤

Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(1)

  • 個人分類:
▲top
  • 5月 21 週二 201908:00
  • 人工智慧神奇到讓蒙娜麗莎動起來?!還能跟畫互動聊天?!


人工智慧能做出機器人已經不再是難事了!!要怎麼讓蒙娜麗莎對你眨眼開口說話才稀奇!!好奇嗎?不要錯過今天的介紹~
 
AI讓蒙娜麗莎動起來
過去,AI 機器學習研究人員開發了一套系統,它可以利用靜態的人臉照片/肖像呈現出栩栩如生維妙維肖的逼真動作。有了這樣的系統,每一張人像照片都可以變成動畫,彷彿畫中的肖像都變成活生生的人一樣!
日前三星人工智慧研究中心(Samsung AI Center)發表的論文中,就描述了這套系統,該論文已經上傳到 Arxiv (註:一個收集物理學、數學、電腦科學等論文預印本的網站)。該系統使用了新的方法,將「來源臉孔(就是人在做動作時的頭部特寫)」影片上的特徵與「目標臉孔」的數據對應,讓目標臉孔做出來源臉孔的動作。如以下影片所示:

這些三星駐莫斯科的研究人員在這篇論文也表示,只需要一位人臉的模型,就可以使一個圖像呈現出說話、做各種表情的影片。雖然效果還稱不上是完美,但也足夠假以亂真了。不過在讓這些肖像「活過來」的前提,是需要擁有大量的臉部數據資料。數據越多,表情及動作就越逼真。
他們能夠讓愛因斯坦或是瑪麗蓮夢露等名人的照片、甚至是世界名畫「蒙娜麗莎」,讓他們呈現栩栩如生的動作,生動的表情、動作,彷彿活過來了一樣。例如下圖的蒙娜麗莎合成動畫,就使用了三個不同的「來源臉孔」的影片。最終的成果都有很大的差異。
AI讓蒙娜麗莎動起來
而且,這個系統還運用了所謂的「生成對抗網絡(GAN)」,也就是讓兩個模型相互對抗,第一個模型彷彿製造贗品的「工匠」,試圖欺騙第二個「鑒别者」模型:我們現在手上有真實的data,「工匠」要做的事就是要做出這個data的「贗品」,而「鑒别者」則是要分辨給他的data是真的還是假的,並且會給出一個回饋。「工匠」根據「鑒别者」給的回饋來「訓練」他的工藝,也就是調整模型的數值;一旦「工匠」將其數值調整到「鑒别者」分誤以為是真的data時,就可以說我們訓練出了一個能夠模擬真正data的模型。
在這些研究人員提供的其他例子中,有些生成的結果,質量差強人意。例如有些例子的來源影片是取自於新聞,結果生成出來的目標影片竟然也有來源影片下方的新聞跑馬燈,跑馬燈上的字幕是用亂碼填充的。雖說如此,但是這個系統,能達到如此的效果已經算是不錯了。不過現在這個系統仍只適用於臉部,你還不能讓蒙娜麗莎跳舞。人工智慧-機器學習仍然有很大的進步空間。
 
 
 
其他閱讀
AI人工智慧系統進駐醫院,快速偵測敗血症提高病患存活率!!
你的指令要求雅婷通通聽得懂!!有專屬台灣人的人工智慧在,一切安啦!!
AI人工智慧進駐大賣場!! 有了這項新技術就能讓員工更專注在客服務上了!!
重新學習UI UX Python課程 打好基礎輕鬆領高薪
Python課程讓你與AI接軌 不必擔心被科技取代
想成為第二個馬斯克嗎?讓Python課程帶你進入自動駕駛車的行列!
達內教育開幕 培養台灣IT人才進入全球企業
(繼續閱讀...)
文章標籤

Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(8)

  • 個人分類:
▲top
  • 5月 20 週一 201921:00
  • 前端工程師學習路徑圖讓你不再對學習內容感到迷惘~

前端工程師學習路徑圖讓你不再對學習內容感到迷惘~

前端工程師要學的東西又多又雜,你也曾經為此感到迷惘困惑不知道該從哪下手嗎?那快往下看就對了!!
本篇要跟大家分享2019年正確的網頁前端學習路線! 很多人想要轉職勝任網頁前端工程師做

網頁開發的工作,但是還沒找到適合自己的學習方法。今天達內教育前端工程師課程的老師就為大家分享了這篇正確的網頁前端學習路線,一起來一探究竟!
圖片
第一步:把握HTML/CSS
這是基本的網站的構建元素,是所有網頁設計/開發者都一定要學會的語言。並且HTML/CSS也很簡單易學,沒得挑!
第二步:學會使用基本工具
文本編輯器:例如 Sublime Text、Dreamweaver、Visual Studio Code 等
圖像編輯器:Photoshop、Illustrator 等
FTP/SSH 工具:Filezilla、PuTTY 等
網頁瀏覽器:Chrome、Firefox 等
雲端硬碟:Dropbox、Google Drive 等

第三步:進修 JavaScript
JavaScript (現階段先忽略Node.js 和任何框架)
理解數據類型:String、Number、Arrays、Objects等
JSON(JavaScript Object Notation)
jQuery框架

第四步:搭建基本網站
使用像 Hostgator、Hostmonster 等的虛擬主機建置網站
學會操作虛擬主機的 cPanel (Email ,FTP Setup) 用 Ftp 上傳網頁資料、建置 url 域名等等。

第五步:恭喜你! 你有網頁設計師的技能了!——但還不足以被稱為網頁開發工程師或前端工程師
現階段的你可以:
1. 建立簡單容易的網站
2. 搭建網頁應用的界面
3. 可以把一張 PSD 檔轉化為基於 HTML/CSS 的靜態網頁
4. 有受雇成為網頁設計師的能力、或者選擇成為接網頁設計案子的 soho 族 (尚需與前端工程師配合,無法獨立架站)

接下來你還需要進修的有:
1. HTML/CSS框架:如 Bootstrap
2. 熟悉網頁後端的程式語言:PHP (建議初學者用)、Ruby 等
3. JavaScript 框架:如 React、Angular 等
4. 數據庫:如 MySQL

第六步:HTML/CSS框架
Bootstrap (強烈推薦)、Zurb、MUI 等
第七步:網頁後端程式語言 (專注再一個就好)
PHP (不是最好的語言,可是目前用於後段較普及且適合初學者學習)
Node.js (一款新型、強大的後台語言)
Ruby on Rails (最好的框架語言,但是對程式語言初學者較難入手)
Python (簡單易學,但是尚未如 PHP 般普及,不過隨著 AI 的爆紅 Python 也越來越普及。

第八步:數據庫(專注於一個!)
關係型數據庫:如 MySQL
非機構化數據庫:如 MongoDB 和 CouchDB
建議選擇以下其中一個組合:
1. PHP 搭配 MySQL
2. Node.js 搭配 Mongolian

第九步:必要時,精進一些進階的前端技能:
SSH & Basic Command Line
CSS 預編譯器:如 Sass、Less、Stylus
APIS / REST 服務
HTTPS / SSL

第十步:應用
VPS 虛擬專用伺服器
應用雲端平台:如 AWS、Digital Ocean、
Linux 呼籲行
維護和進級

第十一步:恭喜你,已經成為一名全端工程師/後端工程師/網頁開發者了!
可以開發架設網站
能建置後端 API
能連接 Server
可以處理數據庫
你可以選擇受雇為全端工程師/後端工程師,或是成為可以獨當一面的 soho 族、創業等。

第十二步 (選修技能):精進程式語言
JavaScript 框架: React、Angular 2、Vue.js、Express (後端)
PHP 框架: Laravel、Codeigniter、Symfony
Ruby on rails
MVC框架:路由、數據庫映射、幫助程序、數據綁定、模板和 UI

第十三步 (選修技能):基於 PHP 的 CMS 網站
Wordpress (最多人用的 CMS 網站)、Joomla、Drupal
以上 CMS 網站架站快速、有豐富的 plug-in 模組,不過功能有限,適合需要快速架站的場合。

第十四步 (選修技能):行動 App 開發
你不需要進修 Java 和 C 語言,只要把握 JavaScript!我們可以使用 React Native、 Ionic、 Cordova 等框架來構建 App。
以上就是前端工程師課程老師為大家分享的前端學習路線!的文章,希望本篇文章能夠對想要學習網頁前端技術的初學者們有所幫助。想要了解更多Web學習方法記得關注達內教育評價。最後祝大家都能夠順利學成,成為一名優秀的網頁前端工程師。
 
 
 
其他閱讀
前端工程師不能錯過的HTML5:七個內容模組簡介
前端工程師不能錯過的HTML5:嵌入影片元素video
前端工程師不能錯過的HTML5:載入進度的顯示條
重新學習UI UX Python課程 打好基礎輕鬆領高薪
Python課程讓你與AI接軌 不必擔心被科技取代
神奇的Java課程-竟可讓人從零經驗到成為工程師不用一年!!?
人人都能是工程師!台灣 IT 培訓中心推「找到工作再付學費」專案,要試試嗎?
(繼續閱讀...)
文章標籤

Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(46)

  • 個人分類:
▲top
  • 5月 20 週一 201908:00
  • PS快被淘汰了嗎?現在連Python都可畫出超棒的皮卡丘了呢!


Python可用來繪圖?!是真的!!快來看看工程師是怎麼用Python把皮卡丘畫出來的吧!!

Detective-Pikachu.jpeg


前陣子上映的名偵探皮卡丘劇照
 
大家都想到前陣子上映的動畫電影「名偵探皮卡丘」票房成績不俗,賣座程度僅次於「復仇者聯盟-終局之戰」。雖然電影中的那隻皮卡丘是以「賤萌」的形式呈現,但也激起許多工程師小時候時看「神奇寶貝」中,那隻呆萌的皮卡丘的回憶。在大陸就有熱血的 Python 工程師使用 Python 的 「海龜」 Turtle 繪圖模塊,畫起皮卡丘來,而且還畫得唯妙唯肖的!先看看以下的效果吧:
 
用Python來畫皮卡丘
大陸網友文摘菌用Python來畫皮卡丘,畫得唯妙唯肖 (圖片來源:https://mp.weixin.qq.com)

 
步驟:先選好畫板大小、設置好畫筆顏色、粗細,再定位好位置後,開始畫鼻子、頭、耳朵、眼睛、嘴、身體、手腳、尾巴。Python 的 Turtle graphics 模塊,中文直譯為「海龜繪圖」,是提供給兒童學習程式語言用的模組。想像螢幕上有一隻帶著畫筆的海龜在 X,Y 軸平面座標上,從座標 (0,0) 出發。你給牠下指令「turtle.forward(15)」,牠就會往前走 15 像素的距離,接者你下指令「turtle.right(25)」,牠就會朝向順時針 25 度的方向轉彎。不斷對著海龜重複著這類型的指令,海龜就能完成一幅圖畫。
 
海龜繪圖
透過定位下指令移動畫筆位置的海龜繪圖(Turtle graphics)模塊

 
上圖用 Python 繪製的皮卡丘,就是靠著不斷的指定座標,定位與方向而完成的。以下提供這個範例的部分 Python 程式碼以供參考:

import turtle as t
def infoPrt():
print('coordinate: ' + str(t.pos()))
print('angle: ' + str(t.heading()))
t.pensize(3)
t.hideturtle()
t.colormode(255)
t.color("black")
t.setup(700, 650)
t.speed(10)
t.st()
#t.dot()
t.pu()
#t.goto(-150,100)
t.goto(-210,86)
t.pd()
infoPrt()
# 头
print('头')
t.seth(85)
t.circle(-100,50)
#t.seth(78)
#t.circle(-100,25)
infoPrt()
t.seth(25)
t.circle(-170,50)
infoPrt()
# 右耳
print('右耳')
t.seth(40)
#t.circle(-250,52)
t.circle(-250,30)
infoPrt()
# 右耳尖
t.begin_fill()
# 左
t.circle(-250,22)
#t.fillcolor("pink")
# 右
t.seth(227)
t.circle(-270, 15)
prePos = t.pos()
infoPrt()
# 尾巴
t.pu()
t.setpos(p_tail)
t.pd()
t.begin_fill()
t.seth(50)
t.fd(25)
t.seth(-50)
t.fd(30)
p_tail1=t.pos
t.seth(-140)
t.fd(36)
t.end_fill()
t.seth(39)
# 右尾和h1
t.fd(72)
# 右尾和v1
t.seth(125)
t.fd(48)
# 右尾和h2
t.seth(40)
t.fd(53)
# 右尾和v2
t.seth(88)
t.fd(45)
# 右尾和h3
t.seth(35)
t.fd(105)
# 右尾和v3
t.seth(105)
t.circle(850, 8)
#t.fd(105)
t.seth(215)
#t.fd(125)
t.circle(850, 11)
t.seth(280)
t.fd(110)
t.seth(220)
t.fd(50)
t.seth(309)
t.fd(56)


上面只提供一部分代碼,因為完整的多達 360 行。其實使用 Turtle 海龜模組畫圖,原理非常的簡單,只要先定位好座標再畫出曲線就可以。難的是每個部位的位置怎麼定位。如果Python 初學者不想畫那麼複雜的話,可先學習只畫出皮卡丘的臉即可 (如下圖)。作法參考另一位網友的 CSDN 博客文章: 「教大家用python画皮卡丘的脸」。
 
用Python畫出皮卡丘的臉
Python初學者可先學習畫出皮卡丘的臉 (圖片來源:https://blog.csdn.net/hl_zmfh/article/details/83215693)

其實除了 Python 以外, Java 也有 Turtle 海龜繪圖功能。有興趣的人可以試試用 Java 畫皮卡丘看看喔。
 
 
 
其他閱讀
Python課程的AI新境界!!在家就能享受全球頂級咖啡師的咖啡?
想進聯發科研發AI人工智慧晶片嗎? 先來上先修Python課程吧!!
Python課程就快取代JK羅琳寫出哈利波特續集了!?
重新學習UI UX Python課程 打好基礎輕鬆領高薪
有一個傳說 來上Java課程還能任高薪職缺 媒合率竟高達百分之90
在苦惱履歷上技能要填什麼嗎? Java,UI課程等等證照幫你解決這個問題!!
程式課程選達內,美上市IT課程教育集團
(繼續閱讀...)
文章標籤

Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(21)

  • 個人分類:
▲top
  • 5月 17 週五 201917:00
  • 前端工程師必跟上的概念課(三):設計以行動設備為主

前端工程師必跟上的概念課(三):設計以行動設備為主

還不知道RWD網頁設計核心概念的前端工程師一定一讀這篇!! 下面將向大家說說RWD網頁製作的注意事項!! 千萬別錯過~
行動載具特性
 
圖上方為傳統以桌機為主設計模式;下方為「行動裝置優先 (Mobile First)」模式
 
手機、平板等行動設備在操作上與電腦差異很大,電腦以滑鼠操作為主、行動設備則是以觸控螢幕為主。因此,兩者的網頁開發在互動設計上也有所不同。
行動載具的基本特徵有:可單指或多指操控的多點觸控、多種手勢(如搖一搖、滑動等)以及文字虛擬鍵盤。
除了上述與電腦差異很大的特徵外,在視覺呈現上也與電腦差很大,前端工程師與

網頁設計師需注意的事項如下:
按鈕大小:
電腦因為是用滑鼠操控,所以無論按鈕多小,滑鼠一樣點的到。但是行動裝置是以觸控為主,按鈕太小會增加點擊難度。因此蘋果電腦公司建議 iOS 開發者,任何需要被觸控的 UI (使用者介面) 元件,都不能小於 44*44px。

超連結大小:
除了上述的按鈕之外,也會有文字的超連結內容。同理,也不能讓帶有超連結的文字太小,以利於手指點擊。

UI 設計:
UI 設計必須考量到行動載具的畫面尺寸,因此像按鈕等需要被觸控的 UI (使用者介面) 元件,都需要在畫面中容易被點擊的地方。

點擊效果:
在按鈕效果的開發上,有時滑鼠除了點擊與放開的指令外,還會有滑來滑去的特效。但是行動版裝置是使用手指直接觸控的,所以就不需要此種特效強調。

互動效果:
電腦與行動裝置的運算效能畢竟不一樣。所以有一些在電腦版網頁運行的很順暢的特效 (如 Slide 幻燈片、Carousel 等) 在行動裝置上未必能流暢顯示。所以在設計 RWD 網頁時,要考量到不同設備的效能。

行動裝置優先 (Mobile First) 概念
行動裝置優先 (Mobile First) 是由知名的設計師與 UI規劃師 Luke Wroblewski 提出的,他曾當過美國 yahoo 架構設計負責人,他在2010年的時候進行了一次簡報,標題就是 Mobile First(原始簡報與影片),是指設計網站時,應該以行動裝置的介面、互動、顯示等為主要考量,其他的裝置次之,有別於過去設計網站時「以桌上型電腦為主,再將電腦網站上的內容移植到行動裝置上」的模式。
現在越來越多的人使用行動裝置上網,根據美國最大電信業者 AT&T 的數據,手機流量在 3 年內成長了 50 倍,目前行動裝置上網的使用率仍在激增當中,而且還有更多的功能持續被開發出來。
相較於傳統的電腦,行動裝置的使用較不受到時間空間限制,無論是在捷運、廁所等都可使用,人們也花了不少零碎時間使用手機上網,因此瀏覽網頁的頻率跟電腦比起來有過之無不及,所以 Google、Facebook、Adobe 等大公司都開始以「行動優先」的概念來設計自己的產品。
那「行動優先」要如何套用到網頁設計上?一開始先針對行動裝置的小畫面來設計版面、填入最重要的內容,然後再以這些基本內容都存在的狀況下,針對較大的螢幕裝置 (如平板、進而電腦、電視螢幕等) 漸進式的擴展其佈局。這樣一來,網頁在行動裝置呈現的介面會非常好瀏覽且美觀,該有的功能、內容都有,並且由小畫面擴大至大畫面,內容更大、可擺放的元素就越多、限制也越少 (參見「漸進增強(Progressive Enhancement)」)。但是如果是從大畫面開始設計,當要轉換成小畫面時,其內容的擺放就會越來越困難,常常需要透過刪減內容,才能「塞」入較小的版面當中。這樣一來,有可能行動裝置上出現的是精簡過「簡陋卻可用 (poor but passable)」的內容,而無法給使用者完整的內容 (參見「優雅降級(Graceful Degradation)」)。
若要建立良好的行動裝置使用者體驗 (UX),應考慮以下幾點:
  • 使用者使用行動載具的習慣、方式及思考模式

  • 提供明確精要的內容,比完整的導覽功能更重要

  • 提供清楚且好觸控的導覽選單

  • 簡潔明確的頁面內容

  • 符合行動載具操作特性

  • 現在大多數的 RWD 響應式網站,都是採用行動裝置優先 (Mobile First) 概念來設計,範例如下:
    Youtube網站

    就算是在手機上,也可以很方便的點閱影片、撥放、暫停,甚至對影片作評論、按讚!


     
    Airbnb網站

    選單的按鈕設計的大小適中,使用者用手機就可以輕易地透過選單找到目標住處,並且藉由滑動的行為瀏覽屋況,並按下預訂按鍵!


     
    本篇為「前端工程師必懂RWD概念」三部曲第三篇,全系列目錄如下:


    (目錄)

    1. RWD網頁與傳統網頁設計的差異

    2. 網頁設計的「優雅降級」與「漸進增強」

    3. 行動設備的設計考量





     
     
    其他閱讀
    前端工程師必跟上的概念課(一):RWD網站和傳統的有何不同?
    前端工程師必跟上的概念課(二):優雅降級和漸進加強哪個好?
    前端工程師專欄:要如何在HTML和CSS中宣告顏色代碼
    最真實的達內教育評價告訴你如何從非本科生蛻變成Java工程師!!
    著名企業皆投入AI領域,快報名Python課程幫自己在未來卡位吧!!
    想學程式語言還只是在爬文? 別管網路上的達內教育評價了!! 親身體驗最準!!
    中國IT教育領導品牌 達內教育集團第一家海外授權中心
    (繼續閱讀...)
    文章標籤

    Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(9)

    • 個人分類:
    ▲top
    • 5月 17 週五 201908:00
    • 程式語言選擇多!!初學者該麼選這篇都幫大家整理好了!!


    想學習程式語言的初學者有福拉!!這篇幫大家整理好各個程式語言的重點~還不知道怎麼選的同學一定要好好讀讀~
    很多同學想轉行程式設計師,但是那麼多的程式語言到底該怎麼選呢?頭疼~如果你是一名具有前瞻性的開發者或者想成為一名具有前瞻能力的開發者的話,那麼你應該至少在最好的程式語言中選擇一個,類似Python, JavaScript , C#, C, PHP, Java, C++或者go。

    20190428161616_432.jpg


    現在不妨介紹2019年熱門的十大程式語言:
    一、Java最流行
    與一年前一樣,Java仍然是最流行的程式語言。據TIOBE的數據顯示,幾十年來,Java比其他語言更常名列榜首。許多知名公司使用Java來開發軟件和應用程序,所以如果你碰巧使用Java,絕對不必為找工作而苦惱。Java受歡迎的主要原因是它擁有可移植性、可擴展性和龐大的用戶社區。
    二、經典的C語言
    作為最古老的程式語言之一,C語言依然高居榜首,這歸功於其可移植性以及微軟、Oracle和蘋果等科技巨頭採用它。它與幾乎所有系統兼容,很適合操作系統和嵌入式系統。 由於運行時環境相對小巧,因此C是保持這種系統精簡的完美選擇。強烈建議初學者學C,它實際上是程式語言的通用語言,已催生出了同樣很受歡迎的衍生語言,比如C++和C#。
    三、C++繼續占主導地位
    這種面向對象程式語言在20世紀80年代開發而成,現在仍應用於從桌面Web應用程序到服務器基礎設施的眾多系統。由於靈活性、高性能以及可用於多種環境,C ++依然很吃香。以C++為業的工作通常需要開發麵向性能密集型任務的桌面應用程序。掌握C++可以更深入地了解程式語言,幫助獲得低級內存處理方面的技能。
    四、Python:不斷上升
    過去15年來,Python的受歡迎程度穩步上升。過去這幾年,它一直能夠躋身TIOBE指數前5名的位置。作為如今人工智能、機器學習、大數據和機器人等一些最有前途的技術背後的主要語言,Python近年來積累了龐大的粉絲群。你會驚訝地發現學習Python很容易,這就是為什麼許多經驗豐富的開發人員選擇Python作為第二或第三語言的原因。
    五、C#:遊戲開發人員的寵兒
    C#是一種現代的面向對象程式語言,由微軟開發,與當時商業軟件開發人員廣泛使用的Java相抗衡。它專為在微軟平台上開發應用程序而設計,需要Windows上的.NET框架才能工作。與前一年一樣,C#保持穩定的位置,名次沒有重大變化。可以使用C#開發幾乎所有應用程序,但它尤其擅長於Windows桌面應用程序和遊戲開發。
    六,Visual Basic.NET
    Visual Basic.NET與去年一樣,在指數中繼續保持第六位。它是微軟的OOP語言之一,結合了基於.NET框架的類和運行時環境的強大功能。它自VB6衍生而來,擅長開發GUI應用程序,為程序員簡化了任務,並提高生產力。對於程序員來說,除了Web服務和Web開發外,VB.NET還為針對Windows平台開發桌面應用程序提供了一種快速簡單的方法。
    七、用於Web開發的PHP
    據TIOBE顯示,PHP在TIOBE最受歡迎的程式語言排行榜中位居第七,取代JavaScript成為更受歡迎的腳本語言。PHP主要用在服務器端上用於Web開發,約佔網站總數的80%。 Facebook最初使用的就是PHP,PHP在WordPress內容管理系統中扮演的角色讓它很受歡迎。PHP提供了幾個框架,比如Laravel和Drupal,幫助開發人員更快地構建應用程序,擁有更高的可擴展性和可靠性。因此,如果你在找Web開發方面的職位,PHP是不錯的選擇。
    八、JavaScript必不可少
    今年JavaScript的使用量有所下降,名次比去年有所下滑。但是現在所有軟件開發人員都以某種方式使用JavaScript。與HTML5和CSS一起使用,JavaScript對於前端Web開發來說必不可少,以便創建交互式網頁,並向用戶動態顯示內容。 超過90%的網站使用這種語言,它也是初學者開始上手的最友好的程式語言之一。所以,如果你掌握JavaScript,根本不缺機會。然而,你需要學習其他支持性的語言和框架,才能成為主攻桌面和移動應用程序或遊戲開發的專業的前端開發人員。
    九、SQL
    SQL奪得第九名,實現了顯著的增長,畢竟去年它未能躋身於TIOBE指數20大程式語言。盡管存在其他數據庫技術,但用於管理數據庫的這種標準查詢語言在過去四十年一直處於主導地位。
    原因在於它具有簡單性、可靠性、無處不在,以及對保持這種開源語言活力大有幫助的活躍社區。與其他語言相比,初學者通常更容易學習SQL;就職業發展而言,像數據分析員這類高薪職位要求SQL非懂不可。
    十、GO程式語言
     
     
    初學程式,學哪種語言比較好?
    現在,隨著技術不斷擴展,單純的會一種程式語言已經不能滿足企業的需要,很多IT人都是身懷多種絕技,但是好在,程式語言是相通的,比如你學會了C,再學C++或Python就相對容易很多,所以,初學程式,還是要選擇一種注重基礎的語言,比如說C,這樣對以後其它程式語言的學習幫助很大。
     
     
     
    其他閱讀
    Python課程的AI新境界!!在家就能享受全球頂級咖啡師的咖啡?
    想進聯發科研發AI人工智慧晶片嗎? 先來上先修Python課程吧!!
    Python課程就快取代JK羅琳寫出哈利波特續集了!?
    重新學習UI UX Python課程 打好基礎輕鬆領高薪
    有一個傳說 來上Java課程還能任高薪職缺 媒合率竟高達百分之90
    在苦惱履歷上技能要填什麼嗎? Java,UI課程等等證照幫你解決這個問題!!
    程式課程選達內,美上市IT課程教育集團
    (繼續閱讀...)
    文章標籤

    Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(10)

    • 個人分類:
    ▲top
    • 5月 16 週四 201917:00
    • 前端工程師必跟上的概念課(二):優雅降級和漸進加強哪個好?


    身為前端工程師的你要視還不懂甚麼是優雅降級和漸進加強就太掉漆啦!! 快來好好地讀這篇吧!!
     

    RWD-design.jpg


    當代的前端工程師與網頁設計師在開發網站時都選擇 RWD 網站,在規劃其 Media Query 的尺寸斷點時,有兩種布局斷點的依據:「根據設備」以及「以內容為主」,介紹如下:
    1.根據時下的主流設備來佈局斷點 (設備優先)
    透過時下主流的設備 (如當代最熱門的手機、平板或電腦螢幕等) 來確定布局的斷點,而設計多套樣式,再分別對應到各種設備上,如此就可準確定位斷點。這種套用現成的設備尺寸隨然方便,又能精準對應到時下最普及的設備,但是隨著設備不斷汰舊換新,未來總會有無法合適對應到的設備。
     

    9e43a79939c8208f4a3b607057a58680.jpg


     
    2.根據網頁內容作為佈局斷點的標準 (內容優先)
    這種方式不是以設備為主;而是依據網頁內容的布局、段落等來下斷點,是真正符合 RWD 響應式網站 設計的初衷的方式。此種方式可讓網頁涵蓋所有設備、且閱讀容易,但是斷點會依據設備的不同而落在不同的地方,這樣就沒有標準、精準的設計模式。
     

    c8ff9fc8faf26d59b64fe7738a64588b.jpg


    儘管如此,現今大多前端工程師與網頁設計師會更偏向「內容優先」的方式。因為電腦、行動裝置等設備不斷推陳出新,若採用此種方式,雖然無法精準的對應到特定的設備,但是卻可廣泛涵蓋現在、未來全部的設備。且無論瀏覽媒介如何改變,重點依然是網頁內容的本身。
    在內容優先的策略中,前段工程師與設計師要讓網站盡可能兼容所有設備:因為我們不知道用戶會用什麼樣的設備來訪問網站,因此,我們必須盡可能地把所有狀況都考慮進來;所有的佈局、元件、區塊和

    UI,UX設計等都能兼容不同類型的設備和平台。有「優雅降級(Graceful Degradation)」以及「漸進增強(Progressive Enhancement)」兩種思維模式,可以套在「內容優先」為主的 RWD 響應式網站 設計的過程:
    「優雅降級」還是「漸進增強」?
     
    圖上方為「優雅降級(Graceful Degradation)」的網頁設計模式;下方為「漸進增強(Progressive Enhancement)」模式
     
    1. 優雅降級(Graceful Degradation)
    一開始就針對「功能最完整」的平台來設計、開發網站,完成所有的功能和體驗後,再針對無法支援所有功能的平台或環境本來修改、刪減功能或是其他的解決方案,以確保網站能在最新、最完整的平台上完美呈現,擁有「最好的使用者體驗」;而在較舊的或是功能限制較多的的平台上,仍然可使用最重要的功能,整體介面「簡陋卻可用 (poor but passable)」,而不是無法使用。
    2. 漸進增強(Progressive Enhancement)
    這個方式與「優雅降級(Graceful Degradation)」的方式相反,是先針對最不完整或是限制最多的平台上創建最重要的基本內容,用最精簡的方式呈現;然後以這些基本內容都存在的狀況下,開始慢慢擴展其佈局,隨著平台的限制越來越少,內容的完整度也越來越高。這也是「行動裝置優先 (Mobile First) 」的設計方式。我們在下一篇會提到什麼是「行動裝置優先 (Mobile First) 」。
    本篇為「前端工程師必懂RWD概念」三部曲第二篇,全系列目錄如下:


    (目錄)

    1. RWD網頁與傳統網頁設計的差異

    2. 網頁設計的「優雅降級」與「漸進增強」

    3. 行動設備的設計考量





     
     
    其他閱讀
    前端工程師必跟上的概念課(一):RWD網站和傳統的有何不同?
    前端工程師必跟上的概念課(三):設計以行動設備為主
    前端工程師專欄:要如何在HTML和CSS中宣告顏色代碼
    最真實的達內教育評價告訴你如何從非本科生蛻變成Java工程師!!
    著名企業皆投入AI領域,快報名Python課程幫自己在未來卡位吧!!
    想學程式語言還只是在爬文? 別管網路上的達內教育評價了!! 親身體驗最準!!
    中國IT教育領導品牌 達內教育集團第一家海外授權中心
    (繼續閱讀...)
    文章標籤

    Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(10)

    • 個人分類:
    ▲top
    • 5月 16 週四 201908:00
    • 美國AI協會主席,人工智慧第一人Nils Nilsson辭世


    人工智慧第一把交椅Nils Nilsson辭世,今天的文章要來介紹他對業界的偉大貢獻~不要錯過嘍!!
    Nils-Nilsson.jpg

    ▲ 人工智慧先驅-史丹佛大學名譽教授 Nils Nilsson


    人工智慧先驅、人工智慧名人堂入選者、AAAI (美國 AI 協會) 前主席、A* 搜尋演算法發明者以及多部人工智慧教科書作者──史丹佛大學電腦科學的第一位名譽教授(Kumagai Professor of Engineering)Nils Nilsson 於美國時間美國時間 2019 年 4 月 23 日逝世,享壽 86 歲。
    Nils John Nilsson 教授於 1933 年 2 月 6 日出生於美國密西根州,是 人工智慧的研究先驅之一,在「搜尋演算法」、「機器人學 (註:一種跨領域科技,涵蓋機器人的設計、建造、運作、應用等)」以及「知識表示法(註:一種跨領域的表示方法,涵蓋認知科學和 AI 兩個領域。在認知科學裡為人類儲存和處理資料的方式;在 AI 中,主要目標為儲存知識,讓程式能夠處理,達到人類的智慧。)」的貢獻而聞名。
    研發世界第一個人工智慧機器人「Shakey」

     
    ▲ Shakey 是世界上第一個體現人工智慧的機器人
    Nils Nilsson 教授在史丹佛國際研究院(SRI International)的人工智慧中心任職 23 年,致力於將統計學和神經網路的方法應用到圖形辨識中。1966年開始,他和中心的創始人 Charles Rosen 及著名的 AI 學者 Bertram Raphael 共同主導機器人 SHAKEY 的研發工作。Shakey 是世界上第一個體現人工智慧的機器人。
    發明網路遊戲中常用的「A* 最佳路徑演算法」
    A* 最佳路徑演算法的演示圖

    ▲ 算出最佳路徑的「A* 搜尋演算法」演示圖


    1968 年,Nilsson 教授與電腦科學家 Peter E. Hart 和前段所述的中心創辦人 Bertram Raphael 共同研發出「A*(讀作『A-Star』) 搜尋演算法」,為人工智慧領域帶來了非常重大影響。
    A* 搜尋演算法(A* search algorithm),是一種在有多個節點路徑的圖形平面上,求出最低通過成本的演算法。今天 A* 搜尋演算法常用於遊戲中的 NPC 的移動計算,或網路遊戲 BOT 的移動計算上等。

     

    ▲ 用 Python 實現 A* 演算法的教學影片


    之後,Nilsson 教授又創立了自動即時規畫(Automated Temporal Planning)領域,並於 1971 年與 Richard Earl Fikes 共同發明 STRIPS(史丹佛研究所問題求解系統)規劃系統。
    1985年,Nilsson 教授回到母校史丹佛大學任教,擔任電腦科學系主任直到 1990 年。在這段期間,Nilsson 教授人工智慧與機器學習的課程;同時也主導 「機器人如何應對動態的世界、如何同時規劃動作並從中學習」的研究工作。
    五本人工智慧教科書,皆是出自 Nilsson 教授
    Nils Nilsson 教授出版了五本人工智慧的教科書,分別為:
  • 《人工智慧的問題解決方法》Problem-Solving Methods in Artificial Intelligence,1971

  • 《人工智慧的原則》Principles of Artificial Intelligence,1980

  • 《人工智慧:新的合成》Artificial Intelligence: A New Synthesis,1998

  • 《人工智慧的的追求:思想和成就的歷史》The Quest for Artificial Intelligence: A History of Ideas and Achievements,2010

  • 《理解信念:人工智能的科學理解》Understanding Beliefs,2014

  • 其中,《理解信念:人工智能的科學理解》還被翻譯成中文。
    除此之外,Nilsson 教授也是 《人工智慧》(Artificial Intelligence)、《人工智慧研究期刊》(Journal of Artificial Intelligence Research)的編輯委員會成員以及 《美國電腦學會雜誌》 的編輯。
    2011 年入選「人工智慧名人堂」
    同時,Nilsson 教授還擔任 AAAI (美國人工智慧協會) 的主席、AAAS (美國科學促進會) 的成員、國家工程院院士以及瑞典皇家工程科學院外籍院士,曾獲 IEEE「神經網路先驅」獎、IJCAI「卓越研究獎」及 AAAI「傑出服務獎」等,並於 2011 年因「人工智慧和智能系統領域的重大貢獻」入選「人工智慧名人堂(IEEE Intelligent Systems)」。
    1990 年 8 月開始,Nils Nilsson 開始擔任史丹佛大學的 Kumagai Professor of Engineering(名譽工程教授),直到 2019 年離世為止。深度學習三巨頭之一以及 2019 年圖靈獎得主 Yann LeCun、史丹佛人工智慧實驗室的主任吳恩達教授等很多 AI 人工智慧界的重要人士也通過社群媒體發表了他們的悼念。

    RIP to my friend, colleague, and AI visionary Nils Nilsson. Your work on the A* algorithm has improved countless lives (this is how we find the shortest path from A to B). I will always remember your work, but even more importantly your kindness. https://t.co/ftfijmQgeW


    — Andrew Ng (@AndrewYNg) April 23, 2019

    (繼續閱讀...)
    文章標籤

    Java瑪奇朵 發表在 痞客邦 留言(0) 人氣(24)

    • 個人分類:程式設計課程相關
    ▲top
    «1...67686995»

    個人資訊

    Java瑪奇朵
    暱稱:
    Java瑪奇朵
    分類:
    職場甘苦
    好友:
    累積中
    地區:

    熱門文章

    • (442)Java課程的第一課-Java為何被取名為可以喝的Java咖啡?
    • (34)日本首座自駕車公園盛大完工~人工智慧讓自駕車不再是夢!!
    • (1,222)HTML5教學教你如何做出逼真的書本翻頁動畫!!
    • (10,710)想做出精美的翻頁效果? HTML5教學6種變化直接告訴你!!
    • (25)你玩過人工智慧合成人臉,但你聽過貓也可以合成嗎? 貓咪合成後竟變這樣?
    • (368)HTML和CSS網頁顏色代碼複製貼上!! 前端工程師快比這篇收起來放!!
    • (63)Python不是大蟒蛇也不唸“派桑”~那到底怎麼唸呢?
    • (2,315)Python控制結構一次懂:實作簡單的計算機
    • (17)前端工程師和後端工程師的差別是什麼?
    • (3)新手必讀的JavaScript(5):賦值運算子

    文章分類

    • SEO (1)
    • SEO (30)
    • 設計 (1)
    • 設計 (36)
    • 網路行銷 (1)
    • 網路行銷 (1)
    • 網路行銷 (1)
    • 網路行銷 (15)
    • 前端工程師CSS基礎課程 (36)
    • 11月第四週分享 (5)
    • 11月第三週分享 (5)
    • 11月第二週分享 (5)
    • 11月第一週分享 (5)
    • 第五週學習 (5)
    • 第四週學習 (5)
    • 第三週學習 (5)
    • 第一週學習 (5)
    • 第二週學習 (5)
    • 程式設計課程相關 (444)
    • Java課程心得 (7)
    • 吃喝電玩 (7)
    • 未分類文章 (1)

    最新文章

    • 人工智慧如何在戰火連天的烏俄地區幫助烏克蘭?
    • 討論度爆棚元宇宙時裝周竟犯這種失誤?完美步上20年前的後塵?
    • Google一出手就要打趴YouTube零廣告第三方撥放器?
    • 2022討論度最高的七大面向突破不可不知!!
    • 前端工程師開發網頁好助手非Emmet莫屬?為什麼?
    • Python和Java搞清楚差別了嗎?到底該怎麼選擇呢?
    • 日本最新發明讓你在虛擬的元宇宙裡也能體驗觸覺和痛覺!!
    • 人工智慧專業操盤手幫你選好潛力股和加密貨幣~真的能信嗎?
    • 台大打造人工智慧眼科診斷軟體,助糖尿病友預防視網膜病變!!
    • 使命必達的人工智慧機器人也要丟飯碗了?!人類不用再怕被取代了?

    動態訂閱

    文章精選

    文章搜尋

    誰來我家

    參觀人氣

    • 本日人氣:
    • 累積人氣: