java如何編程 對于java基礎,是應該掌握底層原理,還是方法的熟練使用?
對于java基礎,是應該掌握底層原理,還是方法的熟練使用?兩者都要掌握并深入實踐。都說搞底層和算法的才厲害,學Java的感到自卑,怎么辦?這是一個偉大的方式來建立一個宇宙飛船,但有許多只是螺絲釘。搞算
對于java基礎,是應該掌握底層原理,還是方法的熟練使用?
兩者都要掌握并深入實踐。
都說搞底層和算法的才厲害,學Java的感到自卑,怎么辦?
這是一個偉大的方式來建立一個宇宙飛船,但有許多只是螺絲釘。
搞算法的人看不起搞工程的人,
搞操作系統(tǒng)內核的人看不起寫驅動的人,
搞體系結構的人看不起寫模塊的人,
搞嵌入式系統(tǒng)的人看不起寫應用的人,
寫背景的人看不起寫前景的人。
使用Mac OS X的工程師鄙視使用Linux的工程師,
使用Linux的工程師鄙視使用windows的工程師。
C語言工程師鄙視C工程師,
C工程師鄙視Java和C工程師,
Java工程師和C工程師互相鄙視。
有漂亮妻子的程序員鄙視沒有漂亮妻子的程序員。
有妻子的程序員鄙視沒有妻子的程序員。
沒有妻子和女友的程序員鄙視單身狗。
……
其實,想想上面的鄙視心態(tài)很簡單。一般來說,站在最高層的人的心態(tài)是我制定了游戲規(guī)則。你只是游戲中的一個棋子。當然,我可以看不起你。
但他真的創(chuàng)造了游戲規(guī)則嗎?顯然不是。
站在蔑視鏈頂端的大多數(shù)人也是這一層的螺絲釘。因此,大多數(shù)人沒有資格鄙視。
比如,你看不起蓋房子的工人嗎?事實上,真正的殺手是房子的設計師(當然,大多數(shù)設計師都是從一個地方復制到另一個地方,并不羨慕)。
所以如果這個蔑視鏈真的有意義的話,那么我想:底層的人比你付出更多的時間。Java更容易上手,C更難上手,算法更難上手。
但是優(yōu)秀Java程序員的門檻并沒有降低。同樣,做算法的人很難做出好的算法。大多數(shù)從事C語言開發(fā)的人不會獨立編寫操作系統(tǒng)。
如果你只是想繼續(xù)學習Java,你應該怎么做?只是時間和精力比別人多。
每種語言都有自己的優(yōu)勢。不要用Java的缺點來比較其他語言的優(yōu)點,而要充分發(fā)揮Java自身的優(yōu)點。
在做程序員的道路上,你掌握了什么概念或技術使你感覺自我提升突飛猛進?
我是甲方的ERP程序員,公司剛推出ERP系統(tǒng)時,大家都覺得上帝的存在太復雜了。
上線后,各種問題層出不窮,項目已通過驗收。乙方一聽我們的問題,就會有兩個動作:1)這個問題不在需求范圍內,需要付費解決;2)這個問題這個版本沒有解決,下一個版本可以解決。
顯然,這是個小問題。為什么不能解決?核心原因:沒有源代碼,不知道從哪里開始。ERP歸根結底是對數(shù)據(jù)庫的添加、刪除和修改。直到我明白了這兩點,ERP的“九字真言”終于越過了前三個字。(所謂ERP九字咒語是:先剛性,后固化,再優(yōu)化)。
我理解的兩點如下:1)真正理解ERP邏輯的人不是計算機工作者,而是業(yè)務骨干。ERP構建了最常見、最核心的業(yè)務邏輯,體現(xiàn)在操作流程和功能接口上。只有業(yè)務骨干才能真正理解這種設計的必要性。
2)只要程序員與業(yè)務主干相結合,盡管沒有源代碼,但還是有辦法看到添加、刪除、修改和查詢的代碼是如何操作數(shù)據(jù)庫的。這是SQL事件探查器跟蹤程序。
兩者結合后,ERP維護將變得非常簡單。畢竟,一個已經(jīng)上市幾十年的ERP產(chǎn)品具有很好的穩(wěn)定性和繼承性。那么,各種個性化報表的開發(fā)就非常簡單了。
隨著對業(yè)務編程越來越熟悉,這個團隊將對ERP產(chǎn)品有非常透徹的了解,終于有一天。乙方要求增加維修費,我們想了想,沒有,我們自己維修吧。然后,我們將ERP的生產(chǎn)功能分離,自行定制開發(fā),并逐步完善,越來越喜歡它。這是九字咒語的最后一個階段:優(yōu)化。
當然,這一過程的實現(xiàn)得益于ERP產(chǎn)品開發(fā)平臺的支持和自身的開發(fā)邏輯。大型工廠(包括國外SAP)的ERP從財務模塊開始,再到供應鏈,再到制造,再到商業(yè)智能。這決定了每個模塊是松散耦合的。在演化過程中,采用了多種接口方式,從硬寫數(shù)據(jù)庫到使用XML交換數(shù)據(jù),再到COM組件接口、API,甚至提出了整體開發(fā)平臺,并用開發(fā)平臺重寫業(yè)務文檔。基本上,這些資料可以在網(wǎng)上找到。如果你參加幾次由大工廠組織的開發(fā)培訓,就更容易開始。