Kros 積分 0

在台北怎麼享受同樣的經驗?

在家工作,每天上班前先去河濱繞一圈!

IngramChen 積分 0 編輯於

在台北怎麼享受同樣的經驗?

  • 搬到合適位置租房子

現在台北沒人買房子吧?沒吧?真的有人買嗎?

  • 上班路徑規畫經過河濱

台北市河濱一整圈 60km,外國人來都羨慕的要死,哪有什麼城市一整圈都有河還有專門的單車道?

  • 台北工作地點沖澡很難

到健身房付月費洗澡,或是

到附近朋友家洗或合租一小間來換衣洗澡

  • 早上彈性工時就靠運氣了,沒辦法就只好早起,夏天沒問題,冬天大概就掛了
IngramChen 積分 0

距離適中、行經郊外、彈性上班時間、工作地點可沖澡

哇嚓,這是完美的單車上班條件。這不騎對不起自己啊!

caterpillar 積分 1

因為還沒完稿,大概要到五月才會上市。

natsu 積分 0

倒是最近把《Servlet & JSP 教學手冊》改版並更名為《Servlet & JSP 技術手冊》

剛剛 google 了一下... 看來這本書還沒上市...

把書裏一路用 Servlet/JSP 發展起來的應用程式範例,重構到可以用上 Spring MVC 的最小集合,然後注入元件、逐漸去除 Servlet API、抽出表單物件、改用 Thymeleaf、使用 JdbcTemplate、簡化 Java Mail 等…

Servlet/JSP + 重構 + Spring,這本書未免也太超值!

能夠漸進式移植的話,目標比較明確,這樣瞭解 Spring 比較有意義,我個人是覺得,這些功能拆開來說明的話會很空虛。

這需要 programmer 有時間去了解這個過程... 以及上面老闆的支持...

caterpillar 積分 0 編輯於

作者可以做到 篩選 這件事,是因為 Spring 有幾項優點 …

是啊!文件裏有寫…

框架應該要有個最小集合,而這個最小集合,最好可以基於開發者既有的技術背景,在略為重構(原型)應用程式,以使用此最小集合後,就能使應用程式運行起來,之後隨著對框架認識的越多,在判定框架中的特定功能是否適用,之後,再逐步重構應用程式能使用該功能。

caterpillar 積分 2 編輯於

目前沒有,倒是最近把《Servlet & JSP 教學手冊》改版並更名為《Servlet & JSP 技術手冊》,最後用上了 Spring 5,基本上就是我這篇文章的過程實現,把書裏一路用 Servlet/JSP 發展起來的應用程式範例,重構到可以用上 Spring MVC 的最小集合,然後注入元件、逐漸去除 Servlet API、抽出表單物件、改用 Thymeleaf、使用 JdbcTemplate、簡化 Java Mail 等…

能夠漸進式移植的話,目標比較明確,這樣瞭解 Spring 比較有意義,我個人是覺得,這些功能拆開來說明的話會很空虛。

姑且當成 Spring 技術手冊借殼還魂吧!…XD

haocheng 積分 0

hot key 太多了,要完全不用到 F1~F12 有點困難...

natsu 積分 0 編輯於

API 成熟穩定。即使現在已經 spring 4/5 了,還是可以用 2.x 版的方法去改寫,2.x 版到 5.0 中間隔了十年啊!

API 定得好真的蠻重要的,才不用一直改寫...

原來 Spring 已經發展十年了啊... 真的很厲害

IngramChen 積分 3 編輯於

作者可以做到 篩選 這件事,是因為 Spring 有幾項優點

  • API 成熟穩定。即使現在已經 spring 4/5 了,還是可以用 2.x 版的方法去改寫,2.x 版到 5.0 中間隔了十年啊!

  • 可以漸進式的移植。原本 servlet 的寫法,改成 spring controller 的皮後,大部份的舊程式還能動,你不用一次全部改完,可以分好幾個批次做。

  • spring 是個高度模組化的 framework,你可以只用他的 mvc 就好了,其他都可以放著先不管。也因為如此,你才有機會 篩選,只導入一部份你想要的功能

不是什麼 framework 都能這樣玩,例如 Angular 就沒有上述的任何優點。想導入嗎?那就全部重寫吧

IngramChen 積分 0

我以為是把 hot key 都改成不需要 fn...

haocheng 積分 0 編輯於

多按一顆 Fn 就有 F1~F12 啦,我用 HHKB 一陣子已經習慣了,現在用一般鍵盤反而會卡卡的 XD

natsu 積分 0 編輯於

在工作也暫時用不上的情況下,被我暫時放生的框架之一是Spring,在Spring 2.0 之後就不常接觸。過了多年,現在5.0都出了,雖然大致知道主打的特點是什麼,但並未去玩弄過細節。

我也是在 Spring 2.0 之後就不常接觸了,直到最近的案子有機會用到 Spring 4.x。

Spring 4.x 可以用 @Controller@Service@Respository 等 annotation 真的蠻方便的,不用 extend 或 implement 就可以讓類別擔任各自的角色。

不過就是有些細節不太了解,像是 @Controller 的 method 若使用 ModelAndView 取值會是 null,但用 @ModelAttribute 卻取得到值。

另外,不知 Caterpillar 是否有出 Spring 5.x 技術手冊的打算? XD

natsu 積分 0

如果用 model object 來傳遞 presentation 層、domain 層、data 層之間的資料才會變得簡單一點吧?不過這樣一來又會破壞 OO 的封裝特性 ...

IngramChen 積分 0

你 intellij hot key 沒 fn key 怎麼玩?

haocheng 積分 0

查了一下發現直接上硬派買或是等 ptt 開團購會更便宜 XD

IngramChen 積分 0

應該是用標準的 spring 寫法來實作造成的,沒有特別為這個 benchmark 最佳化

有一次看 changelog ,他們還把比較快的寫法換成標準的寫法...

vendy 積分 0
spring跟版本有關係嗎,用得版本都好舊~ 像vert.x就是用最新的
Spring 4.1.7.RELEASE
Spring Boot 1.2.5.RELEASE
Spring Data JPA 1.7.3.RELEASE
Undertow 1.1.7.Final
IngramChen 積分 0

記得以前幾次前幾名都是 c/c++ 佔據了,現在 java 又回到前幾名,雖然都不是大家常用的就是。

spring 名次好低啊

koji 積分 0

我們有人就是為了這個, dao query 用 kotlin

IngramChen 積分 1

總之歷史會再重演一次,當 Java 走到 J2EE 那個複雜到哭的時候,就會有人出 Spring 幫大家砍掉重練,而 Java stack 繁鎖到不行就有人出 Rails 改變風氣。

koji 積分 0

之前看 iOS 則有 VIPER...也是頗驚人的複雜

IngramChen 積分 2 編輯於

Activity, Presenter 和 UseCase 太多層很煩啊。

本來 Activity 本身就應該是 presenter 的角色了 (可以測試),但 Android 搞得太麻煩,只好再抽一層。

寫到後來一個功能從 layout -> activity -> presenter -> use case -> model -> DAO 整整要六層以上才寫得完,暈。

這不是 over engineering 什麼才是? 但 Android 已深陷泥沼…