『壹』 程序員的就業前景怎麼樣
有人說程序員太累,工作枯燥,每天加班,早衰。程序員相對較累,這個是事實,工作枯燥,如果你喜歡這個職業,就不會枯燥,這裡面的水很深,還到不了你感覺沒什麼可學的,枯燥的地步。早衰:別聽任胡說,干什麼逗得照顧好自己的生活,先生再活,鍛煉,party,還是豐富多彩的。
有人說程序員發展前景不大,只能在背後默默編碼.君不見現今大佬出自IT居多,將來的空間,星辰大海。編碼並不低等,收入也不會低,駟馬高車,華服高官,還停留在封建社會。程序員並不是做不了管理和高層。沒有機會坐高管啊,只是做不了高官君不見 求伯君 王江民 雷軍 周鴻禕都是程序員出身
有人說社會上程序員太多了,就業成問題。將來的優秀的程序員只會需求越來越多,一定的。只是北大青鳥們會輸送(hui diao)一批看上去不那麼高大上的人才。
也有人說計算機、軟體只是個工具,學這個沒前途。這叫理由嗎?不是工具的貌似只能種糧食,喂牲畜。感覺這個是加分項目啊。其實,我說了這些也沒什麼大用,你的理由已經夠充分了。干什麼堅定下去。
奧,忘了說一條,千萬別聽什麼程序員是青春飯。叫說這個話的面壁思過去。
『貳』 作為程序員自己的小團隊,怎麼找私活
很多程序員上班一般都是一個項目做兩到三周,如果完成自己的那一塊的話,就可能會有相對多的時間,這個時候,很多程序員就會想著多賺一點外塊,這個時候就會利用自己多出來的時間來接點私活,也有一些玩得好同事就會私下問到我這個問題,今天就來個大家分享一下我的一些經驗吧。
第二個通過這個途徑找到我的甲方,叫鵬哥。開發一個網站,總價一萬多,吃了上次的虧後,我自己就不想參與了,就找了一個讀者(小李)做。結果這個項目爛尾了。小李交付的產物我自己都覺得不好意思,bug 非常多。在我看來,既然項目的訂金已經收了,作為開發人員,至少應該交付一個說得過去的產物——負責任吧。
很遺憾,個人品牌招攬來的前兩個私活最後都搞砸了。這里有必要總結一下:作為程序員,既然打定主意要接私活,那麼接到的時候一定要珍惜。如果一開始覺得價錢低,就趁早拒絕,免得因為需求變動等等原因砸了招牌。
當然了,通過這個途徑也做成了四單,每單的價格差不多兩萬。這里就不再詳談了。
『叄』 c#程序設計的微軟開發語言
微軟c#語言定義主要是從C和C++繼承而來的,而且語言中的許多元素也反映了這一點.C#在設計者從C++繼承的可選選項方面比Java要廣泛一些(比如說struts),它還增加了自己新的特點(比方說源代碼版本定義).但它還太不成熟,不可能擠垮Java.C#還需要進化成一種開發者能夠接受和採用的語言.而微軟當前為它的這種新語言大造聲勢也是值得注意的.目前大家的反應是:這是對Java的反擊.
C#更像Java一些,雖然微軟在這個問題上保持沉默.這也是意料中的事情,我覺得,因為Java近來很成功而使用Java的公司都報告說它們在生產效率上比C++獲得了提高。 中間代碼
微軟在用戶選擇何時MSIL應該編譯成機器碼的時候是留了很大的餘地.微軟公司很小心的聲稱MSIL不是解釋性的,而是被編譯成了機器碼.它也明白許多--如果不是大多數的話--程序員認為Java程序要不可避免的比C編寫的任何東西都要慢.而這種實現方式決定了基於MSIL的程序(指的是用C#,Visual Basic,Managed C++--C++的一個符合CLS的版本--等語言編寫的程序)將在性能上超過解釋性的Java代碼.當然,這一點還需要得到事實證明,因為C#和其他生成MSIL的編譯器還沒有發布.但是Java JIT編譯器的普遍存在使得Java和C#在性能上相對相同.像C#是編譯語言而Java是解釋性的,之類的聲明只是商業技巧.Java的中間代碼和MSIL都是中間的匯編形式的語言,它們在運行時或其它的時候被編譯成機器代碼.
命名空間中的申明
當你創建一個程序的時候,你在一個命名空間里創建了一個或多個類.同在這個命名空間里(在類的外面)你還有可能聲明介面,枚舉類型和結構體.必須使用using關鍵字來引用其他命名空間的內容.
基本的數據類型
C#擁有比C,C++或者Java更廣泛的數據類型.這些類型是bool, byte, ubyte, short, ushort, int, uint, long, ulong, float, double,和decimal.像Java一樣,所有這些類型都有一個固定的大小.又像C和C++一樣,每個數據類型都有有符號和無符號兩種類型.與Java相同的是,一個字元變數包含的是一個16位的Unicode字元.C#新的數據類型是decimal數據類型,對於貨幣數據,它能存放28位10進制數字.
兩個基本類
一個名叫object的類是所有其他類的基類.而一個名叫string的類也像object一樣是這個語言的一部分.作為語言的一部分存在意味著編譯器有可能使用它--無論何時你在程序中寫入一句帶引號的字元串,編譯器會創建一個string對象來保存它.
參數傳遞
方法可以被聲明接受可變數目的參數.預設的參數傳遞方法是對基本數據類型進行值傳遞.ref關鍵字可以用來強迫一個變數通過引用傳遞,這使得一個變數可以接受一個返回值.out關鍵字也能聲明引用傳遞過程,與ref不同的地方是,它指明這個參數並不需要初始值.
與COM的集成
C#對Windows程序最大的賣點可能就是它與COM的無縫集成了,COM就是微軟的Win32組件技術.實際上,最終有可能在任何.NET語言里編寫COM客戶和伺服器端.C#編寫的類可以子類化一個以存在的COM組件;生成的類也能被作為一個COM組件使用,然後又能使用,比方說,JScript語言子類化它從而得到第三個COM組件.這種現象的結果是導致了一個運行環境的產生,在這個環境里的組件是網路服務,可以用任何.NET語言子類化.
索引下標
一個索引與屬性除了不使用屬性名來引用類成員而是用一個方括弧中的數字來匿名引用(就像用數組下標一樣)以外是相似的.
public class ListBox: Control
{
private string[] items;
public string this[int index]
{
get
{
return items[index];
}
set
{
items[index] = value;
Repaint();
}
}
}
可以用一個循環器來匿名引用字元串內部數組成員,就像下面這樣:
ListBox listBox = ...;
listBox[0] = hello;
Console.WriteLine(listBox[0]);
代理和反饋
一個代理對象包括了訪問一個特定對象的特定方法所需的信息.只要把它當成一個聰明的方法指針就行了.代理對象可以被移動到另一個地方,然後可以通過訪問它來對已存在的方法進行類型安全的調用.一個反饋方法是代理的特例.event關鍵字用在將在事件發生的時候被當成代理調用的方法聲明. C#(讀做 C sharp)是微軟公司在去年六月發布的一種新的編程語言,並定於在微軟職業開發者論壇(PDC)上登台亮相.C#是微軟公司研究員Anders Hejlsberg的最新成果.C#看起來與Java有著驚人的相似;它包括了諸如單一繼承,界面,與Java幾乎同樣的語法,和編譯成中間代碼再運行的過程.但是C#與Java有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司.NET windows網路框架的主角.
微軟c#語言定義主要是從C和C++繼承而來的,而且語言中的許多元素也反映了這一點.C#在設計者從C++繼承的可選選項方面比Java要廣泛一些(比如說structs),它還增加了自己新的特點(比方說源代碼版本定義).但它還太不成熟,不可能擠垮Java.C#還需要進化成一種開發者能夠接受和採用的語言.而微軟當前為它的這種新語言大造聲勢也是值得注意的.目前大家的反應是:這是對Java的反擊.
C++,這個詞在中國大陸的程序員圈子中通常被讀做「C加加」,而西方的程序員通常讀做「C plus plus」,它是一種使用非常廣泛的計算機編程語言。C++是一種靜態數據類型檢查的,支持多重編程範式的通用程序設計語言。它支持過程序程序設計、數據抽象、面向對象程序設計、泛型程序設計等多種程序設計風格。
貝爾實驗室的本賈尼·斯特勞斯特盧普(w:en:Bjarne Stroustrup)博士在20世紀80年代發明並實現了C++(最初這種語言被稱作「C with Classes」)。一開始C++是作為C語言的增強版出現的,從給C語言增加類開始,不斷的增加新特性。虛函數(virtual function)、運算符重載(operator overloading)、多重繼承(multiple inheritance)、模板(template)、異常(exception)、RTTI、名字空間(name space)逐漸被加入標准。1998年國際標准組織(ISO)頒布了C++程序設計語言的國際標准ISO/IEC 14882-1998。遺憾的是,由於C++語言過於復雜,以及他經歷了長年的演變,直到現在(2004年)只有少數幾個編譯器完全符合這個標准。
另外,就目前學習C++而言,可以認為他是一門獨立的語言;他並不依賴C語言,我們可以完全不學C語言,而直接學習C++。根據《C++編程思想》(Thinking in C++)一書所評述的,C++與C的效率往往相差在正負5%之間。所以有人認為在大多數場合C++ 完全可以取代C語言。
C++語言發展大概可以分為三個階段:第一階段從80年代到1995年。這一階段C++語言基本上是傳統類型上的面向對象語言,並且憑借著接近C語言的效率,在工業界使用的開發語言中占據了相當大份額;第二階段從1995年到2000年,這一階段由於標准模板庫(STL)和後來的Boost等程序庫的出現,泛型程序設計在C++中占據了越來越多的比重性。當然,同時由於Java、C#等語言的出現和硬體價格的大規模下降,C++受到了一定的沖擊;第三階段從2000年至今,由於以Loki、MPL等程序庫為代表的產生式編程和模板元編程的出現,C++出現了發展歷史上又一個新的高峰,這些新技術的出現以及和原有技術的融合,使C++已經成為當今主流程序設計語言中最復雜的一員。 這世界上沒有什麼比編程工具更加牽動程序員的心。VC、VB、DELPHI、JAVA……這些耀眼的名字不僅占據了程序員的生活,而且似乎已經成為了某種信仰。可是,伴隨著新世紀的腳步,這些信仰又一次遭遇了重大的挑戰。微軟,這頭被法官和黑客們折騰得既疲憊又惱怒的獅子,發誓要保住它頭上的王冠,拼盡全力,拿出了看家的本事——.NET戰略。作為 .NET的核心開發語言,C# 順理成章地浮出了水面。程序員們也就不得不做出一個痛苦的選擇,跟在誰的後面?要找出答案就不得不作一番比較和預測。筆者作為一個資深的程序員,斗膽在此狂言,權作拋磚引玉。
如果拋開一切非技術方面的因素,C# 無疑是這個星球上有史以來最好的編程語言,它幾乎集中了所有關於軟體開發和軟體工程研究的最新成果。面向對象、類型安全、組件技術、自動內存管理、跨平台異常處理、版本控制、代碼安全管理……你不可能在另外的一種語言中找到所有這些特性。盡管像很多人注意到的一樣,當我羅列上述特性時,總是讓人想到JAVA,然而C# 確實走得更遠。但現實的情況是,非技術的因素往往更能決定一個產品的未來,尤其在計算機軟體的歷史上,技術卓越的產品,如OS/2、Mac OS、UNIX等,都敗在了Windows那漂亮的臉蛋兒下。而這一次,微軟的角色好像從一個赤手空拳的革命者變成了仗勢欺人的老地主,如果真是要變天,那C# 這孩子豈不是投錯了胎?可能情形並非如此糟糕,畢竟瘦死的駱駝比馬大,而且C# 已經提交給了一個標准化組織,一旦成了國際標准,說不準真有哪個手癢的大俠(也有可能是微軟自己)給移植到Linux 和別的平台上。那樣的話,JAVA可就慘了。因為JAVA的用戶主要是網路服務的開發者和嵌入式設備軟體的開發者,嵌入式設備軟體不是C# 的用武之地,而在網路服務方面,C# 的即時編譯和本地代碼Cache方案比JAVA虛擬機具有絕對的性能優勢。何況C# 一旦成為一個像C++ 一樣的公共的標准,軟體開發商既可以省去JAVA的許可證費用,也不必擔心成為微軟的奴隸,那些反微軟的人士和主張廠商獨立的人士可能也不會有什麼意見。這可能正是微軟所期待的。
如果把C# 和 JAVA 在網路服務領域的爭奪比作未來制空權的爭奪的話,那麼C# 和傳統通用快速開發工具——VB、DELPHI等的較量將是地地道道的白刃戰。可能最慘的程序員就是VB程序員,在微軟,VB就像離任的柯林頓,不但失去了所有的光輝,而且亂事纏身。想想吧,VB6寫的項目必須用轉換工具轉換成基於.NET的代碼才能在VB7中調入,幾乎面目全非。由於VB7遵循為迎合.NET而建立的通用語言規范(CLS),幾乎把所有原來只在C++、JAVA等語言中可以運用的特性統統加了進來,只是語法和原來兼容。如果你是第一次在VB7中看到自己的舊VB6項目轉換之後的代碼,一定要當心你的心臟!所以,努力吧,別告訴我你將就此退休。DELPHI的狀況也好不到哪裡去,原來的看家本領是做起應用來又快又好,可現在看看最新的Beta 1, 你會感到如此熟悉,眾多的屬性列表、組件……誰讓你窮呢,連總設計師都養不住。
其實在編程語言中真正的霸主多年來一直是C++,所有的操作系統和絕大多數的商品軟體都是用C++作為主要開發語言的。JAVA的程序員絕大多數也是C++的愛好者,PHP的成功裡面也有類似C++的語法的功勞。在操作系統、設備驅動程序、視頻游戲等領域,C++在很長的時間內仍將占據主要地位,而在數量最大的應用軟體的開發上,C# 很可能取代C++的位置。首先,C# 和JAVA一樣,簡直就是照搬了C++的部分語法,因此,對於數量眾多的C++程序員學習起來很容易上手,另外,對於新手來說,比C++要簡單一些。其次,Windows是目前占壟斷地位的平台,而開發Windows應用,當然微軟的聲音是不能忽略的。最重要的是,相對於C++,用C# 開發應用軟體可以大大縮短開發周期,同時可以利用原來除用戶界面代碼之外的C++代碼。
但是,C# 也有弱點。首先,在一些版本較舊的Windows平台上,C# 的程序還不能運行,因為C# 程序需要 .NET運行庫作為基礎,而 .NET運行庫作為現在的的Windows(XP及以後版本)的一部分發行, Windows Me 和 Windows 2000用戶只能以Service Pack的形式安裝使用。其次,C# 能夠使用的組件或庫還只有 .NET 運行庫等很少的選擇,沒有豐富的第三方軟體庫可用,這需要有一個過程,同時各軟體開發商的支持也很重要。第三,JAVA的成功因素里有一些是反微軟陣營的吹捧,雖然「只寫一次,到處運行」只是一句口號,但畢竟已經是一種成熟的技術。而C# 的鼓吹者目前只有名聲不佳的微軟,且只能運行在Windows上。實際上這兩種語言都不是不可替代的,理智的說,對軟體開發商而言,什麼用的最熟什麼就是最好的工具。尤其對C++的使用者,C# 沒有帶來任何新東西,因為.NET運行庫在C++中也可以使用,沒有要換的絕對的理由。
綜上所述,我個人認為,近幾年,C# 將不可避免地崛起,在Windows平台上成為主角,而JAVA將在UNIX、Linux等平台上成為霸主,C++ 將繼續在系統軟體領域大展拳腳。非常有意思的是,這些語言的語法極其接近,因為JAVA和C# 都是由C++發展而來的。其他的開發工具當然還會在相當長的時間里繼續他們的旅程,不過在市場份額上,將不可避免地受到沖擊。
『肆』 你對底層程序員有何看法他們的主要工作是什麼
你對底層程序員有何看法?他們的主要工作是什麼?
程序員,外面都說人傻,錢多,死得早。
不過我本人是程序員,所以不完全認同,但是也不能說沒有。程序員因為天天和代碼打交道,代碼是很多邏輯的部分,所以程序員一般邏輯思維不會太差,但是整體來說和人交接和情商就比較低。
c
1.自己把技術學到位。往大公司發展,才能真正地學到東西。2.實在不行,用做程序員這幾年的資金,做點小生意,有魄力,就往大的方面發展。要不就安安逸逸過一生。
『伍』 我是一名程序員,現在我存在一個問題:每次接領導安排開發任務時就緊張,沒思路,因為我看別人代碼都能看
很正常,證明你還是個初級程序員,慢慢來,大牛都是這樣過來的。什麼都不要怕,主要多積累,多學習。。。That's All