演算法之美:隱藏在資料結構背後的原理(C++版)
本書圍繞演算法與資料結構的話題,並且循序漸進、深入淺出地介紹現代電腦技術中常用的40餘種經典演算法,包含回溯法、分治法、貪心法和動態規劃等演算法設計觀念。同時,本書也系統性地講解連結串列、堆疊、佇列、樹、圖、集合與字典等常用的資料結構。同時,透過22個經典問題(包括約瑟夫環問題、河內塔問題、八皇后問題和騎士巡邏問題等)的解說,逐步揭開隱藏在資料結構背後的演算法原理,試圖協助讀者充實知識基礎,啟動思維技巧,最終衝破阻礙提升程式設計能力的重重藩籬。
一次開發全面散佈-Cocos 2d-x 全平台遊戲開發一次就好
使用Cocos2d-x 的C++ 語言API 超過100個完整的案例專案原始程式碼 開發者可以快速進行實際專案開發 Cocos2d-x 自發佈第一個版本以來,歷經多年的成長,到如今使用者已遍佈全球,數不清的採用Cocos 引擎開發的遊戲橫掃各個暢銷榜單。 近幾年手機遊戲企業在行動網際網路世界的崛起是有目共睹的。雖然企業格局不斷變化,Cocos2d-x從不改初衷,開放原始碼免費始終如一,便利和超高效率不斷提升,跨平台特性也日益增強。 本書目的在盡可能降低遊戲開發的門檻,讓更多有想法、有創意的朋友,不管是專業還是非專業出身的開發者,都能著手去實現。
iOS開發大師-iPhone感應裝置全解析
超過100個完整的案例專案原始程式碼 全部採用iOS API和操作介面 在iOS應用程式開發中有很多涉及硬體存取和感測器程式設計的知識,本書全面介紹蘋果iOS裝置主要的感測器應用程式開發。 全書共分為9章,分別從程式設計原理與開發實踐兩個角度論述了手勢識別、加速計、陀螺儀、指南針、磁力計、照相機、攝影機、音訊裝置存取、定位和藍芽通訊,以及iOS 敏捷開發專案實戰--擴增實境版本鉛錘應用等。 適合從事iOS開發,尤其是感測器應用開發的讀者。
徹底研究OS X Support Essentials
書中內容全面性說明Mac OS以及與此相關的蘋果專業認證考試-為市場上僅有的蘋果認證書籍。不管您是專業技術人員、疑難排除人員,抑或是熱血的 Mac 使用者,本書將帶領您進入前所未有的蘋果作業系統的深奧世界。循序漸進,由淺入深,一步一步的引領您瞭解各個您想探索的領域。從安裝到最佳化,從群組到管理者,無一不詳盡披露。 不管您是個人使用者或者是IT產業從業人員,都將經由此書學到各種關於Mac OS的知識與使用技巧,更棒的是,在此同時您也能對 ACSP做了充足的準備!
徹底研究OS X Server Essentials
本書專為需要部署、管理或維護Mac OS 上的OS X Server 使用者所設計。涵蓋OS X Server 各項主題,並且為Apple 教育訓練課程的一部份,也是市場上唯一的Apple 官方認證書籍。 讀者將學習到如何使用工具程式有效管理與部署OS X Server,透過實用的課程練習,也能夠更進一步學習到重要概念與獲得實際的操作經驗。
Python好好玩-趣學電玩遊戲程式設計
「Python好好玩-趣學電玩遊戲程式設計」這本書會教您怎麼利用廣受歡迎的Python程式語言來開發製作電玩遊戲程式,本書內容針對初學者所設計,就算沒有編寫過程式的讀者也能輕鬆學習! 本書一開始會從幾個經典的遊戲程式,例如猜單字的Hangman、猜數字和井字棋等範例起步,然後再教您提升到更多進階深入的遊戲程式,例如文字模式的尋寶遊戲和帶有音效的動畫碰撞閃避遊戲。沿著這條學習路徑,您將學到最關鍵必備的程式設計知識,以及基礎實用的數學概念,這些技能會帶領您將遊戲程式設計的能力提升到更高的層次。 在本書中,您將學到: ‧把迴圈、變數和流程控制陳述句等技巧整合應用到現實的程式設計工作中 ‧正確理解和選用串列、字典和元組等資料結構 ‧利用pygame模組把圖像和動畫加到遊戲程式中 ‧處理鍵盤和滑鼠的輸入 ‧設計簡易的人工智慧(AI),在遊戲中讓電腦自己對戰 ‧活用密碼學把文字訊息轉換成密文 ‧程式偵錯及找出一般常見的錯誤 經過本書每個範例的學習和實作,您就能擁有強固的Python程式設計基礎,並能理解和掌握電腦的基本運作。 接下您會利用強大的Python製作什麼新穎好玩的遊戲呢?
入門首選 Java 程式設計附範例檔 - 最新版
1.一本適合中學生的入門書,講述的內容以基礎語法為主。 2.各章安排了習題,可以驗收學習成效。 3.透過有趣且多樣的簡易範例小程式,輕鬆學會Java程式語言的入門語法。 4.綜合範例的練習機會,希望幫助讀者可以靈活應用語法。
入門首選 Visual C# 程式設計附範例檔 - 適用2015 / 2017 - 最新版
本書特色 1.配合觀念的探討來實作其內容,知行並用,學會程式語言的基礎。 2.每個章節保留綜合範例,延伸觀念產生獨立思考空間。 3.配合章節的主題,活用主控台和視窗應用程式。 4.各章學習評量思考操作並兼,追蹤學習成效。
THE PRACTICE OF COMPUTING USING PYTHON 3/E (GE)
For courses in Python ProgrammingIntroduces Python programming with an emphasis on problem-solvingNow in its Third Edition, Practice of Computing Using Python continues to introduce both majors and non-majors taking CS1 courses to computational thinking using Python, with a strong emphasis on problem solving through computer science. The authors have chosen Python for its simplicity, powerful built-in data structures, advanced control constructs, and practicality. The text is built from the ground up for Python programming, rather than having been translated from Java or C++.Focusing on data manipulation and analysis as a theme, the text allows students to work on real problems using Internet-sourced or self-generated data sets that represent their own work and interests. The authors also emphasize program development and provide both majors and non-majors with a practical foundation in programming that will be useful in their respective fields. Among other changes, the Third Edition incorporates a switch to the Anaconda distribution, the SPYDER IDE, and a focus on debugging and GUIs.MyProgrammingLabot included. Students, if MyProgrammingLab is a recommended/mandatory component of the course, please ask your instructor for the correct ISBN and course ID. MyProgrammingLab should only be purchased when required by an instructor. Instructors, contact your Pearson representative for more information.MyProgrammingLab is an online learning system designed to engage students and improve results. MyProgrammingLab consists of a set of programming exercises correlated to specific Pearson CS1/Intro to Programming textbooks. Through practice exercises and immediate, personalized feedback, MyProgrammingLab improves the programming competence of beginning students who often struggle with the basic concepts of programming languages.
入門首選 Python程式設計附範例檔 - 最新版
產品特色: 1.「寫程式」將被列入國中必修課程,程式設計不再是選修科目,而是必備的基礎能力。 2.Python簡潔、易學、用途廣泛,加上豐富強大的套件模組,絕對是CP值最高的程式語言入門首選。 3.本書從程式語言最基礎的演算法與流程圖帶領入門,Python基本語法+實作演練,是您獲得新技能提升自我價值的最好投資。
提升程式設計的資料結構力 第二版|國際程式設計競賽之資料結構原理、題型、解題技巧與重點解析
資料結構是提升程式設計功力的必修課題。誠如Niklaus Wirth大師所說:「演算法+資料結構=程式」,資料結構的重要性可見一般。在目前的程式設計學習課程中,資料結構是必修的重點,同時也是許多國際程式設計競賽必考的題目。 本書作者長期從事資料結構教學及程式競賽訓練,這幾年在阿曼、臺灣和香港、美國、馬來西亞、孟加拉等國家和地區的講學和訪學工作,參考了同學和同行在使用第一版書籍的過程中提出的意見及建議,以及電腦科學技術和程式設計競賽的發展,對該書進行了修訂增補和改進,最終推出了本書的第二版。 全書以案例及實作的角度,以ACM國際大學生程式設計競賽和其他國際程式設計競賽中的典型試題為基礎,精選超過200個與資料結構相關的案例專題,詳細講解題型及背景知識,需要用到的資料結構理論原則和參考程式碼,另外也列出線上評測的資料,讓讀者可以從實作中學習與體會。 本書根據資料結構的知識體系結構,按照循序漸進的原則,分四大篇(修練基本程式設計能力、線性資料結構的程式設計實作、樹的程式設計實作、圖的程式設計實作)共15章的內容。每一章在介紹了相關的資料結構知識後,會列出了對應的實作範例,並在最後一節列出相關題庫的配合。對想要提升資料結構功力及有志參加國際程式競賽的讀者來說是很不錯的參考書。
Angular2 其實可以很簡單:實務範例教學
全書分為三大部分: 1.「教戰守則篇」:為Angular2 基礎概念教學的部分,從環境佈署開始循序漸進地重要觀念介紹,建立紮實觀念與基礎。 2.「觀念養成篇」:循序漸進的介紹一些實用的程式技巧,各章節透過淺顯易懂的圖文說明,搭配小型範例練習的方式,協助學習者加深先前描述的觀念,並透過範例練習更清楚掌握書本的內容。 3.「實作練習篇」:以完整的範例,採用引導的方式帶領讀者一步步完成範例,讀者可藉由範例複習與貫穿整本書所要表達的觀念,讓學習者能夠透過範例強化由觀念了解到實作執行的能力 本書特色 1.深入淺出,即刻上手,關鍵範例,即學即用。 2.清楚圖文說明,快速理解Angular2技術概念。 3.觀念搭配實作,重點觀念一次搞懂。 4.程式碼step by step逐步地解說,別再說程式設計難懂。 5.最實務的應用範例,靈活應用Angular2框架精隨。 透過實務範例的解說,貫通Angular2框架的基礎概念,最適合初學者學習。 書附內容:佳魁官網提供書中程式碼下載
第一次用Docker就上手
本書的目的是為了幫助剛開始接觸Docker的初學者快速入門,了解實際應用Docker時應該掌握的知識。 透過本書,您可以了解: .Docker的特性、使用場景、原理、基本的操作和指令 .Docker的映像檔管理與倉庫管理 .Docker的網路和儲存管理 .Docker的日常維護 .如何應用Docker Swarm容器叢集 .如何開發Docker外掛程式 .Etcd、Cadvisor與Kubernetes的應用 .Docker原始碼的目錄結構和編譯方法
一手掌握Android NFC開發技術(第3版)
3大綜合案例,把所有NFC開發技術貫穿起來,幫助讀者儘快進入狀況! 全面講述NFC和其他無線通訊技術、NFC工作模式、NFC協定基礎、NFC協定匯總、NFC開發中的Android基礎、Android TV中NFC的開發方法、Android TV +集成NFC RC…等。 涵蓋核心的技術應用,如Android平臺下NFC的API、NFC標籤映射、NFC卡讀寫模式開發、TAG讀操作實例、TAG寫操作實例、NFC P2P模式開發、NFC卡類比模式開發、基於硬體的卡類比方式—虛擬卡模式、虛擬卡模式的開發、基於軟體的卡類比方式—主機卡模式等 NFC與生活連結的一天-- ◎ 07:30 搭公車上班,使用帶有NFC功能的手機刷悠遊卡。 ◎ 07:32 在公車上看到音樂會的海報,用手機接觸NFC標籤,下載詳細資訊。使用簡訊預訂音樂會座位,免費的入場券隨後下載至手機。發送簡訊給妻子,約她晚上共進晚餐,聽音樂會。 ◎ 08:15 到達公司,使用手機刷公司的門禁系統。 ◎ 08:30 開啟電腦,使用手機登入電腦。 ◎ 12:00 中午吃飯,使用手機支付午餐費用。 ◎ 14:00 去拜訪客戶,和客戶透過NFC 能互換名片。 ◎ 18:00 來到音樂會現場,使用手機驗票,利用入場券開啟音樂會大門。 ◎ 20:00 音樂會結束,一起購物吃飯,使用NFC上的手機支付功能買單。 ◎ 22:00 回到家,突然意識到NFC手機遺忘在公車上。於是,迅速和電信業者聯繫,讓他們隱藏掉手機上的所有服務。 ◎ 第二天,手機失而復得,重新讓電信業者恢復手機上的所有功能。 作者結合自己的專業技術和NFC實際專案開發的經驗,撰寫本書,希望能夠幫助致力於NFC相關研究和開發者。
徹底研究這樣玩Mac OS X就對了
您一定聽人說過Mac有多麼好用,可是親自上陣卻又對不同的操作方式感到困惑嗎?& Mac OS的設計就是要讓每台全新Mac特有的科技優勢,都能發揮到淋漓盡致,為您帶來最人性、直觀,且整合完備的使用體驗!放下既有的成見,相信自己的直覺 跟著我們的腳步,這樣玩Mac OS X就對了! 隨時想跟朋友保持聯絡?訊息、FaceTime 絕對不可少!事情太多忘東忘西記不住?行事曆和提醒事項整合您的 iPhone、iPad,隨時提醒您最重要的會議或最值得紀念的日子! iLife的好,用過都知道!快來使用iPhoto讓您的相片好管理,iMovie 讓您過足導演癮! 將 iCloud 服務最大化的好方法就在這裡!從此不用苦苦拉線同步資料了!雲端生活就從今天開始!
系統分析與設計
「物件導向系統分析與設計(OOSA&SD)」方法雖然是一種非常優秀的軟體分析方法,同時,也是目前最熱門與常用的系統分析手法!但「物件導向」系統分析方法自問世到現在已有二十多年!若以現在日新月異的軟體開發與應用技術 (如:Mobile App的開發、雲端系統 (Cloud Application System )的開發與架構 … 等) 來說,「物件導向系統分析」已算是非常老舊的分析技術了。應用軟體設計與開發技術的日新月益,當「物件導向系統分析與設計」方法無法再滿足於新一代的雲端或Mobile應用軟體系統的開發規劃需求時,最新一代的「函數式物件導向系統分析與設計 (Function-Object Oriented Analysis And Design,FOOSA & FOOSD)」技術就應運而生。「函數式物件導向系統分析與設計 (Function-Object Oriented Analysis And Design,FOOSA & FOOSD)」是一種建構在「函數框架 (Functions Frame)」與「物件 (Object)」的交互結合的互動框架處理方式的系統分析與設計方式!能滿足現在新一代雲端或Mobile應用軟體系統的開發規劃需求!但目前此種嶄新的分析技術尚屬萌芽階層,逐漸的,會有愈來愈多的分析師會瞭解使用此種分析方法來規劃的優點!
Deep Learning|用Python進行深度學習的基礎理論實作
不走捷徑,幫助您真正搞懂「深度學習」的真義這是一本與「深度學習」有關的書籍。從入門開始說明,一步一步帶領你瞭解深度學習必須具備的知識。本書可以幫助您了解:深度學習究竟是什麼?有何特色?根據何種原理來運作?從零開始,由實做中學習本書的目標是,盡量避免使用不瞭解內容的「黑盒子」,以基礎的知識為起點,以容易上手的Python撰寫程式,從動手實作的過程中,一步步深入瞭解深度學習。若以車用書籍來比喻這本書的話,這本書並不屬於汽車駕訓教材,而是希望能夠幫助您瞭解車子的原理,而非教您開車的方法。為了瞭解汽車的結構,必須試著打開車子的引擎蓋,將每個零件都拿起來觀察、操作看看。然後盡量用簡單的形狀,篩選出車子的核心部分,就像組合迷你模型般,製作出這台車子。本書的目標,就是透過製作車子的過程,讓你感受到自己實際可以製作出車子,進而熟悉與車子的相關技術。本書特色:.利用最少的外部函式庫,使用Python,從零開始實際執行深度學習的程式。.說明Python 的用法,讓Python 的初學者也能理解。.實際執行Python 的原始碼,同時提供讀者手邊可以進行實驗的學習環境。.從簡單的機器學習問題開始,到最後執行精密辨識影像的系統。.以淺顯易懂的方式說明深度學習與神經網路理論。.針對看似複雜的技術,如誤差反向傳播與卷積運算等,利用實際操作方式說明,幫助理解。.介紹在執行深度學習時,有幫助且實用的技巧,包括決定學習率的方法、權重的預設值等。.說明Batch Normalization、Dropout、Adam 等最近的趨勢與操作。.為什麼深度學習很優秀,為什麼加深層數,就能提高辨識準確度,為什麼隱藏層很重要,仔細說明這些「為什麼」。.介紹自動運作、產生影像、強化學習等深度學習的應用範例。
普格碼島的法師:歡樂自學寫程式
*以活潑的魔法故事引導讀者認識程式語言。 *一書囊括4大類7種程式語言,讓讀者對程式世界有全面的瞭解。 *分類介紹程式語言特色,方便讀者挑選精進方向、適性學習。 *由結合學校課程與生活的簡易範例入手,帶領讀者一步步學習,並建議自學方法。 歡迎光臨普格碼!拿起指南,你也可以遨遊程式的奇幻世界。 程式學習就從這本開始!讓你迅速認識4大類7種程式語言: Scratch/Python/Haskell/HTML/CSS/JavaScript/Java+Arduino 一起修練入門魔法,奠定初級程式能力基礎! 科技越來越進步,機器越來越「聰明」。 當你正閱讀這行文字時,數以百萬計的程式也在世界上悄悄運作著。 這個時代,我們更該學會駕馭電腦,而不是被電腦取代。 現在就進入程式王國普格碼,揭開各種程式的神秘面紗。 程式王國普格碼島上有火之森林、水之海灘、風之雲端、土之山洞和中央大石幾個區域。住在這些地方的法師,各自擅長不同特性的程式魔法,招數千奇百怪,外人往往看得一頭霧水,弄不清楚這些法術是如何建構起來的,只覺得既驚訝又神奇。 《普格碼島的法師》是通往這個程式魔法世界的指南,將帶領大家穿越這片謎團。在本書中你會學到: 擅長創造效果的火系法術──透過Scratch,排列程式積木創作小遊戲。 特別重視結構的水系法術──利用Python和Haskell,輕鬆解決數學習題。 掌管網際溝通的風系法術──結合HTML、CSS、JavaScript,設計好看又好玩的網站。 注重實際運用的土系法術──拿起Arduino開發板,搭配Java語言打造機械裝置。 本書除了介紹以上四系七種程式語言,也提供程式創意發想的線索,並點出持續自學精進的方向,引導讀者不斷進步成長。 二十一世紀Coding當道,全球都在學習寫程式。趕快和普格碼島上眾法師一起跟上潮流,一步步接近科技世界的奧秘,練就新時代最重要的基本能力。 & 專書網站:http://www.locuspublishing.com/events/6111NH017/
會做簡報就會製作跨平台App:Smart Apps Creator 3超神開發術
附DVD一片【原廠指定推薦用書/國際證照指定教材】 【聯名推薦】 ‧優思睿智科技/周昱志 總經理 ‧西湖渡假村/吳國呈副 總經理 ‧健行科技大學/數位多媒體設計系/洪瑞文 主任 ‧中國科技大學/數位多媒體設計系/李瑞翔 副主任 ‧勤益科技大學/智慧新媒體中心/陳湘湘 主任 ‧文藻外語大學/數位內容應用與管理系/ 陳泰良 副教授 ‧中華大學/運輸科技與物流管理學系/羅仕京 主任 ‧啟英高中/商管群科/許家銪 主任 零負擔學習法! 這樣開發App超簡單,有創意就可以! 不用懂App開發語言,只需簡單的簡報思維, 立即啟動App創意因子,任何人都可以快速打造精采App! Smart Apps Creator 3擁有類似Office的簡單編輯介面,具有繁體中文版,只需運用簡報排版概念,即可開發App,可廣泛應用於互動、測驗、相簿、導覽,以及動畫遊戲等面向。同時,其支援手機、平板電腦、PC與智慧電視相關裝置,一次編輯開發,即可跨iOS、Android、Windows與HTML5多平台發布。 再也不需因不會程式就埋沒創意!就說不會設計App! 書中從認識工具切入,隨即進入App開發模式,實戰8大App,涵蓋「數位繪本、數位學習、景點導覽、音樂類型、猜謎遊戲、益智互動、科展教案、資料應用」等豐富主題。從專案發想與規劃到實作,先以流程圖了解設計環節,再以詳細圖解徹底解說開發細節。零負擔學習法,讓初學者運用超簡單的製作工具,快速進入App的活用殿堂,進而發揮創意,開發令人驚艷的App! 新增特色: ‧免程式語法,操作更直覺,全圖形介面操作更簡單。 ‧將App生成HTML5互動式微網頁,跨平台瀏覽無障礙。 ‧支援公開資料JSON資料列表應用,邁入大數據時代。 ‧嵌入YouTube與Google地圖資源,應用功能更強大。 ‧內建推播功能,一鍵撥打電話號碼,創意運用多樣化。 8款App專題: 數位繪本App - [尋找幸福的種子] 數位學習App - [中文筆順練習] 景點導覽App - [蘭嶼微旅行] 音樂實用App - [鋼琴練習曲] 猜謎遊戲App - [一字千金] 益智互動App - [大家來找碴] 科展教案App - [霧社血斑天牛] 資料應用App - [來去農村住一晚] 書附超值DVD: 範例素材/範例完成檔/隨堂練習素材、解答與完成檔 Smart Apps Creator 3試用版(30天)與相關資源
活用C#及XAML設計與開發:Windows市集應用篇
.Windows市集應用程式的相關主題都有介紹,包括:含多媒體、網頁、ListView、GridView、WrapGrid、SemanticZoom、RichTextBlock、RichEditBox、頁面之間如何導覽、應用程式列(Application Bar)、市集應用程式專案樣版的應用、資料綁定、綁定樣版、繪圖及動畫、資料及檔案的存取、地圖,來使用Windows市集應用程式內建的功能。 .以深入淺出、有系統、容易閱讀的方式介紹Windows市集應用程式開發,引導讀者按部就班的深入Windows市集應用程式的世界。 本書特色: .豐富內容:全面性涵蓋Windows市集基礎學習和進階技巧。 .詳細圖示:結合表格規劃清楚步驟,聰明學習One by One! .重點整理:條列式重點搭配課後習題,讓您方便預習,快速複習。 .精美光碟:內含完整範例檔案,用實作統整理論,驗證所學。
使用Android APP使用App inventor2輕鬆學
【三大優勢】 1.透過「拼圖方式」來訓練學生邏輯及問題解決能力的重要工具。 2.透過「拼圖方式」來快速建構學生「創造力」的Android App。 3.透過「拼圖方式」來開發NXT樂高機器人手機控制程式。 書附光碟內容:CD/書中/本書範例檔案 本書特色 【五大特色】 1. 提供「雲端化」的「整合開發環境」來開發專案 2. 提供「群組化」的「元件庫」來快速設計使用者介面 3. 利用「視覺化」的「拼圖程式」來撰寫程式邏輯 4. 支援「娛樂化」的「NXT樂高機器人」製作的控制元件 5. 提供「多元化」的「專案發佈模式」來輕易在手機上執行測試 【適用對象】 1. 中、小學的學生(青少年)的才藝課程、夏令營。 2. 高中、職學生的程式設計及社團。 3. 大專學生之「程式設計卅雲端技術卅多媒體應用」的課程。 4. 對於App開發有興趣的初學者。
最快學會Objective:C定點突破攻略
Objective-C 語言,以其高效性和安全性的特點在蘋果作業系統中經久不衰。 本書由淺入深,全面、系統地介紹了Objective-C開發技術。從Objective-C 的基礎開始說明,一改程式設計書只有枯燥乏味的文字講解,採用圖片說明,將傳統的文字說明轉為各種形式的圖形圖表,提升讀者的閱讀興趣,讓讀者在潛移默化中掌握Objective-C語言的開發精髓,輕鬆地掌握學習內容。 適合:Objective-C 初學者、使用Objective-C語言進行開發的工程技術人員。對經常使用Objective-C語言進行開發的人員,更是一本必備參考書。 本書特色 1. 簡單易懂 本書最大的特點就是通篇採用圖片說明,將傳統的文字說明轉為各種形式的圖形圖表,大幅地提升讀者的閱讀興趣,讓讀者在潛移默化中掌握Objective-C語言的開發精髓。 2. 說明由淺入深,循序漸進,適合初學者 本書從Objective-C 的基礎開始說明,適合初學的讀者閱讀。 本書內容及系統結構 第一篇 基礎篇(第1 ∼ 5 章) &本篇主要內容包含:Objective-C 語言的發展、Objective-C 語言的開發環境及開發工具的安裝過程、第一個Objective-C 語言程式和圖形介面程式的執行、資料類型、敘述、程式控制結構、函數等。透過本篇的學習,讀者可以掌握使用開發工具撰寫簡單的程式並執行。 第二篇 Objective-C 物件導向篇(第6 ∼ 8 章) 本篇主要內容包含:類別和物件、繼承和多形、分類和協定等。透過本篇的學習,讀者可以掌握物件導向程式設計的核心技術與應用。 第三篇 Objective-C 技術篇(第9 ∼ 16 章) 本篇主要內容包含:記憶體管理、Foundation 架構的基本架構、檔案和目錄的處理、編譯前置處理、繼承和執行緒、歸檔、錯誤處理、時間日期處理等。透過本篇的學習,讀者可以掌握Objective-C 的基礎技術。 第四篇 iPhone 開發入門篇(第17 章) 本篇主要內容包含:iPhone 的發展和特點、使用Interface Builder、撰寫第一個“Hello World !”程式等。透過本篇的學習,讀者可以掌握iPhone 的開發過程,為後續的iPhone 開發做好準備。 本書適合讀者群 Objective-C 初學者 繁體中文出版說明 本書原文為簡體中文( 作者為大陸籍),為保持原書之寫作風格及內容完整,本書在書中附圖部分有部分用語及原作者程式截圖延用簡體中文原圖。 本書原始程式碼下載在本公司官網www.topteam.cc,亦保留原書簡體中文之程式碼。讀者若執行繁體中文程式碼時發現有問題( 轉換格式),可直接下載簡體的原文程式碼執行。
Ext JS實際演練-使用Visual Studio
Ext JS 是一種跨平台的框架,幾乎不經任何修改就能移轉到不同的開發平台,這也是Ext JS 的魅力所在。 本書以一個簡單的CMS系統開發為範例,詳細說明Ext JS 的使用,同時也展示Ext JS 開發的一種最佳模式;並融入作者使用Ext JS進行開發的實際經驗。 希望能帶給讀者全新的Ext JS 開發體驗,對於使用C# 平台進行開發的讀者也會有所幫助。 適合:Ext JS用戶端開發人員、初學者,或大專院校、教育訓練中心等相關科系的師生參考。
Android 7.X App開發之鑰 :使用Java及Android Studio
&*本書為您的基礎打底,協助個人自行開發App的程式,掌握各式指令。 *圖解多樣化,敘述詳細,要點以顏色標記,分階段內容有利學習規劃。 *課後重點回顧和習題演練供讀者充分複習,加強概念。 & -是一本內容豐富的書 Android 的相關主題都有介紹,包括組成Android 四大元件的介紹:活動(Activity)、廣播接收器(BroadCast Receiver)、服務(Service)、內容提供者(Content Provider),使用者介面(UI)的介紹、對話方塊(Dialog)及通知(Notification)、SQLite行動資料庫應用、多媒體與相機、2D繪圖及動畫。 &&& -是一本容易閱讀的書 以深入淺出、有系統、容易閱讀的方式介紹Android 7.X 應用程式開發,引導讀者按部就班的深入Android 的世界。 -是一本精心設計、撰寫的好書 精心設計的範例,配合圖表詳細而清楚的解說每一個步驟,循序漸進、一氣呵成的寫法,非常適合初學者、自學者,或教師作為教材或參考書籍。 &&& -是一本值得向大家介紹的好書
Unity 3D:Arcalet多人連線開發遊戲
為了讓讀者在最短的時間成為線上遊戲的開發者,作者計畫以連續的套書深入淺出,一步一步讓讀者成為線上遊戲的創作高手。本書是線上遊戲開發的入門書,也是套書的第一冊,本書內容建基於雲端服務arcalet,這是一個專為線上遊戲開發與營運而設計的平台,再以目前在全世界受到廣大遊戲開發者歡迎Unity3D遊戲引擎為工具,不只初學者容易學習,更能將觸角深入到營運階段,這是遊戲產業的劃時代創舉,開發者的創意可以全然實現,恣意遨翔雲端。
Visual Basic.NET 2017物件/ 函數物件/元件模組開發寶典
這是一本不一樣的物件導向軟體技術與教學用書!這是一本不一樣的Visual Basic.NET 2017程式設計技術與教學用書!Visual Basic.NET 2017是目前最受歡迎與最新的應用程式軟體開發工具。Visual Basic.NET 2017是一種嶄新的物件導向程式設計語言。最常用來開發商務應用程式系統以及商務資料庫應用系統(包含:Windows 桌面應用程式系統、Client/Server應用程式系、2-Tiers / 3-Tiers / N-Tiers資料庫應用程式系統、雲端大型資料庫商務系統…)!本書將詳細講解與教導讀者與程式開發人員如何使用Visual Basic.NET 2017結合最新版本的.NET Framework的物件與元件,來開發各類實用的物件/ 元件/ 應用/ 商務系統程式。從教導讀者Visual Basic.NET 2017各種內建的視覺化元件以及最新的Microsoft .NET Framework的各種功能強大的應用物件類別以及工具開始,到開發設計多功能與實用的商務與系統自定物件(User Defined Object Class)、到商務應用物件(Application Object Class)以及各種套裝化的商務元件、本書更將教導讀者如何使用VB.NET 2017結合Chart元件規劃各類商務應用系統最需要的統計圖表應用程式!一直到如何運用VB.NET 2017結合Office Excel/ Word元件來開發各類試算表與Word文件的應用程式。相信本書能帶給所有愛用Visual Basic.NET的讀者以及程式設計師些許的助益。讀完本書,希望所有讀者多加練習,多加善用功能強大的Visual Basic.NET 2017物件導向程式語言的設計功能,規劃出實用的各類雲端與網際應用系統!
打造可維護軟體|編寫可維護程式碼的10項法則 (Java版)
「這些指導方針正確無誤,以簡單明瞭、切實可行的方式,闡述高效開發者如何一貫地撰寫及交付高品質的程式碼。」 — George Marinos, 應用程式架構師, 希臘國家銀行 你可曾在修改他人程式碼時深感挫折與沮喪?今日,難以維護的程式碼已經成為軟體開發的大麻煩,導致代價不斐的時程延宕與程式缺陷。本書從實務出發,作為解決方案的一部分,提供10條切實可行的指導方針,幫助你成功交付容易維護及修改的絕妙軟體,事實上,這些原則可是淬煉自數百個實務系統的分析結果。 本書出自於Software Improvement Group(SIG)的眾顧問之手,不僅針對這個主題提供清晰且明確的解釋,更說明了如何將理論應用到實務的絕佳建議。雖然本書範例均以Java寫成,但這些原則也適用於使用其他語言的開發者。 ‧撰寫簡短的程式碼單元:限制方法與建構式的長度 ‧撰寫單純的程式碼單元:限制每個方法當中的分支點數量 ‧相同的程式碼只撰寫一次,避開複製程式碼臭蟲的風險 ‧透過將參數提取到物件中,保持單元介面簡短 ‧分離關注點,避免建構龐大的類別 ‧保持架構元件鬆散耦合 ‧讓頂層元件的數量與尺寸維持平衡 ‧讓程式碼基礎盡可能保持小巧 ‧自動化測試你的程式碼基礎 ‧撰寫乾淨的程式碼,避免蘊含更深層問題的「程式碼異味」
打造可維護軟體|編寫可維護程式碼的10項法則 (C#版)
「這些指導方針正確無誤,以簡單明瞭、切實可行的方式,闡述高效開發者如何一貫地撰寫及交付高品質的程式碼。」 — George Marinos, 應用程式架構師, 希臘國家銀行 你可曾在修改他人程式碼時深感挫折與沮喪?今日,難以維護的程式碼已經成為軟體開發的大麻煩,導致代價不斐的時程延宕與程式缺陷。本書從實務出發,以解決方案的角度,提供10條切實可行的指導方針,幫助你成功交付容易維護及修改的絕妙軟體,事實上,這些原則可是淬煉自數百個實務系統的分析結果。 本書出自於Software Improvement Group(SIG)的眾顧問之手,不僅針對這個主題提供清晰且明確的解釋,更說明了如何將理論應用到實務的絕佳建議。雖然本書範例均以C#寫成,但這些原則也適用於使用其他語言的開發者。 ‧撰寫簡短的程式碼單元:限制方法與建構式的長度 ‧撰寫單純的程式碼單元:限制每個方法當中的分支點數量 ‧相同的程式碼只撰寫一次,避開複製程式碼臭蟲的風險 ‧透過將參數提取到物件中,保持單元介面簡短 ‧分離關注點,避免建構龐大的類別 ‧保持架構元件鬆散耦合 ‧讓頂層元件的數量與尺寸維持平衡 ‧讓程式碼基礎盡可能保持小巧 ‧自動化測試你的程式碼基礎 ‧撰寫乾淨的程式碼,避免蘊含更深層問題的「程式碼異味」
Haskell的魔力|函數式程式設計入門與應用
「對於程式設計師來說,對照著理論快速實踐的圖書更容易學習,《Haskell的魔力》就是這樣一本讀起來輕鬆愉快、很有親和力的圖書,書中提供了大量實踐來配合理論講解,學習起來沒有太大壓力。」 —李令輝,前滴滴出行首席架構師,現美洽網總裁兼CTO 「不要被書的名字欺騙,“魔力”在這本書裡就是實實在在的引導,是為了一步一步降低學習Haskell的難度。讀完它,你將領略到Haskell魔力下的程式設計之美。」 —陸泰寧,百度傑出前端工程師 ‧揭秘單子變換、範本程式設計和泛型程式設計等特性 ‧解答異常處理、網路程式設計、資料庫操作等方面的常見問題 Haskell是一套純函數式程式語言,從語言設計到對實際程式設計問題的建模,都帶有那種讓人心曠神怡的美。Haskell出身於學術界,包含了很多電腦語言方面尖端的、實驗性的想法,是各種語言特性的試驗田,學習Haskell是對程式設計師的內涵和品味的一個很好的提升。 本書分為三部分:基礎知識、重要的型別(Type)和型別類別(Type Class)、高階型別類別和專案實作,是一門由淺入深的Haskell學習教材。 第一部分主要介紹Haskell的基礎語法和函數式程式設計的基本概念,以及GHC、GHCi、cabal等工具的用法。 第二部分按照函子→應用函子→單子的順序介紹Haskell中核心的三大型別類別,並以串列單子、Reader單子和State單子為例詳細分析單子型別類別的來龍去脈。 第三部分主要介紹最新加入Haskell的Foldable和Traversable型別類別、單子變換、GHC的語言擴展和程式標注,以及在網路程式設計、資料庫、並行和平行等方面的一些實例,希望能給讀者帶去很多有用的參考。
學C語言從玩NXT樂高機器人開始
•銜接正規程式「C語言的先修課程」。 •對NXT樂高機器人的支援性非常高。 •具有NXT-G軟體所沒有的除錯功能。 •「邊寫邊玩」引起動機與增加興趣。
Visual Basic程式設計一本通
Visual Basic是學習程式設計的入門語言,為了避免學習語言上的不順暢,全書在介紹各種程式語法時搭配完整的程式實例,並加上充份的註解,來降低許多學習的障礙。 本書用嚴謹的態度,配合精要的表達方式,期望降低閱讀壓力,也能正確提供資訊相關學生學習程式語言的基本需求。 本書特色 ●以觀念導引作為出發點,兼顧深度與廣度 ●全書專業深化語言意象,富含大量示意圖 ●活用範例表達主題規範,實作控制項內涵 ●課後評量思考操作並兼,以追蹤學習成效
Scratch!貓爪程式入門
台灣三年級以上中小學生必學!未來將正式併入課綱 臺灣中小學校都在舉辦以貓爪程式(Scratch)程式為設計基礎的比賽!什麼是Scratch貓爪程式? 由MIT(麻省理工學院)經過多年研究測試 專為程式初學者量身打造的Scratch貓爪程式 寫程式就像玩積木一樣簡單 輕鬆學會設計一款遊戲! 「程式設計教育」已成全球的學習風潮,目前我們的國中小教育也正致力於培養孩子的運算思維、邏輯能力,現在只要透過這套市面上最容易上手理解的入門程式教材就能有效學習輕鬆完成! 學會程式語言,動手「寫」出自己的遊戲吧! 跟著書中的15個教學單元,一步步地組合出一款遊戲,同時階段性地解說Scratch的使用方法、學習程式設計時必備的基礎通用概念。從實作中體驗、激盪創意、培養運算思考及解決問題的能力! 從零開始一點一滴建構出一款射擊遊戲,透過解說過程,教導你「製作時的訣竅」。一旦掌握這個訣竅,當你想要另外自行創作其他作品時,就能夠適時應用! Scratch的全中文化程式介面,讓程式初學者也能輕鬆上手。 好的教學工具書,讓你一本就能完全掌握程式設計的基本概念! 「沒有一定的正確解答」就是程式設計中的有趣之處,學習程式語言能體驗「同樣的結果在過程中是以不同的邏輯思考堆疊拼湊出來的」,因此更能培養出解決問題及邏輯思考的能力。從錯誤中不斷嘗試、與他人討論、創造新的想法,透過一步步除錯、修改,讓邏輯更清晰,同時也能訓練表達、溝通與創造力。 和世界的程式設計同好交流分享 除了單機版本,Scratch就像是社群媒體般,只要在官網輕鬆註冊,就能迅速開始體驗,更有多種語言可以選擇,能與世界各地的人交流!不但可以分享、上傳自己完成的專案遊戲,還能下載試玩他人的作品,從玩遊戲中推算分析程式的構想,學習模仿,激發靈感,甚至挑戰設計更進階的程式,讓你越玩越厲害! 貓爪(Scratch)程式和一般Java、C++語言的差別是? 一般程式語言都要輸入密密麻麻又複雜的程式碼,只要輸錯一個字元或符號,就容易造成語法錯誤,往往也難以了解該從何修正起;Scratch則是以有趣的積木為元素,程式依功能性分門別類,介面簡單易操作,適合程式入門學習者,只要決定終極目標→分析內容→拆解成多個架構,就像玩積木一樣堆疊、拆解程式,完成好玩又有趣的遊戲! 什麼人最適合本書? 所有大朋友小朋友~各別或共同學習 ‧曾稍微接觸過Scratch,現在希望能更進一步做出一個完整作品的使用者;或對程式設計或Scratch貓爪程式有興趣,想先了解自己能學到什麼的人 ‧初次想挑戰程式設計,國中以上年齡的讀者 ‧因為想運用Scratch貓爪程式在課堂教學,正在尋找合適教材的老師 ‧想陪孩子一起挑戰Scratch貓爪程式,但希望自己能先進度超前,以便回答孩子提問的父母 &
資料結構--使用Java(第四版)
資料結構(Data Structures)是資訊學科中的核心課程之一,也是基礎和必修的科目。本書確實闡述資料結構的重要主題,並以圖文並茂的方式表達,最能達到教學與學習事半功倍的效果。 內容共分十三章,分別為第一章演算法分析、第二章陣列、第三章堆疊與佇列、第四章鏈結串列、第五章遞迴、第六章樹狀結構、第七章Heap結構、第八章高度平衡二元搜尋樹、第九章2-3 Tree及2-3-4 Tree、第十章m-way 搜尋樹與B-Tree、第十一章圖形結構、第十二章排序,以及第十三章搜尋。 各章的每一小節幾乎都附有「練習題」,讓使用者能藉由測驗,評量自己對此節的了解程度;而書末亦附有這些練習題的參考解答可供對答使用。各章末再附上「動動腦時間」,這些題目取自歷屆的高考或研究所考試題目,或是筆者根據內文加以設計的題目,每道題目後面皆標示出自節數,表示只要您詳讀該節即可輕鬆地作答。對於課文中的重要主題,也附有完整的Java程式,可供讀者驗證舉例並加以練習。
Agile 成功法則|敏捷實作者的解決方案
「本書給予各位問題的答案,如同身邊有位真正的導師一般。Daniel Gullo與讀者分享敏捷世界中無可避免的重要問題之真知灼見。」 - 引自Stephen Denning前言,《The Leader's Guide to Radical Management》作者 為最常見也最令人沮喪的敏捷挑戰,提供經過實證的解決方案 敏捷愈來愈普遍,但成功的實行敏捷仍然十分困難。組織持續遇到類似的問題,藉由本書即可避免這些問題。 世界知名的敏捷教練與顧問Daniel James Gullo列出了採行敏捷時最常見的60個問題,依據成功帶領敏捷團隊的豐富經驗,幫助讀者正確的分析問題,並用最清楚的方式描述解決方案,簡要呈現出有效率的行動所需要的一切細節。 這本指引適合專案的所有成員及利害關係人:包含ScrumMaster及開發團隊負責人、專案經理、產品負責人以及客戶,討論的問題範圍從Scrum到Kanban,指引讀者放大敏捷的規模,甚至幫助各位將敏捷應用到軟體開發之外的情境。 本書內容涵蓋 ‧了解敏捷的各種「風味」 ‧克服從瀑布式轉移時的關鍵阻礙 ‧處理文化障礙 ‧讓敏捷團隊融入組織管理層級 ‧讓管理人員接受敏捷實作與價值觀 ‧籬清ScrumMaster、產品負責人以及專案經理之間的關係 ‧流暢的處理主要工作,例如組織待辦事項清單以及定義sprint ‧利用持續整合以及測試驅動開發 ‧將敏捷應用到分散式團隊以及大型的產品資產 本書以短文型式寫成,描述實務中會發生的敏捷問題,以及Gullo的解決方案所能夠提供的協助,運用他人的經驗,很快就能夠看到通往成功的明確道路。
高品質微服務|建構跨工程組織的標準化系統
“我認為這本書的目標是成為設計與運行微服務的標準參考,光是高品質檢查項目清單就值回票價!” -Daniel Bryant, OpenCredo首席科學家 “微服務架構的實作很困難,特別是從運行的角度來看。這本書幫助你認識如何打造高品質微服務。無論你扮演什麼角色,本書都能提供建構高品質微服務生態系所需的洞見” -Mark Richards, 獨立顧問 採用微服務架構組織的最大挑戰之一是缺乏架構性、操作性與組織化標準。許多工程人員不知道分割一整塊應用程式或建構全新微服務生態系後接下來要怎麼辦。本書作者Susan Fowler深入展示一組微服務標準,描繪出將Uber上千個微服務標準化過程所獲得的經驗。你會學習到如何設計穩定、可靠、可擴充、容錯、高效能、受控、文件良好且能夠應對災難的微服務。 高品質標準內容包括: ‧穩定性與可靠性:開發、部署、導入微服務;預防相依性失敗 ‧擴充性與效能:學習高效率微服務的基礎 ‧容錯與預防災難:主動對微服務施壓以確保可用性 ‧監控:學習如何監控、記錄與顯示重要數據;建立警示與處理程序 ‧製作文件與教育訓練:解決採用微服務所引發的組織與技術問題
無瑕的程式碼 敏捷完整篇:物件導向原則、設計模式與C#實踐
~~~《名家名著》03 &V.S. 《無瑕的程式碼》03~~~ 小記者︰能說說你對《無瑕的程式碼──敏捷完整版》的讀後心得嗎? 工程師︰自從讀了這本《敏捷完整版》之後,我再也不怕面對那些慣老闆、慣客戶了。而且客戶滿意度、專案完成度都一百分呢! 這本書是《無瑕的程式碼》系列書的第三冊,也是《名家名著》系列書的第三冊。主題是「敏捷開發」,而重點仍舊是回歸到「如何撰寫出好的程式碼」。 什麼是「敏捷開發(Agile Development)」呢?簡單來說,它是軟體開發的一套方法,特點是只要透過這套方法,就能使你的專案更敏捷。 我們為何非得要讓專案變得敏捷呢?原因無他,就是因為我們有慣老闆、還有慣客戶。也就是說,對於現今的市場環境而言,專案不夠敏捷是不行的。這一點,相信所有的軟體工程師都無法否認吧! 可是你可能會反駁說,各行各業都有慣老闆和慣客戶啊(至少在台灣是這樣),為什麼軟體業就要一套特別的方式來應付他們呢?這就是要回歸到一個最根本的問題,「什麼是軟體?」,或者更精確地說「什麼是軟體設計?」,而這個問題和所有的軟體工程師(或程式設計師)習習相關,因為這是工作的本質。 各式各樣的工程有著所謂的程序,例如橋樑工程師會先進行結構分析,他們會建立電腦模型並進行模擬,接著他們會建立比例模型,並在風洞中或用其他一些方法進行測試。當這些程序都完成了,才會將設計圖交給橋樑的建造工人去建造出真實的橋樑。 以上是橋樑工程的開發程序,那麼軟體開發的程序呢?在很久很久以前(真的是很久很久以前了),軟體開發也發展出了所謂的程序,也就是瀑布型開發程序。在瀑布型開發中,系統分析師會依照需求與規畫,畫出所謂軟體的設計圖(例如UML圖),然後由「程序員」根據這些圖去寫出程式碼,最後建置(build)成可使用的軟體。 依照瀑布型開發程序開發出來的軟體,客戶只能選擇要用,還是不要用。不要用的話,是否有其他選擇?如果沒有,那麼客戶即便不滿意,也就只能將就著用(只是邊用邊罵而已)。當然,這是指套裝軟體的開發而言。 用一個例子來做比方,數十年前,台灣只有國道一號的日子,一位民眾想要開車從彰化到新竹,就只能有一個選擇,即便他不滿意苗栗那段高爬坡會折損車輛壽命,他也別無選擇。但當國道三號建造完畢後,他就有了第二個選擇,因此他會選擇他喜歡的國道來行使。建造國道的總經費是昂貴的(無論是時間還是金錢),但最貴的部分是在於建造部分,而非設計部份。所以國道並不多。競爭者很少。但這種商業模式在軟體業是行不通的。 若用早期的瀑布型開發程序來對比於國道建設,真正的建造部分,其實就是軟體建置(build)的部分,這部分只要一台電腦,一個編譯器,一個連結器,還有一點點的時間就完成了。所以代價是極低的。或許有人會說,不對,建造的部分應該也要包含按照UML圖去Coding的人工與時間成本。所以這部分的代價應該也是昂貴的。 這種說法表面上看似合理,但有多少程式碼是完全依照UML圖編寫的呢?在撰寫程式碼的過程中是否會修改原有的UML設計呢?早期這類情況並不嚴重,但晚期因為客戶的挑剔,這種情況早就屢見不鮮,甚至任何軟體工程師在開發專案時,心中早有預期會出現需求發生變化的情況。 國道的建造工人是無權修改設計圖的,他只能「按圖施工」。而程序員卻去修改了設計圖,這將使得設計圖無法作為最終產品的設計文件。因此,在這種情況下,最終產品的設計文件其實只有一份是準確的,這份文件就是「程式碼」。同時,在這種情況下,程序員應該已經不再只是「程序員」或「碼農」了,因為他參與了設計,換句話說,他應該稱之為程式「設計師」或軟體「工程師」。(在敏捷開發中,並不只有那些繪製UML圖的才叫做設計人員,正確地說,繪製UML圖的人常常也是負責寫程式的人)。 好的,如果你已經承認「寫程式」也算是「設計」的一環,那麼軟體建置(build)的成本(也就是軟體的建造成本,而非設計成本),應該是無庸置疑的低廉了。這也就是為什麼,客戶說,那邊改成XXX顏色,可以嗎?你會很乾脆地回答,當然沒問題,然後五分鐘內就給客戶看改完之後的結果。想一想,如果要改的是一整段國道護欄的顏色,相信沒有客戶敢做這樣要求,因為他們能預期到,這會花很多很多的錢。 所以說,建造軟體的花費是很少的,大多數的錢都是花費在「設計」上的。但對於其他工程就不一樣了,設計花費的錢相對於建造花費的錢來說,低廉了許多。 也就是軟體的這種特殊性,導致了客戶(更有可能的是上司)常常想要東改改、西改改,需求常常在變化。在現今這個快速變化的世界裡,慣客戶與慣老闆們為了競爭優勢(他們心中的競爭優勢),提出需求的變化根本是家常便飯。 在確定了「需求會變化」、甚至是「會頻繁地變化」這個軟體工程師一定得面對的事實後,軟體工程師該怎麼辦呢?有一群大師級的軟體工程師,開始發明了一系列因應的對策,包含設計模式、極限程式設計、測試驅動開發等等的技藝,還總結了一些物件導向的設計原則。這些都有助於應付變化。最終,這些人集合起來成立了一個「敏捷聯盟」,取名為敏捷(Agile),意思是軟體開發者及軟體本身應該如何敏捷地應付需求的變化,當中牽涉到的範圍極廣,從成員的組織到程式碼的組織都必須敏捷起來,這是門現代軟體設計的顯學,國外大廠早已採用多年。 Robert C. Martin(Bob大叔)是敏捷聯盟的創始成員之一,也是當中付諸行動並且有所成效的成員之一。他擁有極具說服力的文筆與口才。在這些年中,不斷出書、演講、作為顧問實際前往開發現場指導,並自創「Clean」一詞,其著作還曾獲得Jolt大獎,《Clean Code》一書也成為Amazon該類別最暢銷的著作,這些都對於敏捷開發的推廣有著極重要的貢獻。 根據《Clean Code》內文的說法,《Clean Code》可說是本書的前傳,而本書是完整說明如何實踐敏捷的書籍。如果您也喜歡Bob大叔的著作,如果你也是Clean派的弟子,或者你想實際體驗敏捷開發,那麼你一定不能錯過這本書。 本書的寫作風格是循序漸進,由淺入深的,作者會先提出一個問題,然後分析問題,接著實作它,然後是檢討它,展現出初次實作時的錯誤與失策,接著就展示如何透過作者所主張的技術來解決這些問題。這是一本非常講究實務的實踐書籍。此外,本書主要使用的是C#程式碼,這是由Bob大叔的兒子Micah Martin根據C#與.NET平台的特性重新改寫Jolt得獎著作而來的,改寫幅度包含所有的程式碼與內文,並採用了更容易理解的案例來詳述敏捷開發。如果你平常使用的是其他語言,也不必在意,因為傳播的介質不重要,傳授的內容才是本書的價值所在。 對於一些技術細節,本書果真是大師級的作品,原創性極高,在UML章節中,Bob大叔示範了他如何使用UML(果真和一般人不太一樣),還示範了如何使用UML才能幫助你而非是製造混亂的來源。對於設計模式而言,除了GoF的知名設計模式之外,Bob大叔還在本書中提到幾個他自己常用的設計模式,有些可以視為GoF 23個設計模式的變形,有些則不是,但重點是這些模式都非常好用,可以應用在不同的應用場合,同時Bob大叔也釐清了,某些模式為何不該在哪些場合中使用,他是以效益來看待這件事的,而這也是本書的最大特色:務實。 &
全能Android絕對正確培養聖經
Android的書這麼多,要找到真正幫你培養全職能的書卻不容易。 這是一本來自第一線網路公司的真正實作產品方案的完整過程,而非簡單說明一下Android的函數庫,開發原理等基礎書籍。全書包括了規劃、設計、測試、佈署、多人協作、好用工具等等,這林林總總,都是從血淋淋的網際網路產品戰場上打下的基礎。 看完本書,就具備了世界前500大網路公司的寶貴開發經驗,是想成為全能Android高手的必讀。 本書從結構上分為8 篇,共50 個基礎知識。 ■ 基礎篇:這是百分比最大的篇章,雖然名為基礎篇,但你應該了解為是進階裡面的基礎知識,而非Android 開發入門的基礎知識。本篇主要包含AndroidView、動畫、Support Library、Gradle、NDK、ANR、非同步技術、註釋、資料序列化和Hybrid 等知識點。 ■ 系統架構篇:本篇偏重介紹架構和專案整體的相關知識,主要包含UI 架構、事件匯流排、程式開發標準和技術堆疊等基礎知識。 ■ 經驗歸納篇:本篇偏重介紹Android 專案實作中得出的經驗,主要包含64K方法數限制、外掛程式架構、發送原理、APP 瘦身、Crash 統計等基礎知識。 ■ 新技術篇:本篇偏重介紹新近出現的技術點,當然可能本書出版時已經不是最新了,但並不妨礙其重要性,主要包含函數式程式設計思想簡介、依賴植入、Kotlin、React Native、線上熱修復、AOP 和Facebook Buck 等基礎知識。 ■ 效能最佳化篇:本篇偏重介紹目前Android 平台常見的效能最佳化相關知識,主要包含程式最佳化、圖片最佳化、電量最佳化、版面配置最佳化和網路最佳化等基礎知識。 ■ 移動安全篇:本篇偏重介紹很多應用中經常會忽略的安全知識,主要包含混淆、反編譯、金鑰隱藏、強化和如何撰寫安全的程式等基礎知識。 ■ 工具篇:本篇介紹了Android 開發中會用到的幾個工具,主要包含AndroidStudio、Stetho、LeakCanary 和Redex 等基礎知識。 ■ 測試篇:本篇介紹了測試相關的知識,這部分是很多開發人員經常容易忽略的內容,本質上屬於測試領域,但開發人員需要有所了解,主要包含Android 單元測試、UI 自動化測試、靜態程式分析和自動化建置等工具。 適用: Android 應用研發專案師、電腦相關科系的學生。
利用Corona一次開發跨平台手機App桌面程式
Corona SDK是跨平台App開發軟體,強調容易上手、進入無門檻,特點是程式碼寫一次,即可跨平台開發手機。 本書內容 建立可以開發跨平台(iOS、Android)手機的App。 幫助讀者開發Windows和Mac OS X桌面應用程式。 可以開發Apple TV、Android TV和Fire TV的App。 從安裝軟體、開發App、製作App圖示、免費圖庫和發佈到App Store和Google Play,都有圖文說明。 擁有完整開發App所需帳戶的申請教學,適合當工具書,就算你不是使用Corona SDK也非常適合。 擁有App安裝到Android和iPhone/iPad實機教學。 根據Flurry、App Annie、App Store和Google Play提供的報表分析App使用者行為,根據報表來增加App獲利的行銷技巧。 本書特色 以圖為主,文字為輔的方式,幫助初學者快速上手。 教導申請AdMob及iAd,幫手機App加上廣告賺錢。 App名稱、圖示、內容多國語言化,適合個人獨立開發者。 上架到App Store和Google Play流程完整說明,適合所有開發App的開發者。 光碟片附上全書範例程式檔案和開發App所需程式,每個範例都有說明。
邁入Swift程式設計新紀元
你知道什麼是Swift嗎?你知道Swift的用途是什麼嗎?如果你想快速進入Swift語言的世界,那麼這將是你不可錯過的一本書。 本書跳脫一般程式語言書籍的寫作模式,以淺顯易懂的方試講述Swift,配合日常生活中常見的事物為範例來說明,簡單且充實的內容,讓初學者面對程式語言不會有恐懼感。 徹底掌握撰寫OS X和iOS應用程式的Swift程式語言! 跳脫以往程式書籍多文字的窠臼觀念,讓你輕鬆學習無負擔。 簡單但充實的內容,透過輕鬆學習的方式完整學習Swift程式語言。 著重於問題的思考,展現語法的目的與用途。 直接在程式碼上的文字解說,協助讀者快速了解程式碼的目的與用途。 詳細語法解說,了解每行程式的目的與用途。
Cocos2d-x實際演練-JS篇
Cocos2d-JS開發權威指南 遊戲程式設計和開發人員不可或缺的案頭寶典 本書介紹Cocos2d-x遊戲程式設計和開發技術。 全書分為6部分:基礎篇、進階篇、資料與網路篇、最佳化篇、多平台移植篇和實戰篇。涵蓋了最新版本的Cocos2d JS v3.x 核心類別、圖磚地圖、物理引擎、資料持久化、效能最佳化、資料通訊、跨網頁和原生平台遊戲發佈等多個方面。 全書內容循序漸進,結構完整,並結合多個遊戲實例詳解,非常適合入門者學習。
UI設計藝術-翻轉iOS互動式介面
這是一本由互動應用程式設計的使用者體驗設計師與互動開發技術專家聯手撰寫,關於互動應用設計的書。 涵蓋互動應用的交互(ID)、使用者介面(UI),和使用者體驗(UX)等諸多設計環節。 針對iOS 平台,以及執行iOS 平台的兩大行動產品--iPhone 和iPad的規格和要求,系統闡述設計行動應用程式的方法、步驟以及過程中的細節。為讀者在行動應用程式的設計過程中,從專案方案確立到互動、介面和可用性測試完成的全過程,提供全面的幫助。 適合互動應用設計的工作者和愛好者,以及準備進行互動應用設計與開發、或想要改進和創新個人或團隊工作者。
七天學會設計模式:設計模式也可以這樣學
「設計模式」一詞起源於建築設計,目的是為了解決工程中重複出現的各種問題,之後被這個概念被導入軟體工程之中。 其中最為人熟悉的是GoF整理的23種設計模式,本書對此做了簡單扼要的介紹,並輔以輕鬆愉快的範例幫助讀者在短時間內了解這些模式要解決的問題與實際應用。隨著程式語言的發展,其中有些模式被使用的頻率已經不高或是已經被內化為語言特定,但其核心思想仍然是十分值得我們學習。 本書規畫了七天的讀書計劃,使讀者能夠更方便的安排自己的進修課程。這七天,可以是連續的七天,也可以是七個星期假日,總之讀者都可以自由運用。唯有不斷的鞭策和砥礪自己,才容易持續提升自己的技術。 你能夠從本書學到 ‧設計模式的基礎概念。 ‧物件導向程式設計的基本原則SOLID。 ‧Gof的23個設計模式所要表達的概念及基礎用法。 ‧相似模式的異同與應用。 ‧單元測試工具JUnit的安裝與簡易教學。
Android程式開發設計輕鬆入門
全球行動電話市場市佔率超過一半以上的Android行動平台,為開發者提供了充滿活力及持續成長的市場,本書將告訴你如何使用最具威力的Android工具集開始撰寫下一代的Android應用程式。 書中完整介紹如何為Google行動作業系統開發軟體,並提供許多觀察及得來不易的建議。在如何安裝及設定Android軟體開發套件及Eclipse整合開發界面的導覽之後,你可以馬上投入建立你第一個Android專案。 全書從如何使用主要的組件來建立一個直覺且外觀好看的界面開始,接著說明如何取得資料並且使用清單來顯示資料,最後探討如何使用服務—重要而且經常未充份利用的Android平台元件。另外在說明如何為Android生態系撰寫應用程式前,也會探討如何處理媒體及定位服務。 本書包含 詳細的教學,大量的圖解及清楚的範例。 深入瞭解Android程式設計專家的最佳作法。 關鍵的Android開發議題,從如何取得並執行Eclipse及軟體開發套件到處理各種版本的平台。
jQuery程式開發設計輕鬆入門
jQuery是目前最被普遍使用的JavaScript程式庫,它是一套運用JavaScript與HTML和CSS進行互動的新方法。 jQuery仿效CSS選擇器機制的簡易選擇器功能(simple selector),使得視覺設計師可以和程式開發者一樣,輕鬆且容易地學習,它也幫助網頁開發者不再需要為了要建立出可同時支援多種瀏覽器的互動性網站時,得先花費許多心力和時間去應付和忍受各種有關瀏覽器的相容性問題。 透過本書,你將學到: 使用簡潔程式碼輕鬆達到跨瀏覽器DOM操作。& 可快速打包程式碼,保證網站傳輸效率高。& 同時學會HTML、CSS、Javascript的技術,並利用PHP和MySQL支援互動處理。 本書特色 簡潔的範例,步驟式的介紹,配合豐富圖例,幫助讀者快速上手,認識jQuery。& 利用現實環境中的常見的案例,幫助讀者快速建立使用技巧。& 應用導向為主,即使初學者沒有程式基礎,也能事半功倍設計程式。& 完整解說網站開發會碰到的問題:包含HTML和CSS結合jQuery的應用,以及PHP和MySQL的使用。
iOS遊戲開發設計輕鬆入門
本書以簡單易懂的程式為主軸,從最基本的概念開始著手,帶著你一起寫出製作經典的動作遊戲的程式碼。同時每章均展示了在製作遊戲時該怎麼設計才更合乎邏輯的步驟。除此之外,本書也分享了如何設計出精靈動畫,並讓使用者以觸控、加速計、螢幕上的搖桿來操控遊戲。更棒的是,我們還會分享如何製作出一個遊戲內的人工智能,以及把你的遊戲跟Apple的Game Center連接在一起,讓遊戲玩起來更能與別人互動! 本書包含 由具有豐富經驗的iOS app設計師所做的相關介紹& 簡單易懂的步驟,任何人都能如法炮製& 你可以實際coding並且玩的遊戲& 新技術諸如GLKit與ARC的介紹
iOS核心框架程式開發設計
設計師兼開發師,是今時今日的當紅炸子雞。 但是要如何提升開發速度,才能加入他們的行列? 如果你是一個視覺學習者,不妨閱讀iOS 5 核心框架開發設計極速上手。 Apple讓iOS的軟體開發過程更上層樓。為完整接觸iOS的真正能量,你需要深入研究這些簡單的工具和API。經驗豐富的開發師Shawn Welch,會教你使用強大的iOS技術,進而接觸iOS的潛力核心。 使用核心資料和iCloud,你會學到如何在本機端儲存資料,並同步到多個裝置和平台上。利用iOS 5新的Twitter API,透過使用新的帳戶框架,提供無痛的Twitter和OAuth支援。綜合定位服務和iOS 5的功能,如反查地理編碼查詢,以及區域提醒。結合圖形、動畫、聲音、影片,為app添加豐富的媒體體驗,並使用核心影像的相片濾鏡以及分析功能。最後,我們會探索書報攤,讓你建立自己的週刊式的讀物,並在任何時候將讀物內容推送到訂閱裝置上。 Shawn Welch在第一支iPhone於2007年推出後,就持續設計和開發iOS應用程式,包括Pearson Education和Adobe的app。近來,他為Kelby Media Group和National Association of Photoshop Professionals開發供線上教學網站、年會、活動使用的app。