2015/07/29

[廣告] Java SE 8懶人包(Java SE 8 for the Really Impatient)

嗨,我翻譯了一本書,在這裡打打廣告。

書名:Java SE 8懶人包
原書名:Java SE 8 for the Really Impatient
作者:Cay S. Horstmann,也是Java暢銷書《Core Java》的主要作者
譯者:我
出版社:博碩
出版日期:2015年7月30日
頁數:256


簡介

在上百萬名程式設計師的殷切期盼下,Java SE 8可說是近年來最重大的Java 改版。引進lambda 運算式(閉包)以及串流,為 Java 程式設計所帶來重大改變,毫不亞於當年泛型以及註文所造成的衝擊。

本書由國際知名的Java書籍作者Cay S. Horstmann為大家一一介紹Java 8最具價值的新功能,除此之外還包含一些不為人知、但卻相當重要的Java 7功能。如果你已是一位熟練的Java程式設計師,本書的實作能夠讓你快速瞭解Java語言及平台的新特性。

這本不可或缺的指南包含了:
  • 說明如何運用lambda運算式,撰寫可重複使用的程式碼片段。
  • 全新的串流 API,讓Java群集更加靈活且更具效率。
  • 藉由lambda 運算式(filter/map/reduce)進行並行運算,為共享計數器與雜湊表帶來顯著的效能提昇。
  • 利用完整一章來說明如何在程式中運用lambda運算式。
  • 說明備受期待且功能強大的date/time/calendar程式庫(JSR 310)。
  • 簡要說明JavaFX(Swing GUI的替代技術)和JavaScript引擎Nashorn。
  • 詳細介紹許多程式庫的細微變化,這些變化能夠讓 Java 程式設計更富生產力也更有樂趣。
本書率先涵蓋了所有這些備受期待的改進,並且能夠協助開發者撰寫出最健全、高效並且安全的 Java 程式碼。

目錄
  1. Lambda運算式
  2. 串流API
  3. Lambda程式設計
  4. JavaFX
  5. 嶄新的日期時間API
  6. 並行處理增強之處
  7. JavaScript引擎Nashorn
  8. 其他好東西
  9. 你可能忽略掉的Java 7功能

2015/06/29

Raspberry Pi情報彙整(52)

我收集整理網路上看到的、感興趣的、跟Raspberry Pi相關的資訊,如果您發現任何新奇驚人的專案、新聞、活動等等,還請留言告知。

LifeBox with Raspberry Pi,有藍黃兩物種,不斷複製並競爭,不斷地形成新的樣子(畫面),可以由旋鈕改變參數。聽起來類似於Conway's Game of Life,不過我沒找到背後的演算法規則。

Kite mapping - Raspberry Pi,熱氣球太貴買不起嗎,試試看風箏吧,也能把相機與rpi送上天。
Garden Robot - Raspberry Pi,基金會的新教材:花園機器人,可以偵測光強度、溫濕度、土壤濕度,收集資料並儲存。
Raspberry Pi Official Case - Raspberry Pi,哇,rpi基金會官方設計推出的外殼,嗯,市面上已經有超多很棒的外殼產品,而且乍看之下,似乎看不出這個外殼是rpi官方產品;不過造型仍不錯,可看看文章,詳述設計過程。
Diddyborg metal edition - Raspberry Pi,PiBorg新產品,限量喔。在文章中,這台車還可以載一個人,真的還假的?
Flappy Brain EEG controlled game by Albert Hickey @winkleink » RasPi.TV,用腦波玩Flappy Bird,嘿,能過關嗎?
Outernet - Raspberry Pi,outernet?這什麼東西啊?透過與地球同步旋轉的衛星,廣播發送各種資料內容,譬如醫藥健康、維基百科、新聞消息等,屬於單向傳輸;這麼一來,許多遭受管制的地區,只要使用簡單的裝置,就可以接收這些資料,嘿嘿。
Moving Timelapse Féria de Nîmes 2015 | Nitchevo !,把縮時攝影裝置放在身上,呃,還不錯,不過拍下來的作品,看得我頭昏眼花。
PicoCluster - Computer and STEM education for everyone! by PicoCluster LLC — Kickstarter,推廣STEM教育的硬體載具,含有五台Pi 2,應該類似於運算叢集的概念,募資成功的話,之後會陸續教材與學習內容。
Raspberry Pi Posters,免費且有趣的rpi海報,真有心啊。
Naturebytes Wildlife Cam Kit - Digital Making for Wildlife by Naturebytes — Kickstarter,戶外攝影套件組合,捕捉野生動物的身影。

其他:

2015/06/26

在Raspberry Pi(Raspbian)上安裝matplotlib、使用pylab繪製簡單的圖形

之前已試過「在Cygwin上安裝matplotlib、使用pylab繪製簡單的圖形」,這篇則是試試在Raspberry Pi 2加Raspbian上做同樣的事情。

PS 已經忘記如何安裝了,印象中並無碰到困難,不是使用apt-get安裝Debian套件,就是使用pip安裝Python套件。

先試試輸出圖形到檔案吧,程式碼如下:

import matplotlib
matplotlib.use('Agg')

import pylab

pylab.figure(1)
pylab.plot([1,2,3,4,5], [1,7,3,5,2])
#pylab.show()
pylab.savefig('a.png')

沒問題,得到圖檔a.png後,如下:

然後試試直接在圖形視窗模式下直接顯示,我是以Windows的遠端桌面連線,透過RDP協定遠端登入,所以Raspbian應該安裝xrdp套件。

程式碼如下:

import pylab

pylab.figure(1)
pylab.plot([1,2,3,4,5], [1,7,3,5,2])
pylab.show()

可惜出現底下的錯誤訊息,雖會跳出一個視窗,但其內容是空白的。

** (a.py:2917): WARNING **: Can't load fallback CSS resource: Failed to import: The resource at '/org/gnome/adwaita/gtk-fallback.css' does not exist

** (a.py:2917): WARNING **: Can't load fallback CSS resource: Failed to import: The resource at '/org/gnome/adwaita/gtk-fallback.css' does not exist
/usr/lib/python2.7/dist-packages/gi/types.py:113: Warning: Source ID 5 was not found when attempting to remove it
  return info.invoke(*args, **kwargs)

趕緊拜拜谷歌大神,雖然也有人碰到類似的問題,但似乎沒有一槍斃命的解決辦法;試著安裝gnome這個套件:

$ sudo apt-get install gnome

然後再試一次,嘿,成功了。
雖然還是有錯誤訊息。


參考資料: