一個產品服務要成功才會頻繁性的出現在生活周遭;一個行銷要成功才會深刻烙印在腦海裡。當去體驗生活的時候,可以看到許許多多的例子,哪些東西是印象深刻的,哪些是過眼雲煙的。這每一個成功的背後,都埋著許多我們不知道的知識內涵。也許自己以前都看過解答(行銷結果)了,但其實從來沒有自己作答過。而這本書寫的就是這些讓你可以自己做答的知識與引導。
作者是菲利普·科特勒–現代行銷學之父阿….多少棒場一下,雖然我也是後面才知道他的XD
一個產品服務要成功才會頻繁性的出現在生活周遭;一個行銷要成功才會深刻烙印在腦海裡。當去體驗生活的時候,可以看到許許多多的例子,哪些東西是印象深刻的,哪些是過眼雲煙的。這每一個成功的背後,都埋著許多我們不知道的知識內涵。也許自己以前都看過解答(行銷結果)了,但其實從來沒有自己作答過。而這本書寫的就是這些讓你可以自己做答的知識與引導。
作者是菲利普·科特勒–現代行銷學之父阿….多少棒場一下,雖然我也是後面才知道他的XD
模組這件事其實不是甚麼新鮮的技術了,早在JavaScript, Python等等語言就有了,而Java也終於在JDK9.0釋出了Modularity。在模組出來以前,Java的封裝一直是很頭疼的問題,基本上都是包裝成jar檔,裡面有package,package裏頭的修飾詞有public、default、protected、private。
Modifier | Class | Package | Subclass | World |
public | Y | Y | Y | Y |
protected | Y | Y | Y | N |
default (no modifier) | Y | Y | N | N |
private | Y | N | N | N |
這樣的封裝有一個很大的問題。如果我有一個類別A,它被放置com.my.package,而我又有一個類別B,它被放置在com.my.package.inner,A可以被其他package存取,但B是非公開的,同時A也要可以存取B的內容。這時會發現B的修飾詞不知道該放甚麼了,因為唯一可以被自己以外的package讀到的修飾詞就只有public,而本來用意只是想給com.my.package使用的B,現在變成所有人都可以讀取了,這並不是我們一開始想要的結果。
Spring Boot 內建其實就已經有Thymeleaf,基本上到application properties就可以設定了。但Spring Boot一開始的設定是給view template使用的,如果今天想要email也使用thymeleaf來產template,但想要用純文字檔呢?從spring.thymeleaf.mode看起來很像是無法讓我同時填HTML、TEXT,很像只能吃一種templateResolver。如果想要有多個templateResolver,除了爬文去找Spring Boot有沒有Interceptor或Configuration支援這樣子的設定,最快的方法就是乾脆不要用Spring Boot內建的Thymeleaf設定,改由自己設定比較快。
2017年的目標之一就是把自己的OCPJP這張證照從Java6升到Java8,也就是通過1Z0-813這個考試來升級。也趁機會把考證照當個目標,讓自己更有系統性地去學習Java8。比起當時Beta版的考試,1Z0-813相對簡單許多,但即使簡單,還是有很多細微的陷阱題需要去注意。
其實準備這張證照沒甚麼太大訣竅,平常在工作時就先都用Java 8 style去寫,遇到不會不要妥協用舊的語法帶過,而舊的語法有機會也可以用新語法重構,簡單講就是多寫,不會就查。確定考試範圍,例如Steam API, Optional API, Collection API, Lambda, Date…這些新的語言特性是不是都玩過摸過了。在考試前一個月,可以上網去找一些模擬試題來練習,遇到不熟的API一定要自己在寫過一次,記憶會比較深刻。
最後,這邊附上自己的一些練習,有興趣的可以自己玩玩:傳送門。
1em = 100% = 12pt = 16px
px 為像素,通常遊覽器預設尺寸為16px,也為100%
% 百分比符號,已預設尺寸做百分比如 75% = 12px
pt 通常用於列印,相當於1/72inch,或是1.333px
em 是相對的的數值單位,它會受到外圍的文字大小所影響,而 1em 即是 1 的文字大小, 1.5em 也就是 1.5 倍的文字大小。如外圍父層字型大小為20px,本階層為1.5em,則本階層的字型大小換算為 20 * 1.5 = 30px。
rem 也是相對的文字尺寸,和 em 使用方法接近,不同的是他僅相對於 root 層級的文字大小(網頁中的 html)。如上述例子,外層大小並不會影響本階層,唯一會影響的只有html裡面的文字大小,故 1.5rem 會得到 16 * 1.5 = 24px。
當想要執行一個docker容器,會執行docker run image-name。這個指令會先從本地尋找是否有這個容器的Image(想像Image就是容器的snapshot),如果沒有就會去repository看有沒有對應的image名稱可以pull下來。
docker image可以從Docker Hub找到。例子:如果今天要下載一個mongo的docker,先去這裏找到有關mongo容器的相關資訊,並輸入下列指令:
每個Spring Gradle專案通常都會有一個對應的build.gradle來負責建置該專案內容。而要建立一個multi-project的專案,則需要在該專案的根目錄底下加入一個settings.gradle,並在裡面加入各個子專案的名稱: