導航:首頁 > 編程知識 > windows編程如何創業

windows編程如何創業

發布時間:2022-09-19 11:57:12

A. 個人搞軟體開發(windows系統上)該怎麼賺錢呢

要實現你的目標需要做兩件事:
採用適合你們的方式進行軟體開發
使用盡可能好的推銷渠道來達到賺錢的目的

Windows開發主要還是可以分為C語言或java
在實際工程項目中,C++/C#的開發平台就是VC/VS,Visual Studio,如果是手機開發的話,還有相應的SDK(windows phone SDK),這東西其實是收費的,不過目前我還沒聽說過誰買過,其中C#是發展的方向,集成度更高,編程更簡易高效,微軟內部的開發也在逐步向這個平台轉移,諾基亞據說也要靠WP系統來翻身,如果你還相信諾基亞的話,這其中也許存在一些商機。
JAVA由於其開源的特性,很受各種大牛的喜歡,不過我覺得對於大多數人來說,跟C系列僅僅是語法方面的差異,在圖形化編程方面要明顯遜色於C++/C#,有名氣的開發平台就是eclipse、netbeans。

然後是銷售渠道
很遺憾,目前無論是Winows或是其他電腦OS下的軟體並沒有一個很好的銷售渠道,國外的良好環境也更多的是依賴於使用者的自覺性與保護機制,國內目前還不行,這也是為什麼盜版軟體遍地皆是的原因之一,試問你自己用軟體到現在,買過多少正版的軟體?所以現在Windows軟體在開發的過程中就需要考慮到盈利模式的問題,比如將單機模式改為聯機模式,或是在免費的基礎上附加增值服務,具體採用哪種方式要看你們想做什麼了。

最後提一下Apple App,我就是做這個的,它的限制不在於蘋果電腦,現在的MAC都是搭載的intel晶元,跟普通PC沒有太大的區別了,普通PC也可以安裝MAC OS來開發,缺少的硬體也可以靠外接,主要的限制還是在於其開發資格的認證,這是需要花錢的,每年60美金,認證後你才可以使用蘋果的全球銷售渠道,目前來看,App Store是目前最成功的全球渠道了,但是否值得花錢去賣你的東西,還得你自己去決定,Xcode也不過是個平台,MAC與iOS的開發語言obj-c依然是面向對象的C系列,你如果會C++或C#,1周時間就可以過渡了

B. 自己想問一下,要想在window系統下編程,應該學習哪些編程語言。做數據統計、處理用。

編程是從你興趣開始, 現在興趣決定方向,有了方向在決定語言。
你也網路一下, 80x86匯編小站, 看看 站長寫的下面這幾篇文章, 或者 你直接聯系 這個站長 跟他交流編程方面的事情。

編程是什麼,什麼是編程?
如何正確入門Windows系統下C/C++學習領域?
掌握C/C++後,如何在Windows系統下開發有界面的程序?
如何正確入門Windows系統下驅動開發領域?
如何正確進入基於x86-64Bit Windows系統商業軟體破解領域?
如何正確的待匯編學習和反匯編學習?
成為VC++程序員,我需要學會哪些東西?

C. 我想學編程,應該學哪一類,求助

原文地址:http://coolshell.cn/articles/4990.html

博文如下:

前言

你是否覺得自己從學校畢業的時候只做過小玩具一樣的程序?走入職場後哪怕沒有什麼經驗也可以把以下這些課外練習走一遍(朋友的抱怨:學校課程總是從理論出發,作業項目都看不出有什麼實際作用,不如從工作中的需求出發)

建議:

不要亂買書,不要亂追新技術新名詞,基礎的東西經過很長時間積累而且還會在未來至少10年通用。

回顧一下歷史,看看歷史上時間線上技術的發展,你才能明白明天會是什麼樣。

一定要動手,例子不管多麼簡單,建議至少自己手敲一遍看看是否理解了里頭的細枝末節。

一定要學會思考,思考為什麼要這樣,而不是那樣。還要舉一反三地思考。

註:你也許會很奇怪為什麼下面的東西很偏Unix/linux,這是因為我覺得Windows下的編程可能會在未來很沒有前途,原因如下:

現在的用戶界面幾乎被兩個東西主宰了,1)Web,2)移動設備iOS或Android。Windows的圖形界面不吃香了。

越來越多的企業在用成本低性能高的Linux和各種開源技術來構架其系統,Windows的成本太高了。

微軟的東西變得太快了,很不持久,他們完全是在玩弄程序員。詳情參見《Windows編程革命史》

所以,我個人認為以後的趨勢是前端是Web+移動,後端是Linux+開源。開發這邊基本上沒Windows什麼事。

啟蒙入門

1、學習一門腳本語言,例如Python/Ruby

可以讓你擺脫對底層語言的恐懼感,腳本語言可以讓你很快開發出能用得上的小程序。實踐項目:

處理文本文件,或者csv(關鍵詞pythoncsv,pythonopen,pythonsys)讀一個本地文件,逐行處理(例如wordcount,或者處理log)

遍歷本地文件系統(sys,os,path),例如寫一個程序統計一個目錄下所有文件大小並按各種條件排序並保存結果

資料庫打交道(pythonsqlite),寫一個小腳本統計資料庫里條目數量

學會用各種print之類簡單粗暴的方式進行調試

學會用Google(phrase,domain,usereadertofollowtechblogs)

為什麼要學腳本語言,因為他們實在是太方便了,很多時候我們需要寫點小工具或是腳本來幫我們解決問題,你就會發現正規的編程語言太難用了。

2、用熟一種程序員的編輯器(不是IDE)和一些基本工具

Vim/Emacs/Notepad++,學會如何配置代碼補全,外觀,外部命令等。

SourceInsight(或ctag)

使用這些東西不是為了Cool,而是這些編輯器在查看、修改代碼/配置文章/日誌會更快更有效率。

3、熟悉Unix/LinuxShell和常見的命令行

如果你用windows,至少學會用虛擬機里的linux,vmwareplayer是免費的,裝個Ubuntu吧

一定要少用少用圖形界面。

學會使用man來查看幫助

文件系統結構和基本操作ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip…

學會使用一些文本操作命令sed/awk/grep/tail/less/more…

學會使用一些管理命令ps/top/lsof/netstat/kill/tcpmp/iptables/dd…

了解/etc目錄下的各種配置文章,學會查看/var/log下的系統日誌,以及/proc下的系統運行信息

了解正則表達式,使用正則表達式來查找文件。

對於程序員來說Unix/Linux比Windows簡單多了。(參看我四年前CSDN的博文《其實Unix很簡單》)學會使用Unix/Linux你會發現圖形界面在某些時候實在是太難用了,相當地相當地降低工作效率。

4、學習Web基礎(HTML/CSS/JS)+伺服器端技術(LAMP)

未來必然是Web的世界,學習WEB基礎的最佳網站是W3School。

學習HTML基本語法

學習CSS如何選中HTML元素並應用一些基本樣式(關鍵詞:boxmodel)

學會用Firefox+Firebug或chrome查看你覺得很炫的網頁結構,並動態修改。

學習使用Javascript操縱HTML元件。理解DOM和動態網頁(DynamicHTML:TheDefinitiveReference,3rdEdition-O'ReillyMedia)網上有免費的章節,足夠用了。或參看DOM。

學會用Firefox+Firebug或chrome調試Javascript代碼(設置斷點,查看變數,性能,控制台等)

在一台機器上配置Apache或Nginx

學習PHP,讓後台PHP和前台HTML進行數據交互,對伺服器相應瀏覽器請求形成初步認識。實現一個表單提交和反顯的功能。

把PHP連接本地或者遠程資料庫MySQL(MySQL和SQL現學現用夠了)

跟完一個名校的網路編程課程(例如:http://www.stanford.e/~ouster/cgi-bin/cs142-fall10/index.php)不要覺得需要多於一學期時間,大學生是全職一學期選3-5門課,你業余時間一定可以跟上

學習一個javascript庫(例如jQuery或ExtJS)+Ajax(非同步讀入一個伺服器端圖片或者資料庫內容)+JSON數據格式。

HTTP:TheDefinitiveGuide讀完前4章你就明白你每天上網用瀏覽器的時候發生的事情了(proxy,gateway,browsers)

做個小網站(例如:一個小的留言板,支持用戶登錄,Cookie/Session,增、刪、改、查,上傳圖片附件,分頁顯示)

買個域名,租個空間,做個自己的網站。

進階加深

1、C語言和操作系統調用

重新學C語言,理解指針和內存模型,用C語言實現一下各種經典的演算法和數據結構。推薦《計算機程序設計藝術》、《演算法導論》和《編程珠璣》。

學習(麻省理工免費課程)計算機科學和編程導論

學習(麻省理工免費課程)C語言內存管理

學習Unix/Linux系統調用(Unix高級環境編程),,了解系統層面的東西。

用這些系統知識操作一下文件系統,用戶(實現一個可以拷貝目錄樹的小程序)

用fork/wait/waitpid寫一個多進程的程序,用pthread寫一個多線程帶同步或互斥的程序。多進程多進程購票的程序。

用signal/kill/raise/alarm/pause/sigprocmask實現一個多進程間的信號量通信的程序。

學會使用gcc和gdb來編程和調試程序(參看我的《用gdb調試程序》)

學會使用makefile來編譯程序。(參看我的《跟我一起寫makefile》)

IPC和Socket的東西可以放到高級中來實踐。

學習WindowsSDK編程(Windows程序設計,MFC程序設計)

寫一個窗口,了解WinMain/WinProcere,以及Windows的消息機制。

寫一些程序來操作WindowsSDK中的資源文件或是各種圖形控制項,以及作圖的編程。

學習如何使用MSDN查看相關的SDK函數,各種WM_消息以及一些常式。

這本書中有很多常式,在實踐中請不要照抄,試著自己寫一個自己的常式。

不用太多於精通這些東西,因為GUI正在被Web取代,主要是了解一下Windows圖形界面的編程。@virushuo說:「我覺得GUI確實不那麼熱門了,但充分理解GUI工作原理是很重要的。包括移動設備開發,如果沒有基礎知識仍然很吃力。或者說移動設備開發必須理解GUI工作,或者在win那邊學,或者在mac/iOS上學」。

2、學習Java

Java的學習主要是看經典的CoreJava《Java核心技術編程》和《Java編程思想》(有兩卷,我僅鏈了第一卷,足夠了,因為Java的圖形界面了解就可以了)

學習JDK,學會查閱JavaAPIDocJavaPlatformSE6

了解一下Java這種虛擬機語言和C和Python語言在編譯和執行上的差別。從C、Java、Python思考一下「跨平台」這種技術。

學會使用IDEEclipse,使用Eclipse編譯,調試和開發Java程序。

建一個Tomcat的網站,嘗試一下JSP/Servlet/JDBC/MySQL的Web開發。把前面所說的那個PHP的小項目試著用JSP和Servlet實現一下。

3、Web的安全與架構


學習HTML5,網上有很多很多教程,以前酷殼也介紹過很多,我在這里就不羅列了。

學習Web開發的安全問題(參考新浪微博被攻擊的這個事,以及Ruby的這篇文章)

學習HTTPServer的rewrite機制,Nginx的反向代理機制,fast-cgi(如:PHP-FPM)

學習Web的靜態頁面緩存技術。

學習Web的非同步工作流處理,數據Cache,數據分區,負載均衡,水平擴展的構架。

實踐任務:

使用HTML5的canvas製作一些Web動畫。

嘗試在前面開發過的那個Web應用中進行SQL注入,JS注入,以及XSS攻擊。

把前面開發過的那個Web應用改成構造在Nginx+PHP-FPM+靜態頁面緩存的網站

4、學習關系型資料庫

你可以安裝MSSQLServer或MySQL來學習資料庫。

學習教科書里資料庫設計的那幾個範式,1NF,2NF,3NF,……

學習資料庫的存過,觸發器,視圖,建索引,游標等。

學習SQL語句,明白表連接的各種概念(參看《SQLJoin的圖示》)

學習如何優化資料庫查詢(參看《MySQL的優化》)

實踐任務:設計一個論壇的資料庫,至少滿足3NF,使用SQL語句查詢本周,本月的最新文章,評論最多的文章,最活躍用戶。

5、一些開發工具

學會使用SVN或Git來管理程序版本

學會使用JUnit來對Java進行單元測試。

學習C語言和Java語言的codingstandard或codingguideline。(我N年前寫過一篇關C語言非常簡單的文章——《編程修養》,這樣的東西你可以上網查一下,一大堆)。

推薦閱讀《代碼大全》《重構》《代碼整潔之道》

高級深入

1、C++/Java和面向對象

我個人以為學好C++,Java也就是舉手之勞。但是C++的學習曲線相當的陡。不過,我覺得C++是最需要學好的語言了。參看兩篇趣文「C++學習信心圖」和「21天學好C++」

學習(麻省理工免費課程)C++面向對象編程

讀我的「如何學好C++」中所推薦的那些書至少兩遍以上(如果你對C++的理解能夠深入到像我所寫的《C++虛函數表解析》或是《C++對象內存存局(上)(下)》,或是《C/C++返回內部靜態成員的陷阱》那就非常不錯了)

然後反思為什麼C++要干成這樣,Java則不是?你一定要學會對比C++和Java的不同。比如,Java中的初始化,垃圾回收,介面,異常,虛函數,等等。

實踐任務:

用C++實現一個BigInt,支持128位的整形的加減乘除的操作。

用C++封裝一個數據結構的容量,比如hashtable。

用C++封裝並實現一個智能指針(一定要使用模板)。

《設計模式》必需一讀,兩遍以上,思考一下,這23個模式的應用場景。主要是兩點:1)鍾愛組合而不是繼承,2)鍾愛介面而不是實現。(也推薦《深入淺出設計模式》)

實踐任務:

使用工廠模式實現一個內存池。

使用策略模式製做一個類其可以把文本文件進行左對齊,右對齊和中對齊。

使用命令模式實現一個命令行計算器,並支持undo和redo。

使用修飾模式實現一個酒店的房間價格訂價策略——旺季,服務,VIP、旅行團、等影響價格的因素。

學習STL的用法和其設計概念-容器,演算法,迭代器,函數子。如果可能,請讀一下其源碼。

實踐任務:嘗試使用面向對象、STL,設計模式、和WindowsSDK圖形編程的各種技能

做一個貪吃蛇或是俄羅斯方塊的游戲。支持不同的級別和難度。

做一個文件瀏覽器,可以瀏覽目錄下的文件,並可以對不同的文件有不同的操作,文本文件可以打開編輯,執行文件則執行之,mp3或avi文件可以播放,圖片文件可以展示圖片。

學習C++的一些類庫的設計,如:MFC(看看候捷老師的《深入淺出MFC》),Boost,ACE,CPPUnit,STL(STL可能會太難了,但是如果你能了解其中的設計模式和設計那就太好了,如果你能深入到我寫的《STLstring類的寫時拷貝技術》那就非常不錯了,ACE需要很強在的系統知識,參見後面的「加強對系統的了解」)

Java是真正的面向對象的語言,Java的設計模式多得不能再多,也是用來學習面向對象的設計模式的最佳語言了(參看Java中的設計模式)。

推薦閱讀《EffectiveJava》and《Java解惑》

學習Java的框架,Java的框架也是多,如Spring,Hibernate,Struts等等,主要是學習Java的設計,如IoC等。

Java的技術也是爛多,重點學習J2EE架構以及JMS,RMI,等消息傳遞和遠程調用的技術。

學習使用Java做WebService(官方教程在這里)

實踐任務:嘗試在Spring或Hibernate框架下構建一個有網路的WebService的遠程調用程序,並可以在兩個Service中通過JMS傳遞消息。

C++和Java都不是能在短時間內能學好的,C++玩是的深,Java玩的是廣,我建議兩者選一個。我個人的學習經歷是:

深究C++(我深究C/C++了十來年了)

學習Java的各種設計模式。

2、加強系統了解

重要閱讀下面的幾本書:

《Unix編程藝術》了解Unix系統領域中的設計和開發哲學、思想文化體系、原則與經驗。你一定會有一種醍醐灌頂的感覺。

《Unix網路編程卷1,套接字》這是一本看完你就明白網路編程的書。重要注意TCP、UDP,以及多路復用的系統調用select/poll/epoll的差別。

《TCP/IP詳解卷1:協議》-這是一本看完後你就可以當網路黑客的書。了解乙太網的的運作原理,了解TCP/IP的協議,運作原理以及如何TCP的調優。

實踐任務:

理解什麼是阻塞(同步IO),非阻塞(非同步IO),多路復用(select,poll,epoll)的IO技術。

寫一個網路聊天程序,有聊天伺服器和多個聊天客戶端(服務端用UDP對部分或所有的的聊天客戶端進Multicast或Broadcast)。

寫一個簡易的HTTP伺服器。

《Unix網路編程卷2,進程間通信》信號量,管道,共享內存,消息等各種IPC……這些技術好像有點老掉牙了,不過還是值得了解。

實踐任務:

主要實踐各種IPC進程序通信的方法。

嘗試寫一個管道程序,父子進程通過管道交換數據。

嘗試寫一個共享內存的程序,兩個進程通過共享內存交換一個C的結構體數組。

學習《Windows核心編程》一書。把CreateProcess,Windows線程、線程調度、線程同步(Event,信號量,互斥量)、非同步I/O,內存管理,DLL,這幾大塊搞精通。

實踐任務:使用CreateProcess啟動一個記事本或IE,並監控該程序的運行。把前面寫過的那個簡易的HTTP服務用線程池實現一下。寫一個DLL的鉤子程序監控指定窗口的關閉事件,或是記錄某個窗口的按鍵。

有了多線程、多進程通信,TCP/IP,套接字,C++和設計模式的基本,你可以研究一下ACE了。使用ACE重寫上述的聊天程序和HTTP伺服器(帶線程池)

實踐任務:通過以上的所有知識,嘗試

寫一個服務端給客戶端傳大文件,要求把100M的帶寬用到80%以上。(注意,磁碟I/O和網路I/O可能會很有問題,想一想怎麼解決,另外,請注意網路傳輸最大單元MTU)

了解BT下載的工作原理,用多進程的方式模擬BT下載的原理。

3、系統架構

負載均衡。HASH式的,純動態式的。(可以到Google學術里搜一些關於負載均衡的文章讀讀)

多層分布式系統–客戶端服務結點層、計算結點層、數據cache層,數據層。J2EE是經典的多層結構。

CDN系統–就近訪問,內容邊緣化。

P2P式系統,研究一下BT和電驢的演算法。比如:DHT演算法。

伺服器備份,雙機備份系統(Live-Standby和Live-Live系統),兩台機器如何通過心跳監測對方?集群主結點備份。

虛擬化技術,使用這個技術,可以把操作系統當應用程序一下切換或重新配置和部署。

學習Thrift,二進制的高性能的通訊中間件,支持數據(對象)序列化和多種類型的RPC服務。

學習Hadoop。

Hadoop框架中最核心的設計就是:MapRece和HDFS。MapRece的思想是由Google的一篇論文所提及而被廣為流傳的,簡單的

一句話解釋MapRece就是「任務的分解與結果的匯總」。HDFS是Hadoop分布式文件系統(HadoopDistributedFile

System)的縮寫,為分布式計算存儲提供了底層支持。

了解NoSQL資料庫(有人說可能是一個過渡炒作的技術),

不過因為超大規模以及高並發的純動態型網站日漸成為主流,而SNS類網站在數據存取過程中有著實時性等剛性需求,這使得目前NoSQL資料庫慢慢成了人們

所關注的焦點,並大有成為取代關系型資料庫而成為未來主流數據存儲模式的趨勢。當前NoSQL資料庫很多,大部分都是開源的,其中比較知名的

有:MemcacheDB、Redis、TokyoCabinet(升級版為Kyoto

Cabinet)、Flare、MongoDB、CouchDB、Cassandra、Voldemort等。

寫了那麼多,回顧一下,覺得自己相當的有成就感。希望大家不要嚇著,我自己這十來年也在不斷地學習,今天我也在學習中,人生本來就是一個不斷學習和練級的過程。不過,一定有漏的,也有不對的,還希望大家補充和更正。(我會根據大家的反饋隨時更新此文)歡迎大家通過我的微博(@左耳朵耗子)和twitter(@haoel)和我交流。

—–更新2011/07/19—–

1)有朋友奇怪為什麼我在這篇文章開頭說了web+移動,卻沒有在後面提到iOS/Android的前端開發。因為我心裡有一種感覺,移動設備上的UI最終也會被Javascript取代。大家可以用iPhone或Android看看google+,你就會明白了。

2)

有朋友說我這里的東西太多了,不能為了學習而學習,我非常同意。我在文章的前面也說了要思考。另外,千萬不要以為我說的這些東西是一些新的技術,這份攻略

里95%以上的全是基礎。而且都是久經考驗的基礎技術。即是可以讓你一通百通的技術,也是可以讓你找到一份不錯工作的技術。

3)有朋友說學

這些東西學完都40了,還不如想想怎麼去掙錢。我想告訴大家,一是我今年還沒有40歲,二是學無止境啊,三是我不覺得掙錢有多難,難的是怎麼讓你值那麼多

錢?無論是打工還是創業,是什麼東西讓你自己的價值,讓你公司的價值更值錢?別的地方我不敢說,對於互聯網或IT公司來說,技術實力絕對是其中之一。

4)有朋友說技術都是工具,不應該如此痴迷這句話沒有錯,有時候我們需要更多的是抬起頭來看看技術以外的事情,或者是說我們在作技術的時候不去思考為什麼會有這個技術,為什麼不是別的,問題不在於技術,問題在於我們死讀書,讀死書,成了技術的書獃子。

5)對於NoSQL,最近比較火,但我對其有點保守,所以,我只是說了解就可以。對於Hadoop,我覺得其在分布式系統上有巨大的潛力,所以需要學習。對於關系型資料庫,的確是很重要的東西,這點是我的疏忽,在原文里補充。

D. 程序員如何創業開公司

一、買幾本經典的編程書,把書上所有常式全部重新寫一遍,逐個比較和書上範例的差距,一步一步改善自己編程的風格和技巧。時間長了,自然就能寫出象書上常式一樣的代碼,甚至可以比書上寫得好。

二、基礎扎實後,多看看Linux 等系統級的源代碼,看看高手是如何寫的,就有感覺了。

三、通讀一下MSDN中所有的資料,這樣,「讀書破萬卷,下筆如有神」。

還有,一定要牢記軟體工程的鐵律:可能出錯的地方一定會出錯。每個變數都做初始化,引用每個參數都會做有效性檢查,在可能出錯的每個地方都會做邊界條件檢查,這樣開發出來的程序一定會穩固很多,就是出錯也會很容易修改。野路子出來的高手,一般開發速度很快,但做完後bug很多,經常需要很長時間修改。而真正的高手,追求的境界是 bugfree code(零缺陷代碼)
建議三:必須寫夠十萬行代碼,不要心存僥幸

程序員象木工一樣,熟能生巧。程序員必須寫足夠代碼量的程序,才會有感覺,這是一個苦力活,沒有任何捷徑可走。

計算機是一門實踐性的科學,沒有動手能力做支撐,很難做出好的科研成果。我的一個學長是美國卡內基梅隆大學的博士,卡內基梅隆大學計算機系在全世界非常出名,他說每個博士生必須寫十萬行代碼才能畢業,卡內基梅隆大學博士進任何一個大企業基本不用面試。而國內培養的大部分研究生、博士生,動手能力都偏弱。

沒有寫過足夠代碼量的,想成為高手是不可能的,只能紙上談兵!

建議四:時刻保持好奇心

計算機技術更新換代非常快,每年都有各種各樣的新技術出現。在我過去的職業生涯中,僅編程語言,我就用過 basic、masm、pascal、c++、vba、Delphi、java 等。需要時刻保持好奇心,不斷學習各種新的東西,才能在未來的幾十年職業生涯中不落伍。你要理解為什麼 iPhone 出來很多高手用iPhone,現在一天到晚惦記著換部 gPhone 玩玩。

人的精力有限,高手往往工作壓力也比較大,如何在有限的時間內掌握整個行業動態,的確是一個不簡單的事情。我的經驗是經常看業內的各種技術雜志,參加各種聚會,可以節約很多時間。最重要的是,交幾個博學的技術高手,多和他們交流,一定獲益匪淺!

建議五:不要局限在技術本身,多花點精力關注用戶

做到前面幾條,就已經是千金難求的高手了。但一個真正的高手需要知道用戶需要什麼,如何做出讓用戶滿意的產品。

現在的軟體研發越來越強烈團隊協作,不少團隊都配置了專門的需求分析的工程師、用戶界面及用戶體驗的設計師,軟體研發的分工越來越細。很多程序員以為只要把技術搞好,不用管用戶需求和用戶體驗。實際上,需求方案及界面方案不可能寫得非常細,具體的實施還是程序員自己來實現的。這個時候,好壞的差距很快就體現出來了。

E. 程序員的出路在哪裡

【原創】下面四千字的東西,打了三個小時,又花了兩小時修改,體會來自於自己的經歷。既為樓主也為自己,也希望能給他人帶來一點幫助,因為自己也曾苦於出路這個問題許久,徘徊於技術與銷售之間。其實,最重要的是,想清楚自己要的到底是什麼,而實現的方法有很多,選擇其中的一個,然後耐心去做,注意做的過程中,要多方面發展。不斷提高自己的綜合能力才是硬道理——這才是出路之所在!!!。

【出路】

在職業選擇上,很多人都會問一個問題,這個職業有什麼出路?想得到正確的回答,必須先搞清楚,自己究竟想得到什麼東西。對於程序員這個職業,如果你要的是錢,很多的錢,程序員沒有出路;程序員工作繁忙,有時不規律,連續著加班很有可能,如果你要的是休閑的生活,程序員沒有出路;程序員都是與電腦打交道,工作就是坐著,如果你要的是跟人廣泛的交流,而且坐不住,程序員沒有出路;寫程序都是很邏輯的東西,如果你不喜歡這種解題式的思考方式,頂不住整天思考所帶來的疲憊,程序員沒有出路。

程序員跟民工的區別就是,高強度的腦力勞動者和體力勞動者。雖然程序員的待遇看起來還不錯,想想其實不是,假如八點半上班,加班到十點,沒加班費,平均下來,一個人相當於幹了將近一份半的工作,除下來收入付出比就少了半截,收入多是因為付出的勞動多。這是開始做程序員時常有的事。

假如純往技術上走,干幾年熟手了,情況會好,但是,當你對比起幹了幾年銷售的朋友時,你會發現,你的勞動力太廉價了。一個小公司的銷售,普普通通干三年後,一年拿十萬塊的提成是很有可能的,而一個程序員,普普通通干三年,能拿月薪一萬的不多。還有人家銷售有許多的報銷,你有么?如果有天賦而且努力地干,銷售,大學畢業三年買車買房的多的是,當然不是說噬老族那些;程序員呢?有多少能!也許研究生,而且讀的好的那款還比較可能,但此時那些本科或者大專,甚至中專就出來跑銷售的,已經工作好幾年了,說不定此時正在三亞曬太陽呢!

你說銷售的應酬多,呵呵,喝酒;要去拍人馬屁,去求人什麼的!ok,這就是銷售,你敢保證當你看到他們的收入時,還有看到他們拿著公司的錢,請客戶去各種高檔的地方消費時,甚至說句不好聽的,花公司的錢請客戶到處吃喝嫖賭時——客戶也是人,許多客戶就這些個的愛好,所以要滿足他,他才買你的帳,很正常——嚴格意義上講,這樣的工作比坐在電腦前埋頭苦幹來的輕松多了,其實是一種享受,看到這些,你敢保證你一點都不眼紅?呵呵,如果不眼紅,那就專心干程序員吧!

或者說,你對這種「一點科技含量都沒有的工作」——在你眼中,高iq的人才是牛b的人,那就安下心來干程序員吧。但我想說,在這個社會上,賺錢最多最快的,最舒服的,永遠是銷售。當然,干技術乾的好的,最終都是比較受人尊重的——專家,當然是五十年如一日投身於技術那種人才能成為專家。如果你能刻苦地干程序員,想成為架構師、系統分析員,成為軟體專家,那就專心干程序員吧!

或者說,你實在干不來與人交際,還要挖空心思去維護各種人際關系的工作是,那就安心下來干你的程序員工作吧,就像民工一樣,有誰樂意去干民工,但是沒辦法,能力所限,只能幹民工了。但我想說,能力都是學來的,給民工們上大學,他們畢業後一樣會有很多牛人。有人說:「哪有那麼好的條件給他們上大學啊!」。條件很多時候要自己去創造啊!難道每個成功的人都有一個高人,手把手地拉扯著他,給他良好的成長環境和資源嗎?沒有什麼東西學不來,只是學得快和慢的問題,要真正去學學看才知道,而不是停留在大腦中。如果你學編程學得很快,而且學得很開心,即使學的過程很累,那就專心干程序員吧!

接下來,告訴你一個好消息,史玉柱出身技術、馬化騰出身技術、唐駿出身技術、比爾蓋茨出身技術、傑克•韋爾奇出身技術,等等,他們都成功了!假如這是你想像中的出路的話。我不是說要達到他們那種水平,而是走技術路線,來獲得事業有成,獲得成功。寫過程序的人都知道,想實現某個功能,有很多種實現方法。獲得成功也是一樣,有很多的路可走。這就是我為什麼拿銷售來做比較,每種職業都能到達成功的彼岸,不管是做技術、行政、財務、銷售,等等。

出路是什麼?不就是人生價值的實現,有的人要的是成就感,有的人要的是幸福,有的人要的是健康,有的人要的是金錢,有的人要的是地位名氣,有的人要的是貢獻全人類,有的人要的是玩樂、享受,其實這些都是不同人的人生價值。而實現自己人生價值的方法實在太多了,不管從事什麼職業,不管是java程序員,c++、c#,都能成功的,最最重要的是想清楚你想得到什麼,接下來就是做具體的計劃,然後實現計劃。實現的過程不能拘泥於技術,應該多方面發展,不斷提高自己的綜合能力!想做項目經理、做cto,或者用自己的技術去創業,都必須發展自己的綜合能力。

回到剛才,馬化騰、比爾蓋茨、唐駿等等這些技術員為什麼能成功?技術過關是基礎,甚至技術過硬,唐駿日本、美國留學,比爾蓋茨哈佛。接著,最重要的是:超前的眼光。qq其實不是什麼很難的技術,比什麼量子物理簡單多了,而且icq還是以色列人開發的,馬化騰就照著開發了qq,當時在中國就是超前的東西;比爾蓋茨的windows,讓三歲小孩也能使用電腦,而不用記一大堆的dos命令,這就是超前;唐駿發明了卡拉OK評分器、大頭貼,你自己可以想像一下大頭貼有多少的技術含量,然而它帶來的經濟效益是多少!所以說,想法太重要了,好的技術不是它有多高深,而是它能給人的生活帶來多少的便利,而往往第一個想到的人能獲得巨大的回報。第三,人際關系,別老以為做了技術就能以高姿態出現,有人很鄙視銷售,認為沒技術含量、俗;銷售還很鄙視技術呢,窮、死板。其實,沒人能靠自己一個人贏得一切,技術要靠銷售來賣自己的產品,銷售要靠技術生產產品,誰都離不開誰,這其中還有一連串的其他人呢,財務、行政、前台mm、老闆等等。現在越來越提倡團隊合作,跟隊友、跟上級、跟客戶之間的溝通是必修課,溝通不好必然配合不好,你的才能永遠無法施展,何來的出路。

第四,求人,其實求人是人際關系中的一個,為什麼單獨在這里講,因為他太重要了。機會很多時候是靠求人得來的,例如唐駿,他去日本留學的機會就是求了一大堆人得來的,他當時考研究生,在北京郵電分數最高,但因為大學沒得過一次「三好生」,北郵沒給他出國名額。他給各個大學的研究生處打了三天電話,問還有沒有留學名額,得到的大多都是這樣的回答:「我們自己的學生都不夠呢,哪裡輪得到你?」,如果臉皮薄,沒耐心,早就放棄了,後來他找到了北京廣播學院(現在的中國傳媒大學,就是陳魯豫讀的那個學校,據說當時很水。。。),吳懷仙老師,當時他們的對話是這樣的:

「看你的成績很好,你們北郵應該取你呀!」
「北郵當然取我。但是,我從小愛看電視愛聽廣播,未來中國的廣播電視事業一定會有很大的發展,為了這項事業,我願意放棄北郵,來到北廣。」
「照你現在的說法,你不是為廣播事業而來嗎?怎麼又跟出國有關?」
「中國的廣播事業很落後,需要去國外學習一些先進的理念、先進的技術回來呀!」
「老實說你來有風險,如果教育部不批的話,你不能出國,就必須留在廣播學院讀書。可是北廣沒有碩士學位的授予權,你只能取得研究生學歷,得不到學位。」
「我來的目的很明確!為了中國的廣播事業,有沒有學位沒那麼重要。」

你知道當時的實際情況是怎樣的嗎,北郵根本就沒有給唐駿名額,唐駿根本就是說了一個無傷大雅的謊言,所以,你看看、你看看,善於變通對於一個人的成功是多麼的重要,唐駿他們都不是一味地干技術就能成功的,很多時候必須好好包裝自己、銷售自己的。在這里我不是在說要去騙取利益,而是說,在遇到困難的時候能改變思路,轉個彎繞過路障!!求人很重要,有個強硬的後台幫忙,少奮斗十年!後來唐駿又去教育部門口站了幾天崗,等人、求人,呵呵,其實只是問了幾聲好,這是後話。

第五,超越物理層。凡是要獲得大的成功,賺大錢,或者說更容易地賺錢的,都不能拘泥於物理層。只有大老闆能給你建個實驗室,讓你搞深層次的技術;而只有你的實驗室能不斷做出可以賣錢的產品時,你的實驗室才不至於被關閉。走入公司的決策層,你才能決定該往那走,什麼技術該大力發展、什麼技術該好好改造、什麼技術該放棄。這個道理相信不用講你也明白,那麼,如何進入決策層,靠高素質、靠綜合能力。學習能力、溝通能力、領導能力、管理能力、玩的能力(品酒、打扮、奢侈品、打高爾夫等等),一大堆的能力呢!沒有一所學校、一個組織能教授全部,這些都要靠自己去學、去領悟,前提是,你要有去學、去領悟的想法。

說實在的,世界是很復雜的東西,要的是你去適應它,它不會來適應你。唐駿說:「性格能改變嗎?很多人說不能。可是我認為,本性是不能改變的,但性格是一定能改變的」。傑克•韋爾奇,通用電氣前ceo,打小有自卑心理,到了成年還略帶口吃。他母親激勵他,這算不了什麼缺陷,只有面對現實,堅持與別人溝通,讓別人了解你,才能主宰自己的命運,別人才會跟你做朋友,這是這個偉大而平凡的母親給予傑克的最大財富。事實上,如果你自己不在意,那麼那個缺陷也就不太重要了。略帶口吃的毛病並沒有阻礙傑克的發展,實際上在後來,注意到這個弱點的人大都對傑克很敬佩,因為他竟能克服這個障礙,在商界出類拔萃。趕緊改變,讓自己更好地適應這個復雜多變的世界。

想清楚自己要的是什麼,做一個兩年計劃,因為超過兩年變數就太大了,然後制定實現的步驟,也就是一個個短期計劃,從第一步開始實現。這些計劃應該是具體、可行而且能在預定時間內完成的,最後靜下心來,耐心實現自己的每個計劃!!不要老是問人,我這樣做對嗎,我該怎麼做。哈佛退學就一定是錯的?北大賣豬肉就一定不好?外企就一定是好歸宿?你該做的就是,想清楚自己想要什麼,金錢、美女、名利、地位、權勢,還是過平凡的日子,做善事做好人,都沒問題,只要真的是你想要的就好,然後考慮怎麼去實現它。其實實現的方法有很多,選擇其中的一個,然後耐心去做,注意做的過程中,要多方面發展。不斷提高自己的綜合能力才是硬道理——這才是出路之所在!!!

F. 學編程可以創業嗎

太能了,比爾蓋茨,喬布斯,360,網路,google,甲古文公司.........

知識就是力量!!!!

G. 如何學習Windows編程

很多人從MFC開始學習,結果常常是一頭霧水,知難而退;也有人毅力堅強,熬過了MFC的陣痛期,最後卻是知其然而不知其所以然,並且思維被限制在MFC的框架之中,遇到稍微有點規模的程序就無從下手了。
以我個人的這些年的Windows開發經歷,我建議Windows上的學習路線如下:
首先當然是語言的學習,比如C或C++(STL),它是平台無關的
然後可以從《Windows程序設計》(by
Charles Petzold
)入門,從最原始的Windows API開始學習
接下來可以學習《Windows核心編程》(by
Jeffrey Richter
), 它會讓你比較深刻的理解Windows的前台和後台機制
學完上面2本書,對Windows系統已經比較熟悉了,再要深入的話可以學下《Windows 圖形編程》(by 袁鋒)。
至此,已經可以用API的方式開發大部分Windows應用程序了,
接下來可以學一些常用庫,比如MFC,WTL,ATL等,此時學習MFC和一開始就學習MFC已是截然不同的感覺,彼時痛苦難熬,此時會心一笑。
其他就是根據項目需要,專業知識的學習,比如COM技術,網路,D3D等。

H. 我會編程現在在網上如何自己創業

難,最主要先打開知名度

閱讀全文

與windows編程如何創業相關的資料

熱點內容
刷ec用什麼編程器 瀏覽:765
方菱數控u盤文件格式 瀏覽:260
編程為什麼輸出兩個變數 瀏覽:490
衛星大鍋2017用升級嗎 瀏覽:113
玉米win10系統下載 瀏覽:134
fgo技能升級減cd嗎 瀏覽:129
什麼記賬app免費好用 瀏覽:441
網路檢測可以檢測到什麼 瀏覽:504
sip協議教程 瀏覽:832
編程哪裡可以接項目 瀏覽:119
孤島驚魂win10 瀏覽:246
網路HRV是什麼意思 瀏覽:918
word框中打勾 瀏覽:577
tcl筆試題java 瀏覽:467
win10怎麼登錄安全模式 瀏覽:679
除了archdaily還有什麼網站 瀏覽:567
數控下料圓形怎麼編程 瀏覽:785
安裝游戲在文件管理找不到怎麼辦 瀏覽:216
想買奢侈包包下載什麼app 瀏覽:1000
閃送員是哪裡的app 瀏覽:530

友情鏈接