• 17

請教在軟體業界的版友

tsaipifong wrote:
很厲害了我至今沒證照...(恕刪)

那個時候,才剛開始有這樣的東西,現在似乎難度更高,卻愈不值錢,好像是因為有考題流出。
本人覺得那是最難的認証之一。老實說 看過您們打上的那些文字,當天還作了惡夢…

村小民 wrote:
哇,變成在討論程式碼...(恕刪)

本人倒是對您的分數比較感興趣。從年薪百萬,到要自行創業,現在還好吧?看頭相是已有好緣份,要加油喔。

您的連結我點開了,結果發現,都是英文的,看起來好累。您能找到這樣的站並相邀大家較勁,想來身手不凡吧。
本人好久以來,程式都改用中文了。
恩,這些制度我在剛上任的時候就逐漸建立

1. Version Control:

在之前德國人自己沒做啥管理,常常出現兩個人做的東西複寫,

現在嚴格規定誰只能碰哪個檔案,這類問題減少很多.

但是仍然沒有每個version都back up,也沒說version 改了啥,因為老闆會一直開會..


2. Bug Tracking

之前的德國人有自己用excel作,但是從來都不給其他人看的,

後來建立了一套用excel的bug tracking 作業流程,叫下面的人maintain excel spreadsheet,但是因為打迷糊帳問題也層出不窮


3.Build/Testing/Release

這個現在他們有integration build tool,但是沒正式的測試方是我們也測得要死.



這些都不是基本問題,

基本問題是如你說的

1.各工程師不是實力不夠就是態度有問題

若態度有問題,其中一個可能是因為他們是約聘的.


2.承1,沒有首席工程師/IT主管,因為大家都沒實力,所以最後大問題都找主管做決策

3.系統規劃,因為沒文件,老闆每次改變需求就如改變心情一樣快,他自己也很難確定結構,因為他每次都覺得可以想更好的,導致最後文件遲遲都不肯出來,然而他有省錢省事的超及毛病,也沒有一位有商業會計經驗的幫助他規劃一套完整的產品需求.我們都用瞎猜的方式,要趕快做蛋事後來改變了又要重做!浪費許許多多時間

4.沒有文件導致測試非常困難

5.程式架構不正確

管理真的是超複雜的...真希望趕快解決或離開這種問題..

ScarleTAKE wrote:
找到人記得更新一下嘿

您找一個三萬的,一群至少破六的進來吵架了


我還是很感謝各方大老不吝地討論個人看法

不論好的壞的,我都有學習的地方

PS. 目前還在找
tsaipifong wrote:
其他部份,我依然堅持我的看法

.........
那我就再挑戰你把 null 防呆往後面搬移這件事情
我把前面的例子做點簡化如下

還沒搬移之前
因 mathodA()會拋出 NullPointerException
所以在spec上必須載明 throws NullPointerException
但是
如果把防呆往後搬移之後卻會變成如下

我必須因為mathodC()的拋出NullPointerException
我也得要在spec上載明mathodB()也拋出NullPointerException
但是methodB根本就不會出錯,不需要拋出NullPointerException
就因為防呆被搬移過,卻致使mathodB要做出不合理的規格?
這樣對嗎??


KillerChen2013 wrote:
.........那...(恕刪)



if(s==null)throw new NullPointerException();
這樣的寫法,在這隻程式裡,
對避免NullPointerException一點用處也沒有
我說明過,
個人建議的作法是拋出自訂的Exception擴充類別
以利在編譯期由工程師撰寫對應的處理

如果你還是堅持要拋NullPointerException
你也不需要做出不合理的規格
既然你已認定autoID()一定不會出null
程式碼如下即可
methodB完全可以運作,視null為無物

public void methodB(){
    methodC(autoID());
}


附帶一提
即使method要附加宣告throws NullPointerException
在if(s==null)移到methodC時
methodC 顯然才是真正需要附加的
而你卻加在A,B去了
kevinant2 wrote:
1. Version Control:

在之前德國人自己沒做啥管理,常常出現兩個人做的東西複寫,

現在嚴格規定誰只能碰哪個檔案,這類問題減少很多.

但是仍然沒有每個version都back up,也沒說version 改了啥,因為老闆會一直開會


version control and source control 一定要有工具喔

Mainline Pocket兄提到的工具不妨拿來用用

這類工具一般能自動幫你保存每一個更改的版本

還能做不同版本間的逐行逐行的code對比

還有誰何時check in/ check out 一清二楚

一旦多人開始同時開發或養系統,甚至多人同時改一個project or file,或者做code merge,這種工具一定要有,

不然你除非保證你的code只有你能碰

但問題若是這樣,東西是長不大的,特別你現在要學著管project,而不光是寫project
tsaipifong wrote:
if(s==null...(恕刪)

對於你的說法
我已經徹底無言以對了
也難怪老資格的前輩都早已不回應你
我不想再跟你解說了
教會你我也得不到任何好處

等你痛過
你才會知道痛
這就是大多數人的選擇

才短短幾年經驗
別以為就贏了絕大多數人
資深不會只是資深而已
阿~許多人都會這樣

我們是有這種工具可以逐行比對,也是我上任之後弄出來的,所以一個檔案事可以有多個人來handle

但是基本上每個module還是一個人作會比較好.

但是那種上線多少版本然後更改了啥的文件/control事沒有的

這方面的流程都沒問題


重點是組織及下屬工程師的態度

第一這群印度工程師會出現這些問題,有很多我是覺得以他們的年資不應該會出現的,還有很多需求居然會故意說"做不出來".

第二個是我們這些工程師沒有首席工程師,直接隸屬財務部門,由財務部門報備,然而那些人卻沒有任何一個展現可以當首席工程師的能力.

第三是我本身才進入這產業不到一年,我對借貸及金融系統設計及稅務規劃並沒任何業界經驗就被拱上這要負重大責任高位,我大學也不是學會計的.所以我打規格通常都是跟老闆討論,但是老闆也沒經過會計訓練所以最後變成我們瞎猜.瞎猜完後發現不對都已經做下去了又得全部改掉

第四是老闆喜歡省事貪小便宜,所有工程施皆為約聘,而且面談中也不好好面談只想速戰速決,也不想想看組織有啥問題,天真以為故意用低薪請剛畢業的開發師可以直接全部開發.他還覺得奇怪為啥永遠做不完


KillerChen2013 wrote:
對於你的說法我已經徹...(恕刪)


少在那邊倚老賣老了

RuntimeException本來就不該用在事務流程控制上
如果你舉的例子是用在無關事務流程控制的util類別
那也就算了


偏偏這就不是

試問無法在編輯期被查覺的例外
如何要讓工程師在程式面去做好事務流程控制?


國外文章討論例外處理的案例太多了

RuntimeException絕對不被建議用在事務流程控制上

自已好好去修習修習,隨便找就有一篇
http://javapapers.com/core-java/nullpointerexception-null-bad-good-and-ugly/

https://en.wikibooks.org/wiki/Java_Programming/Throwing_and_Catching_Exceptions

我就算工作資歷比你資淺,我也還懂得學
有講錯的,我絕對不恥於道歉
雖然短短3年工作經驗,我至少也在1997年就開始寫java了
你還真以為我就只學了3年!? 請問你1997年在幹嘛?

教我!? 算了吧你!!
就這串討論來說,我教你的還比較多!

無所謂
這串文章就留著讓明眼人看看所謂資深工程師的嘴臉與功力
恩~看了那麼多,雖然我大多都沒很懂,只有做過一些PHP的網站


但是我認為是在不可能會有exception的function的話,最好就不用throw exception,這樣萬一如果程式出錯的話,那就可以確定這程式並沒寫得夠嚴謹,

當然如果要在最後面用exception也是可以的,也可能比較安全,但是我相信在資深的人的眼中,嚴謹和不會出錯是最重要的.


很多人做了幾年之後就覺得會懂很多,然後有時會跟類似年資,或著是稍為年長的吵架,有時候會發現說其實大家所說的都是冰山的一部份,然而有些人說的比較完善有些人說得沒那麼完善或者是對方沒想道的.所以需心的互相學習,可以學習道更多,讓自己能力更強唷!

  • 17
內文搜尋
X
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 17)
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?