看板 Web_Design 關於我們 聯絡資訊
: → tkdmaf:信徒?我只知道沒有經過實證的技術就只是講講而已。 02/06 08:57 : → tkdmaf:簡單來說。我講過的東西如果不是我做過或用過。 02/06 08:58 : → tkdmaf:我不會拿出來講。 02/06 08:58 這就是關鍵所在了,很多東西有所謂絕對,像基礎的程式概念, 但有更多事情是相對的,尤其是觀念或手法部份, 自己做過或用過的東西當作經驗而言很好, 但一旦升格為狂熱性的框架,那只會限制住自己往後的視野罷了。 : → tkdmaf:至於說「某」書籍。原來我看的書都是「同一本」? 02/06 08:58 : → tkdmaf:重構、設計範式、物件導向設計模式、極致軟體編程 02/06 08:59 : → tkdmaf:敏捷開發、C++物件導向程式設計,原來這些書是「某書籍」.. 02/06 08:59 : → tkdmaf:我公司買的C++ PRIMER, java編程語言,還有其他雜其雜八的 02/06 09:01 : → tkdmaf:軟體設計技術書籍都叫「某書籍」...... 02/06 09:01 : → tkdmaf:基本上你想在這和我論人品就不必了。 02/06 09:05 : → tkdmaf:有辦法的程式碼拿出來電一電比較實在。 02/06 09:05 只是泛指,不知道您為什麼一定要自己拉椅子坐下來,把某設定成同一本 XD 至於什麼拿程式碼電一電…真的是不必了,我給出來您還不一定看得懂… 別把自己教義外的人都給小覷了。 的確對別人評論不是很恰當,在這邊跟您說聲抱歉, 小弟以後會更注意的。 : → s25g5d4:從PHP版戰到這裡來... 02/06 11:11 : → mdfh:技術至上的討論串真無趣 02/06 11:15 : → tkdmaf:所以說,當程式設計師是無趣的。耐不住就不要踏進來。 02/06 11:21 : → tkdmaf:當網頁設計師倒是很有趣就是了。可惜我設計力薄弱。 02/06 11:22 : → tkdmaf:程式設計師只能面對一堆程式碼,努力在效率及功能上加強。 02/06 11:23 : → tkdmaf:網頁設計師則是設計出給人讚嘆的前端介面。 02/06 11:24 所以說到底是如何的所以說?不太懂這句話的前題在哪, 不過小弟倒從未覺得寫程式無趣,coding 是我生命裡非常快樂的時光啊, 有多快樂呢?大概可以跟閱讀和玩遊戲並列在差不多的位置吧, 那可是在構築一個世界呢。 常常覺得如果能在程式中找到熱誠,找到什麼是「美」, 會是程式人員向上邁進的大助力啊。 : → TonyQ:所謂的前端也是需要有組織跟架構的...-_-;; 02/06 11:29 : → rocairforce:原來已經開戰了 02/06 11:34 : 推 pm2001:設計前端介面就不用管邏輯跟功能嗎? 02/06 11:45 從名詞來講起總會有太多定義上的出入,試試看按內容來分好了, 網站實做分工大概會有這些項目: .主視覺設計 (網頁設計) .各網頁視覺設計 (網頁設計) .網頁動線、介面設計 (網頁設計 + 前端工程) .繪製 Flash、撰寫 AS (動畫設計 or Flash 設計/工程) .將設計好的畫面解成網頁,處理 html 骨架、css 貼皮、基礎的 SEO (前端工程) .撰寫瀏覽端的介面控制、相容性、與後端來回拋接的資料和回饋 (前端工程 + 後端工程) .準備主機環境 (系統工程 or 後端工程) .開 DB (後端工程) .處理後端程式控制 (後端工程) 上面有標示起來的差不多都是需要撰寫程式的地方, 老實說我不知道拿這些內容項目去歸類「是不是一個程式設計師」有什麼意義, 更遑論 網頁設計師和程式設計師到底怎麼分? 那就是看你的CODE是寫CLIENT端執行還是SERVER端執行啊就網頁設計師啊!不需要莫名的提昇他們的「工程師」地位 這種言論(嘆) 小弟寫程式這點年歲,後端從簡單的直白寫法到建立起一套完整的 Framework, 甚至因為 TemplatePower 在搭配 MMC 上無法真正省效能, 所以自己寫了效能差不多但結構迥異的 Template class, 前端則是從基本的 alert 到 prototype 到自己手刻 drag/resize/scroll 模組, 可以說即使今天沒有 jQ ,95% 以上的控制和介面小弟還是可以分毫不差的達成。 重點是,即使前後端的程式都寫了好些時間,但兩邊所追求的道卻截然不同, 後端程式輸出 1 就是 1,就算不用瀏覽器只在 shell 底下跑它還是 1, 但是前端程式就不是這麼一回事了,控制元素、顯示的行為往往因地而異, 即便是現在,往往都還是會寫到一半膠著在某個點上跨不過去。 小弟私以為撰寫介面程式要比後端程式要艱辛多了… 如果要追求所謂效率效能,那更是兩者都不簡單啊。 -- 口水到這邊,小弟也來拋磚討論一下好了(雖然我論噗通沉沒的可能性… orz) 不知道大家在可排序的資料資料庫都是怎麼設計呢? 例如一本相簿內,相片的排序,普通的建立方式應該就是 id / order 吧, 例如: id title order ------------------- 33 相片一 1 34 相片二 2 35 相片三 3 以此類推,而一般針對資料常見的排序操作不外乎是: 「向前移動一筆」、「向後移動一筆」、「移到第一筆」、「移到最後一筆」、 「自由排序」(拖曳模式,暫不討論) 但是在一個高負荷的系統底下,這些操作其實會給資料庫帶來不小的負擔, 稍微羅列一下對資料庫而言的相關操作: 「向前/後移動一筆」: 1.取得自己的順位 (讀取) 2.將前/後一筆的資料排序 +1/-1 (寫入 1) 3.將自己的排序 -1/+1 (寫入 1) 而「移到第一筆/最後一筆」就有點可怕了: 1.取得自己的順位 (讀取) 2.從第一筆/最後一筆到自己目前位置的資料排序都 +1/-1 (寫入 n) 3.將自己的排序更改為 1/n (寫入 1) 這樣算起來,在一個多資料(假設 1000 筆好了)的狀態下, 移動資料排序就相對變得有點壓力。 其實有另一種不太愉快的變形演算,就是透過夾擊來實做: 首先我們先來放大排序的數字,把每個自己的序列 x 1000 好了 資料庫: id title rank ------------------ 33 相片一 1000 (第一筆) 34 相片二 2000 (第二筆) 35 相片三 3000 (第三筆) 在這種演算下,相關操作對於資料庫的影響會變為: 「向前/後移動一筆」: 1.取得前/後兩筆的權重 (讀取) 2.檢查夾擊,更改自己的權重 (寫入 1) 舉個實際的例子,如果要把相片三移動到相片二之前, 我們要做的是: .取得相片三前兩筆資料的 rank:1000、2000 .將前兩筆 rank 相加除以 2 得到 1500,異動自己 結果就是: id title rank ------------------ 33 相片一 1000 (第一筆) 34 相片三 1500 (第二筆) 35 相片二 2000 (第三筆) 而「移到第一筆/最後一筆」則會變成: 1.取得第一筆/最後一筆的權重 (讀取) 2.檢查夾擊,更改自己的權重 (寫入 1) 以實際例子來說,如果我們要繼續將相片二移動到第一筆: .取得第一筆(相片一)的 rank:1000 .將第一筆的 rank + 0 除以 2 得到 500,異動自己 結果就是: id title rank ------------------ 33 相片二 500 (第一筆) 34 相片一 1000 (第二筆) 35 相片三 1500 (第三筆) 由以上可以看到夾擊排序對於資料庫的壓力相對來說小很多, 這在追求效能最佳化的高覆載網站上是會有一定程度效果的… 但是夾擊排序最麻煩的地方在於夾擊空間的處理, 也就是當某兩筆資料之間的權重只相差一, 再也沒有空間可供別筆資料擠進來時,要以什麼樣的演算法做 rank 的重整, 這就是另一個故事了 XD 不知道有沒有人有更好的排序資料處理方式啊… orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.230.126
tkdmaf:我只有一句話:我看不懂的程式碼在那裡? 02/06 16:57
tkdmaf:基本上不見得是我小看各位。有時你們自己也在放大自己。 02/06 16:59
tkdmaf:我只能說:彼此沒照過面,連聊都沒聊過。 02/06 17:00
tkdmaf:都可以憑文章來知道事理對錯真的非常神奇。 02/06 17:00
tkdmaf:當然啦!或許我應該非常習慣被當成異類才對。(還不習慣) 02/06 17:01
tkdmaf:不過有些事,現在不做。將來還是要被別人做。 02/06 17:02
tkdmaf:習慣於堅守自己目前所見識到的,明白別人所不知道的道理。 02/06 17:06
tkdmaf:我該感到幸運的。就是身旁幾位業界資深工程師的照顧吧。 02/06 17:13
tkdmaf:而該感嘆的卻是:究竟繩子綁的是我?還是各位? 02/06 17:16
tkdmaf:最後還是那句話:歡迎拿程式碼來電我。 02/06 17:19
tkdmaf:其他的再講下去,其實還是文字遊戲沒完沒了。 02/06 17:19
UniFish:樓上和這篇的水準有極大的差異,我倒對演算法比較有興趣 02/06 17:45
dryman:@tk: 如果和一個人意見不和,可能是那個人有問題 02/06 19:28
dryman:但如果很多人都跟你意見不和,問題多半出在你自己身上 02/06 19:29
dryman:如果認定說「繩子綁的是我?還是各位?」你很難跳出自己的 02/06 19:29
dryman:邏輯漏洞。不如放下身段看看別人究竟是想表達什麼吧 02/06 19:30
chen22:tkdmaf你就承認你low吧 虛心接受放寬眼界吧 02/06 21:06
tkdmaf:請拿程式碼來電,不然誰知道誰high誰low啊? 02/06 21:47
tkdmaf:我講的你們也不信不是嗎?眼界高低?這問題是隨人去想的。 02/06 21:48
tkdmaf:你們都認為自己真正放寬眼界的話~~~~~~~~~~~~~ 02/06 21:50
tkdmaf:先問問自己:其實做得不夠的地方搞不好還很多。 02/06 21:50
tkdmaf:我的眼界我的視線,嗯!站在我面前得好幾個非地球人類。 02/06 21:51
tkdmaf:把你們的問題匯總給那幾位我認識的前輩! 02/06 21:53
tkdmaf:每一個都嘛講:真的那麼會講?程式碼拿來我看看。 02/06 21:53
rocky823:真的病的不輕 :) 02/06 21:57
tkdmaf:看不到實際的東西,說真的,討論起來也就一堆口水橫飛。 02/06 21:57
tkdmaf:雖然我也製造了很多。什麼時候能夠有實際的東西來談論? 02/06 21:58
tkdmaf:最後就會淪於論人品德或是一些人品爆發的情形出現而已。 02/06 21:59
UniFish:我拿給我幾個大學同學看,都說都幾歲還在講一講就要PK 02/06 22:11
UniFish:好像小朋友要拿四驅車出來看誰跑得快似的~(攤手) 02/06 22:11
tkdmaf:不pk一下難道要上來搏感情? 02/06 22:14
tkdmaf:也不是不行啦!但是~~~~我不想做作裝笑臉奉承。 02/06 22:14
andymai:@@但是PK拿程式碼出來也沒什麼不對?我整篇看下來還是不懂 02/06 22:15
tkdmaf:我寧願千夫所指,因為……人都相信自己眼界所見的事物。 02/06 22:15
tkdmaf:假如我要跟各位妥協!那我過去的努力等於是白費。 02/06 22:18
tkdmaf:最重要的是因為:我看到了一位完全不同於一般工程師的人物 02/06 22:20
tkdmaf:而他現在不單單是我的同學、老師,也是我老闆。 02/06 22:20
UniFish:你太認真了~買個雞排回來輕鬆爬笨版吧~爭這能幹嘛? 02/06 22:20
andymai:反覆的看~總覺得後來的推文有"屈打成招"的意味?XD好啦!好 02/06 22:22
andymai:啦!東西咧?快拿來讓大家開開眼界吧... 02/06 22:22
andymai:不...爭言論是無意義的~但爭技術就不同了...技術就是要互 02/06 22:23
andymai:相切磋才會越來越進步啊... 02/06 22:24
TonyQ:要拼code也有要情境啊...-_-# 02/07 01:26
TonyQ:看哪一邊要先講個情境才有拼code的空間咩... 02/07 01:26
TonyQ:我的感想是架構是用來用的,不是用來說的。 02/07 01:30
TonyQ:我覺得如果今天的爭執點在名詞定義,gpmm這篇文章已經寫 02/07 01:31
TonyQ:了它對名詞的定義,你有意見的可以針對你有出入的地方去討論 02/07 01:31
TonyQ:如果今天是私人恩怨覺得被貶低,你可以舉情境跟對方打擂台, 02/07 01:31
TonyQ:沒什麼妥協或者白費啦,手在你手上觀念在你腦裡,誰想去改 02/07 01:32
TonyQ:變你啊......只是你看到的跟我們看到的不一樣而已。 02/07 01:32
TonyQ:可能你不是專職前端的,看不見前端世界需要架構化的部份。 02/07 01:32
TonyQ:你說你看不懂的code在哪?我想這世界上沒有看不懂的code吧, 02/07 01:33
TonyQ:就算是 Assembly ,也能透過學習看懂。這好像沒意義。 02/07 01:33
gpmm:其實我好想知道大家對於這種排序結構的想法噢ˊˋ(畫圈圈) 02/07 03:42
arrack:的確可以降低負擔,但我實際測試的結果,1萬筆差異在6ms內 02/07 04:45
xmimicx:為什麼不用link list? 02/07 04:57
arrack:我算錯了,是一千筆 02/07 05:11
UniFish:要用Quick Sort看看嗎? 02/07 10:54
shimuraken:TK..沒有誰HIGH誰LOW的問題..只有符不符合使用者需求的 02/07 11:34
shimuraken:問題好嗎..@_@ 02/07 11:35
tkdmaf:樓上!這話你應該是講給chen22聽才對吧。又不是我說的。 02/07 12:22
tkdmaf:不過你講對一件事:符不符使用者需求。簡單來說...... 02/07 12:24
tkdmaf:我們沒有挑選技術和語言的權利。但是客戶有。 02/07 12:24
tkdmaf:這也是為什麼我公司只要客戶出得起錢,我們完全依照客戶所 02/07 12:25
tkdmaf:要求的內容去做。 02/07 12:25
tkdmaf:就像我個人並不是很喜歡JSP。但這次案子就是進來。 02/07 12:26
tkdmaf:所以討厭歸討厭還是把他做完了。 02/07 12:26
tkdmaf:最近上頭又要交辦ASP的案子,我連寫都沒寫過。 02/07 12:28
tkdmaf:還不是一樣客戶要就是要做。沒人在關心寫的是什麼語言。 02/07 12:28
tkdmaf:對一個程式設計師而言,語言不是問題。程式設計才是問題。 02/07 12:32
tkdmaf:對一個各位喜歡使用的「前端工程師」這個名詞而言。 02/07 12:37
tkdmaf:他的工作,也不過就只是善用他掌握的技術力去符合客戶需求 02/07 12:38
tkdmaf:雖然這在我們公司,仍然只會稱其為:網頁設計師。 02/07 12:38
tkdmaf:只不過,名稱並不損及他的地位以及薪資。 02/07 12:40
TonyQ:那至少你該知道在有些別的公司,這樣的職位叫前端工程師了 02/07 13:26
TonyQ:所謂沒有挑選語言跟技術的權力,那只有在你是作接案公司的 02/07 13:34
TonyQ:前提下才會是這樣。當你是做產品時就不會是這樣了。 02/07 13:35
TonyQ:這裡也不是沒有語言多棲或者是走專案市場過來的人,這種基本 02/07 13:35
TonyQ:觀念不用一直拿出來說教好像不講人家就不懂一樣...... 02/07 13:36
TonyQ:你的觀念講再多,永遠只適用你的環境、你的公司。 02/07 13:37
TonyQ:但是這裡有很多可能甚至是你的公司可能沒做過的東西, 02/07 13:37
TonyQ:比方說當我在玩 embbed system 上的server的案子時,就有 02/07 13:38
TonyQ:很多東西是跟一般 html 上看得到的東西是不一樣的,還要搞 02/07 13:38
TonyQ:activeX + javascript 的合作等。 02/07 13:39
TonyQ:與其講一堆名詞,講講做過什麼了不起的架構分享一下怎麼作得 02/07 13:39
TonyQ:這樣不是很好? 02/07 13:39
TonyQ:講一講用php 重構+模組化做過什麼了不起的東西,這樣也很好 02/07 13:40
superpai:希望在這個版是多分享一下Photoshop技巧 02/07 13:40
chen22:今天重點已經不是title叫啥了 而tk你的用詞跟態度擺明就是 02/07 13:43
chen22:看不起"前端"看不起"設計" 只有自己寫後端最高尚地位崇高? 02/07 13:44
TonyQ:倒是沒什麼好看不看得起的啦,在不同公司地位本來就會不一樣 02/07 13:45
TonyQ:如果是台灣的接案公司,說真的,搞定客戶的需求比較重要, 02/07 13:45
TonyQ:誰管你架構或什麼前端啊,東西會動能看就好。 02/07 13:45
TonyQ:經典中的經典就是政府內部系統,我看過幾個,都是嘆為觀止 02/07 13:46
TonyQ:如果是作產品的,自然就比較不會這樣亂來了。 02/07 13:47
chen22:是沒啥好看不看得起沒錯阿,所以正是我要說的tk擺明就是 02/07 13:47
tkdmaf:正因為看得起他們而且非常需要他們。所以通稱:網頁設計師 02/07 14:26
tkdmaf:要在網頁設計師中硬是分出了前端工程師這個詞。 02/07 14:27
tkdmaf:好讓自己的地位像徵的比網頁設計師更高尚的究竟是誰? 02/07 14:28
tkdmaf:沒有了網頁設計師,我程式架構寫得再好都是垃圾! 02/07 14:29
tkdmaf:人們創造更多的名詞,無非就只是為了表達地位的不同罷了。 02/07 14:31
tkdmaf:可說穿了還不就是這個版的標題:WEB DESIGN。網頁設計。 02/07 14:35
xiphoid:這位施主為需如此執著於名稱與地位,從php=網頁程式設計, 02/07 16:05
xiphoid:腳本語言,爭到設計師/工程師。如果對「前端工程師」都要 02/07 16:05
xiphoid:這樣反應,那看到User Experience Designer/Developer 02/07 16:05
xiphoid:User Interface Designer/Developer、 02/07 16:05
xiphoid:Usability Consultant、Information Architect、 02/07 16:06
xiphoid:Content Strategist等職稱要崩潰嗎。只是工作專業的劃分 02/07 16:07
xiphoid:而已。附帶一提Python是Linux Journal 2010年讀者票選的 02/07 16:07
xiphoid:Best Programming Language跟 02/07 16:07
xiphoid:Best "Scripting" Language(PHP第二)。 02/07 16:09
LFking:想知道排序+1 02/08 17:16
xiphoid:http://j.mp/hMWLDv 02/08 17:43