⑴ 程序員需要學什麼
程序員可以分為很多種,像Unix程序員、Windows程序員,或是C++程序員、Delphi程序員,
1. 嘉華職業教育程序員首先學的就是各種腳本,asp、jsp、php等等,這些東西大同小異,基本可以舉一反三。
2. 資料庫,
資料庫連接池和事務機制是非常重要的,應該知道資料庫用什麼來保證事務,連接池如何實現,這些都是商務應用的關鍵。譬如,目前很多的應用服務,像weblogic、MTS,都包含事務處理,可以說好的事務處理決定了他們的競爭力。
3. 組件技術
現在的Web應用推動了組件技術的發展。以前,從老式的靜態庫、動態庫(dll),到現在的COM/DCOM,再到正在興起中的Web Service;從單機調用,到基於內部網的分布式調用,到現在基於Internet的分布式計算。現在的應用都是基於組件的n層結構,最明顯的就是COM和javaBean。
這些東西體現了軟體架構的發展,以前是基於單機的應用,然後是C/S結構,到現在的B/S結構。程序員一定要注意軟體技術的發展趨勢,只有這樣,才不至於被淹沒在技術的洪流中。
4. 網路技術
這可以說是程序員最應該懂得東西。起碼,應該知道伺服器的機制,要明白Http協議。就拿IIS來說,要懂得web應用程序運行的進程安全和IIS的關系,懂得ISApi的作用。
如果有時間,就看看TCP/IP,看看winsock,也可以到嘉華職業教育申請免費聽課。
我所說的這些都是基於微軟技術下的東西,其他的像Java方面的東西都可以對照參考,就不多說了,這也是我這幾年來的一些心得。總之,學海無涯,每當接觸一些新的東西,就會發現自己的不足,同時也就覺得基礎知識的重要。說實話,像我們做應用開發,用別人的東西,在現在這種情況下,新的技術層出不窮,稍不注意就會被甩開,這也是沒有辦法的事情。
.
.
.
.
.
.
.
.
..
.
..
.
.
.
.
.
喜歡陽光的人,喜歡坐在冬日的太陽底下的躺椅上,眯著眼兒,看一會兒閑書,喝一壺清茶,吃幾粒瓜子兒,掰下一塊兒豆腐乾,放到身邊也眯著眼兒的老貓的嘴裡。
喜歡陽光的人,喜歡坐在秋日的太陽底下的葡萄架下,讓陽光透過葡萄葉子,斑斑點點的灑落滿身,讀一闕兒秋詞,嘆一句兒天涼好個秋,撿一片兒落葉,思一會兒寂寥。
喜歡陽光的人,喜歡坐在夏日傍晚的河灘上,對著半江瑟瑟半江紅的河面,聽漁舟晚唱,看村子裡裊裊升起的炊煙,思戀媽媽做的晚飯。
喜歡陽光的人,喜歡春日裡躺在陽光下的綠草坪上,看白雲朵朵游弋在蔚藍的天空,聽著小孩子們嬉鬧的歡笑聲,感受著嫩嫩的小草的柔和的觸摸,心裡軟軟的,酥酥的,盪漾開了的是對於陽光的熱愛,對於生活的感悟。
思念的風箏斷了線,
隨著風塵淡淡飄遠。
看著又是一年秋瑟,
你的感覺還是那麼單薄。
那些年最喜歡白天,
白天,可以天天坐在你的旁邊。
這些年最喜歡黑夜,
夢里,總是在重復離你不遠的那些年。
你是一隻自由鳥,
別了我這一棵梧桐樹,還有一片雲與天。
我是一棵梧桐木,
沒了你這一隻自由鳥,剩下的還有什麼我會去要?
老照片看了一遍又一遍,
總是勾勒著你現在臉上的凹陷。
你的感覺像一陣風一樣襲來,
捉摸不到行蹤,又冰冷的刺穿我假裝的不難過。
你知道我多想,
多想在你的面前揭開我的心事,也讓你明白我的心願。
你知道我有多想,
多想坐在傷心的你旁邊,也讓你體會我的溫暖。
你知道我到底有多想,
多想在你無聊的時候和你聊天,也好讓我在你的人生中也有兩個人那樣的時光。
可到了現在,我有多可憐,
只有孤單的時候去想你,越是想你就越是孤單。
我也許只是你心靈書上的一個逗號點,
也曾你讓你心裡有過那麼一次停頓,之後便消失不見。
就等一切的歲月都已寫完,而你再去翻看這一本人生時,
我可不可以求求你,不要把刻著我名字的這個小點輕輕淡淡的忽略。
因為它是你留給我的念,也是我留給你的戀。
秸梗花,禰曾有笑過,是否記得煙花綻放照亮夜空時;秸梗花,禰曾哭過,是否記得滿地的殘葉瘦梗沒人憐;秸梗花,禰曾有憂過,是否記得那年月圓時,禰是對月空吟的遊子。禰喜,禰憂,禰愁,禰的一顰一笑牽於心。流年間,恍如梨花千樹一夜放,鬢白紅瘦斷衷腸。
十八歲的流沙飄散在空中,隨風而逝。淡淡紫色秸梗花曾是十八年間唯一的信念。自從與秸梗花相遇,到相知。每一秒都洋溢著紫色的幸福。
十八歲時,我只守這我的這一朵秸梗花。那時有個約定叫十點之約;那時有個夢叫畢業後就牽手;那時有條路叫順道;那時…
我未曾給過繁華,也未曾給過錦帛,更無從有過快樂時光。因此我是不負責任的。所擁有的燦爛也只是如煙花綻放在夜空的一瞬。禰笑,如孩子般爛漫。我卻不安,因為我怕我沒有力量去保護這朵淡淡紫色的秸梗花。禰曾願與我邂逅著每一個心情,訴說每一份感觸。我曾願靜靜地傾聽每一種聲音,也會為禰說:這人怎麼能這樣…
時間像是倘在手中的水,無論怎樣緊握還是從指間一點點的流走。唯一不變的是對秸梗花的淡淡情愫。當時針敲響零點時,十八歲也隨著昨天一起逝去了,消失在這世間無處可尋。突然心好像空了,像是被偷走什麼重要的東西。誠恐,彷徨,不安如瘋長的藤蔓,爬滿了心房。是不是十八歲的情愫也如落葉般散去呢?沒有,桔梗的情愫並沒有消失,而是留在回憶里了,這一輩子也不會丟了。心這才微微地平靜了些。是啊!一生一世就夠了;來世可以相知相遇,不一定要相愛;可以做肝膽相照的朋友,不一定要耳鬢廝磨;可以成為至愛的親人,不一定要愛恨間糾結。依舊懷著對你淡淡的紫色情愫。至今我仍珍惜著,氤氳的情愫,如同葳蕤,一絲絲蕭瑟也與此情顯得格格不入,更是在氤氳後透徹著成熟的滋味。相信這一切便會是永恆,無可厚非。然,所有永恆在時間的消磨之後變得不堪一擊。再也經不起考驗,一碰就碎。對那淡淡的紫色情愫曾未變過,只是被現實給脫垮了。朋友對我說了句:蝶戀花。蝶為花醉,花卻隨風飛。風過無痕,但給我留下的是歲月的斑駁,十八歲的烙印。我知道這些不算什麼,但真的很難受,哽咽著。後來的後來我才明白最痛的痛不是不珍惜而錯過,而是珍惜了,依然失去。
「桃花依舊笑春風,人面不知何處去。」生活要繼續,但已是沒有了靈魂,一切如同行屍走肉般活著,沒有任何意義。那桔梗花依然再綻放著,可已是物是人非。氤氳早已灰飛煙滅,芬芳馥郁片刻化為灼熱刺傷瞳孔。低吟淺唱:玉容寂寞淚闌干,梨花一枝春帶雨。十八歲的年輪輾到十九歲,車輪下的桔梗花依舊散發出淡淡的幽香。我不斷的提醒自己:過去固然重要,但不是唯一,總是活在過去的人註定會失敗。這句話我是在日記里看到的,時間也久遠了,也記不清是誰說的了。懂了,不會有永恆不變的愛,地久天長的那是親情,是血脈相連的責任。所以我舉行了葬禮,把那份桔梗的情愫深深的埋葬在回憶的盡頭。或許這正如桔梗花的花語一樣吧,無望的愛!
已逝的十八歲,讓一切變得蒼白了許多。半段糾結的桔梗情,忽如在耳畔誓說著不變的諾言。幽幽紫色的情愫,磨滅不了,更是無可奈何。
⑵ 如何正確掌握Java的學習方法
作為掌握了JAVA技術,將來准備成為Java軟體工程師的人來說,要想成為JAVA工程師肯定要學習JAVA。一般的程序員或許只需知道一些JAVA的語法結構就可以應付了。但要成為高級JAVA工程師,我們需要對JAVA做比較深入的研究。為大家總結了以下三個方面的學習方法:
一、軟體開發學習路線。兩千多年的儒家思想孔孟之道,中庸的思想透入骨髓,既不冒進也不保守並非中庸之道,而是找尋學習軟體開發的正確路線與規律。從軟體開發人員的生涯規劃來講,我們可以大致分為三個階段,軟體工程師→軟體設計師→架構設計師或項目管理師。不想當元帥的士兵不是好士兵,不想當架構設計師或項目管理師的程序員也不是好的程序員。我們應該努力往上走。讓我們先整理一下開發應用軟體需要學習的主要技術。
A.基礎理論知識,如操作系統、編譯原理、數據結構與演算法、計算機原理等,它們並非不重要。如不想成為計算機科學家的話,可以採取「用到的時候再來學」的原則。
B.一門編程語言,現在基本上都是面向對象的語言,JAVA/C++/C#等等。如果做WEB開發的話還要學習HTML/Jav**ript等等。
C.一種方法學或者說思想,現在基本都是面向對象思想(OOA/OOD/設計模式)。由此而衍生的基於組件開發CBD/面向方面編程AOP等等。
D.一種關系型資料庫,ORACLE/SqlServer/DB2/MySQL等等。
E.一種提高生產率的IDE集成開發環境JBuilder/Eclipse/VS.NET等。
F.一種UML建模工具,用ROSE/VISIO/鋼筆進行建模。
G.一種軟體過程,RUP/XP/CMM等等,通過軟體過程來組織軟體開發的眾多活動,使開發流程專業化規范化。當然還有其他的一些軟體工程知識。
H.項目管理、體系結構、框架知識。
正確的路線應該是:B→C→E→F→G→H。
還需要補充幾點:
1、對於A與C要補充的是,我們應該在實踐中逐步領悟編程理論與編程思想。新技術雖然不斷涌現,更新速度令人眼花燎亂霧里看花;但萬變不離其宗,編程理論與編程思想的變化卻很慢。掌握了編程理論與編程思想你就會有撥雲見日之感。面向對象的思想在目前來講是相當關鍵的,是強勢技術之一,在上面需要多投入時間,給你的回報也會讓你驚喜。
2、對於資料庫來說是獨立學習的,這個時機就由你來決定吧。
3、編程語言作為學習軟體開發的主線,而其餘的作為輔線。
4、軟體工程師著重於B、C、E、D;軟體設計師著重於B、C、E、D、F;架構設計師著重於C、F、H。
二、JAVA學習路線。
1、基礎語法及JAVA原理。基礎語法和JAVA原理是地基,地基不牢靠,猶如沙地上建摩天大廈,是相當危險的。學習JAVA也是如此,必須要有扎實的基礎,你才能在J2EE、J2ME領域游刃有餘。參加SCJP(SUN公司認證的JAVA程序員)考試不失為一個好方法,原因之一是為了對得起你交的1200大洋考試費,你會更努力學習,原因之二是SCJP考試能夠讓你把基礎打得很牢靠,它要求你跟JDK一樣熟悉JAVA基礎知識;但是你千萬不要認為考過了SCJP就有多了不起,就能夠獲得軟體公司的青睞,就能夠獲取高薪,這樣的想法也是很危險的。獲得「真正」的SCJP只能證明你的基礎還過得去,但離實際開發還有很長的一段路要走。
2、特定API的學習。JAVA介入的領域很廣泛,不同的領域有不同的API,沒有人熟悉所有的API,對一般人而言只是熟悉工作中要用到的API。如果你做界面開發,那麼你需要學習Swing/AWT/SWT等API;如果你進行網路游戲開發,你需要深入了解網路API/多媒體API/2D3D等;如果你做WEB開發,就需要熟悉Servlet等API啦。總之,需要根據工作的需要或你的興趣發展方向去選擇學習特定的API。
3、開發工具的用法。在學習基礎語法與基本的面向對象概念時,從鍛煉語言熟練程度的角度考慮,我們推薦使用的工具是Editplus/JCreator+JDK,這時候不要急於上手JBuilder/Eclipse等集成開發環境,以免過於關注IDE的強大功能而分散對JAVA技術本身的注意力。過了這一階段你就可以開始熟悉IDE了。
4、OO思想的領悟。掌握了基礎語法和JAVA程序運行原理後,我們就可以用JAVA語言實現面向對象的思想了。面向對象,是一種方法學;是獨立於語言之外的編程思想;是CBD基於組件開發的基礎;屬於強勢技術之一。當以後因工作需要轉到別的面向對象語言的時候,你會感到特別的熟悉親切,學起來像喝涼水這么簡單。
使用面向對象的思想進行開發的基本過程是:
(1)調查收集需求。
(2)建立用例模型。
(3)從用例模型中識別分析類及類與類之間的靜態動態關系,從而建立分析模型。
(4)細化分析模型到設計模型。
(5)用具體的技術去實現。
(6)測試、部署、總結。
5、學習軟體工程。對小型項目而言,你可能認為軟體工程沒太大的必要。隨著項目的復雜性越來越高,軟體工程的必要性才會體現出來。
6、基本API的學習。進行軟體開發的時候,並不是什麼功能都需要我們去實現,也就是經典名言所說的「不需要重新發明輪子」。我們可以利用現成的類、組件、框架來搭建我們的應用,如SUN公司編寫好了眾多類實現一些底層功能,以及我們下載過來的JAR文件中包含的類,我們可以調用類中的方法來完成某些功能或繼承它。那麼這些類中究竟提供了哪些方法給我們使用?方法的參數個數及類型是?類的構造器需不需要參數?總不可能SUN公司的工程師打國際長途甚至飄洋過海來告訴你他編寫的類該如何使用吧。他們只能提供文檔給我們查看,JAVADOC文檔(參考文獻4.4)就是這樣的文檔,它可以說是程序員與程序員交流的文檔。
基本API指的是實現了一些底層功能的類,通用性較強的API,如字元串處理/輸入輸出等等。我們又把它成為類庫。熟悉API的方法一是多查JAVADOC文檔,二是使用JBuilder/Eclipse等IDE的代碼提示功能。
程序員日常工作包括很多活動,編輯、編譯及構建、調試、單元測試、版本控制、維持模型與代碼同步、文檔的更新等等,幾乎每一項活動都有專門的工具,如果獨立使用這些工具的話,你將會很痛苦,你需要在堆滿工具的任務欄上不斷的切換,效率很低下,也很容易出錯。在JBuilder、Eclipse等IDE中已經自動集成編輯器、編譯器、調試器、單元測試工具JUnit、自動構建工具ANT、版本控制工具CVS、DOC文檔生成與更新等等,甚至可以把UML建模工具也集成進去,又提供了豐富的向導幫助生成框架代碼,讓我們的開發變得更輕松。應該說IDE發展的趨勢就是集成軟體開發中要用到的幾乎所有工具。從開發效率的角度考慮,使用IDE是必經之路,也是從一個學生到一個職業程序員轉變的里程碑。
JAVA開發使用的IDE主要有Eclipse、JBuilder、JDeveloper、NetBeans等幾種;而Eclipse、JBuilder佔有的市場份額是最大的。JBuilder在近幾年來一直是JAVA集成開發環境中的霸主,它是由備受程序員尊敬的Borland公司開發,在硝煙彌漫的JAVAIDE大戰中,以其快速的版本更新擊敗IBM的VisualAgeforJAVA等而成就一番偉業。IBM在VisualAgeforJAVA上已經無利可圖之下,乾脆將之貢獻給開源社區,成為Eclipse的前身,真所謂「柳暗花明又一村」。浴火重生的Eclipse以其開放式的插件擴展機制、免費開源獲得廣大程序員(包括幾乎所有的骨灰級程序員)的青睞,極具發展潛力。
最後一點,成為一名優秀的JAVA工程師,我們需要掌握的專業知識和技能包括:熟悉java語言,理解面向對象的思想與設計模式,至少熟悉j2ee、j2me、j2se等開發體系中的一種;熟練使用Eclipse或Jbuilder等開發工具,理解MVC模式及實際應用;至少熟悉一種資料庫的開發和設計;具有一定的程序測試和設計分析能力。除此之外,良好的學習能力、團隊合作精神、強烈的責任心以及溝通能力也是必不可少的。
如果以上幾點你都能很好的做到了,那麼你就是一位優秀的JAVA工程師了