中文版MIT APP Inventor2易學易用
中文版MIT App Inventor 2讓您更輕鬆開發App程式! 不需要複雜的程式碼也可以進行簡單的手機程式開發,完全雲端的操作,讓您更能隨時隨地完成理想中的Android程式! 全彩印刷x清楚步驟x完整範例x重點整理x精彩習題 *MIT App Inventor軟體的特色: 簡單易學易用,但功能不簡單。可選擇中文介面,從此學習MIT App Inventor軟體,沒有語言障礙。讓您成為您Android手機的主人,輕鬆開發自己手機應用程。讓您開發Android應用程式,就像在玩拼圖遊戲,好玩、有趣又有成就感。讓沒有程式設計經驗的人也能開發Android應用程式。 *是一本內容豐富的書 MIT App Inventor的相關功能都有介紹,包括:程式邏輯所需的拼圖塊、各種不同用途的元件(User Interface元件、Layout元件、Media元件、Drawing and Animation元件、Sensors元件、Social元件、Storage元件、connectivity元件),但不含LEGO® MINDSTORMS®(控制樂高機器人)元件。 *是一本容易閱讀的書 以深入淺出、有系統、容易閱讀的方式,介紹如何以MIT App Inventor開發Android應用程式,引導讀者按部就班的深入Android應用程式的世界。 *是一本精心設計、撰寫的好書 精心設計的範例,配合圖表詳細而清楚的解說每一個步驟,循序漸進、一氣呵成的寫法,非常適合初學者、自學者,或教師作為教材或參考書籍。 *是一本值得向大家介紹的好書 附贈中文版MIT App Inventor 2易學易用的範例程式CD
王者歸來:JavaScript最具代表性的420個範例
■精選420 個典型實例及應用特效實例,按實際應用進行分類,讀者在短時間內能掌握更多有用的技術,快速加強程式設計功力。 ■每個實例都包含「實例說明」、「技術要點」、「實現過程」和「舉一反三」4 個部分。 ■所有實例都提供原始程式碼,讀者可以根據需要學習和使用。 為便於尋找實例中的程式設計技術和技巧,本書附錄提供了程式快速索引功能,該索引按字母順序列出了本書中使用相關技術和技巧的實例號。
視覺極簡設計原則:Apple iOS從擬物到扁平革命
這是一本由互動應用程式設計的使用者體驗設計師與互動開發技術專家聯手撰寫,關於互動應用設計的書。涵蓋互動應用的交互(ID)、使用者介面(UI),和使用者體驗(UX)等諸多設計環節。 針對iOS 平台,以及執行iOS 平台的兩大行動產品--iPhone 和iPad的規格和要求,系統闡述設計行動應用程式的方法、步驟以及過程中的細節。為讀者在行動應用程式的設計過程中,從專案方案確立到互動、介面和可用性測試完成的全過程,提供全面的幫助。 適合互動應用設計的工作者和愛好者,以及準備進行互動應用設計與開發、或想要改進和創新個人或團隊工作者。
人物場景這麼做:Panda3D,C++,Python專業商用3D引擎
Panda3D是世界十大開放原始碼遊戲引擎中,功能最完整、效能最穩定、商業化限制最少的一款。目前,迪士尼仍在使用,世界各地的業界人員也以開放、共用全部原始程式碼方式不斷促進這款遊戲引擎的持續發展。在競爭激烈的國外遊戲引擎市場中,Panda3D始終引人注目,技術領先。 本書為讀者深入、完整掌握遊戲引擎C++、Python核心,書附程式中有80多段示範效果,為Windows、Linux、Mac作業系統中的C++、Python遊戲引擎開發者提供價值無窮的資源。作者結合深入的專業知識及多年的實作開發經驗,重點針對市場、讀者技術實作需求撰寫此書,相信讀者能夠輕鬆掌握Panda3D的使用技巧,簡單快速地步入3D應用程式開發新天地。
AngularJS快速上手:實務範例教學
全書分為三大部分: 1.「教戰守則篇」:為AngularJS 基礎概念教學的部分,除JavaScript基礎教學外,更詳細為讀者講解AngularJS必學的基本概念。 2.「觀念養成篇」:循序漸進的介紹一些實用的程式技巧,透過小範例練習的方式,深入淺出的協助學習者加深先前描述的觀念,透過練習強化由了解到實作執行的能力。 3.「實作練習篇」:以三個完整的範例,採用引導的方式帶領讀者一步步完成範例,讀者可藉由範例累積更多的經驗。 本書特色 1. 以淺顯易懂的方式講解AngularJS框架與語法 2. 說明Modules、Views及Controllers的使用方式 3. 各章節內容皆以循序漸進並輔以範例解說方式呈現 4. 透過三個大型完整範例完美演繹 AngularJS技術的觀念 本書程式碼可在佳魁資訊官網下載 topteam.cc
Android 6變形金剛:最佳化案例開發實戰
開發經驗絕不藏私 引領你快速上手Android 6開發設計★美國矽谷創業家分享豐富Android開發的實戰經驗與技術★集合全球數十家科技大廠內訓指定教材之大成 ★全書採用上百個精采範例來教學,是精通Android的豪華課程教材作者分享多年來於全球數百間國際知名科技大廠授課的Android實務內容,內容深入淺出,並結合上百個精采範例與影音解說,可讓你瞭解Android的完整功能以及Android SDK上千個API的使用方法,絕對是一本超值豐富、CP值最高的Android 6技術書籍。本書特色★完整基礎知識:了解Android的開發環境以及所需的硬體設備,介紹Android開發流程與應用。★最新開發實測:Android 6最新程式開發技術毫無保留,擁有業界領先的第一手軟硬體測試成果。手機、平板、藍牙周邊BLE、loT物聯網、NFC悠遊卡、穿戴式裝備、廣告、FB社群以及App全方位實戰攻略。★經驗法則分享:對於Android的執行速度、使用者的使用經驗改善、版本管理等皆有很多的建議與實作,另外針對多種版本及多樣尺寸的面板、CPU的速度差異等,亦有建議與改善方法。★詳細影音範例:作者在各大專案與顧問上的完整技術揭露,於網路上完整提供本書範例程式碼與影音教學,幫助讀者更加掌握與實踐Android。【完整範例及影音教學下載網址】https://github.com/powenko/Android6CookbookPowenko
Android6.X App開發之鑰:使用Java及Android Studio
*本書為您的基礎打底,協助個人自行開發App的程式,掌握各式指令。 *圖解多樣化,敘述詳細,要點以顏色標記,分階段內容有利學習規劃。 *課後重點回顧和習題演練供讀者充分複習,加強概念。 & 是一本內容豐富的書 Android 的相關主題都有介紹,包括組成Android 四大元件的介紹:活動(Activity)、廣播接收器(BroadCast Receiver)、服務(Service)、內容提供者(Content Provider),使用者介面(UI)的介紹、對話方塊(Dialog)及通知(Notification)、SQLite行動資料庫應用、多媒體與相機、2D繪圖及動畫。 是一本容易閱讀的書 以深入淺出、有系統、容易閱讀的方式介紹Android 6.X 應用程式開發,引導讀者按部就班的深入Android 的世界。 是一本精心設計、撰寫的好書 精心設計的範例,配合圖表詳細而清楚的解說每一個步驟,循序漸進、一氣呵成的寫法,非常適合初學者、自學者,或教師作為教材或參考書籍。 是一本值得向大家介紹的好書
Windows Apps開發應用全攻略
為方便讀者學習,書中在講解技術重點的同時輔以完整的範例,使讀者能夠更快地將所學知識運用到實際開發當中,最後還針對不同的開發語言精心設計了3個綜合性範例供讀者參考。 本書共分21章: 第1~2章介紹Windows系統的特點、Windows App的設計風格和思想以及特徵,並詳細介紹開發Windows App所需的開發工具及使用方法。 第3章詳細講解適用於Windows App開發的XAML語法基礎。 第4~18章系統講解使用Visual C#語言開發Windows App的相關技術,包括App控制項、介面佈局與導航、資料綁定、推送通知、圖形與筆刷、多媒體、動畫效果、多執行緒與幕後工作、感測器、檔與資料存儲、網路通訊、生命週期管理、地圖應用、外部設備、全球化等。 第19~20章講解了使用JavaScript和Visual C++兩種語言進行Windows App開發時所使用的重要技術。 第21章結合前面章節所介紹的技術知識,完整呈現真實的Windows App案例。 本書特色 .本書是目前最钜細靡遺的「Windows App開發」參考書籍。 .書中詳盡地闡述了Windows App簡潔、直觀、優雅的介面設計理念和思維,以及開發中的重點和困難處。 .技術內容涵蓋了Visual C#、JavaScript和Visual C++,以滿足不同讀者的需求。
App Inventor 2 零起點速學指南含iBuildApp 範例教學附多媒體教學光碟(附贈OTAS題測系統)
1.影音檔示範-教學過程全都錄,學習百分百。 2.專題製作-主題式應用範例為主的實戰作品。 3.編程教育-以程式設計領域為主軸,規劃單元課程。
Swift2.0程式設計開發指南
最新 Swift 2新增功能及語法介紹,及新舊版本的差異說明。 運用簡單易懂的描述及有趣範例,增加學習印象。 單元循序漸進,由淺入深帶領讀者一窺Swift 的全貌。 Swift 是一個全新的程式語言,也是蘋果御用程式語言,除了可以撰寫 iOS移動設備的APP 之外,連OS X 桌面應用程式也難不倒它。 除此之外Swift 結合了傳統的C和Objective-C的優點,並且採用更安全的撰寫方法和增加許多功能與特性,讓你在寫程式時更直覺,更靈活也更有趣! 本書以淺顯易懂的方試講述Swift程式語言,簡單且充實的內容,讓初學者面對程式語言不會有恐懼感。
王者歸來:599個C#企業專案開發完整範例集
本書精選了專案開發中的599 個實例,書中所選實例均來自一線開發人員的實際專案開發,囊括了開發中經常使用和需要解決的熱點、難點問題。參考本書,讀者可以快速解決開發中的難題,提高程式設計效率。 ◎ 實例豐富,經驗超值 本書精選599個實例和599個條經驗技巧,涵蓋程式設計中多個方面的各種應用。使用者開發中所需的技術、技巧、解決方案幾乎都可以找到。 ◎ 特點突出,功能完善,實用性強 書中實例均是專案開發中經常需要使用或實現的技術,有許多實例是開發人員夢寐以求的。 ◎ 贈送所有實例原始程式碼 所有實例均提供原始程式碼,使用者在開發中可以快速參考或應用。 ◎ 段落工整、簡潔,圖文結合,更容易學習 ◎ 編碼規範,注釋詳盡 為了提高使用者的實際開發能力,書中程式碼都是經過嚴格審查的,可以與商業原始碼相媲美,並且為方便使用者閱讀,幾乎所有程式碼都提供有詳細注釋。
Swift 設計模式
使用Swift開發iOS應用程式的經典設計模式 Swift程式設計語言改變了iOS開發,並開啟了現代Cocoa開發的新紀元。本書為您展示如何在應用程式中發揚Swift設計模式的威力與彈性,讓你成為專案開發的大師。 這本書會教導您常用於程式設計過程,但卻可能不知道或沒有善用的設計模式,這些模式能夠對Swift開發者證明它們的價值。 暢銷作者Adam Freeman透過基本元素與進階功能為你解釋如何運用設計模式,以實務化的設計模式運用方式讓您學習Swift程式的結構化與規模彈性。 本書內容包括: ‧認識何時與為何使用設計模式 ‧運用singleton、abstract factory、chain of responsibility與observer等經典設計模式 ‧探討memento、composite、command、mediator等較不知名的模式 ‧認識Swift如何提供撰寫結構化程式的基本語言功能以方便閱讀、測試與維護 ‧學習如何運用Cocoa API實作經典設計模式 ‧以您現有的程式設計知識快速有效的在Swift中運用設計模式
App Inventor 2 應用程式設計
★以Step by Step方式引導教學,讓讀者輕鬆跨入App設計的殿堂。 ★彙整業界實務需要的精彩範例,由簡單到複雜的設計製作,讓您學習充滿成就感! ★從精美的範例學習中啟發創意的實現技巧,讓您快速掌握AI2程式設計的奧妙。 ★附贈完整的範例檔案,並以原始檔案的格式儲存,便於讀者練習使用。 App Inventor 2是一款基於Web、完全線上開發的Android程式設計軟體,它拋棄了複雜的程式碼而使用樂高積木式的堆疊法來完成您的Android程式設計操作,即使是沒有任何程式設計基礎的人也能很快上手。為了推廣App Inventor的使用,MIT還推出了繁體中文版本,這對一些英文初學者來說,無疑是一大福音喔! 本書共包含了十二個章節,由淺入深的為讀者介紹AI2的重要程式設計技巧,並且透過範例對其進行詳細的講解。其中內容包含基礎概念入門、元件與運算、流程控制與程序、快樂萬聖節、創意小畫家、猜拳遊戲、搶救農作物、聖誕老公公來了、智慧拼圖、樂透搖獎、地球保衛戰、指南針、QR Code條碼掃描等。相信經過課程的綜合演練,必定能讓讀者融會貫通AI2的應用程式開發技巧,還能輕鬆將設計理念融入今後的創作設計當中,創作出更為優秀的軟體作品。
比C還簡.捷:使用Go Web快建網頁
主要分三部分,第一部分是Go 語言的基礎語法,介紹Go 語言的一些語法特性、環境設定和開發工具。第二部分是Web 開發,介紹Go Web 的基本原理、表單處理、資料庫操作、Session 和Cookie 處理、文字處理、Socket 程式設計、安全加密、國際化和本地語系化、錯誤處理和偵錯、如何部署和維護等基礎知識,並且針對整個Web 開發中需要用到的基礎知識,結合Go 語言程式的原理進行詳細的介紹,針對Go 語言在Web 開發方面不存在的工具,提供詳細的實現方式。第三部分是應用框架beego,主要介紹beego 框架的設計、實現及應用。
比開發者更高境界:Google工程師分析Android5.0原始碼
■頂尖Android開發專家的Android系統分析權威指南 ■講解新版本熱點技術,解決系統開發困惑問題 專家推薦 && & 這本書介紹Android 系統的充實和認真程度可能在市面上無出其右。 從Android下載安裝到設定編譯,從JNI/Boinic到Loop/Init,從SystemServer到Provider,從套件管理到圖形系統,從視窗系統到輸入管理,從電源管理到睡眠喚醒機制,從網路管理到音、視訊系統,甚至從Vold 到Recovery,從虛擬機器到自動化測試,都詳細解釋說明。 作為一個工作十多年的資深工程師、從1.0 版本開始接觸Android 系統的工程師、量產過多款產品的Android 第一線架構師,我想沒有這樣的經歷是很難將這本書撰寫得如此詳盡。 希望讀者可以從中獲得有益的啟發,開啟自己完美的Android 開發之旅!~~ 小米電視系統軟體部總監,茹憶 這是一本有6年Android 系統開發經驗、頂尖Android 系統工程師的心血之作!可以推薦給任何從事Android 系統開發或應用程式開發工程師看的書!~~原Motorola 軟體總監,播思通訊CTO,饒宏 一本非常優秀的介紹Android 內部機制的圖書,詳細地分析了Android 系統的大部分模組,值得每一個希望深入學習Android 系統的工程師擁有。~~德信無線軟體部經理,陳行星
用C++開發頂級多執行緒網路函數庫Muduo
本書專注於簡單容易了解的程式碼,以及最接近C語言的語法,並且大量應用多執行緒的思路,開發出來的非阻塞式(Non-blocking)網路程式庫,比同級產品快了20%,程式碼卻少了50%,充份展現C++的小而美且快。除了C++之外,本書亦充份介紹目前Scale out網路架構的概念,讓你不但可快速學會C++的網路開發,更可了解目前最新的雲端趨勢。 想學好C++就從全球第一個華人開發的頂級C++網路程式庫Muduo開始。本書主要說明採用現代C++ 在x86-64 Linux 上撰寫多執行緒TCP 網路服務程式的主流標準技術,重點說明多執行緒網路服務器的一種IO 模型,即one loopper thread。這是一種適應性強的模型,也是Linux 下以native 語言撰寫使用者態高性能網路程式最成熟的模式,熟練之後可順利地開發各種常見的服務端網路應用程式。本書以muduo 網路函數庫為例,說明這種程式設計模型的使用方法及注意事項。 C++學習時間長,一旦上手,開發出程式碼的超高速度是Java、C#等其它語言無法比較的。
蘋果官方訓練教材Pages, Numbers and Keynote
以蘋果認證的方式來學習 & 本書為全球Apple授權訓練中心所開設“蘋果官方Pages、Numbers與Keynote訓練課程”專用官方教材。 & 在這本專為蘋果生產力App(Pages、Numbers與Keynote)所撰寫的獨家蘋果認證書籍中,將學到如何製作及出版品質一流的文件、試算表和簡報,並了解背後形成原因。 & 在徹底研習本書後,使用者將能自信地一步步執行現實生活中更為複雜的計畫案,不論是分別或一起使用Pages、Numbers與Keynote,都能創作出精美絕倫的作品。 & 書中內容除了含蓋Mac上Apple生產力App的最新功能與使用方式外,還探索iOS版本與iCloud Drive的工作流程,讓使用者充分享受跨平台的快感。 & 本書特色 & 以深入淺出的文筆,讓你有專家在旁的安心與踏實感。 快速導覽OS X上三款App,著重說明其介面與工具的相似性,並指出重要新功能。 書中內容搭配隨附課程檔案,著重於現實生活中會遇到的複雜案例,貫穿全書並引導實作 。 課後複習問題總結重點摘要,為參加Apple認證考試作充分準備。 & 書附光碟內容 本書範例檔案
Swift從入門到超人氣遊戲App開發全面修鍊實戰(附近100段影音教學、Swift 2.0/1.2/1.1範例檔)
附DVD一片[嚴選經典]美國矽谷創業家/全球數十家科技大廠與業界指定講師之Swift技術與遊戲開發入門鉅作 達人等級、觸手可及! 本書是針對對Swift有興趣的程式開發者或想以Swift開發遊戲設計者而編寫,由入門到深入的設計實戰,將Swift程式語言以淺顯易懂的文字解說,並透過實際範例的練習,進入遊戲開發的領域,為目前內容最豐富,且附有影音教學的Swift遊戲開發書籍。本書以Swift 2.0實作為主,同時附有Swift 2.0/1.2/1.1的範例檔,內容包含Swift相關API的使用方法,每個範例都可以單獨執行實戰App,是作者在全球各大城市教授Swift課程的匯集大全。本書內容經歷多次遊戲業界頂尖工程師的驗證,方完成與問世。 書籍特色如下: ◎初學入門:以遊戲設計的架構與流程著手,逐漸導入App實作內容。 ◎完整講解:同時學習Swift語法與遊戲設計,強調遊戲中的各種機制介紹與實際操作,解決初學的問題。 ◎案例實戰:以經典人氣App遊戲觀念作為App設計範例,強化實務開發能力。 DVD: ‧近100段影音教學(少部份影片為作品展示,則無配音) ‧Swift 2.0/1.2/1.1範例檔
敏捷與Scrum軟體開發速成(暢銷回饋版)
有個實際的案例,曾經有「80名顧問、上百名員工、成千上萬頁文件,涵蓋流程、步驟、需求、設計、測試各個方面,以及上百個失敗的專案計畫,卻抵不過scrum和組織模式用10個人在4個月內完成的交付。」 & 你想快速了解什麼是Scrum嗎?本書內容精簡易讀,是幫助軟體開發人員認識、初步瞭解Scrum方法的入門書。透過本書,你可以釐清Scrum的相關知識和概念,告別瀑布,迎接Scrum世代的到來。 & 本書以一種輕鬆易懂、簡潔精練的方式,介紹了Scrum方法的核心要素。全書分為3部分,共19章。第一部分從瀑布式開發流程開始切入主題,介紹了敏捷方法的緣起、敏捷的價值觀和原則,並提供一個典型的敏捷商業案例。第二部分詳細介紹了Scrum的歷史和Scrum的各種要素,包括角色、週期、產出物(Artifact),以及如何確定使用者故事、如何估算工作,如何召開每日站立會議。第三部分則介紹了發佈規劃、原型、重構、測試驅動開發和結對程式設計等實踐和方法。主要內容包括: & ‧敏捷方法的緣起 ‧敏捷的價值觀與原則 ‧敏捷的商務實例 ‧Scrum的歷史 ‧Scrum角色、週期、產出物…等 ‧如何確定使用者故事 ‧如何估算工作故事點 ‧如何召開每日站立會議 ‧發佈規劃、原型、重構 ‧測試驅動開發 ‧結對程式設計 & 「Scrum 是一個以團隊為基礎來開發複雜系統與產品的框架。」~The Scrum Alliance 「根據其定義,Scrum 事實上並未談及軟體。Scrum所涉及的乃是非軟體專案亦可使用的工作管理和團隊動力學。」~Jeff McKenna
iPOE A1輪型機器人互動設計-邁向IRA初級智慧型機器人應用認證-以Ardublock圖形化控制(附多媒體影
1.使用最簡單也深受Arduino核心團隊成員稱讚的ArduBlock,來編寫現在全世界最紅的Arduino硬體程式,讓初學者以最快的方式進入Arduino繽紛的微控制世界。 2.本書主要是以圖形化工具ArduBlock來控制勁園科技開發的愛寶機器人iPOE A1的全彩超圖解簡單入門書! && &&& & 3.作者希望以多年實務教學經驗,針對不懂硬體、不懂如何寫程式但又想學習Arduino的初學者,設計一套可以輕易入門,又可以快速的成為Arduino玩家的學習教材,讓學習微電腦控制不再是一門艱深的學問。 && &&& & 4.ArduBlock是基於Arduino IDE的圖形介面,免費且支援中文化界面,只要經由簡單的拼圖式操作,就可以輕易地將程式轉換成Arduino語言進行編輯,並可將編譯完成的程式傳送至Arduino上執行,操作方便且快速。
Scratch 數位互動我最行
Scratch 結合實體互動開發板! 由美國麻省理工學院媒體所開發的 Scratch圖形化介面,由於其簡單易學且方便除錯,加上直覺化的程式模組設計,因此非常適合沒有程式設計背景的使用者或是小朋友使用。 本書囊括了十多個有趣的互動專題,包含煙火秀、對戰遊戲以及多媒體影音應用等,小朋友可以從中學到重要的程式邏輯概念,非常適合各級教學單位使用。 本書結合了互動開發板,以按鈕、滑桿、麥克風、與鱷魚夾接點來讓互動方式更豐富,學員可以自行操作這片板子來控制Scratch來產生各種有趣的互動效果。快點來玩吧! & 範例程式檔與本書更多資訊,請上CAVEDU系列叢書網站:http://www.cavedu.com/books。 & 本書特色 & ◎Scratch 圖形化介面,學習簡單又有趣! ◎結合周邊感測板,可製作許多新奇的互動遊戲。 ◎從程式學邏輯,從動手做來認識這個世界! ◎全彩內頁,豐富您的學習視覺,增添學習趣味!
程式揭秘-從C/C++程式碼探索電腦系統的運作原理[中文原創經典]
為您抽絲剝繭揭程式碼背後少為人知的本質與電腦系統運作機制 & 本書從程式設計角度出發,以 C/C++ 為描述語言,以 Visual C++ 為形式工具,將隱藏在程式碼背後的關於計算機組成原理、電腦作業系統等方面的機制和知識娓娓道來,不僅讓讀者知其然,更要讓讀者知其所以然,並讓這些知識再反饋回程式設計的實踐,從而幫助讀者寫出更適合機器最佳化的高品質程式碼。 & 本書揭開程式碼背後鮮為人知的秘密,具體說來,主要討論了包括電腦底層程式、記憶體與指標、電腦指令與代碼系統、函數呼叫的機制、多層級儲存系統、執行緒與處理程序的概念,以及程式碼最佳化等多方面的話題。
程式設計範式與OOP的思考術:冒號老師的十三堂課(中文原創經典)
當高深的程式設計思想遇到個性鮮明的標點符號,一場精彩又深入淺出的課程就此展開... & 「軟體無形,編程有道」 何謂程式計計範式? 即解決程式世界問題的抽象思維, 也是理解程式語言的具體指標。 而OOP則是目前最流行的程式設計範式! & 為了多角度地展現知識的內涵與活性,書中多採用對話的方式,人物皆以標點符號命名,塑造讓人過目不忘的形象:冒號善解釋,引號善引用,問號善提問,逗號善緩衝,嘆號善感歎,句號善總結。此外,六個標點符號還分別對應著每小節的六個部分:冒號是正文講解,引號是文獻參考,問號是問題列表,逗號是補充插語(題外話),嘆號是精華預覽,句號是本節總結。 & 本書非常強調學習方法和學習精神的重要性,全文共有十三個章節,分為上、下篇。上篇以程式設計範式為出發點,深入分析各種程式語言的本質、特性、意義、優缺點,破除一般人對於程式語言的迷思;下篇則以抽象機制為出發點,徹底剖析物件導向程式設計的三大特性 ─ 封裝、繼承、多型,引領讀者真正掌握OOP的思考術,並將這些觀念延伸到設計原則與設計模式中。 & 冒號語錄: ●學會不如會學,會學不如會用,會用不如被用。 ●知識之上是思想,思想之上是精神。 ●設計模式是軟體的戰術思想,架構是軟體的戰略決策。 ●程式設計是尋求一種機制,將指定的輸入轉化為指定的輸出。 ●與其說OOP更具重用性,不如說更具易用性。 ●抽象與分解是治癒程式碼紊亂、鬆散、重複的良方。 ●獨立是非同步的前提,耗時是非同步的理由。 ●程式設計範式為神,程式語言為形,應以神導形、以形傳神。 ●介面是綱,實作是目,綱若不舉,目無以張。 ●抽象是OOP的核心和起源,是封裝、繼承和多型的基礎。 ●存取控制不僅是一種語法限制,也是一種語意規範,明確地將介面與實作分離開來。 ●實作繼承消費可重用的舊程式碼,介面繼承生產可重用的新程式碼。 ●概念抽象只是手段,規範抽象才是依據。 ●繼承是多型的基礎,多型是繼承的目的。 ●抽象是尋求某種一致性的過程,反過來遵循一致性也有助於抽象的形成。
大話重構
當你接受一個遺留系統被賦予新增功能的任務時,首先,你會去看看原始碼,糟糕,原始碼一團亂,怎麼辦呢?是重構後加入新功能,還是另外寫新功能不要去碰觸舊有的程式碼呢? 面對運行了許久的大型遺留系統,工程師常常糾結在「改」還是「不改」的抉擇中?而在大多數的情況下,台灣的工程師總是決定對於遺留系統採取容忍的態度,一忍再忍,再忍,忍,還要忍……終於累積到了某一天,實在是忍無可忍時,拍案而起,不能再忍了,終於喊出「我要重構!!!」事情就這樣發生了。然而,此時你會突然發現,重構的工作千頭萬緒,不知從何開始。 & 還是回頭拿起書架裡的重構教科書來看看吧,就是那本由兩位大師Martin Fowler, Kent Beck和其他三人合寫的《Refactoring: Improving the Design of Existing Code》,想要在其中找找看怎樣來重構比較妥當。這本重構經典書告訴你,要重構就不能把原有功能給破壞了,所以在開始重構之前,首先應建立起「自動化測試」。好的,那我們就去打開測試程式吧!什麼,遺留系統沒有測試程式,那該怎麼辦呢?遺留系統不是用TDD開發的,那…那,我們要怎樣重構才能保證原有功能不會出錯呢?慘了,在第一關就卡住了。硬著頭皮幹吧,反正就是另外再寫新功能,不要去動到舊有的程式碼就對了。是的,這就是現實中大多數台灣工程師的作法。可是這樣做,程式碼的品質就越來越差了,不論是自己後面要再加新功能或者是丟給別人來接手,無疑都是場災難。 & 回過頭來說,那本重構經典書不就英雄無用武之地了嗎?嗯,雖然那本書寫得很好,但是不夠本土化。先來看看台灣的環境吧,在台灣開發軟體,起初都是工作室型態的,用最快的速度、最少的人力,開發出滿足客戶需求的軟體,快速上線運行就OK了。什麼程式碼品質,什麼可讀、可維護、易變更,全都不用考慮。別說測試程式碼,就是程式碼可測性都沒有人會去考慮。這樣的方式讓軟體開發公司快速拿到了第一桶金,但為日後的維護與軟體發展帶來了隱憂。而在美國情況完全不是這樣子的,寫程式就是該寫品質好的程式碼,就是該有測試,所以該書假設的前提都是對的,故而如何讓遺留系統建立起「自動化測試」,大師在書中隻字未提。換句話說,重構經典書的前提不適用於台灣。我們需要的是一本真正適用於台灣真實情況的重構書籍,而《大話重構》就是您最佳的選擇。也因此,本書被列為博碩文化《中文原創經典》的第一本書。 & 本書把常見的,如抽取類別、抽取方法、用多型取代條件等等數十種重構手法全部都放到附錄中(這些手法我們稱之為重構工具箱),因為那些在別本重構書籍裡通通查得到。本書當然也會提到那些工具,但並非本書的重點。本書要講的是重構的觀念(例如何時重構)、如何一步一步地重構,如何面對遺留系統,如何說服老闆來重構,本書所提的是一種系統與設計層級的重構,而非單單只是程式碼層級的重構。 & 本書會以真實的遺留系統案例,來親自示範如何一步一步地重構,直到這個系統可以輕鬆應付未來的變更。同時,本書也強調許多觀念,例如不要做大佈局,因為『大佈局,你傷不起!』,本書強調只做今天的設計,解決今天的問題,完成今天的重構,讓明天見鬼去吧。因為你不是先知,你無法預測未來,做過多的設計是在浪費時間,要做的是『好的設計』而非『過多的設計』。什麼是『好的設計』,那就是明確地分層解耦,讓你的系統很可很輕鬆地面對將來未知的需求變更。 & 本書作者的程式與設計功力深厚,但撰寫這本書時,常常能夠站在基層工程師的角度出發,例如,對於大多數老闆而言,重構沒有立即效益,所以要如何說服老闆對遺留系統進行重構給予支持,才是重構得以實行的關鍵。只要你有『一點點』設計模式的底子,相信這本書會協助您解決許多正面臨的困難。 & 本書既稱之為『大話』重構,自然在文字用語上會有一些特色,以下舉幾個經典例句: & ■ 「小步快跑」 ■ 糟糕設計零容忍! ■ 小設計可以讓你獲得成功! ■ 自動化測試——想說愛你不容易 ■ 系統重構最後的一里路——測試的困境。 ■ 活在當下,設計今天的程式,讓明天的變化見鬼去吧! ■ 測試與重構形成了一個「雞生蛋,還是蛋生雞」的奇怪循環。 ■ 合久必分,分久必合——類別的歸併 ■ 領域才是軟體系統的「心」! ■ 開發糟糕程式碼是可恥的! ■ 大佈局你傷不起! ■ 「兩頂帽子」 & 這本書是一本關於重構,實踐經驗分享的書,至於這本書能夠帶給您多少的領悟,還得由您細細體會。
蘋果專業訓練教材:Final Cut Pro X 10.1
以蘋果認證的方式來學習! & 這是全方位的學習指南,從現實媒體世界的工作流程,到完成影片剪輯流程,展示Final Cut Pro X的各項功能,以及編輯計畫專案過程中常用的多種實戰技法。 & 本書一開始就跟現實狀況一樣,你擁有的是一個全新的空白時間軸。接著,在整個專案製作當中,從粗剪到最後編輯作業,都會受到相關的引導和指示。 & 第一堂課到第四堂課的基本流程和工具,將會帶你製作出一段粗剪作品;後續課程則會以真實的工作流程為例,你將會在過程中搭配更進階的Final Cut Pro X功能,來進行專案的各種強化工作,包括如何搭配最新的元件庫、強化過的音訊工具、串流媒體管理、時間重整以及其他各種功能特性,來有效進行媒體組織管理和分享工作。 & 本書特色 & .深入淺出的文筆,讓你有專家在旁的安心與踏實感。 .以循序漸進的方式,配合職業級水準的視訊計畫,引導實作。 .章後課程複習將重點做摘要整理,為參加Apple認證考試作充分準備。
蘋果專業訓練教材OS X Server Essentials[第三版]
本書為Apple Certified Technical Coordinator(ACTC, Apple技術人員認證)的官方訓練課程之一。 為需要部署、管理或維護Mac OS上的OS X Server使用者所設計。 本書涵蓋OS X Server各項主題,並且為Apple教育訓練課程的一部份,也是市場上唯一的Apple官方認證書籍。 & 本書設計給客服工程師、技術管理員,以及初入門的管理者所使用,指導如何在Mac OS安裝與設定OS X Server,以用來提供各項網路服務。 & 閱讀本書的讀者將學習到如何使用工具程式有效管理與部署OS X Server,透過實用的課程練習,也能夠更進一步學習到重要概念與獲得實際的操作經驗。 本書的各項學習主題可以協助讀者為Apple技術人員認證作準備。 & ●提供Mac OS上OS X Server安裝與管理的明確解釋。 ●重點課程引領讀者逐步的進行練習,符合實際營運情境的練習。 ●課後複習與解答,可測驗出讀者對Apple認證考試的熟悉度。 ●課程所需的教材檔案可供下載使用。 & Apple教育訓練系列書籍可作為獨自學習的工具以及Apple教育訓練與認證的官方課程。完成本書的課程,並通過 OS X Server Essentials考試後,讀者可成為一名Apple Certified Technical Coordinator(ACTC, Apple技術人員認證)。 & 本書除可作為自學的工具之外,也可經由 Apple授權教育訓練中心的教授。 & 請瀏覽 training.apple.com 或上奇資訊網站以取得更多相關資訊。
高手過招:深入剖析Nginx原始碼
這不是一本關於Nginx 設定指令如何使用的介紹手冊,那些內容在Nginx 官網上有專門的說明文件,甚至有對應的中文翻譯。本書重點在於解析Nginx 的內部實現原理。 從原始程式碼剖析的角度出發,是程式師常用的學習和提高方法。本書是作者多年研讀Nginx代碼、深入思考和不斷實踐的結晶,希望透過剖析Nginx的原始程式碼,探究其功能結構及其內部實現原理。
深入OSGi:Equinox原理.應用與最佳實作
自從1999 年OSGi 聯盟成立以來,OSGi 技術隨著Java 一起高速發展,現已經成為一種被廣泛認可的軟體架構技術和方法。許多世界著名的IT 企業都加入到OSGi 的陣營之中,這些軟體廠商推出的許多產品都支援OSGi 技術,甚至產品本身就使用OSGi 技術建構,證明OSGi 技術具有非常廣闊的市場前景。 OSGi 能獲得如此廣泛的認可,一方面是它的誕生迎合軟體模組化的需求;另一方面是因為它足夠全面和開放,OSGi 所具有的動態性、伸縮性正好是許多生產系統所需的。 本書全面解讀OSGI標準與原理,系統介紹Equinox框架用法,透過本書,讀者可以一個相對輕鬆的方式學習到OSGi 的運作原理,這對本身能力的加強有極大的幫助。 &
AngularJS必學的90項實務秘方
AngularJS Web Application Development Cookbook & AngularJS 是當今 Web 開發領域中最受歡迎的框架之一。其設計崇尚簡潔風格,能夠為許多複雜的網頁開發工作提供優雅的解決方案。本書能夠使你深入瞭解這款強大且高價值的工具,提供超過90項方法及秘訣,藉此解決各式各樣的問題。無論你使用 AngularJS 的目的為何,本書都是你所不可或缺的重要資源。 & 藉由學習各種訣竅及秘訣,從中瞭解如何充分發揮 AngularJS 前導指令的效益。還能夠利用多種過濾器與服務型態來擴展你的工具集,並且使用 AngularJS 來開發並改善動畫的呈現。你也將會見識到各種提昇使用者體驗的技巧與策略。除此之外,本書還包含了如何使用 Yeoman 及 Grunt 來測試應用程式,以及最佳化 AngularJS 效能的訣竅。本書甚至進一步解析了 AngularJS 的「承諾」(Promise)機制,使你能夠學習如何有效地運用它們。 & 本書結合了具體實作與詳細的解釋,不只能夠解決日常的許多開發問題,還能夠從中探索 AngularJS 的更多可能性。 & 你能夠從本書學習到: •發掘出提昇 AngularJS 應用程式效能及擴展性的最佳實踐。 •在多種處境中應用 AngularJS 前導指令的實際範例。 •使用 Yeoman 及 Grunt 來撰寫健全的應用程式測試。 •建立出高效的介面與動畫。 •運用特定語法與瀏覽器訣竅來最佳化 AngularJS 效能。 •實作承諾來解決複雜的開發問題。 •利用基本的 AngularJS 駭客技巧來解決各項開發挑戰。
OpenCV with Microsoft Visual Studio影像
你是否對應用在國防安全、運輸物流、醫療生化科技的影像辨識科技有興趣,想要學習關鍵開發技術?[Y/N] & 你是否對智慧機器人、無人自動駕駛或臉部辨識科技有興趣? & 影像辨識科技除了靜態的文字OCR掃描以外, 最新的動態辨識技術包含環境空間偵測、動態物體追蹤、影片比對分析等, 能夠應用在智慧感應電器產品、自動化設備、居家維安系統等各種生活與生產層面。 & 經由本書從基本原理引導,以範例介紹各種影像處理應用。 & 使用免費的Visual Studio軟體結合以C語言編寫的開源程式, 讓影像辨識處理不再只是專業人士的學術領域, 一般有興趣學習的大眾或程式設計師,都能輕鬆入門學習流行科技。 & 內容包含: & OpenCV與Visual Studio環境安裝設定、文字處理、圖片處理功能(明暗對比調整、液體特效、商標浮水印、邊緣平滑化、格式轉換、重新著色)、運算與偵測處理(影像金字塔、線性篩選器、拉普拉斯運算、臨界值、色階分佈、後方投影、輪廓辨識、圖像加解密)、OpenGL整合、硬體設備結合應用(相機校準、移動感知、轉角偵測、滑鼠與鍵盤擷取)等等。
全面學會Visual Basic2010程式設計
Visual Basic 2010一直是學習程式設計的入門語言,有別於市面上一些程式語言的著作會以片段程式作為講解,本書將講解和實例做結合,再加上充分的註解,避免教學以及閱讀上的不順暢。同時,還會針對程式中重要的語法及觀念,輔以詳細的程式解析,讓您能花費最短的時間,紮根獨立程式設計的能力,使其獲得最高的學習效果。 透過書中大量的範例,快速建立學習Visual Basic 2010的樂趣以及成就感,進而充分理解與活用各種指令。除了本文的程式範例之外,在習題中也加入大量的程式實作題,讓您擁有更多實際演練的機會。 別懷疑了,趕快拿起本書,就會發現其實學習Visual Basic 2010沒有想像中的那麼困難,原來那麼輕鬆簡單! 本書特色 【完整範例】:以完整程式來說明,降低學習障礙。 【精選習題】:安排了大量的習題及各種習作題,提供更多的實戰演練。 【難易適中】:以較平易及循序漸進的方式來闡述基本概念及應用。 【內容豐富】:主題包括基礎語法、物件導向、視窗程式、檔案與資料庫、網路應用。
JavaFx遊戲程式設計[第二版]
本書特色 & ●以觀念導引為出發點,兼顧深度與廣度。 ●搭配豐富的範例,加深程式設計的邏輯概念。 ●系統化整理JavaFX技術,快速建立JavaFX遊戲程式架構。 ●精心設計多款JavaFX遊戲程式,讓學習更加輕鬆上手。
深入研究Jave FX2[第二版]
Welcome to JavaFX. 一起體驗「Write Once, Deploy Anywhere」的魅力,並深入介紹JavaFX特殊的圖表、繪圖、視覺效果、多媒體、CSS樣式、支援處理觸控螢幕與觸控板的手勢與觸控事件等功能。 & JavaFX以「Write Once, Deploy Anywhere」的概念開發R.I.A.應用程式,可同時以Java Applet、Java Web Start與視窗應用程式的形式執行,除了提供類似於Java Swing的GUI物件之外,JavaFX為強調動畫與多媒體效果,增加了圖表、多媒體、CSS樣式、2D、3D、視覺效果等功能,並支援處理觸控螢幕與觸控板的手勢與觸控事件,最重要的是JavaFX改進原有Java Swing繁複的程式架構,讓JavaFX程式更為精簡。 本書除了介紹JavaFX程式架構與基本GUI物件之外,並說明JavaFX特殊的圖表、繪圖、視覺效果、多媒體、CSS樣式、支援處理觸控螢幕與觸控板的手勢與觸控事件等功能。
Visual Basic2012程式設計實例[第三版]
Visual Basic 2012 一直是學習程式設計的入門語言,有別於市面上一些程式語言的著作會以片段程式作為講解,本書將講解和實例做結合,再加上充分的註解,避免教學以及閱讀上的不順暢。 & 同時,還會針對程式中重要的語法及觀念,輔以詳細的程式解析,讓您能花費最短的時間,紮根獨立程式設計的能力,使其獲得最高的學習效果。 透過書中大量的範例,快速建立學習 Visual Basic 2012 的樂趣以及成就感,進而充分理解與活用各種指令。 & 除了本文的程式範例之外,在習題中也加入大量的程式實作題,讓您擁有更多實際演練的機會。 別懷疑了,趕快拿起本書,就會發現其實學習 Visual Basic 2012 沒有想像中的那麼困難,原來那麼輕鬆簡單!
SAS Knowledge Today國際認證教科書
SAS結合了高階的程式語言、資料處理與管理系統,同時也是統計分析軟體。這一套整合型策略系統目前也不斷開發增進其採礦與視覺分析的強大功能,並演化成為巨量資料處理的一項重要工具。據統計,世界著名的各大企業、政府機關、醫療院所與學術機構都會使用SAS作為資料處理與分析決策的主要工具。隨著全球各產業面臨巨量資料的挑戰,數據資料分析人才的大量需求,對於具備SAS軟體知識的專業人員需求將愈來愈大。 & 通過了本測驗,表示個人已經具備基本的SAS資料處理的能力,有助於爾後適切的使用各種SAS專業功能的能力,本SAS認證將會成為您在求職、求學、研究或者工作上、未來保持優勢的一大利器。
51單晶片微電腦系統開發應用[第四版]
【大量且詳盡的實例】結合基礎知識以及實例的形式介紹單晶片的開發 & & 【模組軟硬體的設計】以實用為基礎詳細介紹單晶片的設計方法與技巧 & 本書定位於51單晶片入門與提升,分為3篇,共17章,分別為:基礎知識與環境搭建篇、典型模組篇和綜合實例篇。全書結構合理、定位精準,從單晶片發展歷程到環境搭建以及開發語言,循序漸進地再進入典型模組篇,例如鍵盤、顯示器、D/A轉換等,不僅面面俱到,且內容簡單又實用。最後透過3個大型綜合實例,匯總前面所學知識,使您能融會貫通,學以致用。 & 本書旨在幫助您快速掌握單晶片的基礎知識及開發技術,若你是程式設計語言的初學者,若你對於大學課程的畢業設計還在找尋相關方向,若你是單晶片的愛好者或是單晶片的開發人員,這本書的典型模組設計思想與方法對於你將會有相當好的指導意義,將會是適合你的一本實用參考書籍。
Java 技術手冊 第六版
「在熱門技術討論區和 javadoc'd 參考資料中,這本最新版本書籍仍然是最簡單明確的途徑,讓你很快得到所需要的答案。」 -Kevlin Henney 顧問、作家、演講者及《程式設計人應該知道的97件事》的書籍主編 本書能幫助有經驗的 Java 程式設計師學習到 Java 7 和 Java 8 最豐富的知識,同時也是開發新手的學習途徑。提供大量案例為讀者示範如何運用當代 Java API 的優點,同時體驗最佳的開發實務。此次新版內容全面更新,第一部分提供 Java 程式語言簡介及介紹 Java 平台核心運行。第二部分為核心概念和 API 參考資料,展示如何在 Java 環境中執行實際的程式編寫工作。 ‧對語言細節瞭如指掌,包括 Java 8 的改變 ‧使用基本的 Java 語法及學習物件導向程式設計 ‧探索泛型、列舉、註釋及 lambda 運算式 ‧了解物件導向設計中用到的基本技術 ‧詳細檢視平行處理和記憶體之間的運作互動關係 ‧操作 Java 集合及處理常見的資料格式 ‧探索 Java 最新的 I/O API,包括非同步通道 ‧在 Java 虛擬機器上使用 Nashorn 執行 JavaScript ‧熟悉 OpenJDK 的開發工具
從零開始學Visual C# 2013程式設計
學習一個程式語言,基本功夫不外乎是程式語言結構和流程基本控制。除了這些之外.NET Framework是未來軟體開發的共同平台,而透過Visual Studio 2013開發環境,更能直接運用.NET Framewrok的豐富的類別庫。所以無論是使用那一種語言,皆能應用共通語言執行環境,發展出跨平台的應用程式。本書非常適合對Visual C#語言有興趣,又想要對.NET Framework類別庫有更多認識的讀者,透過本書可達到通盤性認識,全書重要內容如下: & ‧程式基礎篇 以主控台應用程式為主,包括了變數和常數,基本資料型別的取用,流程控制的條件選擇和迴圈。 & ‧物件使用篇 以OOP為範疇,從類別開始,實作物件要有建構式,進行參數傳遞要有方法。除此之外,繼承也不能忽略,包含多形觀念衍生的介面和抽象類別。 & ‧視窗介面篇 以Windows From的控制項為主,涵蓋了功能表、對話方塊,不同功能的清單方塊;具有檢視功能的控制項,以及滑鼠和鍵盤的事件處理。 & ‧應用篇 介紹了ADO.NET元件與LINQ語言。 & 本書以最嚴謹的態度,輔以最精要的表達方式,期望能降低閱讀的壓力,章末並附有課後評量,可立即評估學習效果,相信定能為初習者帶來顯著成效。
大數據的下一步:用Spark玩轉活用
隨著大數據時代的到來,企業資料每天都在急劇快速膨脹,如何發掘這些資料的價值,需要一種高效而穩定的分散式運算框架和模型。Spark恰逢其時,應運而生。本書對Spark進行詳細的闡述,包括核心模組和各個子系統,能讓Spark初學者快速瞭解和上手,是學習Spark的敲門磚,希望此書能讓更多的讀者去深入發掘Spark之美。 & -淘寶技術部資料採擷與計算團隊負責人 黃明(明風) Apache Spark由於其基於記憶體的高性能計算模式以及豐富靈活的程式設計介面,得到廣泛的支援和應用,大有逐漸取代Hadoop MapReduce成為新一代大數據計算引擎的趨勢。本書從原始程式碼角度深入淺出地分析了Apache Spark及相關大數據技術的設計及實現,包含很多實戰經驗和使用心得。相信本書對於進行大數據、記憶體計算及分散式系統研究,Apache Spark的深入理解以及實際應用,都有很好的參考價值。 & -英特爾亞太研發有限公司技術總監 段建剛
創新科技設計|基因組學、機器人學與物聯網的UX設計
"如果你正在找尋如何設計未來的洞見,未來就在這裡" -Dan Saffer, 《微互動 Microinteractions》一書作者 "這本書對任何參與產品創新設計、創業家或研究未來技術應用的人都是必讀好書。主題內容涵蓋多種未來創新領域" -Carla Diana, 創新技術專家與作者 數位與行動革命只是下一波技術創新的前奏,後續發展中的機械蠕蟲、皮膚崁入電腦與生化列印器官才是重點。在這本合輯中,設計家、工程師與研究人員共同討論他們對顛覆性科技的體驗設計方法。 設計不只是運用科技的基礎架構,必須以經濟生態圈與意外創造等更宏觀的角度來看待。如果你是有創意、勇於挑戰複雜性的UX設計家或工程師,這本書將會帶給你啟示。 本書作者包含: Stephen Anderson Martin Charlier Lisa deBettencourt Jeff Faneuff Andy Goodman Camille Goudeseune Bill Hartman Erin Rae Hoffer Steven Keating Brook Kennedy Dirk Knemeyer Barry Kudrowitz Gershom Kutliroff Michal Levin Matt Nish-Lapidus Marco Righetto Juhan Sonin Scott Stropkay Scott Sullivan Hunter Whitney Yaron Yanai 關於本書編者: Jonathan Follett 是Involution Studios的負責人,他是設計師以及使用者體驗與資訊設計主題的作者。
圖解組合語言(第二版)
★循序漸進、由淺入深,強調觀念而非僅止於組合語言指令的介紹。 ★藉由Windows內建Debug工具輔助學習,對於理解記憶體配置與暫存器運用的幫助很大。 ★輔以應用範例為導向的學習模式,使學習者透過實際操作理解重要觀念。 & 學習組合語言對於了解CPU的硬體架構具有絕對的幫助,透過一條條的指令可以知道電腦究竟是如何進行資料的處理,不僅加強硬體和邏輯方面的觀念,當編程者在進行指令的組合時,硬體的運作流程自然會在心裡形成,更能順利的編寫出所要功能的組合語言程式。 & 本書定位為學習組合語言的第一本書,為了顧及架構與開發環境取得的方便性,並且能夠搭配教材內容的安排清楚地說明組合語言與CPU架構的一些重要概念,因此以80x86為學習目標。在內容安排上,循序漸進、由淺入深,並以大量的範例說明重要的概念,必定能為您的組合語言程式編寫能力奠定良好的基礎。
Ruby物件導向設計實踐: 敏捷入門
Amazon 與 Google Play 暢銷書,眾多人士的高分推薦。 & Ruby 程式語言的友善常為人所稱道,不過它也有不利的一面:許多 Ruby 及 Rails 應用程式在設計之初並未考量到後續的演變以及長期的可維護性。網路上總充斥著許多幾乎難以修改或擴展的 Ruby 程式碼。本書將指引你如何藉由強大的物件導向設計技巧來解決這些難題,並且包含了許多簡單且實用的 Ruby 範例。 & Sandi Metz 汲取自身生涯中許多的會議及簡報,將物件導向設計運用在基於 Ruby 的實踐上,創造出能夠管理、延展並且令人滿意的程式碼。她不僅將指引你建立出成功的應用程式,還能夠改善過去難以維護的程式碼。除此之外,書中的每一項程式碼範例都可以直接從 poodr.info 網站下載。 & 本書是第一本專注於物件導向應用程式設計的 Ruby 書籍。無論你先前的 Ruby 開發經驗如何,你都能夠從中獲益匪淺: •初級的 Ruby 程式設計師能夠學到賴以生存的特定法則。 •中級的 Ruby 程式設計師能夠學到多項可以靈活運用的高價值原則。 •高級的 Ruby 程式設計師能夠學到可以用來領導開發團隊並且指引同事的共同邏輯。 & 本書將指引你: •瞭解物件導向程式設計如何協助你鍛造出容易維護及改版的 Ruby 程式碼。 •決定單一 Ruby 類別所應包含的內容。 •防止應該彼此分隔的物件糾纏在一起。 •在物件之間定義具有靈活性的介面。 •藉由鴨子類型降低程式設計的間接成本 •成功運用繼承關係。 •利用組合來建構物件。 •設計出降低成本的測試。 •解決不良設計所導致的常見問題。
成為卓越程式設計師的38項必修法則
“本書會引發你對程式設計藝術與科學的熱情。Pete 知道:卓越的軟體,是優秀的人們盡最大努力所完成的。” -Lisa Crispin 《Agile Testing: A Practical Guide for Testers and Agile Teams》作者 如果你熱愛程式設計,想要提升自己的能力,那你就找到正確的資源了。《Code Craft 編程創藝:編寫出卓越的程式碼》的作者 Pete Goodliffe 提供許多實用的程式設計技術與方法,協助你改善職業技能與增進你的幸福指數。Goodliffe在專業程式設計領域浸淫已達 15 年之久,足以提供良好的意見。本書使用獨立章節涵蓋軟體開發者生活中所遇到的一切—處理程式、學習交易、改善效能,內容並未針對特定的語言或產業。無論你是經驗豐富的開發人員、職業新手,還是業餘愛好者,都會在五個獨立的類別中找到寶貴的提示: ‧程式碼層級的技術,建構程式碼、測試、除錯及面對複雜的狀況 ‧做法、方法與態度:保持簡單、合作、重複使用及建立可擴充的程式碼 ‧有效率地學習、具備道德的行為、尋找挑戰及避免停滯不前的策略 ‧完成工作的實際做法:使用正確的工具、知道什麼是“完成”及尋求同事的協助 ‧與別人合作,養成把開發視為社交活動的習慣
電玩物理學 第二版
「《電玩物理學》這本書對於解決真實世界的物理問題提供豐富資訊,可立即運用於遊戲開發上。」 - Paul Zirkle 迪士尼遊戲公司的首席工程師 科學、數學和效果擬真的程式 如果讀者想豐富對於遊戲中物理模擬的知識,這本經典新版書籍詳述有關遊戲開發中諸多物理學原理。透過本書能夠學到如何處理物理碰撞、爆炸、聲音和拋體等,以及在Wii、PlayStation、Xbox、智慧型手機與平板電腦等所用的物理效果。同時能瞭解如何善用多樣的感測器,如加速度計和光學追蹤裝置。 作者David Bourg和Bryan Bywalec提供許多技術知識、公式以及程式範例,幫助讀者解決遊戲開發時遇到的諸多物理學問題。無論讀者是自行開發或是團隊開發遊戲,本書是不可或缺的參考書籍。 ‧更新讀者對於經典力學的知識,包含運動學、力學、動力學和碰撞反應 ‧探索剛體動力學,運用2D和3D的即時模擬處理旋轉和慣性運動 ‧將物理觀念應用於真實世界中:模擬船隻、飛機、汽車和球類運動 ‧擴充遊戲對於數位物理的應用,像是加速度計、觸控螢幕、GPS、光學追蹤裝置和3D顯示 ‧透過OpenAL API捕捉3D音效
yisual Basic 教學範本
本書介紹國內教育界、業界普遍使用之Visual Basic 2010程式語言。Basic語言一直是初學者入門程式設計的首選,在經歷電腦硬體架構改變、軟體設計觀念更新、網際網路興起等過程中,Basic語言也演進到整合了視覺化、Web化、行動裝置化的功能,也就是目前普遍被使用的Visual Basic版本。本書使用之Visual Basic 2010程式語言,除了因應時代潮流外,也讓初學者能快速進入程式設計的境界,增加初學者對於程式設計的學習效果。本書除了介紹基礎入門的指令的程式設計概念外,為了讓教師及學習者可以達到事半功倍的效果,書中的講授例子,皆精選技能檢定或是技能競賽的題目,作為輔助學習範例。相信在本書的導引下,讓學習者對程式設計能力奠定一定的基礎。全書配合實例應用,內容包括:■ 程式設計基礎:建立資料結構、變數型態、運算式、運算子與基本的輸入輸出等基本觀念。■ 重複結構:介紹FOR…NEXT與DO…LOOP迴圈的觀念與應用方法。■ 陣列:活用Visual Basic陣列、排序與搜尋方法,撰寫程式更省事。■ 函數與副程序■ 檔案系統每個單元皆由淺入深、循序漸進,讓初學者由基本範例中,學習到程式設計的精神、技巧與邏輯思考能力。
Hadoop再進化:Storm流式資料即時處理引擎
阿里巴巴、yahoo、Twitter、Groupon等大型互聯網企業, 處理即時巨量資料的最實用工具。 第一本介紹Storm 的書,從基礎知識、安裝與部署、研發與維護、進階知識、企業應用等5個模組,分別介紹Storm 的安裝與設定、基本原理、Topology 元件、Spout 元件、Bolt 元件、ZooKeeper叢集、實戰環節等內容。讓讀者在最短的時間內系統掌握Storm 的理論基礎,針對Linux 平台架設與研發自己以Storm 為基礎的巨量資料處理平台。 適合:所有巨量資料處理、即時流資料處理、Storm的開發者或有興趣者,或大專院校和培訓單位等相關科系的師生參考使用。
Android手機程式超簡單!!App Inventor入門卷(增訂版)
App Inventor是由Google所推出的圖形化Android智慧型手機程式開發環境,無需艱澀的Java語法,只要拖拉放就能輕鬆完成您的第一隻App! & 內含數十個程式範例,包含人機介面設計、小畫家、多媒體影音、網路通訊與資料庫等,並引導讀者自行設計擲骰子與打磚塊等趣味小遊戲,非常適合各級教學單位使用。 & 本書所有範例皆可使用模擬器完成,毋須購置實體Android手機。 範例程式檔與本書更多資訊,請上CAVEDU系列叢書網站:http://www.cavedu.com/books。 更多App Inventor教學範例,請上App Inventor中文學習網:http://www.appinventor.tw。 & 【本書特色】 & 電腦技能基金會 App Inventor認證指定用書& App Inventor是由Google所推出的圖形化Android智慧型手機程式開發環境。 無需艱澀的Java語法,只要拖拉放就能輕鬆完成您的第一隻App! & 內容包含數十種程式範例,包含人機介面設計、多媒體影音、網路通訊等。 同時引導讀者自行設計多種趣味小遊戲,適合各級教學單位使用。
Multi:Device 體驗設計 | 處理跨裝置使用者體驗的生態系統方法
「關於在多裝置典範裡設計,本書是我看過最好的指南。」 ─ Hooked: How to Build Habit-forming Products 的作者 Nir Eyal 「這本書為每個從事軟體產品創造的人提供適當的基礎來穿越複雜性和打造絕佳的體驗。」 ─ Google 搜尋和地圖產品的設計主管 Jon Wiley 「我推薦這本書給正在思考如何加強顧客在所有裝置上的體驗的任何人。」 ─ Spotify 使用者體驗和設計全球副總裁 Rochelle King 「...提供任何建立數位產品的人一個思考方向,了解有意義的互聯體驗的趨勢。」 ─ Cisco 資深設計師 Andrew Henderson 歡迎來到多裝置世界,在這個世界裡,一個使用者使用一個應用程式的體驗可以橫跨很多裝置─智慧型手機、平板電腦、電腦、電視等,這本實用的書展現出裝置互相關聯的各種方式,共同創造強大的整體,傳達優越、整合體驗給你的使用者。 ‧學習設計多裝置體驗的實用框架,以 3Cs 為主─一致性、互補性和持續性方法 ‧擺脫在所有裝置上提供所有服務的做法,在適當時間、最好(可取得)的裝置上提供適當的服務 ‧將 3Cs 框架運用到更廣的物聯網領域,並設計多裝置體驗,預見一個完全互聯的世界 ‧學習如何測量多裝置生態系統的表現 ‧設計更相聯的未來領先群雄