APCS使用Python
APCS為Advanced Placement Computer Science的英文縮寫,是指「大學程式設計先修檢測」。APCS考試類型包括:觀念題及實作題。觀念題是以單選題的方式進行測驗,考試重點在於程式設計概念、解決問題的運算思維或理解演算法的基礎觀念。在程式設計實作題可自行選擇以C、C++、Java、Python 撰寫程式,雖然考生可自行選擇四種語言之一來撰寫實作題的程式解答,不過APCS考題的觀念題如果需提供程式片段,還是會以C語言命題,所以建議考生對C語言還是要有一定的了解,本書也會以明快的介紹,來幫助各位快速學習C語言。 本書實作題會以Python語言實作,並根據APCS公告的觀念題及實作題,分別安排到各章的主題之中,目的就是希望各位在學習完某一特定主題後,可以馬上測試相關的APCS觀念題,以幫助各位讀者學以致用,清楚掌握考試的重點。全書實作題程式範例,都已在Python的IDLE整合開發環境下正確編譯與執行。期許本書能幫助各位具備以Python語言設計程式的基本能力,並提升應試APCS的程式設計實作能力。
Python遊戲開發講座|演算法篇
利用遊戲程式設計學習解決問題所需的基礎知識與步驟!& 豐富的範例實作!& ‧猜拳& ‧打地鼠& ‧井字遊戲& ‧翻牌配對遊戲& ‧黑白棋& ‧電子冰上曲棍球& & 玩遊戲的同時,快樂地學習程式設計與演算法& 本書是使用Python製作遊戲與學習演算法的入門書。由帶領初學者入門的程式設計基礎開始,一步步從簡單的演算法學到高階演算法,讓每位讀者都能讀懂本書的內容。本書提及的演算法是解決問題的步驟或手段。學會演算法之後,就能具備解決各類問題的能力。 &
Kotlin 小宇宙:使用 Coroutine 優雅的執行非同步任務(iThome鐵人賽系列書)
本書內容改編自【第13屆】2021iThome鐵人賽 Software Development組佳作網路系列文章 ──《Coroutine 停看聽》 內容從非同步任務概念到 Coroutine 建構器的使用、結構化併發、多任務的處理...,完整包含所有使用 Kotlin Coroutine 需注意的要點,並在每一小節附上心智圖幫助學習,讀完本書一定可以讓你更加認識 Kotlin Coroutine。 本書特色 ◼掌握 Kotlin Coroutine 與執行緒的不同之處,以及如何解決執行緒的痛點。 ◼內容包括 Kotlin Coroutine 的核心、多任務的處理以及單元測試,涵蓋所有實用部分,讓你讀完本書後脫離初學者的行列。 ◼使用簡單易懂的範例介紹基礎核心觀念,循序漸進了解 Kotlin Coroutine,才能夠應用到真實專案中。 ◼每章節附上心智圖,讓你左腦右腦一起動,文字圖像記憶一起來。 專業推薦 「Coroutine 往往是讓開發者選擇使用 Kotlin 的重要原因。Andy 的這本 Coroutine 專書從基礎觀念到進階語法加上測試應用,再輔以心智圖歸納,完整補足了 Kotlin 技術書籍版塊的缺口。若您跟我一樣也曾在 Coroutine 學習之路上翻過車,在此推薦 Andy 的大作,再給自己一次進入 Kotlin 宇宙的機會。」────JetBrains 技術傳教士 | 范聖佑 「Coroutine 不論是純 Kotlin 或 Android 開發都非常重要的一環,讓我們一起跟著 Andy 優雅的學習如何使用吧~」────Android GDE | Tim 林俊廷 &
快速精通iOS 16程式設計:從零開始活用Swift與SwiftUI開發技巧
♚使用Xcode 14 iOS 16 Swift 5.7開發 ♚了解Xcode開發工具 ♚使用清單視圖、堆疊視圖設計UI與深色模式 ♚快速學習Swift App程式編寫、物件導向與SwiftUI程式設計 ♚運用Core Data與CloudKit存取資料 ♚使用地圖與相機 ♚實作動態視覺效果 ♚開發使用者通知 ♚App本地化 ♚App測試與上架程序 【內容簡介】 作者分享多年來的iOS開發經驗,並集結廣受歡迎的iOS教學文章,以SwiftUI框架重新編寫,精心設計出30個章節。由基礎入門開始,逐步實作出具有精美UI及實用功能、支援雲端資料傳輸與深色模式的「FoodPin」App,而且「FoodPin」App完全支援新推出的iOS 16以及iPhone 14/14 Pro、iPad Pro。 本書首先介紹Swift語言的觀念,再教導你使用Swift與SwiftUI建立你的第一個App,然後你會學到規劃App的原型,並且本書每一章中會針對iOS開發的各個面向提供提示、技巧以及許多需要親手操作的作業,最後你可以從無到有來開發出一個真正的App。本書也會教導你如何使用Xcode來佈局使用者介面,並熟悉iOS 16 SDK的基本API,跟著本書的內容學習,將可獲得真實開發App的體驗,且打好Swift程式語言的基礎,掌握住程式開發的訣竅。 本書是為了Swift與iOS程式設計的初學者而撰寫,不論你是想學習新程式語言的程式設計師,或是想要將你的設計轉換為iOS App的設計師,這本書絕對是你的首選。 【本書精采內容】 ✪Swift基礎介紹。 ✪利用Playground快速學習Swift。 ✪使用Swift與SwiftUI從無到有打造第一個App。 ✪學習App原型設計與前置規劃。 ✪建立App與SwiftUI的常用元件。 ✪了解堆疊視圖建立自適應UI。 ✪設計適合所有螢幕尺寸的App,讓UI相容最新的iPhone 14/14 Pro與iPad Pro。 ✪設計導覽列大標題。 ✪自訂表格視圖儲存格來打造更優美的App。 ✪學習自訂清單視圖。 ✪運用導覽視圖。 ✪了解物件導向程式設計。 ✪建立動畫與視覺效果。 ✪使用相機與相片庫。 ✪運用地圖並學會最新的標註功能。 ✪使用搜尋列做關鍵字搜尋。 ✪建立導覽畫面來讓使用者迅速熟悉App。 ✪使用Searchable加入搜尋列。 ✪在App嵌入瀏覽器與網頁視圖。 ✪運用使用者通知來提升App黏著度。 ✪運用觸覺觸控及內容選單。 ✪儲存資料至資料庫。 ✪整合運用CloudKit。 ✪App多國語系化。 ✪在實機上部署與測試App,並且學會WiFi部署功能。 ✪使用TestFlight安排Beta測試。 ✪在App Store上架你的App。 本書特色 從零開始掌握SwiftUI框架與開發技巧 快速強化你的iOS App開發實戰能力 輕鬆成為專業程式設計師 &
用最簡潔的Python上手:深度學習從精通再成大神
☆★☆★【用最簡潔的Python,成為深度學習最厲害的大神!】★☆★☆ 「人工智慧、深度學習和機器學習,不論你現在是否能夠理解這些概念,你都應該學習。否則三年內,你就會像被滅絕的恐龍一樣被社會淘汰。現在不開始,以後就來不及了。」——馬克•庫班(NBA獨行俠隊老闆,億萬富翁) 本書從人工智慧、機器學習與深度學習簡介開始,幫助讀者在Windows下的CPU/GPU環境完成深度學習、開發環境架設;之後進入Python資料科學函數庫,介紹深度學習基礎,如Numpy、Pandas、Matplotlib。 在了解基本函數庫後,接著介紹目前最好用、最流行的深度學習框架TensorFlow、Keras。認識完框架的使用,便開始處理資料,本書介紹了資料前置處理和模型評估指標,幫讀者了解模型及資料之間的關係。當一切就緒,就可以進入實際專案的開發,包括影像分類辨識、IMDB電影評論情感分析、遷移學習、人臉辨識、影像風格遷移、生成對抗網路等,讓你用最簡潔的Python,成為深度學習最厲害的大神。 適合讀者 ✪具備Python語言基礎知識的程式初學者。 ✪非專業出身,想轉換跑道進入人工智慧領域的程式設計師。 本書特色 ✪人工智慧、機器學習與深度學習簡介。 ✪深度學習框架TensorFlow、Keras。 ✪深度學習開發環境架設。 ✪資料前置處理、模型評估指標、影像分類辨識。 &
手術刀般精準的:用Python科學管控財金風險(實戰篇)
☆★☆★【有如手術刀般精準!利用Python幫你管控財金風險!】★☆★☆ 在上一本基礎篇的學習完備,能善用Python程式語言及常用的工具套件之後,接下來就是開始對金融風險進行評估了。 本書接續介紹了各種數學模型,包括波動性、隨機過程及相當重要的馬可夫過程、馬丁格爾、隨機漫步、維納過程等,另外也包含蒙地卡羅等數學模型的應用。 而統計科學中最常用的回歸,本書也有涉獵。另外包括了二元樹、BSM選擇權、希臘字母,市場風險等,都有最完整的Python程式和數學公式供讀者計算、運用。 金融商品龐大且複雜,需要像使用手術刀般精準、細緻地切割每一個細節,畢竟賠錢事小,沒辦法掌握到大盤的迅速波動與走勢,才是一大損失。 本書看點 ✪了解金融商品的波動性、移動平均、ARCH、GARCH。 ✪認識蒙地卡羅股價模擬、歐式、亞洲式選擇權。 ✪學習市場風險分類、度量、價值、分析。 ✪精進交易對手信用風險、投資組合理論、無差別效用曲線、資產定價理論。 &
Python AI人員必修的科學計算:數學、機率、統計、演算法
▶▶▶ 包含387個經典的Python實作例題! ▶▶▶ 搭建起程式設計與高等數學的知識橋梁,結合計算機思維與數學邏輯! & 數學為程式設計的世界提供了豐富多樣的素材。基本的理論和基礎運算是根本,然後才有辦法進一步延伸應用到機器進行實踐,如果自己無法解釋程式或程式的輸出,那就要回頭完備自己的理論知識。 & 本書以Python實現相關數學內容的教學及計算,主題包含了極限的運算、函數的求導及積分、微分方程求解、級數、行列式計算、線性方程組求解、隨機變量的數字特徵、參數估計、假設檢驗、方差分析與回歸、線性規劃、非線性規劃、動態規劃、圖與網路計畫及排隊理論等。 & 要想邁向AI科學計算的深入應用,不得不打好基本功,數學更是不容忽視的一環,不論你是理工科系的在校生,或是對數據科學、AI人工智慧感興趣的從業人員,由本書出發,讓你穩固數理知識的基礎,重建對程式設計的運算思維,進而發展出能夠解決各式複雜問題的應用能力吧! & 【本書看點】 ✪ 使用Python語言實現相關計算、圖形展示及模型求解 ✪ 包含Python程式語言入門、極限的運算 ✪ 函數求導及積分、微分方程求解、級數、行列式計算、線性方程組求解 ✪ 隨機變數及其分佈、隨機變數的數字特徵 ✪ 參數估計、假設檢驗、方差分析與回歸 ✪ 線性規劃、非線性規劃、動態規劃圖、網路計畫及排隊理論 & ※ 本書附程式碼,可至深智官網下載:deepmind.com.tw/ &
Python+OpenCV:機器學習+深度學習40大電腦視覺案例入門到實戰到實戰
★☆★ 全面掌握機器學習的影像處理,豐富實例等你來挖掘! ★☆★ & 機器學習的影像處理,是當前最熱門的研究領域之一,而這其中OpenCV-Python整合了OpenCV C++API和Python的最佳特性,使其成為電腦視覺領域內極具影響力和實用性的工具。 & 本書透過案例來介紹所有影像相關的技術,包含了基礎演算法、機器學習、深度學習。在基礎部分,有影像安全(影像加密、影像關鍵部位打碼、隱身術)、影像辨識(答題卡辨識、手勢辨識、車牌辨識、指紋辨識、手寫數字辨識)、物體計數、影像檢索、缺陷檢測等。 & 在機器學習部分,則實作了KNN實現字元(手寫數字、英文字母)辨識、數獨影像求解(KNN)、SVM手寫數字辨識、行人檢測、藝術畫(K平均值聚類)等。在深度學習方面,包括了影像分類、物件辨識(YOLO演算法、SSD演算法)、語義分割、實例分割、風格遷移、姿勢辨識等。 & 另外在最流行的人臉辨識相關方面,則提供了人臉檢測、人臉辨識、勾勒五官輪廓、人臉對齊、表情辨識、駕駛員疲勞檢測、易容術、性別和年齡辨識等。 & 本書對電腦視覺涉及的基礎知識進行了全面且系統性的深入梳理,能夠幫助讀者快速掌握該領域的核心基礎知識,此外,透過豐富的實例介紹,也能避免將案例作為單一問題看待的窘境,並且可以從不同的角度理解及分析問題,讓讀者能夠加以組合運用,創建屬於自己獨特的影像處理法寶! & ※ 本書附程式碼,可至深智官網下載:deepmind.com.tw/ &
C#最強入門邁向頂尖高手之路王者歸來
C# 最強入門 邁向頂尖高手之路 王者歸來 ★★★★★【國內第1本最新 C# 語法】★★★★★ ★★★★★【最完整的 C# 基礎語法】、【最徹底物件導向觀念】★★★★★ ★★★★★【最強視窗設計專案實戰】★★★★★ && 多次和資訊教育界閒談,大家公認C#是非常重要的程式語言,也是資訊科系的學生或是工程師必備的程式語言。閒聊中大家也一至獲得結論,C#不容易學習,許多人學習C#都感到很辛苦,原因如下: & 1:市面上的書籍沒有從C#基礎語法開始介紹。 2:使用舊語法解說C#,C#已經進化到最上層語句觀念(Top-level statement),幾乎沒有任何書籍介紹或說明。 3:C#其實是物件導向語言,國內書籍書籍內容對於C#語言物件導向觀念講解太粗淺。 4:C#是博大精深的程式語言,市面上書大多是在讀者尚未了解C#的觀念與精神時,就使用視窗程式做介紹,所造就的只是不紮實的結果。 5:C#經過20年的發展,已經進化到10.0版,許多新的語法,書籍皆沒有介紹,買了一些書辛苦好幾個月閱讀,好像書中內容都會了,學完也無法進入C# 實戰世界,一到網路看專家所寫的程式通通不懂。& && & 本書以約 1025 個程式實例,講解紮實的 C# 語法,讀者研讀完此書,相信可以學會下列知識: ☆ 認識最新語法:最上層語句 ★ using指示詞與陳述式的用法 ☆ 實質資料與參照資料 ★ var宣告 ☆ object、dynamic資料類型 ★ 裝箱(Boxing)與拆箱(Unboxing)的記憶體說明 ☆ 獨家解說C# 元組Tuple意義與應用 ★ 隱式(implicit)與顯示(explicit)強制轉換資料類型。 ☆ 匿名資料Anonymous Type、匿名陣列Anonymous、Array匿名方法& &Anonymous Method ★ 表達式主體方法Expression-bodied Method ☆ 自行定義方法Extension Method ★ 列舉(enum)、結構(struct)、類別(class)與物件 ☆ 靜態類別、靜態方法與靜態欄位 ★ 物件的建構、屬性與封裝 ☆ 欄位(field)與屬性(property)的關係 ★ 繼承與多型 ☆ 靜態綁定(static binding)、動態綁定(dynamic binding) ★ 分層繼承(Hierarchical Inhertance)、多層次繼承(Multi-Level Inhertance) ☆ 繼承IS-A和HAS-A關係、聚合(Aggregation)和組合(Composition) ★ 執行期的多型(Runtime Polymorphism)和向上轉型(Upcasting) ☆ 抽象類別、使用場合、專題實作與應用 ★ 介面(Interface)、虛擬介面方法(Virtual interface method) ☆ 索引子indexer ★ 委派Delegate、Multicast delegate、Generic delegate、Func delegate、Action delegate、Predicate delegate ☆ Lambda ★ 集合與泛型集合 ☆ 認識IEnumerable、IComparer、ICollection、IDictionary ★ 程式除錯與異常管理 ☆ 視窗設計:認識object sender和EventArgs e參數 ★ 事件(event)與共用事件、滑鼠事件、鍵盤事件 ☆ Items Collection Editor ★ 靜態與動態影像 ☆ 水平/垂直壓縮與解壓縮影像 ★ 靜態與動態影像 ☆ 認識、讀取與輸出Rich Text Format格式檔案、設計文書編輯程式 ★ 檔案輸入與輸出 ☆ 語音與影片 ★ 獨家指出C# 語法的缺點與改良此缺點的實例 為了讀者學習C#可以實作應用,本書講解語法時,同時輔助許多專案實作的應用,讀者可以從本書學會下列專題實例: ★BMI指數系統 ☆ 銀行貸款系統 ★咖啡館銷售管理系統 ☆ 飛舞的蝴蝶 ★旅館或民宿訂房系統 ☆ 卡拉OK、電子琴程式 ★完整函數索引,未來可以隨時查閱 & 本書特色 & 1:國內第1本使用最新C#語法,完整介紹入門到物件導向程式設計。 2:國內第1本依序介紹基礎語法、物件導向、視窗設計、LINQ、大型程式的多表單設計、高階應用的C#。 3:國內第1名,C#內容最廣,功能介紹最完整,共有38個章節。 4:國內第1名,程式實例最多,共有1025個程式實例。 &
快速學會 Visual Basic.NET
由淺入深詳細講解深度瞭解融會貫通不一樣的物件導向軟體技術與教學用書!不一樣的Visual Basic.NET程式設計技術與教學用書!Visual Basic.NET是目前最受歡迎的應用程式軟體開發工具。最常用來開發商務應用程式系統以及商務資料庫應用系統(包含:Windows桌面應用程式系統、Client/Server應用程式系、2-Tiers/3-Tiers/N-Tiers資料庫應用程式系統、雲端大型資料庫商務系統…)!本書詳細講解與教導讀者及程式開發人員如何使用Visual Basic.NET結合 .NET Framework的物件與元件來開發各類實用的物件/元件/應用/商務系統程式。從教導讀者Visual Basic.NET各種內建的視覺化元件以及Microsoft .NET Framework的各種功能強大的應用物件類別與工具開始,到開發設計多功能與實用的商務與系統自定物件(User Defined Object Class)、到商務應用物件(Application Object Class)以及各種套裝化的商務元件、本書更將教導讀者如何使用VB.NET結合Chart元件規劃各類商務應用系統最需要的統計圖表應用程式!一直到如何運用VB.NET結合Office Excel/Word元件來開發各類試算表與Word文件的應用程式。
VisualBasic 程式基礎入門 設計寶典
「零挫折!免基礎!學習成就最有感」Visual Basic Express,免費授權,卻又令人驚豔的新程式語言工具。擁有更人性化的操作介面,更強的功能。但是,軟體擁有的更精彩Help寶庫,卻也是初學者更大的惡夢。因為,對初學者來說,真得不容易看懂。所以,一本可以看得懂的書,方便學習Visual Basic程式設計,內容把概念講解清楚,範例能引起讀者興趣而且有實用性,看完後能有完整概念、實做完後能有成就感,也可以自己寫出程式來,這是每一個學習程式設計的學習者的共同心願,也是我們寫這本書的目的。每個單元皆由淺入深、循序漸進,讓初學者由基本範例中,學習到程式設計的精神、技巧與邏輯思考能力。物件導向是Visual Basic的賣點之一,檔案及資料庫方便大量資料的處理有其重要性,而報表輸出及程建置更是不可或缺的重要功能。希望透過這本書,我們給讀者的,不只是程式設計的概念及生動有趣的範例,更期望讀者藉由這本書的引導,能更平順的進入程式設計學習的成功模式。以下是我們建議的研讀模式:1.拿到書後,概略翻一下書,知道內容有那些。2.詳讀各章節內容,照著做一遍,熟悉指令、語法、資料結構及邏輯。3.不看書上的程式碼,自己再做一次,訓練自己寫程式的能力,當然一開始可能需要書本的協助。研讀過的程式,自已再試著把它寫出來,這是初學者,較無挫折感的學習方式。
Java 程式設計 高手
深入淺出引導教學,掌握程式語言的各種設計技巧由於Java具備獨立於任何系統平台的特性,使得它適合Internet這種分散式且具異質性架構的運算環境,因此Java受到了許多程式設計師的青睞,到現在它已經成為最廣泛使用的開發技術之一。目前Java的應用範圍除了Internet的Web開發領域之外,它還具備一般程式語言的全部功能,甚至可能更強。例如:在企業級應用環境中,如金融、電信、保險等複雜環境中,面對高度的業務複雜性,百萬、千萬甚至更高的使用壓力下,利用Java技術所開發的應用系統都展現極佳的執行效能。純粹作為語言來講Java並不具備所有的優勢,但如果在系統規畫時,考慮將系統部署在非Windows平台上,同時也希望具有:一次編譯,隨處執行(Compile once, run anywhere)的特性,那麼Java技術就是首選。像其他程式語言一樣,撰寫Java程式語言也可被用來發展各種應用,本書重點介紹Java Application的開發,從流程控制、陣列、演算法、類別物件、繼承介面、資料輸出輸入、網路程式設計、資料庫存取、使用者介面開發等等,都有深入淺出的介紹。
領域驅動設計學習手冊
保持軟體架構與業務戰略的一致& & 現在建立軟體比過去任何時候都更加困難了。作為一名開發人員,您不僅要緊跟著變化萬千的技術趨勢,還需要了解軟體背後的業務領域。這本實用的書籍為您提供了一組核心模式、原則和實踐,用於分析業務領域、理解業務戰略,最重要的是,保持軟體設計和業務需求的一致。& & 作者Vlad Khononov向您展示了這些實踐如何帶來業務邏輯(business logic)的穩固實行,並有助於軟體設計和架構與時俱進。您將檢視領域驅動設計(domain-driven design,DDD)和其他方法之間的關係,以確保您制定出符合業務需求的架構決策。您還將會探索在初創企業中實踐DDD的真實故事。& & 透過這本書,您將學習如何:& ‧分析企業的業務領域,以明白您正在建立的系統如何符合競爭戰略& ‧使用DDD的戰略和戰術工具來建構解決業務需求的有效軟體解決方案& ‧在您遇到的業務領域中建立共同理解& ‧將系統分解為限界上下文(bounded contexts)& ‧協調多個團隊的工作& ‧逐漸將DDD導入棕地(brownfield)專案& & 好評推薦 & 「Vladik Khononov思想獨特,多年來他一直應用DDD來解決實際的業務問題。他的想法不斷推動著整個DDD社群的發展,而這本書將會啟發初入門的DDD從業者。」──Nick Tune,技術顧問 &
APCS使用C++
APCS為Advanced Placement Computer Science的英文縮寫,是指「大學程式設計先修檢測」。APCS考試類型包括:觀念題及實作題。觀念題是以單選題的方式進行測驗,考試重點在於程式設計概念、解決問題的運算思維或理解演算法的基礎觀念。在程式設計實作題可自行選擇以 C、C++、Java、Python 撰寫程式,本書的實作題程式是以C++為主。 & 本書會以C++的語法架構為主,並根據APCS公告的觀念題及實作題,分別安排到各章的主題之中,主要目的就是希望讀者在學習完某一特定主題後,可以馬上測試相關的APCS觀念題,如此的安排更可以幫助各位讀者學以致用,清楚掌握考試的重點。 & 為了降低讀者的學習障礙,本書範例都是完整的程式碼,以實作來引導觀念,全書程式都已在DEV C++的環璄下正確編譯與執行。期許本書能幫助各位具備以C++的程式設計基本能力,並完全具備應試APCS的程式設計實作能力,筆者相信經過本書的課程安排及訓練後,各位已紮實地培養了分析題目、提出解決方案及以C++設計程式的實作能力。 &
三國鼎立唯一開源CPU架構:RISC-V處理器設計快速上手
☆★☆ AIoT 時代三國鼎立,動手設計屬於自己的 CPU 開闢新時代,從本書開始!☆★☆ & RISC-V是一個開放、開源的架構,人人都可獲取,因此,企業、學校和個人都可以主動參與相關的研發,這勢必能夠帶來更多的創新。 & 憑藉著簡潔、模組化且擴充性強的特點,RISC-V的晶片產品源源不絕地被推向市場,使得晶片產業得以蓬勃發展。這樣的發展趨勢終將推動RISC-V成為ISA領域的一項開放標準。每一次技術變遷都會帶來一個新生產業的崛起。從主機時代到PC時代,成就了Intel;從PC時代到行動時代,成就了ARM;從行動時代到AIoT時代,我們能否抓住RISC-V的機遇? & 本書作者是著名RISC-V公司芯來科技的創辦人,曾在世界最大的半導體公司擔任高級工程師,也是華人地區少見專注於RISC-V的硬體公司。 & 本書以蜂鳥E203,為開發平台,這是中文地區最早被RISC-V基金會官方首页收錄的開放原始碼核心。在X86、ARM、之外,我們是否能靠著RISC-V再開闢出一條新的捷徑?看看Linux的成功,或許你已經參與了一個新時代的降臨。 & 【本書特點】 ● CPU 的基礎知識、指令集架構的歷史。 ● RISC-V 架構及其特點。 ● 當前全世界的商業或開放原始碼 RISC-V 處理器。 ● RISC-V 處理器核心的整體設計思想和頂層介面。 ● RISC-V 處理器單選指單元、執行單元、交付單元微架構和原始程式。 ● RISC-V 匯流排協定,以及該模組的微架構和原始程式、處理器的記憶體架構。 ● RISC-V 的中斷和異常機制,硬體實現微架構和原始程式。 ● RISC-V 架構定義的偵錯方案,硬體實現微架構和原始程式。 ● RISC-V 的可擴充性,訂製一款輔助處理器。 &
IoT開發最強雙引擎:Node-RED + App Inventor 2,用視覺化環境打造IoT物聯網裝置
零程式基礎也能打造App, 運用圖形化工具,讓Android手機立即變成IoT裝置! 結合 Node-RED + App Inventor 2 視覺化開發工具,帶領初學者快速邁向 App 手機應用程式、IoT 物聯網和 AIoT 智慧物聯網開發應用!本書將帶你從建立簡單的公式運算 App 快速上手;整合 IoT 物聯網裝置,顯示抓取資料、模擬感測器元件;搭配手邊的 Android 手機,即刻變身 IoT 物聯網開發裝置! &什麼是 Node-RED? Node-RED 是 IoT 物聯網平台架設工具,視覺化流程簡單好上手,可以快速建立監控儀表板、MVC 網站、REST API 和使用 MySQL 資料庫儲存感測器數據。 什麼是 App Inventor 2? App Inventor 2 是視覺化手機 App 開發平台,省去了撰寫大量程式碼的麻煩,只要拖拉積木即可拼湊 Android 手機 App 介面及功能。 本書特色 手機就是 IoT 裝置 Android 手機就是開發板,讓你輕鬆實作 AIoT 智慧物聯網 零程式基礎也能開發 App App Inventor 2 易學易用,簡單拼湊出你的個人 App 增添升級感的視覺化功能 Node-RED 實用強大的功能,為你的 IoT 裝置打造視覺化的物聯網平台 內容重點 ➤ 使用 Node-RED,建立視覺化 IoT 物聯網平台 使用 Node-RED,可以建立監控儀表板、MVC 網站、REST API 和使用 MySQL 資料庫儲存感測器數據。 ➤ 使用 App Inventor 2,快速打造手機 App 使用 App Inventor 2,學會手機 App 介面建立和編排,並利用事件處理與使用者進行互動,輕鬆建立 IoT 裝置的 Android App。 ➤ 沒有手機一樣也能玩 IoT 物聯網! 即使沒有 Android 手機也沒關係,活用 Nox 夜神模擬器,即可模擬一台 IoT 物聯網裝置。 ➤ 為 App 增加更多強大功能:即時資料顯示、建立視覺化圖表、AI 人工智慧模型 整合運用 Google 圖表、OpenData 與 JSON 資料剖析、MQTT 通訊協定、Firebase 雲端即時資料庫和 AI 人工智慧,輕鬆導入雙引擎來建立你的 AIoT 智慧物聯網應用。 ➤ 提供綠化版 Node-RED 開發環境 可以輕鬆建構學習 Node-RED 物聯網應用和Web網站架設的Windows開發環境。 你將學會以下實作專案: ✔ 打造實際可運作的 App,實作公式運算、開獎程式、顯示計時 ✔ 模擬感測器元件,為 App 增加溫度、加速度、照度等感測功能 ✔ 將抓取的網頁資料,以多元化的視覺圖表呈現在 App 上 ✔ 使用 TensorFlow.js 預訓練機器學習模型,辨別人物、手勢、貓咪性別機率 &
Python桌面開發王者:Qt 6最強實例貫穿開發
☆★☆★【完整說明Qt 6的主要功能!最詳盡的Qt開發全書!】★☆★☆ 本書分為六大部分: 第1部分為Qt 6基礎。 以Qt 6.0的全新類別模組和介面,重新實現了各種基礎實例的功能。 第2部分為Qt 6綜合實例。 以新的Qt 6.0實現了電子商城系統、簡單文字處理軟體和微信使用者端程式。 第3部分為Qt擴充應用。 介紹了Qt設定OpenCV和OpenCV處理圖片,在綜合實例方面,展示了醫院遠端診斷系統,運用MySQL建置資料庫,進而有效管理患者資訊。 第4部分為QML和Qt Quick及其應用。 內容包含了QML及Qt Quick的相關內容。 第5部分為Qt Quick 3D開發基礎。 這是Qt 6.0新推出的功能模組,它大幅提昇了Qt在3D圖形影像領域的地位。 第6部分是關於Qt 6的跨平台開發技術。 跨平台是Qt 6.0的優勢特性,本書將Qt在Visual Studio、Android、Python及Linux(Ubuntu)等多種主流平台上的設定和開發方法進行了詳盡的介紹。 透過本書循序漸進的教學,讀者不僅可以了解到Qt6的各種功能,也能對於圖形使用者介面的掌握更加熟悉。 本書特色 ✪Qt概述:範本庫、工具類別及控制項。 ✪QML程式設計基礎、QML動畫特效。 ✪Qt Quick 3D開發基礎、Qt Quick Controls開發基礎。 ✪Qt跨平台開發:Visual Studio、Android、Python及Linux(Ubuntu)。 &
手術刀般精準的FRM:Python科學管控財金風險(基礎篇)
☆★☆★【有如手術刀般精準!利用Python幫你管控財金風險!】★☆★☆ 本書使用了當紅的程式語言Python,從程式設計的基本觀念談起。沒有Python基礎也沒關係,完整的Python介紹,讓您能順利銜接資料科學家最常用的套件整理,包括Numpy,以及特別針對格式化表格類處理的Pandas,也充分介紹了Dataframe的各種應用。 在有了充足的資料之後,接著需要有可以展示數據的工具。除了大家最愛用的Matplotlib之外,也介紹了高手才會用的Seaborn。當熟悉了工具之後,就正式進入了金融理論,包括基礎的機率及統計、各種模型及機率分佈,以及抽樣、信賴區間等內容說明。 最後則進入到金融領域,除了介紹各種計算的演算法、模型、術語,也結合了前面所學的Python及工具,並講解金融商品最重要的「固定收益分析」。 本書從科學下手,讓您精準了解金融原理,確保金錢不再陷入水深火熱之中,將是您從科學到金融領域最重要的橋樑。 本書特色 ✪金融風險管理師 (FRM)所應該具備的所有技能。 ✪FinTech所需要的Python程式設計概念。 ✪資料科學家最需要熟悉的Python套件、Pandas、Numpy。 ✪製作圖表的首選工具Matplotlib、Seaborn。 &
POS前端銷售App系統 設計寶典
「範例式引導講述,學習最有效率」※講解如何使用Android規劃商務應用App系統程式設計用書。※教導讀者使用Android規劃POS前端銷售管理App程式設計用書。※附贈一套完整Android POS前端銷售管理App軟體系統的原始程式碼,在Android Studio中開啟附贈POS專案,即可得到全套POS應用軟體的程式碼。目前在市面上所有實體書店或網路購物商城,隨便一找都可找到成千上百的Android程式設計用書,但若仔細分析,就會發現目前市面上所有Android用書幾乎都是教導讀者如何使用Android SDK + Java來設計Android App程式、不然就是教導讀者Android物件指令用書!但這些Android的書籍,都只是教導讀者使用Android的開發工具來設計App!而沒有一本是教導讀者如何應用Android來開發商務領域的應用系統 (如:POS銷售App、CRM管理App、庫存盤點App…)!而這些商務應用領域的Android App系統,才是目前所有企業行號最需要的,但目前市面上卻沒有一本Android書籍是講解此種商務系統設計的,因此有了本書的企劃!本書使用程式設計結合商務作業模式導向方式,Step By Step的教導讀者以及設計者開發Android環境下的POS前端銷售管理App系統。讓讀者瞭解如何使用Android開發工具來開發商務領域的App應用軟體!希望本書的出版,能帶給所有想開發商務應用App系統的讀者以及設計師些許的助益!
提升程式設計的運算思維力 第二版|國際程式設計競賽之演算法原理、題型、解題技巧與重點解析
適用於ACM, IOI等各類程式設計競賽訓練 精析典型賽題,提供詳細註解的參考程式,高效率訓練思維能力和編寫程式能力 本書以作者長期教學和競賽訓練中總結的資料結構和進階資料結構知識體系,以及行之有效的程式編寫能力訓練方法,以各類程式設計競賽的試題為素材編寫而成。透過啟發式、案例化的教學,系統、全面地培養讀者編寫程式解決問題的能力。本書不僅可以作為ACM-ICPC、IOI等程式設計競賽的訓練教學課程,亦可作為大專院校程式設計相關課程教材,以及對編寫程式感興趣的讀者的自學讀物。 ‧從ACM-ICPC、IOI等各類程式設計競賽中精選300餘道典型賽題,並歸為Ad Hoc、模擬、數論、組合分析、貪心、動態規劃、高階資料結構、計算幾何八類,使讀者掌握各類經典問題的思考方法和解題策略。 ‧將150餘道試題作為範例試題,每道試題不僅有詳盡的試題解析,同時提供詳細註解的參考程式;其他試題為題庫試題,每道試題提供清晰的提示,進一步訓練讀者解題策略。 ‧第二版內容針對數論、組合分析兩章透過程式設計競賽試題及其解析,完整涵蓋其相關知識點,貪心、動態規劃兩章則加強了對經典問題的解析。
ESP32物聯網基礎10門課The Ten Basic Courses to IoT Programming Based on ESP32
本書是『ESP系列程式設計』使用ESP 32開發板,特別為大學課程之教學用書,主要教導新手與初階使用之讀者熟悉使用ESP32開發板,進入物聯網網路的連接、應用,並連接感測元件,可以將資料上傳到雲端。 本書一個特點就是從最基本的GPIO使用到最後建立與設計整個雲端平台的架構與應用,全部含括在內。最先開始使用最基礎的溫溼度感測器,進而製作一個網際網路的物聯網的基礎應用,並應用LINE的工具,介紹訊息推播,可以即時告知使用者感測訊息,並且對於雲端平台的安裝、建置、設定、資料庫規劃、進而建立資料代理人(DB Agent)的機制,並且可以與MQTT Broker通訊與交換資料,並且可以透過異質語言,如Python,建立資料介面代理人程式(Data Visualized Agent)機制,拓展的物聯網的強大外掛能力,進而可以進行大數據運算與資訊視覺化的強大應用…等等。 ESP 32開發板最強大的不只是它的簡單易學的開發工具,最強大的是它網路功能與簡單易學的模組函式庫,幾乎Maker想到應用於物聯網開發的東西,只要透過眾多的周邊模組,都可以輕易的將想要完成的東西用堆積木的方式快速建立,而且ESP 32開發板市售價格比原廠Arduino Yun或Arduino + Wifi Shield更具優勢,讓Maker不需要具有深厚的電子、電機與電路能力,就可以輕易駕御這些模組。 筆者很早就開始使用ESP 32開發板,也算是先驅使用者,希望筆者可以推出更多的入門書籍給更多想要進入『ESP 32開發板』、『物聯網』這個未來大趨勢,所有才有這個系列的產生。 &
Python+Office辦公自動化實戰
資料處理量更大,文件處理速度更快,工作效率更高! 職場中的許多電腦工作中大多都有利用Excel、Word、PowerPoint等工具來製作報表、文稿、簡報,以及收發郵件和管理檔案等相關的工作。若能利用Python程式來配合,就能達到「自動化」的處理,發揮很高的效率來完成許多繁鎖的工作。 本書內容包括: ‧Python程式設計基礎篇 Python基礎知識、重要程式設計基礎。 ‧Excel資料自動化處理篇 資料預處理、資料分析和資料視覺化 ‧Word文書自動化處理篇 自動處理文字、製作企業經營報告 ‧PPT簡報投影片自動化製作篇 自動化製作簡報PPT、製作企業月報經營分析PPT ‧郵件自動化處理篇 批次發送和收取郵件、進行企業會員郵件自動化行銷 ‧檔案自動化處理篇 自動化處理檔案的命名、搬移、複製和刪除,自動化壓縮和解壓縮檔案
敏捷升級:28個提升敏捷成效的關鍵原則
『一本好書,需要在廣度與深度中做出取捨,本書不但廣度足夠,討論的層次夠深,且打中問題要害。……如果能真正體會作者的本意並加以落實,對於敏捷轉型可以少踩很多雷。』──「搞笑談軟工」板主Teddy Chen 專文推薦 『正如《Code Complete》在1990年代成為所有軟體工程師必備的聖經一樣,《More Effective Agile》也將在未來10年成為所有敏捷領導者必讀的絕佳指引。』──Tom Kerr,ZOLL Medical嵌入式軟體開發經理 [名家名著]28 敏捷升級:28個提升敏捷成效的關鍵原則 More Effective Agile: A Roadmap for Software Leaders 軟體開發聖經《Code Complete》的作者Steve McConnell又一原創力作! McConnell綜合數百家企業的經驗與血淚史,將這些得來不易的體悟和見解精煉成為一本值得一讀的絕佳指引,為無數軟體開發領導者提供一份現代敏捷實踐的有效路線圖。 McConnell統整的28個關鍵原則也是一份出色的備忘錄,他針對團隊、工作、組織等構面整理了一系列有影響力的、以行動為導向的處方箋,詳細討論各種提升敏捷成效的核心價值、領導行動與實踐做法,例如: ・選擇適合軟體公司的敏捷工具 ・建立真正以業務為中心的、高績效的自我管理團隊 ・了解Scrum的基礎知識和常見的失敗模式,並診斷團隊的問題 ・在迭代環境中提高需求的一致性 ・更有效地測試,藉此提升品質 ・軟體開發領導者如何帶領公司突破真實世界的困境,像是分散式團隊、大型專案、產業法規,以及對可預測性的需求等等 McConnell亦嚴肅探討傳統方法、早期敏捷方法、現代敏捷方法之間的類同與歧異,以及它們背後的原則和情境,無論你是長字輩主管、副總裁、總監、經理、技術主管還是敏捷教練,本書都為你、你的團隊和你的公司提供寶貴的資源。 &
提升程式設計力|國際程式設計競賽精選解題解析
ACM-ICPC訓練聯盟推薦教材 適用於ACM、IOI等各類程式設計競賽訓練 本書針對程式設計初學者的學習需求,以作者長期教學和競賽訓練中總結的知識體系,加上行之有效的程式設計能力訓練方法,以各類程式設計競賽的初級試題為素材編寫而成。透過啟發式、案例化的方式,吸引讀者探索和思考,順利地達到程式設計入門的效果。本書不僅可以作為ACM-ICPC、IOI等程式設計競賽的訓練初步教程,也可作為程式設計相關課程的實作教材,以及對程式設計感興趣的讀者的自學讀物。 ‧從ACM-ICPC等各類國內外程式設計競賽中精選80餘道初級試題作為本書的範例試題,包含程式設計起點、選擇結構、迴圈結構、嵌套結構、陣列、函數、指標、數學計算、排序和C++ STL。解題知識涉及程式語言、從簡單的中學數學和物理到導數和矩陣,啟發學生邏輯思維,並以此磨練讀者程式設計解決問題的能力。 ‧每道試題不僅有詳盡的試題解析,還提供了詳細註釋的參考程式,讀者可參考這些清楚的提示,進一步訓練以程式設計解決問題的能力。 ‧書中的經典試題可用於程式設計相關課程的實作教學,還可用於輔導學生進行程式設計入門和競賽訓練。
Java開發者的DevOps工具
從原始碼到生產容器的最佳實務 引用自前言 「作者在引導您完成所有相關步驟方面表現非常出色,從套件管理到保護工件以及部署。」 —Daniel Bryant Ambassador Labs的DevRel負責人,Java Champion 隨著DevOps、低成本雲端計算、以及容器技術的興起,現在Java開發人員進行開發的方式發生了巨大變化。這本實用指南可幫助您利用最新DevOps技術善用微服務、無伺服器和雲端原生技術來簡化建構過程並建立高效率團隊。 JFrog公司的Stephen Chin、Melissa McKay、Ixchel Ruiz和Baruch Sadogursky協助您評估一系列選項。這個列表包括使用Git原始碼控制、使用Maven和Gradle建構宣告、使用CircleCI的 CI/CD、使用Artifactory套件管理、使用Docker和Kubernetes容器化等等。無論您是使用 Jakarta EE、Spring Boot、Dropwizard、MicroProfile、Micronaut、還是Quarkus來建構應用程式,這份完整的指南都能滿足您的需求。 ‧探索軟體生命週期最佳實務 ‧使用DevSecOps方法來促進軟體開發和交付 ‧瞭解DevSecOps最佳實務的商業價值 ‧管理和保護軟體依賴項 ‧使用容器和雲端原生技術來開發和部署應用程式 ‧管理和掌管原始碼控制儲存庫和開發流程 ‧使用自動化來設定和管理建構生產線 ‧識別常見的部署樣式和反樣式 ‧在部署後維護和監控軟體
Python 資料結構×演算法 刷題鍛鍊班:234 題帶你突破 Coding 面試的難關
★求職/轉職必看!Coding 面試的衝刺總複習★ ★57 大重點 × 74 道面試題 × 160 個例題,紮實打好基本功★ 要在程式開發這條路走得夠長、夠遠,資料結構和演算法是公認必修的基本功,透過觀摩、思考各種程式設計的經典問題,不斷演練、改進自己的程式,是提升程式設計功力的不二法門。 也許你聽過在 IT 業界打滾多年的老手說:實際 Coding 都沒在管資料結構、演算法,只要功能寫得出來、符合規格,誰管你用甚麼方法,太冷門的寫法反而沒人看得懂。有些 Coding 的工作也許真是如此,先求有再求好,但老手前輩們沒跟你說的是…,在獲得工作前,求職面試這關就要先考考你對資料結構或演算法的理解程度,好評斷你的程式功力。 有不少網站大量蒐集各種程式設計的考題,供使用者反覆演練、自我挑戰,俗稱為「刷題」。這些題目往往是從經典的資料結構或演算法問題衍生而來,若沒有對相關的邏輯推導細節有足夠的了解,只是一昧的刷刷刷,恐怕效果有限、事倍功半。 作者在資訊科系任教超過30年,資料結構衍生著作累積銷量超過10萬冊,擁有非常豐富程式設計的教學和寫作經驗,也在業界當過開發工程師與資訊主管,深知業界求才的需求與標準。因此本書在規劃之初,除了務求透過豐富實作和圖解,來傳達資料結構與演算法的基礎,更嘗試將時下工程師求職必備的刷題需求,也融入各章節主題之中,系統化的打好程式設計的基礎與實力,也能同時掌握未來求職要面對的考題型式,及早準備、做好因應,才不會臨到關頭,沒發揮實力被刷掉。 本書收錄了陣列、串列、樹狀結構、圖、搜尋樹等常見的資料結構,解題過程也介紹了動態規劃、貪婪法等必要的演算法概念,除了觀念解說,同時會搭配圖表、日常生活案例,以及範例、面試題、延伸題型、練習題等總計 234 個題目,盡可能增進讀者實際演練的經驗,絕對比自己在網路上摸索、東拼西湊、盲刷題目來得更有效率,是一本兼顧理論與實作,與時俱進、不可多得的入門教材。 本書特色 刷題前必備的基本功! 幫你打好基礎,高效提升程式設計功力 ○ 涵蓋最主要的資料結構與常見演算法,包括: - 遞迴設計/迴圈設計 - 時間複雜度與漸進符號 - 陣列和動態規劃法 - 鏈結串列 - 堆疊與佇列 - 圖形結構/最短路徑/工作網路 - 前序/中序/後序走訪 - 展開樹/二元樹/AVL樹/B 樹 - 氣泡/選擇/插入等基本排序法 - 快速/合併/基數/堆積等進階排序法 - 循序/二元/內插搜尋法 - 雜湊函數設計/雜湊表 … ○ 收錄 74 道經典的面試題,並依照不同難易度區分等級,使用者可依照學習進度挑選合適題型。 ○ 除了擬真的面試題型,也提供延伸題型、實作範例、練習題,隨時驗證自己的實力,自學、教學都適用。 ○ 特別收錄 Python 語法實戰速成,方便隨時惡補參照。 ○ 加入旗標會員 VIP 另外可獲得作者不定時補充的 Bonus 刷題技巧,持續精進程式功力。 &
多核心CPU加速程式32倍:深入高平行開發深度原理及專案實戰
☆★☆★【高平行開發的天花板!】★☆★☆ 在深度原理與專案實戰內一探究竟! 高併發是高流量、高資料量服務線上系統架構必須具備的特性,如果想從微觀核心到併發應用,再到業務架構學習高併發的核心原理,以及高併發系統的工程架構最佳實踐,本書是中文書籍中最佳的範本,在細節部分,對核心排程、同步非同步、各類鎖的實現細節都有詳盡的敘述,另外在併發應用層面,對CAS問題、ABA問題、連接池實現,也有很完整的案例講解。在更高的架構層面上,對快取併發實戰、電子商務超賣問題、秒殺系統架構,更有清楚且應用上的說明,讓讀者能從CPU、作業系統、JVM底層原理為基礎,站在實踐的角度上全面了解高併發的基本原理及實用。在電腦多核心時代,併發程式設計是每個程式設計師都應掌握的技能,伺服器上的CPU核心在EPYC出後,成千上百個處理器同時為你工作,如果你寫出來的程式還無法執行多處理程序,多執行緒,多核心,小心真的成為時代的眼淚! 本書看點 ✪了解作業系統中的執行緒排程架構 ✪多核心CPU上設計Java平行程式 ✪併發式程式的設計理念,分工、同步、互斥 ✪核心原理說明,原子性、可見性、有序性 ✪Synchronized、AQS、CAS、鎖、執行緒池、ThreadLocal的核心原理 ✪手動開發執行緒池實戰案例 ✪使用CAS開發自旋鎖實戰案例 ✪使用讀/寫鎖實戰快取 ✪使用AQS實現可重入鎖 ✪開發分散式鎖架構 ✪完整大型實戰一個秒殺系統的完整架構 &
科學方法賺大錢:Python進行商品期貨量化交易
◆集結10多年豐富的實戰經驗,涵蓋量化交易的各種面向,快速上手Python期貨量化交易!◆ 本書以商品期貨為標的,Python為工具,讓你使用策略來進行量化交易。這些基於AI及統計學原理的交易方法,讓你不再靠感覺讓自己的金錢陷入險境。 內容安排由快速講解Python原理開始,直接就進入量化交易的策略分析,通通是被殘酷市場驗證過的賺錢案例。不僅完整說明量化交易的API,也提供了開放原始碼的SDK做使用。之後講解CTA策略,交易方法相對規則化、系統化,結合不同的策略理論開發CTA策略,包括了最重要的回歸策略和布林帶、乖離率等等。另外也有完整的回測和實盤,讓你的策略能真正通過實戰測試,包括使用Tick資料讓回測更精準、回測績效報告詳解、如何避開回測中的陷阱、遞進和交叉回測、量化交易實盤。 對優秀的量化交易者來說,掌握風險管理的方法是非常有必要的。本書也介紹了期貨市場的三大風險及正確的倉位管理方法。在最後的單元中,也說明了常用的止盈和止損方法、量化交易與基本面資料、交易中常用的數理知識、量化交易與統計學。 本書從真正的實戰交易出發,透過各種經典策略案例來指導讀者實作學習,讓您以更精準的方式,殺入量化交易的熱區賺大錢! 【適合讀者】 ● 需要全面學習量化交易的主觀交易者。 ● 金融分析師。 ● 金融專業學生。 ● 喜歡交易的 IT 從業者。 ● 希望提高量化交易水準的人員。 ※本書附程式碼,可至深智官網下載:deepmind.com.tw/ 本書特色 ★ 附帶完整的策略程式,提高學習效率。 ★ 涵蓋 Python 程式語言基礎知識。 ★ 對量化交易策略案例進行分析。 ★ 專案案例典型,實戰性強,高應用價值! ★ 提供完整的技術支援。 &
一本精通:LINE BOT+Python+Google Dialogflow 完整掌握LINE BOT的開發技巧 打造全方位AI機器人
LINE 在全世界擁有上千萬的用戶,在台灣幾乎每個使用手機的人,都會註冊一個 LINE 的帳號,不論公家單位還是私人企業,也都會使用 LINE 的官方帳號來與使用者保持聯繫。隨著資訊科技的發展,近年來各個企業也逐漸打造自己的 LINE BOT,除了被動的處理客服諮詢,還能透過 LINE BOT 主動推播各種行銷活動資訊,透過與使用者的即時互動,打造優質的品牌形象。 一個最簡單的 LINE BOT,可以從註冊官方帳號開始,註冊了 LINE 的官方帳號後,從管理介面中就可以進行最簡單的 LINE BOT 聊天操作,但如果要讓 LINE BOT 擁有更多的功能,就需要撰寫程式去串接 LINE Developer 所提供的操作方法,透過各種方法的互相搭配,就能打造自己專屬的 LINE BOT ( 例如聊天機器人、記帳機器人、購票機器人、天氣通知機器人...等 )。 本書是專門介紹開發 LINE BOT 的書籍,從最基本帳號的申請串接、環境的建置和圖文選單設定,一直到 LINE Message API 的進階操作都有詳細的介紹,並且會使用本機環境、Google Colab 雲端開發環境進行實際的開發演練,最後更會搭配 Google Cloud Functions、Google Dialogflow 服務,打造一個可以 24 小時運作、並能理解自然聊天語意的 LINE BOT。 本書主要內容如下: ● LINE 官方帳號申請 ● LINE 開發者帳號設定 ● ngrok 服務 ● Webhook ● 解析 LINE 訊息 ● 回傳訊息的方法 ● Google Cloud Functions ● Google Dialogflow ● 氣象機器人 ● 聊天機器人 &
不靠框架硬功夫: Scikit-learn手刻機器學習每行程式碼
★ ML 最強套件 scikit-learn ✕ 經典演算法,帶領你徹底攻略所有 ML 必備理論與實踐技能! 機器學習是一門多領域交叉學科,涉及機率論、統計學、逼近論、凸分析、演算法複雜度理論等多門學科。其研究電腦模擬或實現人類的學習行為,獲取新的知識,重新組合現有知識結構並改善自身的效能。 本書針對機器學習領域描述了多個學習模型、策略、演算法、理論以及應用,以 Python 3 為基礎,使用 scikit-learn 解決實際問題。 全書完整介紹機器學習基本概念、演算法流程、模型建構、資料訓練、模型評估與最佳化、必備工具和實現方法,並佐以實際案例,以機器學習的經典演算法為軸線:演算法分析 ▶ 資料獲取 ▶ 模型建構 ▶ 推斷 ▶ 演算法評估,讓你理論與實踐技能一次學會,輕易上手。 本書特色 ML 的最佳參考書,scikit-learn 的最紮實實戰應用,亦為深入 AI 技術的優良基礎! ● 機器學習概述 ● 資料特徵提取 ● scikit-learn 估計器分類 ● 單純貝氏分類 ● 簡單線性迴歸到多元線性迴歸 ● k 近鄰演算法分類 ● 線性迴歸到邏輯迴歸 ● 非線性分類與決策樹迴歸 ● 決策樹到隨機森林 ● 感知機到支持向量機 ● 從感知機到類神經網路 ● 主成分分析降維 &
Python 統計分析:生命科學應用
本書以基礎的統計學知識和假設檢定為重點,簡單扼要闡述了 Python 在資料分析、視覺化和統計建模中的應用。本書主要包含了 Python 簡介、研究設計、資料管理、機率分布、不同資料類型的假設檢定、廣義線性模型、存活分析和貝氏統計等從入門到高階的內容。 本書利用 Python 這門開源語言,不僅直觀上對資料分析和統計檢定提供了很好的解說,在相關數學公式的解釋上也能夠做到深入淺出。此外,本書所述內容的可操作性很強,還提供配套的相關程式碼及資料,方便讀者動手練習。本書適合對統計學與 Python 有興趣的讀者,特別是在實驗學科中需要利用 Python 的強大功能進行資料處理和統計分析的學生及研究人員。 本書範例檔: github.com/thomas-haslwanter/statsintro_python &
敏捷開發的藝術 第二版
「James Shore運用新的工具、技巧與過去十年的經驗將第一版的內容全面翻新。第二版所蘊含的知識和經驗將協助將目前的工作模式,變得更加敏捷且有效率。」 -Bill Wake, XP123, LLC 大多數的軟體公司自認為善用「敏捷」的相關實務做法,但是對這些實務作法與理解,卻與敏捷的真諦和運用大相逕庭。如果您期望提升軟體開發團隊的敏捷力,本書將詳盡、清楚、具體地為您提供指引,告訴您該做些什麼,為什麼這麼做,以及何時該進行權衡取捨。 本書將傳統敏捷的實務指引進行全面更新。憑藉作者超過20年的敏捷經驗,針對如何採用敏捷,如何基於敏捷進行規畫、開發與管理,提供明確直接的建議。將極限編程(Extreme Programming)、Scrum、精實(Lean)、DevOps,以及其它最佳實務做法的新創見整合為連貫而緊密的整體。您將能從本書中了解如何成功將敏捷開發導入團隊與組織,或是理解敏捷可能並不適合您所處環境的原由。 本書為下列四個面向提供指引: ‧提升敏捷力:創造敏捷成功與規模化的必備條件 ‧專注價值:團隊合作、了解優先序、建立可視化、持續改善 ‧可靠地交付軟體:共有主導責任、降低開發成本、演進式設計、持續部署 ‧優化價值:產品規畫、預算與試驗的主導責任,以及打造領先市場的軟體
實戰Python Flask開發|基礎知識x物件偵測x機器學習應用
從如何建立一個Web應用程式到API與部署,獻給工程師與資料科學家的Flask入門書 本書說明如何使用Python的框架Flask進行Web應用程式的開發。從最簡單的迷你應用程式開始,逐步建立起諮詢表單,整合資料庫的應用,加入認證功能,逐步發展成一支功能完整的應用程式。你可以從這個過程當中學到如何使用Flask進行開發。 第二篇將會開發一個可以從識別照片中有哪些東西的物件偵測程式,並說明如何將其轉換為Web API。此外,還會將圖像識別的主題延伸到識別手寫字,並說明如何在程式開發中應用機器學習的技術。 【本書主要內容】 ● Flask的基礎知識和開發 ○ 建立查詢表格和資料庫應用程式 ○ 建立認證功能 ○ 建立物件偵測程式 ● 建立和部署API ○ 將物體檢測應用程式轉換為網路API ○ 作為Web API對外發佈 ● 機器學習API開發 ○ 從分析程式碼開發機器學習API的過程和方法。 【誰適合閱讀本書】 .想要用Python開Web應用程式的工程師 .對機器學習感興趣的web開發人員 .只用過Python進行分析的人。 .希望能夠自行開發Web應用程式與API的資料科學家
軟體架構指標|改善架構品質的案例研究
軟體架構指標在保持軟體專案的可維護性和確保高品質架構的關鍵,以及警告架構和技術債務的危險積累方面扮演著關鍵角色。在這本實用的書中,領先的實踐型軟體架構師Christian Ciceri、Dave Farley、Neal Ford、Andrew Harmel-Law、Michael Keeling、Carola Lilienthal、João Rosa、Alexander von Zitzewitz、Rene Weiss和Eoin Woods用案例研究分享的方式,介紹每個軟體架構師都應該知道的指標。 這不是一本關於理論的書,它是基於現實世界的經驗並為軟體架構師和開發人員編寫的書,包含了更多關於實踐和實施的內容。本書分享了關鍵軟體架構指標,以幫助您設定正確的KPI並衡量結果。您在有關決策和測量有效性方面會學到更多。 您將學習如何: ‧衡量你的軟體架構在實現目標上有多好 ‧選擇要追蹤的正確指標(並略過不需要的指標) ‧改善可觀察性、可測試性和可部署性 ‧確定軟體架構專案的優先順序 ‧建構有洞察力而且相關的資訊看板
iOS 16程式設計實戰:SwiftUI全面剖析
◎以最新版Xcode14與Swift語言貫穿全書所有章節 ◎最新最精彩最完整的SwiftUI超級實用範例,功力百倍擴增 ◎涵蓋Charts、Vision、Bluetooth等高級框架應用 ◎經濟部iPAS行動裝置程式設計師能力鑑定指定參考用書iOS日新月異,如果想要寫出專業級的iOS App,本書絕對值回票價,它是每位iOS工程師必備的一本重量級工具書。 -- 資策會數位教育研究所主任 王淳平 朱老師為人幽默風趣,著作深入淺出,對於 iOS 的技術細節著墨既深且廣。無論對於初學或者資深的iOS開發者,這本書都是值得隨時在手的好工具。 -- 誠藝顧問有限公司技術總監 劉佑國(Kent Liu) 行動裝置作業系統變化快速,對程式設計師來說是一大挑戰,iOS更是如此。朱老師運用清楚明白的講解以及大量的範例,讓不論是初學者或是已有經驗的程式設計師都能精準掌握最新作業系統的特性,有效縮短學習的時間。本人在此特別推薦此書,這是對iOS程式設計有興趣的朋友都該擁有的一本好書。 -- 國立聯合大學電子工程學系副教授 王聲葦 程式設計師最困擾的是日新月異的開發工具,「iOS程式設計實戰」是一本可跟上技術演替的書,一直是行動應用開發人員的最佳夥伴,更是iPAS行動裝置程式設計師初級證照考科「行動裝置程式開發 -iOS程式設計」與中級考科「行動裝置跨平台程式開發- iOS開發實務」必備的工具書。 -- 國立虎尾科技大學資訊工程學系副教授暨教育部彰雲嘉數位機會中心輔導團主任 江季翰
Arduino專題製作:智慧家庭(附範例光碟)
本書以「輕模組單一化的概念」,透過step by step的教學方式,並標示各實驗需注意的細節,是本能夠讓讀者輕鬆學的實習用書。書中以Arduino UNO、ESP8266、ESP32等通用開發板,讓學生能夠更廣泛應用及學習每個專題,且各實驗均經過多次測試。專題項目從環境監測、藍牙遙控到手機程式編寫、單晶片程式設計等各種多樣化的實作,可做為專題製作及其他選修相關課程的推薦參考書。
App Inventor 應用程式 設計寶典
「範例式引導講述,學習最有效率!彙整業界實務需要的精彩範例,讓您學習充滿成就感!」App Inventor是一款基於Web、完全線上開發的Android程式設計軟體,它拋棄了複雜的程式碼而使用樂高積木式的堆疊法來完成您的Android程式設計操作,即使是沒有任何程式設計基礎的人也能很快上手。為了推廣App Inventor的使用,MIT還推出了繁體中文版本,這對一些英文初學者來說,無疑是一大福音喔!本書共包含了十二個章節,由淺入深的為讀者介紹App Inventor的重要程式設計技巧,並且透過範例對其進行詳細的講解。其中內容包含基礎概念入門、元件與運算、流程控制與程序、快樂萬聖節、創意小畫家、猜拳遊戲、搶救農作物、聖誕老公公來了、智慧拼圖、樂透搖獎、地球保衛戰、指南針、QR Code條碼掃描等。相信經過課程的綜合演練,必定能讓讀者融會貫通App Inventor的應用程式開發技巧,還能輕鬆將設計理念融入今後的創作設計當中,創作出更為優秀的軟體作品。以Step by Step方式引導教學,讓讀者輕鬆跨入App設計的殿堂。彙整業界實務需要的精彩範例,由簡單到複雜的設計製作,讓您學習充滿成就感!從精美的範例學習中啟發創意的實現技巧,讓您快速掌握App Inventor程式設計的奧妙。附贈完整的範例檔案,並以原始檔案的格式儲存,便於讀者練習使用。
Scratch3.0創意程式設計融入學習領域含GTC全民科技力認證(基礎:互動程式設計 (L1)、結構化與模組化
1.依據108課程綱要將Scratch 3的特色融入各學習領域,輕鬆激發學習者的多元智慧、創造力與想像力。 2.運用主題範例程式設計,引導學習者觸類旁通、舉一反三,將自己的創意想法轉換成Scratch 程式的執行結果。 3.從動畫情境的腳本規劃、自己的創意規劃、流程設計、動手堆疊積木到延伸學習,循序漸進,培養運算思維能力、問題解決能力與邏輯思考能力。 登錄本書MOSME 行動學習一點通後可獲得金元寶,金元寶可在IPOE 會員中心透過「兌換科幣」,將金元寶兌換成「科幣」。 診斷:可反覆線上練習書籍裡所有題目,強化題目熟練度。 評量:多元線上評量方式,了解學習狀況。 影音:於學習資源「影音教學」專區,線上觀看本書影音。 加值:附書上的範例練習檔及影音教學示範檔。 &
Code That Fits in Your Head|軟體工程的啟發式方法
降低程式碼的複雜度,寫出能裝進您大腦的程式碼 「Mark Seemann以清晰、徹底的方式解釋複雜概念而聞名。在本書中,他將自己廣泛的軟體開發經驗濃縮為一套好用且務實的技巧,用於編寫具有永續性又容易親近的程式碼。本書將是每位程式設計師的必讀之作。」 — Scott Wlaschin,《Domain Modeling Made Functional》作者 如何降低程式碼的複雜度並以更具永續發展性的方式開發軟體 在以可持續發展的步調編寫程式碼和控制導致專案失控的複雜性方面,《Code That Fits in Your Head》提供了不可或缺的實務建議。 Mark Seemann在幫助軟體團隊成功的過程中積累了幾十年的經驗,他指導你從零(無程式碼)開始一直到部署功能,並告訴你如何在新增功能、處理橫切關注點、疑難排解和最佳化時,保持良好的「巡航速度」。你會發現針對關鍵議題的寶貴靈感、實務做法和流程,包括檢查表、團隊合作、封裝與分解、API設計和單元測試。 Seemann藉由從一個完整的範例專案中提取出來的程式碼實例來闡明他的見解。它們以C#語言編寫,旨在為使用任何物件導向語言的人(包括Java、C++和TypeScript)提供清晰且實用的資訊。為了便於深入探索,所有程式碼和豐富的提交訊息都提供下載參考。 ‧選擇有效的思維方式和流程,並逃離不適用的不良隱喻 ‧使用檢查表來解放自己,以你既有的技能改善結果 ‧透過建立和部署你應用程式的垂直切片來克服「分析癱瘓」 ‧抵制導致程式碼腐敗和非必要的複雜性的力量 ‧掌握更好的技巧來改變程式碼行為 ‧發現更快、更有效解決程式碼問題的方法 ‧以更有生產力的方式思考效能和安全性 如果你曾經歷過糟糕專案的折磨,或者不得不應付無法維護的舊有程式碼,本指南將幫助你在下次和後續的「每一次」都把事情做得更好。
大師級逆向神器: Android Frida協定剖析及應用
☆★☆★【偶爾想走後門,卻不知如何下手?】★☆★☆ 只有本書,教你如何「安全逆向」! & 駭客堅持使用Android而非iPhone最大的原因,就是其基於Linux的開放及「可亂搞」性。然而就是因為Linux的開放及「可亂搞」,使得Android系統的安全性一直飽受質疑。當你在使用手機時,後台的演算法及爬蟲不斷地從你的手機中撈出資料,因此逆向工程及App安全,一直是Android駭客最感興趣的技術領域。Frida自從2014年末問世以來,迅速在全球安全社區掀起了熱潮,借助Frida動態修改記憶體的特性實現了快速逆向和演算法呼叫功能,Android應用安全分析和對抗技術從未像如今這樣成熟和自動化。然而道高一尺魔高一丈,大型軟體和平台的開發者也逐漸把演算法藏得越來越深,增加演算法本身的複雜度,或利用中間層將演算法保護,使得逆向工作變得更加困難,而Frida的沙盒機制,讓大家能更利用簡單的逆向方法解決這些問題。本書充實地介紹了如何安裝和使用Frida、基本的環境架設、Frida-tools、Frida指令稿、Frida API、批次自動化Trace和分析、RPC遠端方法呼叫,並包含大量App逆向與協定分析案例實戰,此外,還介紹了更加穩定的框架Xposed的使用方法,以及從Android原始程式開始訂製屬於自己的抓取封包沙盒,打造無法被繞過的抓取封包環境等內容。 & 本書看點 ✪真正Android逆向工程的實作框架 ✪動態修改記憶體架構,使用Kali-Nethunter ✪VM中安裝Kali連上Android手機進行 ✪Xposed、Xposed Hook完整安裝及使用說明 ✪封包/套件截取沙盒 ✪Frida逆向、RPC、協定分析及取證 ✪Android原始碼編輯及Xposed魔改 ✪Android沙盒加解密庫、網路庫、系統庫「自吐」 ✪收費直播間逆向分析 ✪會員制非法應用破解付費繞過機制 &
高速建立大型桌面應用:全新Electron框架現在就動手做
★ 導入實際開發場景與案例,由淺入深、循序漸進 ★ ★ 帶領讀者快速掌握 Electron 開發必備知識及技巧 ★ 隨著Electorn的流行,越來越多的開發人員開始學習和使用Electron框架。本書特別針對一些會讓初學者感到困惑的問題提出解決方案,舉例來說,官方文件詳盡地列舉了Electron提供的API以及其呼叫的方式和參數說明,然而卻完全沒有任何案例進行實作的教學,本書針對這個痛點,將全書10章分別按不同的主題設計成一個完整連貫的開發案例,讓讀者真正知道在專案開發中會遇到的問題並加以解決。另外目前坊間完全沒有Electron的中文書籍,對於Web工程師來說,桌面應用程式的跨度有點大,必須了解node.js和Chrominum的原理。主處理程序與繪製處理程序的概念等知識,會在應用程式開發的過程中感到困惑,本書清楚完整地說明了這個部分,讓開發者在寫程式時更加放心。非常適合有一定的前端知識基礎,開始學習或即將使用Electron進行開發的讀者,也適合傳統桌面用戶端開發,想了解Electron框架的C#/C++/QT開發人員。當然如果你已經是Electron的使用者,想更進一步精進自己的技術,這本書也一樣非常適合你。 【適合讀者】 1.從事Web前端開發,有一定的前端知識基礎,出於興趣開始學習Electron框架,或是專案即將使用Electron進行開發,想快速上手Electron的開發人員。 2.從事傳統桌面用戶端開發,想了解Electron框架,對擴充自己技術廣度有訴求的開發人員。 3.已經使用Electron框架開發過專案,熟悉Electron的基本使用,但想學習更多案例實踐的開發人員。 本書特色 .只要會Html+CSS+Javascript,就能開發出跨平台的輕量桌面應用程式。 .利用Web開發的Chrominum為基礎。 .Node為基礎的桌面環境設定。 .了解不同作業系統之間的處理程序。 .了解應用程式中視窗的多種組合應用。 .帶參數的應用程式設計。 .修改Windows的登錄檔。 .處理硬體裝置及系統UI。 .錯誤處理及程式品質控制。 .將應用程式打包及發佈到Windows市集。 .服務處理程序及外掛程式的開發。 &
動手玩Arduino - ATtiny85互動設計超簡單
本書以動手玩Arduino為概念,以初學者角度切入,設計多元實作範例,為入門與專題應用的最佳學習專書。 適用於高級中等學校108課綱之跨領域實作課程、多元選修、專題實作、彈性學習等。專題實作單元包含【相關知識】、【函式說明】、【實作練習】三大部份,以生活化的單元教學設計引導,提高學生學習興趣、培養創意思考及解決問題等素養能力。 學習最容易: 本書強調在玩創意,使用Arduino公司提供的免費Arduino IDE軟體,搭配ATtiny85開發板,所有的實作範例皆有詳細說明,易學易用,可以隨興趣及喜好,快速、輕鬆組裝具有創意的「互動設計」應用電路。 學習花費少: 本書硬體使用ATtiny85開發板、周邊元件及模組皆可在電子通路或網站上購得且價格便宜。ATtiny85 開發板最大特色是支援 Arduino IDE 軟體開發及大部份的Arduino 函式庫。 學習資源多: Arduino採開放源碼(Open-source)理念,在官網上可以找到技術支援資料,網路上也提供相當豐富的共享資源。 應用生活化: 本書提供實作專題內容包含霹靂燈、全彩呼吸燈、全彩廣告燈、調光燈、觸控燈、電子輪盤、字幕機、電子碼表、60 秒計時器、自動抽號機、觸控調光燈、音樂盒、數位電壓表、小夜燈、電子測距計、電子溫度計、電子溫溼度計、智能檯燈、數位電子時鐘等。
深入淺出Android開發 第三版
教你用Kotlin製作Android App 「Android的開發技術每隔幾年就徹底改變一次,這種書很難寫,Griffiths幾乎完全改寫了這本經典的第三版,用很棒的方法來展示現代的Android app究竟是怎麼開發的。總之,他們再次寫出這個領域最棒的書籍。如果你要用正確的方式來建構Android app,買這本書就對了!」 —Ken Kousen Kousen IT公司總裁 你將從本書學到什麼? 想製作殺手級的Android app嗎?這本全新的書籍將帶你快速實現夢想。你將實際建構app、設計靈活的互動式用戶介面、將資料存入資料庫,以及使用Android Jetpack的最新功能,包括Jetpack Compose。在過程中,本書就像熟練的Android開發者帶著你一起工作!只要稍具Kotlin技能即可使用這本書。 這本書為何如此與眾不同? 如果你看過《深入淺出》系列,應該知道會看到什麼,我們針對大腦的運作方式量身打造了一套豐富的視覺格式。本書沒有令人昏昏欲睡的大量文字,而是透過多感官體驗來讓你專心學習Android開發。如果還沒有看過這個系列,本書一定令你滿意。
Object-Oriented Python|以GUI和遊戲程式學物件導向程式設計
適用Python 3.x版和Pygame 2.x版 輕鬆掌控Python物件 物件導向程式設計(OOP)是一種程式開發的範式,把資料和程式碼組合成內聚的單元,讓您能以不同的思維來考量電腦問題,而提出的解決方案能高度重複使用。本書適用中階程度的程式設計師,書中內容是給讀者動手實作的教學指引,並深入OOP的核心原則,向讀者展示怎麼運用封裝、多型和繼承,並使用Python來編寫設計遊戲和應用程式。 本書一開始先說明程序型程式設計中固有的關鍵問題,然後引導您學會在Python中建構類別和物件的基礎知識。您會透過開發按鈕、文字欄位和其他在事件驅動環境中的標準GUI元素來打下好的物件導向程式設計基礎。您還會使用許多真實的程式碼範例和兩個以pygame為基礎的套件來協助把理論轉化為實務的運用,讓您能夠輕鬆寫出互動式的遊戲和應用程式,並且還完成了GUI widget小工具、動畫、多個場景和可重用的遊戲邏輯。在最後一章中,您會透過建構一個功能齊全的電玩遊戲程式來整合所有學過的知識,該遊戲程式中含有本書中介紹的許多OOP技術和GUI相關元素。 在本書中,您將學到: ‧使用物件管理器物件來建構和管理多個物件 ‧使用封裝對客戶端程式碼隱藏物件的內部細節 ‧使用多型定義一個介面並在多個類別中實作 ‧使用繼承來活用現有的程式碼 本書的內容是視覺化、直觀的教學指南,可以讓讀者全面了解OOP的關鍵原則和運作原理,並指導讀者怎麼活用OOP來讓程式碼更易於維護、更易讀和更高效,但同時又不會犧牲其功能性。
你就是不寫測試才會沒時間:Kuma的單元測試實戰-Java篇(iThome鐵人賽系列書)
以單元測試打底,為你的軟體工程之路鍛鍊強健體魄! 『沒有時間』是假的,在有限時間內提供最大價值才是真的! 四大重點 ▶ 從0開始,由淺入深 觀念快速帶得走,回家慢慢練得熟 ▶ 應用與理論並重 技巧與理論並重,不用再一知半解 ▶ 進階議題探討 延伸重構與設計,從心所欲不逾矩 ▶ 敏捷開發基本功 厚實基本功加持,敏捷開發無阻礙 本書內容改編自第 13 屆 2021 iThome 鐵人賽,Software Development 組冠軍網路系列文章──《你就是都不寫測試才會沒時間:Kuma 的 30 天 Unit Test 手把手教學,從理論到實戰(Java 篇)》。坊間教人做單元測試的書很多,但大多著墨在某一框架如何應用,以及如何「導入」,對背後的原理以及如何把程式寫得好測,多半沒有太多著墨。 本書以單元測試為起點,引導讀者在測試的保護下,重構出較強健、較易修改的架構,在發生例外時能提供重要資訊並保護好核心功能,並藉由測試項目來描述功能需求,達到更好的溝通效果,期待讓讀者能夠「天天準時下班」。 精彩內容 ●帶領讀者進入單元測試,從理論到實例、從基本到進階。對阻隔依賴、外部行為、多執行緒等場景,進行討論與演示。 ●在單元測試的保護下,嗅出壞味道並大膽地重構,再善用例外處理增加系統強健度。 ●綜合 TDD、Clean Architecture、CQRS、GOOS 等模式,佐以實際案例,帶領讀者從需求分析開始,從頭到尾走一趟開發流程。 ●圍繞著單元測試,討論目前流行的軟體工程實踐、常見的問題,以及開發者應採取的管理作為。 【本書涵蓋重點】& ✔ 單元測試 ✔ 測試驅動開發 ✔ Clean Architecture ✔ CQRS ✔ 依賴反轉 ✔ Mock 工具 ✔ 重構 ✔ Code Smell 種類 ✔ Git Flow 適合讀者 1 ▶ 初出茅蘆的菜鳥 提供「從 0 開始」的單元測試教學,菜鳥工程師如能一開始就學習比較有系統且安全的開發方式,未來要再學習更多,也比較不容易走歪掉。 2 ▶ 已有幾年開發經驗,但對單元測試一知半解的中鳥 提供「安全地寫測試與重構,又不用多跟老闆要時間」的方法,期待未來帶新人時,能帶出更棒的「下一個自己」。 3 ▶ 熟悉領域知識,卻因此身陷無窮加班地獄的老鳥 提供一帖健體良藥:「單元測試搭配好的開發習慣」,助老鳥從「趕 → 沒時間寫測試 → Bug 多 → 多花時間修 → 更趕」的無間道中脫身,空出頭腦來做出更好的設計,真正貢獻老鳥的價值。 4 ▶ 所有「沒時間寫測試」的開發者 提供思考邏輯的轉折點,本書中的各項軟體開發技能,就是希望讀者能同時開發、測試、與重構,但不犧牲品質。 &
圖說演算法:使用Java【暢銷回饋版】
☝ 博碩嚴選!理解零負擔,採用功能強大的Java語言實作! ☝ 好評再上市,回饋發行中! 一本輕量級演算法 是您獲得程式設計新技能 提升自我價值的最好投資 程式設計課程的目的,特別著重「運算思維」(Computational Thinking, CT)的訓練。也就是分析與拆解問題能力的培養,並藉助程式語言實作,進而訓練學生系統化的邏輯思維模式。 本書一開始先介紹運算思維與程式設計兩者之間的關係,談到如何培養運算思維的四個面向:分別是拆解、模式識別、歸納與抽象化與演算法。接著介紹常見經典演算法的核心理論:包括分治法、遞迴法、動態規劃法、疊代法、枚舉法、回溯法及貪心法。有了這些基礎後,再帶領各位讀者進入資料結構的異想世界。接下來,則針對排序演算法、搜尋演算法、陣列與串列演算法、安全性演算法、堆疊與佇列演算法、樹狀演算法及圖形演算法,並搭配 Java 語言來實作。課後習題可驗收各章的學習成果。 另外,Java 的開發工具分成「IDE」及「JDK(Java Development Kit)」二種,本書的編譯環境是最單純的JDK 13 的軟體開發套件,只要使用記事本就可以輕鬆編輯Java 程式。 本書希望能幫助各位讀者透過 Java 語言,以最輕鬆的方式達到運算思維與演算邏輯訓練的基礎目標。 **本書範例檔請至博碩官網下載** &
Google的軟體工程之道|從程式設計經驗中吸取教訓
「本書在談到權衡取捨的同時,還解釋了Google做軟體工程的方式,一個讓我最有生產力、最開心的方式。」 - Eric Haugh Google軟體工程師 今日,軟體工程師不僅需要知道如何有效地進行程式設計,還需要知道如何開發適當的工程規範,以使他們的程式碼基底(codebase)能夠持續發展和維持健康。本書還強調了程式設計和軟體工程之間的區別。 軟體工程師如何管理一個發展中的程式碼基底,並在其生命週期內回應不斷變化的需求和要求?軟體工程師Titus Winters和Hyrum Wright以及技術作家Tom Manshreck根據他們在Google的經驗,坦率並深刻地說明了一些世界領先之從業者建構和維護軟體的方式。本書介紹了Google獨特的工程文化、流程和工具,以及這些方面提高工程組織效率的方式。 你將探索軟體組織在設計、建構、編寫和維護程式碼時應牢記的三個基本原則: ‧時間如何影響軟體的可持續性,以及如何使你的程式碼隨著時間的推移而具有彈性 ‧規模如何影響軟體規範在工程組織中的可行性 ‧典型的工程師在評估設計和開發決策時需要做出哪些權衡
深入淺出Swift程式設計
易學易用的Swift編程指南 「《深入淺出Swift程式設計》真的很神奇,將Swift這個程式語言的精華濃縮在一本書裡,不僅程式開發新手能輕鬆消化書中內容,對資深開發人員來說也十分具有參考價值。」 ─Ish ShaBazz Illuminated Bits LLC創辦人 你將從本書學到什麼? 大家對Swift的第一印象經常是Apple創造出來的程式語言,用於開發iOS、iPadOS、macOS、watchOS和tvOS上的應用程式,但它的用途其實相當廣泛,遠不止於此。由於Apple以開放原始碼的形式發表Swift,使這項語言陸續在系統程式設計和伺服器端程式碼上也獲得採用,可以在Linux和Windows上運行。那麼,你將從哪裡開始起步呢?《深入淺出Swift程式設計》將帶你從零開始探索:從收集、控制資料到重複利用程式碼、自訂資料型態,以及經由開發安全、協定導向的程式碼,學習利用SwiftUI來建立程式結構與使用者介面。完全掌握Swift會讓你具備開發一切程式的能力,從行動和網頁應用程式,到遊戲、架構、命令列工具等等都將是你的囊中之物。 本書為何如此與眾不同? 曾經看過《深入淺出》系列的讀者應該猜想得到,本書充滿專為大腦運作而設計的視覺化風格;尚未看過的讀者,內容保證包君滿意。不同於令人昏昏欲睡的厚重文字,本書透過多重感官的閱讀饗宴,帶領大腦沉浸在Swift的學習世界裡。