看板 Soft_Job 關於我們 聯絡資訊
※ 引述《deanh (夜想者)》之銘言: : ※ 引述《Lordaeron (Terry)》之銘言: : : Web application 可以說9成或以上都是在做以下的動作 : : 1. user fill form : : ->這邊基本上javascript 為主,就算跑ajax 撈些有的沒的,就是產生另一個 1.的過程 : : 2. read request : : ->就單純的讀入input 頂多多了format validation. 花不了什麼時間 : : 3. generate SQL from request : : -> 組SQL 也花不了你什麼時間, 多幾個if then else 就這樣了 : : 4. fetch Data by SQL : : 5. Display Result : : -> 這兩段loading 比是重點, send SQL(network), wait DB processing, : : fetch result (network),convert to java type,presentation processing, : : write response to browser(network) : : 從這樣來看, XXP 的程式幹的活, 實在是不多. : : 哪如果大家加了偉大的Struts + Hibernate 呢? : : 就由原本就這幾件簡單的動作裏, 加入了一大堆你handle 不了的東西, 何苦呢? : : 再說, 為了多一個ORM 的東西, 你非得要去除了SQL 以外的, 還要多學它的運作. : 如果我跟你在同一家公司,我絕對不想跟你做同一個專案。 : 光你的第三點就非常可笑了。ORM提供的是讓程式碼跟SQL分開實作,Java : 跟SQL的邏輯不一樣,擺在同一個程式語言裡面會降低可讀性跟維護性。 : 一堆的SQL跟If、else混在一起,幾個月以後還有誰有辦法處理? 組SQL 有什麼好混在一起的? 很難看嗎? 你沒在寫if then else? table schema 的設計及畫面output不可能全相同 而為了"reuse" 就得一口氣什麼鬼都出來, 再取自己要的. 這樣太慢了. 後來變成各自為政,有人用vector, 有人用arraylist, 有人用hashmap. 每個人用法都不同, 二三十人, 一看就十幾套做法. 這有比較好維護? : 雖然不管SQLMap跟Hibernate都有邏輯Tag,但總比跟Java語言混在一起要好。 : 1/2/5都有Template Engine幫我實作,我不用作重複的輪子。當不使用這些Framework : ,你一樣要做自己的輪子,我為什麼要用你的輪子? 我沒要你用我的啊? 請問你在high 什麼? : 如果你有大型網站實作的經驗,或者是跟一個團隊合作的應驗,相信你不會說這樣的話。 : Framework不會讓簡單的東西變簡單,他只會讓困難的東西變簡單。 我相信, 我一定不會跟同一個project. 哪請問你做的網站有多大型? but 先定義"大型" 的定義. 否則你自己high 就好了. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.240.94
lovepc:全部自己組 SQL 有時候很快沒錯 但insert , update 等語法 05/24 14:08
lovepc:如果 schema 發生改變的話(即使改變不大) 也可能會改死... 05/24 14:09
lovepc:更何況有可能發生切換 database 的需求 這時就頭痛了 05/24 14:10
TonyQ:這種事情即使你用 ORM 還是一樣頭痛啦 XD 05/24 14:19
TonyQ:組SQL 也可以有 sql builder 集中管理阿。:P 05/24 14:19