iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 2
5

曾經看過下面這篇 blog 的童鞋,應該回首前塵,驚嚇不已
https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f
懶得看英文版的同學,可以看一下中文翻譯版
https://kknews.cc/tech/zl9q93.html

我的老天爺,這世道變了,就只是到資料庫取些資料,然後顯示在網頁上,怎麼看起來沒個三年五載是不可能的?
我從以前就一直有個想法,研發工程師是要分等級的,我很喜歡拿醫師來做比喻,你敢給一個才剛畢業的小夥子開刀嗎? 即使只是割個盲腸?

可是,在軟體業,很多真正厲害的人是不寫程式的(至少很少寫),寫程式的很多都是非資深工程師。
為什麼? 我個人認為,是因為工具太原始,或是換個角度說,相對於其他發展多年的學科,軟體開發還處在草莽期。整個開發環和工具還處於大航海時期,百家爭鳴,但是極不穩定,這可以從上面這篇 blog 看出一些端倪。如果您的資歷夠深,經歷過從

MS-DOS(DbaseIII) --> Windows --> Win95(Client-Server) --> Web1.0 --> Web2.0 --> Cloud --> HTML5

這些作業環境,每更新一次作業系統或是開發工具,對很多軟體公司而言,可能都是生死交關的事,很多公司就此消失。經歷了幾次這種生不如死的煎熬,生命當然就會想辦法找出路,所以很多新的想法、工具就會不斷地推出,所以 blog 所描述的情境就隨之而生,但這真的解決了問題? 還是創造了更多的問題?

舉個類似的例子,我只是要輛車子,可是每個工具都說它們的輪子有多麼美好、剎車皮有多棒,前燈有多閃亮,等等等。只要回去買 A的xx 、B的oo、C的qq 再請10個工人弄一個生產線,購買一些工具,在花個120天就可以搞出宇宙超級無敵戰艦。能不能別鬧了,大哥,我叫你大哥行不行,生命是多麼的短暫、美好,不應該浪費在這些事情上吧。

想像中的美好開發情境 vs AI-zen

michael: 早安, AI-zen
AI-zen: Good morning, michael
michael: 我昨天和 goo 公司討論過 CRM部分程式外包,咱們來 kick-off 一下
AI-zen: ok
michael: 你先弄個雛型給我,goo 是男性美妝的領導品牌,希望能追蹤並記錄客戶的體驗及 Issue,它們希望網頁 UX 風格類似 handbook,功能項目和之前為 giant car 開發類似,欄位不要太多,xxxx,xxxx 等需求
AI-zen: 他都是 B2C 的需求,需要 B2B 嗎 ? xxxx,  xxxxx 等
michael: 我想 xxxx, xxxx
AI-zen: 請稍後,我先搞一個 demo 版出來,請先喝個 coffee ...
michael: after coffee
AI-zen: michael, 請看一下我弄得 xxx, xxxx
michael: 這個功能要多加一些紀錄,那個 UX 要能動態設定,app 也好了嗎?
AI-zen:   (經過幾個來回)
michael: 難起來不錯,丟到 demo server 請 AI-test 測試一下 ....
AI-tool:
AI-zen:
等等

以上是我現在所能想像的最完美開發情境,如果可以這樣寫程式,我應該可以一直寫到天荒地老。不過讓我們回到現實,雖然 AlphaGo 已經可以打敗人類棋王柯潔,但是我們現在還是得一行一行寫程式。
有沒有更有效率的解決方案? 能不能多善用已經經過驗證、成熟的現有技術?

現在的主流做法是革命,我們已經聽過一個又一個、一代又一代、層出不窮的新技術,真是標準的長江後浪推前浪,前浪死在沙灘上,但是,新就是好? 舊技術真的就很差? 真正在軟體公司上班就會知道,除了極少部分新創,大部分的軟體公司都不會採用最新的技術,而是傾向使用已經經過驗證的工具或解決方案。在本系列文中,我會不斷地提出一個核心想法 [以資料庫為開發核心],就是在這種反思下的產生的一個想法,而且這個想法,已經實際開發出整套完整的小型ERP系統(大約 360 個 Tables)。

搞企業資訊系統的都知道,資訊系統簡單的說就是

設計表單輸入資料 --> 儲存到資料庫 --> 報表統計分析數字

當然,中間還有無數細節、無數的過帳、無數的商業邏輯,但是,最核心的還是對資料庫的存取。
對於 [以資料庫為開發核心] 的詳細說明,會在後面的系列文詳細說明,簡單的說就是 [專業分工、化繁為簡]

專業分工:就是前端處理 UI,後端處理 Data

化繁為簡:則是用一支通用 server 端的 js 程式,處理 95% 以上的資料存取功能

今天就先聊到這,希望您會喜歡。
Have a good day


上一篇
Day1:合抱之木,生於毫末;千里之行,始於足下。
下一篇
Day3:全端開發架構說明(一)
系列文
以資料庫為開發核心,利用通用 API 玩轉後端資料存取的概念與實作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言