LV. 1
GP 0

【心得】寫程式基本觀念分享 - update 6/07

樓主 攻程猿 AtkProgApe
71 -

前言


曾經於2017年發表了篇程式的文章後,收到不少反饋,
許多人對程式有興趣,但卻不知道怎麼下手,
礙於實在忙碌,沒有時間一一答覆,所以決定花一些時間進取然後修正,再來做一個較完整的分享
本篇目的在於傳達,
如何去學習程式設計還有程式設計的目標是什麼這兩個主軸
(那篇文章還在,但是小弟抱歉,實在是因為包含六日都在學習,沒辦法答覆,
現在我重新整理一下重發)
而我要講述一下,這些東西都是我個人的心路歷程的分享,比不上外面那些大神們,
不過假如你非理工科系,或者對程式有興趣卻沒有方向的人,也許會有那麼點幫助。

以下自介=== 冗長可以略過 =======================================================

簡述

高職設計系,大學視覺傳達設計系學店(私立科大),在大學接觸了css與html後開始有興趣自學,
但始終摸不透javascript,後來做網頁設計時,接觸php,因為不熟悉程式語言,
導致很多東西無法實作,於是進入資策會六日java班半年後,
撰寫java至今(三年半),中間換過一次公司,但都在台中,
現在還在寫java,今年滿28歲,算一算寫程式資歷很淺,
不過,我寫程式的心路卻很深,因為我是連六日都在學習的那個,
至於大家最關心的就是pay的部分,第一份是27k,現在也不算太高,不過薪資不公開,
只能略透漏,在台中沒有百萬,但是有北部公司找我,大概都百萬,但礙於還要支付額外費用,沒有到120萬其實很難考慮..,換句話說在台中以生活水平大概就是在北部百萬年薪左右的水準,算低,版上有java前輩一年好幾百萬都正常,但這跟技術比較無關,跟產品有關。
(在網路上薪資怎麼講都好,一堆鍵盤年薪千萬,所以本人我敢照實說,因為這也是辛苦錢..)

※註解:這裡只是要講解,程式是做出來才能去談pay的重要性

能力

目前來說是專職全端系統開發,因為進入職場後都在撰寫java為主,
技術面向就是java spring security hibernate jpa,前端初期是使用primeface 與 jsf 配合一些javascript,
至於資料庫就是基本的一些sql撰寫 頂多用jdbc 或者 sp去跑,unit test略懂但是沒有寫過太多..
部屬是使用jenkins自動部屬,server用tomcat為主,docker觀念都略懂,
但這些是公司舊有技術(一堆雜七雜八的lib就不用太提及,畢竟bpm簽核之類又是另一回事),
我個人不太喜歡太舊的技術,所以最近自學angular9導入進我們的系統,
難的地方不是angular9本身,而是去跟現有的舊java系統做結合,
要把java與nodejs去結合,本身其實沒太多人這樣幹,
但是台灣大部份企業會有這樣的狀況,因為舊系統的狀況而遲遲不願意挑戰新的框架,
畢竟是一種賭注,有機會再提為什麼。
在接下來分享去講解,為什麼我不在意程式是什麼語言.
※註解 : angular我從來沒碰過,有興趣可以查一下,js三大框架中較難上手的,我得短短的時間學會並開發出全端與java串接的系統花一個月,這部分就是要講為什麼語言不重要
比較特別的是我會uiux,畢竟是設計系後來又切版練功,也會精進一些ux的東西,以 質感設計 (Material Design)為目標 至於工具.. ai ps xd sktch 常見的就這樣,
(這部分補述一下,台灣ux大多數因為技術限制生出一些奇妙的ux,事實上ux如果不懂程式多使用framework這個觀念,很難產出對的ux)

為什麼會去寫程式?      

程式設計有一個特點,就是硬實力,會就是會,姑且不論效能跟維護性的clean code(無暇程式碼)或者design pattern(設計模式)甚至到Security(安全)的功力如何,起碼只要寫得出來能夠達到需求,
畢竟在台灣,通常職場上很喜歡以學歷優先考量,對於私校學店科大的我,其實很劣勢,
但寫程式很像運動員,只要能在比賽拿到名次,打出成績,就是有一定的價值,
而程式就是,寫得出來就有產值。
這與市場性質有關,換句話說,今天程式賺不賺錢不再於程式本身,是在於產品,這也是為什麼程式薪水高低的差異(問題就在要找到賺錢的產品),而為什麼程式價值高,接下來也會帶到。

以上自介=== 冗長可以略過 =======================================================

本篇的重點在這邊,我會以影片的形式來去陳述一些程式的重點,
程式的語言學習其實網路上文章或者影片都有,但是我撰寫的路上,
發現很多人會覺得需要天份而放棄,
因此花了一些時間思考怎麼分享會比較好,
那最後決定以自己所學的一些技巧做成影片,並且加上文章讓大家比較清楚重點
所以我將以章節的解釋去傳導程式的觀念,而不是去講程式怎麼寫

但是因為還在工作,如果有問題,我會抽些時間回應(可能比較晚),
當作是一個交流的機會,程式這一行就是不斷看別人的code,再被電,就會成長了..
影片也不會很快更新(每周一兩次,總共12部左右)

目標與對象

會有這樣的想法,也是因為當初教導我程式的資策會趙令文老師的提點,
這篇也是希望傳承他教育程式的精神,
確實,我並非大神,所以比起那些google的天才腦袋,我顯得粗糙平凡,
但這樣的我都寫得出很多東西了,我想藉此分享給需要的人,
畢竟,很多人其實都碰過程式,但沒學起來,我就想分享我的一些技巧,
所以目標是給予沒碰過程式,卻有想要碰觸的人。
而這些都會以觀念引導,並不會教大家寫程式,但是我想觀念通了之後,
就算你想開店,也可以自己生出一個自己的網路商店了。

本文開始


第一篇,什麼是程式




第二篇,寫程式邏輯都要很好?


第三篇,為什麼要學習寫程式?


71
-
LV. 13
GP 44
2 樓 zz_zz wsx88432
0 -
我也是設計畢業的,目前正在自學前端,因為不想做設計所以轉跑道,但我就只是為了換跑道 不是有甚麼興趣想做甚麼東西,也不是看上這行業薪資等等,目前學下來不討厭 該繼續下去嗎?
0
-
LV. 48
GP 9k
3 樓 R.Halladay pig20004
0 -
剛從職訓局結訓
學了淺淺的CSS HTML5 JS
還在台中找工作中ˊˋ
前端感覺是個CP值很低 競爭超激烈的程式領域?
還有學完前端基礎要從哪個分支繼續學習比較好?
1.框架
2.後端
3.其他
0
-
LV. 33
GP 277
4 樓 假面紳士 a87072z
0 -
好強,我也是28歲
入這行才一年左右
剛進去時32,現在34
少少的
不過一部分是我不求上進啦!
我是.net的
0
-
LV. 33
GP 504
5 樓 人生肥宅 wax207
0 -
安安,我專業程式碼剪貼師也當過面試官,在這邊我有個觀念想分享給大家,

寫程式要有興趣
寫程式要有興趣
寫程式要有興趣

當然混口飯吃的很多,但這種人寫出來的程式會好嗎? 起碼我沒遇過。所以請先確認自己有興趣再踏入該行業。
0
-
LV. 1
GP 0
6 樓 攻程猿 AtkProgApe
0 -
其實很開心大家的回覆跟討論,我想漸漸也可以發現很神的前輩這樣。
我就先回覆一下,畢竟還有很長的東西要寫

我會資料庫結構跟演算法嗎?
其實我這種半路出家,認真說並沒有真的去跑人家很深的演算法,不過在第一份工作剛結束,
當時還很弱的時候有練習過中序後序,計算結果這類的事情,
老實說,必須要說,當時花了一天還兩天,教我是清大的前輩,他說我算快,但其實我邏輯是較差的那一位,只是,寫這個我覺得,除非你要用到資深的演算工作,不然在一般軟體市場可能不是很常用到。

再來關於大家說百萬都是高手工程師,我覺得還好,
我的前輩,也很多台G來的,那你說他們技術會很強嗎?應該說,他們底子深,
但是新技術他們卻不是這麼想要嘗試,
畢竟換掉框架的,是我這個寫梅他們深的人(他們java經驗十年起跳),
而薪資,他們絕對都是百萬起手(意思是在台中一年大概有100-120萬基本),
可是他們也就上班下班,反正我們也不太加班,只是專案趕的時候很可怕而已。

至於最後是,全端這條路,要分享其實可以講很多天,
前面有人有提到,真正高手其實前後端的撰寫不會太難沒錯,
但know how就是有差異,架構與模式還是有差異,注重的東西與表現還是有差

如果要講一個概念,大家知道php為什麼在台灣會火嗎?
理論上我提的angular這個在台灣市場還是參半,扯到的問題就是架構,
通常一體的framework有個好處,台灣大多自稱全端工程師的都是這種狀況,
但不能說這樣不對,而是只要寫出結果是客戶要的,管他是什麼東西對吧?
不過這就造就為什麼有一些有經驗的前輩提到,效能、bug還有一堆安全問題,畢竟要求有東西,不求長遠,快速開發的後遺症也是不少的。

所以如果真心想走前端的人,建議邊學程式的同時,去理解一下,程式的架構這件事情
(不要只是會mvc,而是要知道它的設定與設計模式,那才是長遠的路)
0
-
LV. 13
GP 71
7 樓 Xiu loveamy0321
0 -
我想請教一件事

Cheat Engine去打開看一些程式/遊戲的記憶體

到底是怎麼分辨出
哪一行是哪一行的動作
是慢慢測試出來的嗎....



0
-
LV. 26
GP 729
8 樓 virus apollo1988
0 -
好Cool唷,不過聽說軟體工程師聽說都很操就是了,一般都幾點下班呢?
0
-
LV. 31
GP 1k
9 樓 Denev14
0 -
寫程式其實很有趣的 懂得寫東西可以解決生活方方面面的問題
他也可以像是彈琴或是閱讀 不一定目標只是為了追求收入才去學習
我想懂程式完破解的大約都深刻的認識過
破解遊戲跟製作遊戲BXT的樂趣 遠遠比遊戲本身還好玩






0
-
LV. 28
GP 1k
10 樓 紫楓~光之翼 tbpfs
0 -
看到一個有趣的留言
小弟認為寫程式只需要懂得Who、What、Why這三各代表什麼,其餘的講白了只是複製貼上而已。

這句話很有趣
其實這段話本身並沒有錯
不過人生分三階段
見山是山
見山不是山
見山又是山

1,3階段的人都可以說出這句話
然後2階段的人不認同
0
-
LV. 36
GP 504
11 樓 ted200370
0 -
小的最近剛轉到工程師 目前還在試用期中
有點小問題請教各位高手
會覺得修改前人寫的程式好難 這樣是正常的嗎?

前一份工作也不是寫程式的 現在的工作則是要嘗試修改前人寫的程式來配合需求
轉到這份工作後理解到以前學的真的只是皮毛 看前人用不一樣的方式實做也覺得很厲害
知道自己程式能力並不是特別強 看別人寫的程式總是沒辦法一看就完全懂
還是得拆開來一步一步試看看跑出來的結果 才能大概知道是在做甚麼
幾次這樣嘗試拆解之後反而有點煩惱
這樣算是正常情況? 還是自己不太適合當工程師..
雖然聽說改別人寫的程式通常是很難的..但是有時還是會這樣懷疑
0
-
LV. 1
GP 0
12 樓 攻程猿 AtkProgApe
0 -
※ 引述《ted200370 (唯 )》之銘言
以前剛進這行,想著想成為能幹出框架的工程師,
進來後,發現有很多前輩都幹的出來而且東西好用,但薪水沒比較高。

我被學長給的評語是,看code超快,但細心度不夠。
我想你問的問題其實差在寫code的時間而以,
這裡要說,好的前輩會給你方向跟建議,而不是炫耀自己多強卻拿不出東西,
我有次看我主管的code,覺得超強但我不知道哪怪怪的,他只跟我說:我不一定對。

所以真的建議,相信自己,寫久了會進步,真的想快點進步就看上市框架的source code 很有幫助,

對了,那些百萬的工程神願不願意把自己的code秀出來讓大家review,這樣可以讓沒有年薪好幾個億的人來學習盡步啊!
0
-
未登入的勇者,要加入 13 樓的討論嗎?
板務人員:

710 筆精華,昨天 更新
一個月內新增 148
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】