導航:首頁 > 程序命令 > 獨立程序員

獨立程序員

發布時間:2022-01-12 12:19:39

程序員獨立研發的時候,遇到問題了你們都怎麼解決啊

1.技術問題:網路,bing,SCDN,請教前輩
先網路,網路是個好老師。
網路解決不了的再bing搜索一下,我遇到很多次都是在bing上找到的。
當搜索引擎搞不定的時候,這時候需要論壇了,去CSDN找找相關的技術貼,總會有點思路。
最後就是找公司的同事,這個有些時候需要花一些代價,畢竟大家都很忙。
2.邏輯問題:有些時候會遇到很惡心的邏輯
當想不明白或者想不通的時候,我會試著一步一步把邏輯寫在紙上,這樣就會很清晰,如果在某一步被卡住了,那麼問題的關鍵也找到了。當然有些時候或許一開始就走入了一個誤區,從而導致了一個錯誤的思路,這個時候我一般會睡上一會,或者做些完全和開發不相關的事,目的是忘記剛剛所有的東西,然後從新審視問題,換個角度去考慮。
(個人經驗,純手打!)

❷ 做電商一個程序員可以自己獨立完成么後期維護.等.等...宣傳略過,投資需要都哪方面

1、首先需要定位下你的產品,這個決定了你主要成本的投入;
2、做電商主要在宣傳,宣傳就需要人力,僱人的話,人力的成本也是需要計量的;
3、對方案的評估--風險若是超過50%,建議還是不要開始。但每一個創業者都會有頭腦發熱的時候,因為做了起碼不後悔;
4、 要相信人多力量大,但有一個問題就是會比較亂,這就牽扯到分工的問題。如果能合理分工,找合夥人還是可行的。合夥有合夥的好處(資源、本金、人脈等的增加)。
5、提醒你,如果是做平台,一個人很可能會搞砸的。
最後,還是建議你好好想想。如果覺得還年輕想闖一闖,可以試一試。

❸ 普通的程序員和大神級的程序員有什麼區別

❹ 做一個「獨立」程序員需要那幾種知識

信息技術的更新速度是驚人的,程序員的職業生涯則是一個要求不斷學習的過程,永遠不能固步自封。本人在工作期間曾看見過很多程序員只要有閑暇時間就瀏覽一些沒有太大作用的網頁,在網上聊天,打游戲,浪費了大量的時間,十分不可取。而另外一種情況是,IT技術的日新月異使很多程序員眼花繚亂,什麼都想學,卻又不知從何學起,今天看看這個,明天學學那個,貪多不熟。

雖然IT技術發展迅速,但很多技術都是有規律可循,一些基本的概念、原理和方法還很通用,可以舉一反三。本人根據自己的體會和經驗,向那些剛剛踏入IT行業的新程序員們或正在迷茫的程序員們推薦程序員必須掌握的七種武器,有了這七種武器,雖不敢說笑傲江湖,但將自己立於不敗之地還是可以的。

第一種武器:開發工具

至少熟練掌握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C++和java是我重點推薦的開發工具,C/C++以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟體還是用C/C++編寫。而JAVA的跨平台和與WEB很好的結合是JAVA的優勢所在,而本人對SUN公司的「網路即計算機」的概念相當欣賞,並相信JAVA即其相關的技術集JAVA One會成為未來的主流開發工具之一。其次,如果能掌握一種簡便的可視化開發工具,如VB,PowerBuilder,Delphi,C++ Builder,則更好,這些開發工具減小了開發難度,並能夠強化程序員對象模型的概念。另外,需要掌握基本的腳本語言,如shell,perl等,至少能讀懂這些腳本代碼。

第二種武器:資料庫

為什麼資料庫是如此重要?很多應用程序都是以資料庫的數據為中心,而資料庫的產品也有不少,其中關系型資料庫仍是主流形式,所以程序員至少熟練掌握一兩種資料庫,對關系型資料庫的關鍵元素要非常清楚,要熟練掌握SQL的基本語法。雖然很多資料庫產品提供了可視化的資料庫管理工具,但SQL是基礎,是通用的資料庫操作方法。如果沒有機會接觸商業資料庫系統,可以使用免費的資料庫產品是一個不錯的選擇,如mySQL, Postgres等。

第三種武器:操作系統

當前主流的操作系統是Windows,Linux/Unix,熟練地使用這些操作系統是必須的,但只有這些還遠遠不夠。要想成為一個真正的編程高手,需要深入了解操作系統,了解它的內存管理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等。Linux作為開發源碼的操作系統,是一個很好的學習平台,Linux幾乎具備了所有現代操作系統的特徵。雖然Windows系統的內核實現機制的資料較少,但通過互聯網還是能獲取不少資料。只有對操作系統有一定的了解後,你會發現自己上了一個新的台階。

第四種武器:網路協議TCP/IP

在互聯網如此普及的今天,如果您還沒有對互聯網的支撐協議TCP/IP協議棧有很好的掌握,就需要迅速補上這一課,網路技術已改變了軟體運行的模式,從最早的客戶/伺服器結構,到今天的WEB Services,再到未來的網格計算,這一切都離不開以TCP/IP協議棧為基礎的網路協議支持,所以,深入掌握TCP/IP協議是非常必要的。至少,你需要了解ISO七層協議模型,IP/UDP/TCP/HTTP等常用協議的原理和三次握手機制。

第五種武器:DCOM/CORBA/XML/WEB Services

隨著技術的發展,軟體與網路的無縫結合是必然趨勢,軟體系統的位置無關性是未來計算模式的重要特徵之一,DCOM/CORBA是當前兩大主流的分布計算的中間件平台,DCOM是微軟COM(組件對象模型)的擴展,而CORBA是OMG支持的規范。程序員需要做的不僅僅是利用商業的開發平台來開發軟體,而是要理解這些技術的初衷,即為什麼需要這項技術,如果你能理解了這一點,再回頭看這些技術的具體實現,就如庖丁解牛,迎刃而解。XML/WebServices重要性不言而喻,XML以其結構化的表示方法和超強的表達能力被喻為互聯網上的「世界語」,是分布計算的基石之一。

第六種武器:軟體工程與CMM

現代大型軟體系統的開發中,工程化的開發控製取代個人英雄主義,成為軟體系統成功的保證,一個編程高手並不一定是一個優秀的程序員,一個優秀的程序員是將出色的編程能力和開發技巧同嚴格的軟體工程思想有機結合,編程只是軟體生命周期中的其中一環,優秀的程序員應該掌握軟體開發各個階段的基本技能,如市場分析,可行性分析,需求分析,結構設計,詳細設計,軟體測試等。一句話可以概括我的看法:「創意無限,流程保證」。

第七種武器:強烈的好奇心

什麼才是一個程序員的終極武器呢,那就是強烈的好奇心和學習精神。沒有比強烈的好奇心和學習精神更好的武器了,它是程序員們永攀高峰的源泉和動力所在。

❺ soho程序員的自由程序員

自組1~10人的小公司,或者夫妻合作一間工作室,或者作為一個公司的開發小組。這種SOHO程序員規模雖不大,員工們也未必天天見面,但是通過互聯網保持著高效的聯系,在經營和管理上具備很大的靈活性。在大公司無法兼顧到的領域,個人公司如能提供適合的商品和服務,往往會獲得成功。
隨著網路的發達,程序員在線協同開發已經成為一種趨勢,很多網站都給SOHO程序員提供工作機會,比如:國外的freelancer,國內給程序員免費提供外包項目和編程兼職信息的99開發網等。 1.首先要有過硬的技術含量。2.要有至少3年的開發經驗。
3.要熟悉2種以上的開發語言。
4.技術要全面(後台美工)。 1.必須是一個能主動工作的人,在沒有外界壓力的情況下也能及時地完成手頭的事情。
2.你應該是一個能夠獨立完成工作的人,能在沒有同事協助的前提下開展工作。
3.必須是一個做事計劃性很強的人,懂得維持工作與生活方面的平衡,不會因為在家工作而導致生活秩序大亂。
4.能夠控制工作的進展程度。
5.你應該是一個善於解決問題的人。
6.擁有管理事務的能力。假如你對行政、財務、行銷等方面一竅不通,就得考慮一下自己去學習相關知識或是請人代為處理。
7.具備出眾的專業能力。沒有專業知識與能力就等於缺乏競爭力,根本不可能有所作為。
8.良好的人際關系與資源。你最好有1年以上的相關工作經驗,資深的工作者最適合從事SOHO一族。
9.幕後的支援——財力。錢雖不是重要的因素,但對於SOHO一族也是不可或缺的支持力。有穩定的財力作後盾,會使你創業的初期無後顧之憂。
10.有精良的工作設備。
11.儲備至少3個月的生活費用。SOHO一族的收入並不穩定,銀行存款能保證SOHO一族在生意淡季時生活無憂。
12.定期回顧工作情況。工作半年後應該評估一下這段時間在家工作的業績。看看有沒有完成預定計劃,能否再作進一步的提高,然後為下一階段的工作制定一個新的目標。一名優秀的SOHO程序(IT威客)員是怎樣煉成的?在IT業,上班族程序員們都羨慕自由自在的IT威客,但事實上,做威客也不容易。360行,行行有本難念的經。孫悟空的火眼金睛厲害吧?可那是在太上老君的八卦爐中,經過七七四十九天煉出來的。要想成為一名優秀的IT威客,也要經過千百次打擊,才能鑄就你的金剛不壞之身! 初來乍到的威客新手,首先遭到的打擊就是無人賞識。現在的威客很熱,可以說是高手雲集;而且,因為軟體外包不同於簡單的懸賞任務,誰都可以摻和幾下。發包方當然要挑選最優秀最可靠的人來接包,所以軟體外包項目都要經過嚴格的(甚至是殘酷的)競標。
比如,IT人都喜歡到軟體項目交易網(sxsoft)去競標、接包,但新人由於沒有日積月累得來的積分和信譽度,很難剛上來就順風順水。但要知道,那些成功的老威客也是這樣一步步熬過來的!
對策:相信自己,不拋棄、不放棄! 我們都知道,軟體開發是一項「浩大」的工程,需要大量認真細致的工作。作為接包方的威客,不能僅僅盯著項目計劃單上的只言片語,一定要跟僱主進行大量的、充分的溝通,明確僱主的每一項要求,每一個環節都要為對方考慮好。另外,多數僱主往往並不真正了解軟體,所以最好要能主動為僱主提供更好的建議!
對策:把每一個項目當成自己的藝術品,一絲不苟。這不僅是對僱主的負責,也是對自己的尊重。 說軟體行業「卧虎藏龍」一點都不誇張,像軟體項目交易網上每天都聚集著大批高水平的專業接包方,要想從中脫穎而出,實在不易。
軟體行業又是一個日新月異、高速更新的行業。不僅是技術更新,新的人才也是源源不斷的涌進來。有人說,搞軟體這一行,吃的就是一碗青春飯!一點不假。這些新人們有新的技術、新的頭腦和一股子沖勁,同時他們又特別青睞做威客。
對策:套一句老話:做威客如逆水行舟,不進則退!抓緊時間學習吧! 這是一種高處不勝寒的孤獨!這種境界是不容易達到的,千錘百煉,方能至此!到這一步之後,因為你的信用級別特別高,業界口碑特別好,成功案例特別多,再加上網站(如sxsoft)方面的大力推介,不用自己競標,好多發包方都會慕名而來,主動找你接包。有些威客到了這一步,反而無所適從了。面對琳琅滿目的項目,個個都想接手,但卻力不從心!
對策:俗話說,雙拳不敵四手,這時你就要考慮組建自己的團隊了。大兵團作戰,橫掃千軍如卷席!

❻ 程序員如何才能有獨立開發項目能力

難!我本身是軟體工程師,我從業都十多年了,就拿網站來說吧,比如你獨立開發一套PHP或者是Java的網站,通常,美工+WEB前端+後端開發+需求分析,設計的能力,相當於,你一個人,頂一個團隊的工作量,連項目經理都兼任,維護客戶都兼任!因為你得分析需求啊。
如果Java更難了,相當於美工(1人)+WEB前端(1人)+後端開發(3-7個),如果是APP的,還得加安卓+IOS工程師+項目經理。
如果是C++,巨難,雖然我也可以獨立開發。問題是,太耗費精力了。特別是嵌入式,其實C語言都有幾種,Java也有幾種,其他人,半桶水,不專業的。
最終,你要給客戶看到的效果!如果你美工 不行,後端不得,只要有一個嚴重的短板,你就不勝任真實的項目獨立開發的能力,自娛自樂可以。
寫驅動,談何容易,全世界,不超過1000人會寫底層的驅動。
第二個,我看到你說,做嵌入式的是學c++還是java ,我java比c++好一些,說明,你基礎不行,雖然是科班出生,科班難出人才,除非自學成才的天才例外!如果天才,你這個年紀的,或者大一點的,都能獨立開發了。特別是美工,需要天賦的!編程也是。需要悟性的,才有創造力,如果死讀書的書獃子,沒什麼創造力的。少數例外。

❼ 低級程序員和高級程序員的區別

低級程序員認為自己與高級程序員的區別, 主要是高級程序員任何功能都能編碼實現, 編碼速度快, 代碼無 bug. 正如一慣的那樣,
低級程序員之所以低級, 正是因為他們勉強能看到(或者根本看不到)事物的表象而看不到本質. 所以, 低級程序員總結出的一切東西,
你都可以大膽的忽略.

所以, 我們來聽聽高級程序認為自己與低級程序員的區別是什麼. 高級程序員之所以高級, 在於他們認識到代碼 bug 是不可避免的,
有千萬種理由可以導致 bug, 但他們可以在設計和邏輯上保證(追求)滴水不漏, 並用邏輯的百分之百准確性還減少代碼 bug. 沒錯,
嚴謹的邏輯能力是高級程序員區別於低級程序員的最主要原因.

可以舉一個簡單常見例子: 網路購票終端的開發. 當然, 比低級程序員還低級的程序員做不出來. 我們先看看低級程序員是怎麼做:

order = Db::new_order();
ret = Network::place_order(order);
if(ret == TRUE){
order.finish();
}else{
order.cancel();
}

你看到的沒錯, 這段代碼邏輯清晰, 一般 90% 的情況都能正常工作, 有的甚至能達到 99%, 在某些特定的時間段, 這樣的系統 100% 能正常工作(幾乎是完美的系統).

你可能發現了問題: 網路是不可靠的, 網路請求可能發出去了, 也可能沒發出去; 對方可能收到了, 也可能沒收到; 響應可能由對方發出去了, 也可能沒發出去; 你可能收到了響應, 也可能沒收到.

但是, 低級的程序員會這樣解釋: 我用的是 TCP 協議, "TCP 是一種可靠的傳輸協議", 哈! 可笑的照本宣科. 這種低級程序員,
不僅在於他們寫出了邏輯上不完備的系統, 而且還惡劣地引經據典來做錯誤的辯護. 但他們引用的經典是不合時宜的(不能支撐他們的結論).

正確的做法應該是假設上面的每一行代碼都可能中斷執行, 然後進行相應的對策. 正如狹義上的網路協議其實是廣義上的交互協議, 我們可能把 TCP/IP 協議上的許多思想和機制應用到系統間的交互上來.

簡單來講, 可以加上就是重試(超時重傳)和對賬(請求確認). 所以, 邏輯上更准確的代碼應該是這樣:
Process_0{
order = Db::new_order();
}
Process_1{
order = Db::find_new_order();
ret = Network::query_order_result(order);
if(ret == NOT_FOUND){
ret = Network::place_order(order);
if(ret == TRUE){
order.finish();
}else{
order.cancel();
}
}
}

Process_0 和 Process_1 是相互獨立的處理邏輯.

Process_0 即處理用戶交互, 接受訂單.
Process_1 請求服務提供商進行對賬. 進行采購下單(補單), 更新訂單狀態.

上面的代碼邏輯實現了重試(超時重傳), 對賬(請求確認). 但上面的代碼在邏輯上還不是 100% 准確的, 例如, 如果對方系統誤報呢? 但其它的異常情況可以根據實際情況來忽略. 如果你發現這段代碼還有重要的邏輯上缺陷, 歡迎告訴我.

記住, 低級程序員和高級程序員的區別在於邏輯和抽象.

❽ 為什麼大多數程序員無法獨立完成桌面軟體

提問人表示疑惑:大多數程序員是否有能力獨立完成一個稍顯復雜的桌面軟體?圖片來自互聯網,與本文無關在此,我們挑選出兩種觀點中的代表性回答。程序員謝旭陽表示:一個做桌面程序的程序員應該很容易做一個「稍顯復雜的桌面軟體」。這就好像一個做Web的程序員做一個「稍顯復雜的網站」也是很容易的。當然這個「復雜」只是指功能等技術邏輯上的復雜,如在UI方面還有更高要求,那應該由專門的美工來負責,而在推廣營銷方面還應與市場人員配合。而一位擁有十年開發經驗的程序員給出了否定觀點的回答。程序獵人:程序員也有分工:桌面程序、網路程序、移動終端程序、大型機編程、小型機編程、單片機編程……即便同是做桌面程序開發,在不同操作系統下,代碼寫法也有很大不同。術業有專攻,一直鑽研其他領域的人,哪怕是高手也可能對桌面程序的運行機制和構建方法不熟悉,從而無法獨立完成這個任務。即使在一個專做桌面軟體的公司里,也可能有大部分程序員無法獨立編寫一個稍顯復雜的桌面軟體。「程序獵人」不僅給出了回答,還對背後的原因進行了深層次的分析。他認為,做事情兢兢業業、並且做事時肯主動動腦思考前因後果、願意主動擴大自己工作責任范圍的人總是很少,他稱這類人為「主動哥」。大多數人都習慣於只做被分配的任務,並按照被吩咐的做法去做,對擴展自身工作范圍和知識沒有什麼興趣,僅在被分配了新的工作內容時才去學習,他稱這類人為「被動哥」,並表示這個世界的大部分財富是「被動哥」創造的,大部分工作是他們完成的。他們中不乏好人、熱心人,但因為求知慾的缺乏會導致他們長期保持在某一狀態。而以Windows桌面編程為例,如果一個「被動哥」被分配只需編寫一些函數調用其他人開發好的API,並通過其他人寫好的框架來做測試,那麼他很可能在完全勝任工作的前提下不了解任何Windows桌面程序從頭建立的方法。自然就不可能獨立完成一個桌面軟體了。從大工業生產來看,這一點對公司是有利的,因為工作的成敗將不僅僅取決於某幾個員工,而且隨時可以替換任何一個被動哥,也就意味著隨時可以找到成本更低的人才。日本很多軟體公司中的程序員都是這種狀況。相對來說,中國的一些看似不太成熟的公司反而好些,裡面的人什麼都得做,哪怕是超級被動哥也什麼都會了。另一方面,主動哥往往容易得到上級的賞識,很快便從程序員升級為設計者、架構師、管理者、顧問……長此以往沉澱在程序員階層的大多是被動哥,那麼大多數程序員無法獨立做出一個像樣的東西也就不足為奇。另外,這位熱心網友還介紹了目前軟體公司普通程序員的工作情況,以下是他的文字摘錄:大部分情況下,普通程序員並不負責設計,僅負責編寫代碼並進行最小限度的單元測試,同時在被要求的情況下撰寫相關文檔。這類程序員常常是對著詳細設計書進行代碼翻譯工作,對於一個有思想有抱負的人來說很枯燥乏味。我曾經見到過快要達到偽代碼級別的設計書。如果拿在手裡的不是列印出來的紙張,隨便寫個宏什麼的,基本都能把代碼生成出來的。但也不排除設計書做的不完整或者質量低下的情況,這時候就需要向設計者發問,並承擔一部分設計工作,這種情況相對會有趣一些。但對知識不豐富且沒有設計經驗的人來說,這項工作是個噩夢。尤其跨國協作時,要用外語探討時,有些外語不好的人就徹底繳械了,三天兩頭請外語好的人吃吃喝喝的……當然還有另外的一些高級程序員,進行著分工更高層一些的工作。比如:設計師、架構師、顧問等。作為設計師,相對接近程序員一些。要把架構師定下來的東西更進一步細化,設計成程序員能實現的東西。當然對於一些小公司和小項目,以上角色互有穿插,甚至一人全兼。作為架構師,往往要做出很多艱難的抉擇——是使用這種技術還是那種、是用這種平台還是那種平台、是犧牲功能還是犧牲性能?作為顧問,其實很多真正喜歡悶頭搞技術的人一不小心當了顧問之後都大驚:我這跟搞推銷的有啥區別?啥時候才能讓我再次打開久違的IDE(集成開發環境)或者記事本(拽點的人用Vim),敲兩行代碼啊。因為顧問的主要工作是研究客戶的業務,並提出一個可以滿足客戶業務需求的IT解決方案。他們對IT技術可以說無所不知但又對任何一種都不深入。(當然也有一些超人,在完成任務的基礎上自行抽時間鑽研某方面技術。遇到這種人,就膜拜吧。)讓普通技術人員眼花繚亂的各種名詞是他們忽悠客戶最好的武器。然後就是去客戶現場忍著各種不爽做講演了。對於程序員新手如何提高開發能力,這位擁有十年開發經驗的熱心網友建議「做個『主動哥』而不要做『被動哥』」。首先,大量的實踐練習絕對是必須的。而實踐之外重要的一點,是多動腦思考,哪怕工作本身不需要頭腦,也不要停止思考。想一想做這件事的前因後果,有什麼可以改進的地方或者提高效率的地方。長此以往,經過同樣的時間,你會比「被動哥」多學會很多東西,並具備很多能力。簡而言之,要提高開發能力,就要做到勤奮和善於思考。

❾ 什麼是有獨立開發能力的程序員

1、為了做出的東西符合用戶要求,需要和用戶溝通,並寫出大概的項目計劃讓用戶確認;

2、需要根據項目計劃和功能結構設計資料庫表結構;

3、採用最熟悉的技術迅速的搭建程序框架;

4、開發的每一個階段都需要和用戶溝通,聽取改進意見,並針對意見做有效的修改,修改的工作量要控制在有限時間內的同時還需要符合用戶要求;

5、整個程序開發完成需要給用戶演示整個程序的使用方法,並可以給用戶其他相關人員培訓。

(9)獨立程序員擴展閱讀:

職業要求

一般的程序員都有四年的在專業領域的學習,需要一個在程序領域的學士學位獲得者,不論是數學方面的還是工程方面的都是可以的。

對於職業程序員,另外一個重要的方面就是,程序員需要不斷提升自己的業務技術,技術必須一直保持在一個較高的水平,並且要不斷發展,程序員也要尋找貿易的機會,要參加研討會,在周刊上發表文章和接受職業教育,這些使程序員在自己的領域中分級或者不斷並排前進。

閱讀全文

與獨立程序員相關的資料

熱點內容
linuxvi下一個 瀏覽:973
安卓手機的應用鎖怎麼解 瀏覽:733
linux增加路徑 瀏覽:845
sql身份證號最後四位加密 瀏覽:533
xp系統表格加密 瀏覽:854
光遇安卓軍大衣什麼時候上線 瀏覽:838
android應用商店圖標 瀏覽:341
java計算圓的面積 瀏覽:643
應用編譯優化recovery 瀏覽:577
域控命令n 瀏覽:258
php導出文件 瀏覽:13
谷歌地圖網頁版無法連接伺服器地址 瀏覽:298
菜鳥工具在線編譯python 瀏覽:858
柵格化命令有何作用 瀏覽:823
為什麼壓縮文件不能解壓 瀏覽:311
足球app哪個軟體好 瀏覽:96
產品經理逼瘋程序員的一天 瀏覽:17
修改svn伺服器ip地址 瀏覽:584
下列關於編譯說法正確的是 瀏覽:246
java馬克思 瀏覽:118