Swift 程式開發有用到 iOS 系統的 Singletons API 要如何測試?

前一陣子 Packt 有出一本免費的電子書 – Test-Driven iOS Development with Swift  ,對於 iOS 開發者要學習如何開發 Unit test 應該很有幫助,這篇文章 – Testing Swift code that uses system singletons in 3 easy steps  則在講如果你的 class function 中用到了系統提供的 Singletons 函數呼叫要如何測試? 尤其是那些跟網路有關的 Singletons 例如 URLSession.shared ,這篇文章提出了三個步驟 ( 文章中作者有詳細使用範例程式示範 ) 

  1. Abstract into a protocol
  2. Use the protocol with the singleton as the default
  3. Mock the protocol in your tests

看完的感覺不就是在教你如何在 Swift 寫 Mock ( 遇到網路 API 的測試,就會使用 Mock,想要對 Mock 有更多的了解,可以參考 維基百科 )  ,重點應該不是因為呼叫了系統的 Singletons ,如果跟網路無關的 Singletons API 也是要這樣做嗎? 有一種可能是系統的 Singletons api 會影響到APP 的狀態,例如會設定 Default 值的 Singletons ,你無法去控制回傳的值是什麼,或是每次測試做完,要記得回復原本的狀態,這種狀況還是得用 Mock 比較方便。

這篇文章作者還有分享一個視訊 “Writing Swift code with great testability” 對於想要學好 Swift 單元測試程式應該很有幫助。

也許你會有興趣

喜歡這樣的內容嗎?歡迎點以下按鈕分享吧~感謝你的支持!

 

用 Swift3 寫出 MyPokemons App ( 1hr 免費課程)

本課程包含整個專案的完整程式碼

關於本課程

這是個速成的課程,內容涵蓋Swift的基本概念,在一小時建立一個很簡單的遊戲 “My Pokemons”。本課程為新手設計。 當你完成此課程時,你將了解Swift的關鍵要點以及如何運用 Swift 在 Xcode 設計與建置一個 iOS App。

Continue reading “用 Swift3 寫出 MyPokemons App ( 1hr 免費課程)” →

用Elm快速寫出行動中的訊號

Elm有許多模組, 讓你很容易地就能把滑鼠移動位置、視窗大小的變動、玩遊戲時鍵入的上上下下左左右右輕鬆呈現。

你想到運用Elm來寫什麼程式了嗎?

Elm是什麼 ?

Elm是一種函數式程式語言,可以編譯為JavaScript並在瀏覽器中執行,由Evan Czaplicki設計和開發。

它被設計成有趣且友善地使用語言。事實上,Elm顛覆了一個概念: 函數式的程式設計只有科學家和學者才會用。憑藉其乾淨和可讀的語法、世界級的工具和友好的編譯器,Elm真的是一個令人愉快的語言。

不要讓它的友好面孔唬了你; Elm 也是令人難以置信的強大,也能用來完成最大的專案。 Elm架構可幫助你建構複雜的模組化Web應用程式,於添加功能時程式碼仍很容易維護。具有出色的性能,不會運行時異常和JavaScript互操作(interop),並且提供你超能的方式生出可靠、可擴展和可維護的網路應用程式!

你將會發現你將最喜歡Elm的-可以快速構建真實的東西,在以下的課程, 你完全可以邊做邊看到剛寫完的結果。

有興趣了解這最新的程式語言?

Elm : The Pragmatic Way  是國際知名Pragmatic Studio製作,之前他們做的 Ruby與RoR(Ruby on Rails) 課程非常受好評, 這門課採敏捷的邊製作邊發布, 21個模組已發布20個模組, 目前是早鳥價, 你一定要看看!

elm-comment

你可能也會有興趣

喜歡我們的分享嗎? 使用以下的社群分享按鈕也分享給你的朋友吧!

運用神經科學的行銷

了解公司如何操縱你“立即購買” 。 課程裡涵蓋知名品排的廣告,讓你看到他們的操作方式。

你會學到

你將能夠使用公司不想讓你知道的秘密技術和方法…

要求

學生應該有市場行銷和我們的心智如何運作的基本知識,不用高級水平,而是可以與他人談論的水平

課程說明

嘿 , 就是你!

你想知道財富500強公司不想讓你知道的技術嗎?想要有自信地行走江湖,知道他們試圖保密的媒體戰術和企業操縱方法嗎?

應用這些非常的技術營業做品牌優化,將履行提高商業/行銷主體被察覺識別的使命,也可避免被別人操縱,還能學習如何更容易地說服受眾。

聽起來很有趣吧?讓我們繼續閱讀!

神經科學是一個越來越熱門的話題,大學終於開始連結網路運作和我們的心智如何運作、什麼使我們腦子滴答一聲就買單了,以及人類真正渴望的是什麼等等的關係。不管你相不相信,許多公司支付這些神經科學家非常非常多的錢,我的意思是真的非常非常多,都只是為了想運用新的研究成果,影響受眾更多,讓人們買更多的產品。這是人類對財富痴心追求的表現,一半的這些公司甚至沒有提供任何價值。

好吧,我想到這我就不繼續說下去了…..如果你看到這促銷影片覺得不相信,如果不相信就不用考慮購買這個課程了,因為你已經進入“ OMG(oh my god)!另一個神經科學課程,這門課程能教我什麼?“。 請去掉那嘈雜的自我意識吧-淨空進入這個課程,享受這些將讓你大開眼界的技術和方法!

目標受眾

  • 營商與行銷專業人士,希望提升自己的業務更上一層樓…..或任何人只是覺得有趣的人
  • 如果你自我很強,不用考慮是否要聽這門課,或如果你是不耐煩和挑剔的人,也不用考慮

講師介紹

Business Optimization 心理學與行銷專業組成的團隊

品牌優化(Brand Optimization)希望透過心理學、市場行銷和神經科學幫助學生向世界展示自己。  我們的任務是通過向你展示“他們”不想讓你知道的東西來提升你的覺醒

每個課程設計教你所有的規則、技術、方法和策略,以人人都可負擔的價格讓人人容易接觸得到。這門課不會隱藏任何東西,要給你所需的價值,讓你擁有競爭力和優勢。

這門課並非給所有人,而是專門給想要成功的人。

Email: brandoptimization@outlook.com

字幕:英文

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

  • Udemy 永久擁有課程 許多課程約 NT310 起特價中(點擊看優惠)
  • ✨年訂閱每月 NT350 優惠🌈悠遊 Udemy 的 28000+ 門課,最大化學習 ( 原價 NT635/月 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


也許你會有興趣

幫我們個小忙!

← 返回

感謝你的回應。 ✨

請為我們的網站評分(必)

使用 e-mail 追蹤 Soft & Share

新手軟體工程師如何避免犯下最大的錯誤

作者:Edmond Lau ,The Effective Engineer   作者。  Soft & Share 獲作者授權翻譯。

身為新手軟體工程師,由於缺少經驗你很有可能犯了些戰略上的錯誤。 也許你自己建立了某一個功能後才發現原來早就有一個共同的設計模式原本可幫助你做得更好,或是你意外地在已經上線的服務或是產品推出有問題的程式碼,或是你忘了處理系統擴展與效能表現,讓你在截止日前完工前備感壓力辛苦地趕工。

Continue reading “新手軟體工程師如何避免犯下最大的錯誤” →

讀書會報報 003 -工作不會消失,只是不斷的在演化

這幾天在 FB 塗鴉牆看到幾則新聞,都是跟機器取代人有關

  • 鴻海已部署4萬多台機器人:崑山裁員6萬人 鴻海佈局機器人已經不是1天2天的事了,聽到鴻海佈局機器人取代人力這件事至少也有 4 年以上了,我本身在學校剛好也是學機械自動控制,出了社會也有 3 年的生產線自動控制經驗,這個趨勢一直在進行,其實無人化工廠還是有罩門,自動化最怕的是少量多樣而且生命週期短的產品,因為要設計一條自動化生產線也需要時間跟成本。不過,我想表達的是,這個已知趨勢一直在進行,身在其中會被取代的人是有「時間」去演化自己,讓自己可以「晉級」,但是有去做嗎?
  • A big Dutch bank is replacing 5,800 people with machines, at a cost of $2 billion 這個新聞我就沒有細看,但標題也是機器取代人類的戲碼,場景是在銀行。

資訊媒體業「淘汰賽」比想像中還要快

最近也發現一個有趣的現象,晚上 9:00 後打開 Facebook,塗鴉牆幾乎都是直播的視訊,內容包羅萬象,有讀書心得分享,也有網路拍賣達人 486 的創業心得分享,前幾天還發現連于美人也加入這個直播戰場,我看到這個現象不禁為「電視」這個傳播管道捏一把冷汗,網紅直播藉由類似 Facebook 這樣的社群平台散播,還有硬體的需求也不高,每個人都有機會當「明星」,速度超過我的想像。

為何我會提到于美人?因為她算是傳統電視媒體人的代表,我比較了一下幾個網紅的直播,大部分都是很隨興地自言自語,然後邊看網友的留言做一些對話 ,但是于美人畢竟在傳統的媒體有很長的經驗,加上她的口才與臨場反應,節目的呈現方式也是有經過企劃的,她的內容相對好看很多。素人直播跟名人直播這兩塊也許拿來比較有點不太公平,但是這背後的意義在於一個新的型態出現並不代表「舊」一代的人就會消失或是被取代,會被淘汰的反而是那些不願意加入「演化」的人。

一起來參加讀書會,讓大腦「演化」吧!

以下是目前已經有網友報名的讀書會,如果有興趣,歡迎來報名。

  1. The Effective Engineer 目前有四位,差一位就會成立,如果你是軟體工程師,非常鼓勵你來參加這個讀書會,這本書講了許多工程師成長的 mindset,相當適合一起共讀與討論。
  2. 為什麼這樣工作會快、準、好 目前有三位
  3. 如何閱讀一本書  目前有三位
  4. Real-World Kanban 目前有兩位
  5. The Pragmatic Programmer 目前有一位
  6. 系統思考 目前有一位

相關 FB 粉絲專頁

為了掌握目前有參加 Soft & Share 讀書會 FB 社群的網友對讀書會類別喜好,我們開始去針對不同的主題開始經營 FB 粉絲專頁,這樣我們會比較了解參加 Soft & Share 社群的網友會對哪些主題的讀書會有興趣,歡迎到相關的 FB 粉絲專頁幫我們按個讚。

  1. 歡迎訂閱-思考與個人成長
  2. 歡迎訂閱–研發團隊協同作業解決方案
  3. 歡迎訂閱–軟體開發團隊工具心得分享
  4. 歡迎訂閱-設計 & 思考
  5. 歡迎訂閱-創業不簡單
  6. 歡迎訂閱-行銷 & 成長駭客

喜歡我們的服務嗎?幫我們使用以下社群分享給你的朋友吧!

讀書會 ORID 心得分享-為什麼這樣工作會快準好 第一章 動機

這篇讀書會的 ORID 心得分享是由參加為什麼這樣工作會快、準、好讀書會的鍾毓驥老師參加第一週的心得分享。

觀–觀察現況 ( 註 : 在 Soft & Share 的讀書會,「觀」代表看到作者述說的內容 )

有兩句話是第一次看時,就印象深刻的

  • p26 「我們有一些條件還不錯的新兵,但他們渾渾噩噩,弄不清楚人生要什麼,只知道得過且過。」但接下來的文章中,就描述如海軍陸戰隊如何改造這樣的人,讓他們懂得紀律,而且可以「自我激勵」。
  • P13 「動機」,是的,就是標題!幾乎任何自我激勵的書,只要看到這兩個字,我就有衝動要買下來。

會對第一句印象深刻的原因,是我常常需要激勵我的學生。但我一直做不好。在ptt 的 soft_job 版上,常常可以看到有些高手說他大學時也是很爛,被當得一屁股,畢業時連程式都不會寫。但畢業後,不知道怎麼了,引擎就開始點燃,然後就成為一方之霸。

我看到這類文章時,都很想問這些高手,有沒有可能在他們念書時,老師就做了一些什麼特別的事,然後讓他們「引擎點火」的時間,可以提早到大一,或大二?這有可能嗎? 如果有可能的話,那麼「那一些什麼特別的事」是什麼?我有可能找到答案嗎?

我個人認為其中一個原因是「動機」。寫程式這個活動的失敗率比打棒球還要高。職棒打擊者的失敗率大約是7成,但寫程式的失敗率幾乎是100%。對於一個新手而言,語言的問題,邏輯上的問題,學會機器的思考方式,每一關都會讓新手失敗,如果對於程度不好的同學而言,甚至英文也是個失敗點(看不懂 complier吐出來的訊息)。要克服這堆問題,受了挫折之後,還願意持續練習,那真的要有「動機」才可以。那麼,身為老師,要怎麼驅動同學們,讓他們有這個動機,是我一直在思考的問題。

第二個,「動機」這個詞,本身就讓人著迷了,我們要如何激勵自己?要如何激勵同仁(如果身為管理職的話,這個能力十分地重要),如何激勵自己的下屬(以我為例,下屬就是班上的同學)?所以我本身,非常有「動機」,要瞭解「動機」是什麼:)

感–說出感覺

興奮還有困惑。興奮是說,發現了一些簡單的方法可以激勵自己。困惑的地方是還是想不出要如何把本章的兩個原則運用在同學身上。

意–找出意義

這章作者題出了兩個引發動機的「機制」

  • 自主性:讓我們覺得可以自主地掌控想要完成的事
  • 意義:說穿了,就是理解我「為什麼」要做這件事的深層原因。

但可惜的是,作者沒有提出太多具體可以「實現」的作法(附錄的部分對於作法提出的比較多,但是都是針對「激勵」自己的部分,少有激勵他人的方法)。

行–採取行動

個人已經將作者提出的方法落實在日常的一些作業中了。當大學老師有一部分的職責就是要寫論文,但寫論文其實是一件苦差事。過去我每每要寫論文時,就是拖拖拉拉的。現在就將作者的那一套方法用上,覺得還蠻受用的。

對於賦予意義的機制,再多說一點。實務上,可以用「五個為什麼」的方式來詢問自己。除了可以由正面來問(就是問,我為什麼想做這件事),還可以由反面來問自己(我為什麼老是拖著不做這件事?)

關於這篇讀書心得作者

鍾毓驥,人生唯一可以自豪處就在名字的筆畫,總共57畫。從小到大沒得過第1名,只有在名字的筆畫數領先群倫。目前在長榮大學資工系擔任教書匠的工作。因為生產力不高,所以對於「生產力」的議題十分地著迷。

鍾毓驥老師的 Blog :http://justimchung.blogspot.tw/,如果你對鍾老師的文章想法有興趣,歡迎透過 Blog  跟鍾老師交流。

喜歡我們的分享嗎?歡迎使用以下社群分享按鈕分享給你的朋友吧!

 

推薦書籍-Practical Augmented Reality

A Guide to the Technologies, Applications, and Human Factors for AR and VR

書籍介紹

AR (擴增實境)和 VR (虛擬實境) 和可穿戴式裝置的技術、應用、人因考量最全面和最新指南。

Practical Augmented Reality 這本書適合關心從遊戲到醫學等任何應用的從業人員和學生。它全面涵蓋了理論跟實務,強調先進的顯示器、感應器、和市面上可以買到或是即將上市的 DIY 工具。由美國太空總署科學家維克托·羅 (Victor Luo )一開始前言,這本書首先解釋人類視力的機制,聽覺和觸覺,展示如何將這些感知機制(和他們的表現範圍)直接支配可穿戴式顯示器,3-D 音響系統和觸覺/立回饋裝置的設計與使用。

Steve Aukstakalnis 展露了真實世界應用的案例討論從遊戲、娛樂,科學,工程,航太工業,國防工業,醫學,遙控機器人,建築,執法機關和地球物理。讀者將會發現清楚的,容易了解的解說,圖片和裝置的說明包含有 Atheer AiR,HTC Vive,DAQRI Smart Helmet,Oculus( facebook ) CV1,SONY PlayStation VR,Vuzix M300,Google Glass,和更多。

功能圖和照片清楚地解釋這些裝置如何運作和直接連接相關的理論和實務內容。

Practical Augmented Reality 完全考慮到這些系統的人因工程,包含感覺的,電機生理限制,單眼和雙眼深度提示,導致視覺誘發的疾病和噁心的元素和視軸調焦衝突。最後評估新的和浮現的AR, VR ,穿戴式技術法律和社會問題並提供展望下一代的系統。

作者介紹

Steve Aukstakalnis 是做計算場模擬的美國國家科學基金會的工程技術研究中心虛擬環境和互動系統前主任和研究科學家。他的工作專注在先進視覺顯示器和互動技術應用包含有建築,工程,科學視覺化和國防工業。Steve 曾在華盛頓大學擔任研究人員以及密西西比州立大學的教員。也曾在美國陸軍防衛部門,海軍海洋學辦公室,國家偵察辦公室 密歇根大學,佩珀代因大學普杜大學 ,達特茅斯大學, 台灣大學擔任特約講師 ,指導和研究員,主題包含有虛擬現實和先進的視覺模擬。

試讀章節與電子書購買連結

這本書無法團購,只能到原出版社網站購買

showcover

喜歡我們的介紹嗎?歡迎使用以下社群分享按鈕分享給你的朋友吧!

學習資料科學從何開始?

機械學習、資料分析、資料科學、大數據等這些名詞應該是最近半年來我聽過最熱門的幾個名詞,如果想要從 0 到 1 開始一步一步的學習要從哪裡開始?是從程式設計語言 (例如 R / Python ) 還是數學機率與統計,還是演算法? 還有學這些要如何應用? 與其其實看了那麼多介紹文章只是徒增自己的資訊焦慮,倒不如找一門線上課程開始按部就班的開始學習,這樣會比較踏實一點。今天剛好就看到一堂課,很符合我心中的期望值,有些課程還有簡體中文的字幕,上完後還可以領取徽章放到個人網站或是 Linkin,增加自己的成就感與檢視自己的學習進度,這個網站是

Big Data University   連到簡體中文的網站,英文在此

這個大數據學習網站會讓我想要推薦的原因

1. 有明確的學習路徑

%e5%a4%a7%e6%95%b0%e6%8d%ae%ef%bc%8c%e6%95%b0%e6%8d%ae%e5%88%86%e6%9e%90_%e5%92%8c_%e6%95%b0%e6%8d%ae%e7%a7%91%e5%ad%a6%e7%9a%84%e7%b2%be%e5%93%81%e8%af%be%e7%a8%8b_-_%e5%a4%a7%e6%95%b0%e6%8d%ae

2. 部分課程有中文字幕

%e4%bb%80%e4%b9%88%e6%98%af%e6%95%b0%e6%8d%ae%e7%a7%91%e5%ad%a6___2_37____%e4%bb%80%e4%b9%88%e6%98%af%e6%95%b0%e6%8d%ae%e7%a7%91%e5%ad%a6___2_37__-_ds0101cn_%e8%af%be%e7%a8%8b%e9%a1%b5%e9%9d%a2_-_big_

3. 背後由 IBM 贊助

從網站的介紹摘要

作為一個團體,我們不能因為缺少大數據方面的人才而流失了分析和挖掘大數據潛在知識的機會。

在IBM公司,我們是開發,處理和分析大數據的基本思想強有力的提供者,並且打破傳統的壁壘參與這個領域。

大數據大學與其他在線培訓網站不同。我們的內容是免費的,課程內使用的工具集也是免費的。我們會根據個人的學習速度和優先級來設計我們的課程。

而且上完課頒發的徽章是 IBM 認可的數位徽章( 這代表以後遞履歷去 IBM 有加分效果嗎 ? )

 

推薦相關書籍

在 Soft & Share 舉辦的一個讀書會有看到參加成員有推薦入門書籍

  1. 資料科學與商業應用
  2. 大演算:機器學習的終極演算法將如何改變我們的未來,創造新紀元的文明?

相關文章

喜歡我們的分享嗎?使用以下的社群分享按鈕分享給你的朋友吧!

由 WordPress.com 建置.

Up ↑