Just a Computer Graphics Studio & My Life

Posts tagged ‘programming’

[圖解] 傳遞參照與值 (Pass by Reference and Value)

還記得大一剛學程式設計,就被這兩個玩意兒給搞糊塗,傳遞參照與值 (Pass by Reference and Value)有圖解的話就非常清楚囉~

pass-by-reference-vs-pass-by-value-animation.gif

有人問Reference咖啡顏色不一樣,是怎麼一回事XD~基本上Reference的杯子就是同一杯啦!半透明杯子表示並不是主體。

以物件的角度:

  • Reference:一個杯子
  • Value:兩個杯子

以咖啡的角度:

  • Reference、Value:同樣容量的咖啡

印象中還有個詞叫做Pass by Copy,我會把它當作跟Pass by Value一樣。

現在覺得能把複雜的概念簡單化的人很厲害,而不是把簡單的東西複雜化,若是衍伸出新的見解就另當別論囉~

這張圖是我看到靠北工程師粉絲團所貼,身為偽資深工程師的我看到貼文時常能會心一笑,我剛去英國留學一年的梅姬(Meggie)颱風有時候也會有感覺,想認識她的人可以參考氣象局這篇文章:當老師有暑假真好

Advertisements

[圖解] 程式語言熱門排名

想要學寫程式的人,總要先知道自己的目的是什麼?如果還不知道的人,可以去測驗一下圖解我該學什麼程式語言?

亦或者可以參考世界上最多人使用的程式語言,在GitHub上程式語言熱門排名圖解

programming language rank on github.jpg

可以看到Javascript從2013年成為第一熱門語言,大概跟Node.js發展有非常大的關係。Objective-C則在2015年從排行榜消失,猜測是因為越來越多開發者轉向Swift發展。

表現越來越突出的是Java,我公司資深工程師楊大建議我學Java,對未來無往不利,然而我卻想要學Javascript。哈~透過Node.js,就能寫出前後端的服務!

參考:

[圖解] 除錯五個階段 (The 5 Stages of Debugging)

如果沒有除過錯的人,就不是個稱職的軟體工程師。也就是說,只要你是個軟體工程師,肯定除過錯!剛好碰見一張讓我感同身受的圖解除錯五個階段 (The 5 Stages of Debugging),仔細想了一下,我好像也差不多經歷如此狀況。

圖解 除錯五個階段 The 5 Stages of Debugging (繼續閱讀…)

[圖解] 如果論文跟程式語言一樣

週末就來點幽默小品吧~學過許多程式語言的我,看到圖解如果論文跟程式語言一樣自然會心一笑,因為真的是「吐嘲」到語言的痛處啊!

現在我主要寫的語言是Objective C,對於不熟的語言抱持著敬佩的態度,畢竟要能廣泛被程式設計師使用,一定有其獨到之處,所以不用太在意人家會的語言而自己卻不會唷~

以下有八種程式語言,如果你精通其中一項,而且知道其他語言,那麼大概會知道教授為何那麼說嚕~

如果論文跟程式語言一樣

重點是⋯⋯知道自己要的是什麼就好啦!

老實說,我看不懂HTML那個花盆是啥意思耶><~

LATEX這語言XD?

請高手幫我解答一下⋯⋯

我在想,要是把Objective C也畫上去,圖中那個教授會講什麼話呢?「為什麼你要用那麼多中括號[]?

參考:如果把不同語言的程式比作將受批評的論文漫畫:如果用編程語言來寫作文

圖片

[圖解] 我該學什麼程式語言?

大學時期的我熱愛學習,只要有開新的程式語言課程,我都會興致勃勃地選修!畢業後進入應用層面,發覺這些技術花費一輩子也不可能學得完,更何況這些程式語言持續在進化。以為就快對iOS爐火純青,然而很幸運地,每年總是有重大的更新等著我去了解和學習:P~

於是乎,就以我未來想要達到的目標來選擇想精通的第一語言,看了這張圖解Which Programming Language Should I Learn First,作者真是厲害,提供想要學習寫程式的初學者一個參考,從目的反推回適合的程式語言,當然我的結果就是Objective-C

如果你想要學習的程式語言有在這張圖裡面,不妨可以參考這張流程圖,包含的語言有:

  • Python
  • Java
  • C
  • PHP
  • C++
  • Javascript
  • C#
  • Ruby
  • Objective-C

which programming language should i learn first

實在是因為時間有限,不然我也想學習所有程式語言。現在我會先想,我的目標是什麼,工作是否能連結我的生活,於是照著這張圖走:

  1. 我對學習程式語言感興趣
  2. 我心中有個相當特別的點子
  3. 想要在哪個平台實現點子?
  4. 哪個作業系統?

我想要在Mobile平台實現點子,因為想讓生活更有品味,於是選擇能在iPhone上跑的iOS,最後就得出Objective-C這個程式語言囉~只是呢⋯⋯總是會給人驚喜的Apple半年前(2014/06)推出全新的程式語言Swift,同樣可以在iOS上運作,似乎有意逐漸取代Objective-C,於是我自然要往Swift發展囉~

這個電腦資訊發達的年代,能主動喜歡學習的人格外有優勢!

2015/01/25更新

感謝有人幫忙中文化,如此會有更多人看得懂啦~

我該從哪種語言下手?

參考:這張圖表幫助你決定該學 Python、Ruby 還是 C++玩遊戲看你到底適合哪種程式語言!準爆了啦 😄

教導第一位學生

時常有網友留言寫信給我,若在我的能力範圍內,我會舉手之勞地幫忙!隨意寫的筆記,原本只是給自己未來參考用,無心插柳幫助了成千上萬個人。近期有網友需要更急迫且深刻的協助,我也在百忙中播空讓他約出來,也真沒想到會有學生願意花錢請我教他⋯⋯

first student

從來沒想過可以像家教那樣教學生寫程式,在此一試之後讓我覺得可以當作副業!若網友有需要的話,真的可以試著約我出來,只要我有空閒且方便,我會安排時間赴約!

我發現很多學生很想要學好寫程式,但是資質不是那麼好,遇到些挫折就會萌生退卻之意,讓我覺得十分可惜~若我的經歷能夠幫助些人,台灣的軟體行業將會多有更進步的局面!

最近發現世界資訊名人李開復在經營臉書,他那極度想要提攜後進的精神實在令人動容,儘管自己的天資聰穎不如他,還是想效法他的精神來提攜晚輩,「與其給他魚,不如教他釣魚」,希望他同樣會把這份恩情傳承下去。

曾經我也是有貴人相助,至今依然有貴人陸續現身,而我漸漸地也能成為他人的貴人,真是個善的循環

參考:李開復Kaifulee臉書

圖片

軟體工程師一週的生活

程式設計師或軟體工程師一週的生活,可在這一張圖看出來⋯⋯

確實誰都不想要在禮拜一上班,是最無言的時候!逐漸的越接近週末,嘴巴越來越大,直到禮拜五總算能開懷大笑!

programmer's days

對我來說,表情跟圖中光頭兄或許差不多,不過每天都在期待可以學到新的技術,所以工作的每一天心情會是同樣好,尤其是在可由自己決定實作方法,寫程式能夠一路神馳到完工!

(繼續閱讀…)

標籤雲

%d 位部落客按了讚: