Ⅰ 什麼是程序員什麼是代碼
程序員所寫的代碼,是為某一特定程序或某一個應用程序所制定的編碼和內部測試的組織實施,使此應用或程序應能夠在程序員編寫的代碼中,實現各種功能。程序員(英文Programmer)是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚,特別是在中國。軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。代碼又臭又長
我見過最長的方法是5000多行,那段代碼沒人敢動,只敢往下加 if else,每次需要改這段代碼的開發都戰戰兢兢,生怕出現什麼莫名其妙的bug。java 可是一門面向對象的語言,一個方法裡面有5000多行可以說是很可惡的事情了。我想一開始代碼長度可能沒這么誇張,是什麼導致這種結果的?一個是當初寫這段代碼的人本身寫的是直來直去的方法,一堆if else ;後面迭代的開發,面對這么長的代碼瞬間失去了從頭讀到尾的耐心,直接繼續在後面加 if else 迭代,最後這個方法就變成了一個縫合怪一樣的玩意。
好的 sql 可以很大程度上簡化代碼的復雜程度,但是太過復雜sql 本身就會給後來的開發人員造成閱讀困難,結果又是變成一條無人敢動的祖傳代碼,我想這應該是不少公司極度抵制存儲過程的原因之一。當然不少銀行應用開發還是大量使用存儲過程,存儲過程有用武之地的,但是一個又臭又長的存儲過程就等著變成祖傳代碼吧。當年我見到一個60多個join的sql,看到第一眼就驚為天人從此難以忘懷,當然那段sql也成了沒人敢去動的代碼了。
代碼邏輯不明
代碼邏輯不明所以是我們開發很容易去犯的毛病,是一個不致命卻煩人的毛病。在代碼上的體現是,邏輯判斷寫的比較反人類各種雙重否定是肯定,不把你繞暈不罷休。或者是寫起代碼來東一榔頭西一棒槌,讓人不知道你想幹嘛。導致這個的原因有可能是開發人員在需求理解上出現偏差,做到後面發現不對勁,再回去改又不大可能了,只能硬著頭皮往下寫,結果就是代碼彎彎繞繞;還有很重要的鍋是在產品經理,任意變更需求,想一出是一出,開發人員無奈只能跟著想一出寫一出。還用可能是開發人員方法或者類命名太藝術了,什麼四川方言拼音這種沒有十年腦血栓想不出的命名咱就不說了。就說那種國產凌凌漆式的無厘頭命名——這看上去是個刮鬍刀實際上是個吹風機,就這種不知道讓人說什麼好。
規劃代碼的核心思想
吐槽了一堆代碼規范問題,接下來我們說說如何去規范我們的代碼以及如何做到就算開發人員更換了,或者項目轉手給他人了,仍然可以讓後面的開發可以無礙的去閱讀代碼修改代碼。當然各個公司/團隊都有自己的一套代碼規范,比如項目的結構、代碼命名風格、代碼格式等等。不同團隊有不同的風格,但核心思想是大同小異的。接下來我就我個人的開發經驗來分享一下一些代碼規范的思想。
Ⅱ 程序員是什麼
程序員啊,就是編寫或者維護(升級漏洞什麼的)程序或者軟體的的。也就是打代碼的。有很多中。比如網站的網頁啊也是程序員做出來的,還有游戲之類。汗…我說的都是白話。想要專業解釋的話。在網路的詞庫可以搜出來的我就不給你復制了,自己看吧。
Ⅲ 程序員是干什麼的
程序員一般的工作是從事程序開發、程序維護。 程序員是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。
Ⅳ 程序員主要是做什麼的
程序員(英文Programmer)是從事程序開發、程序維護的基層工作人員。
程序員日常工作:
1、確認通過審查方案的目標,輸入數據,分析師,監事,和客戶的輸出要求的項目要求。
2、安排項目要求在編程序列分析要求;准備工作流程圖和使用計算機知識的能力,題材,編程語言和邏輯圖。
3、編碼工作流程的信息轉換成計算機語言的項目要求。
4、通過輸入編碼信息的計算機程序。
5、確認程序操作進行測試,修改程序序列和/或代碼。
6、准備寫操作指令供用戶參考。
7、保持歷史記錄,通過記錄方案的制定和修訂。
8、維護客戶的信息和保護保密的業務。
崗位職責
1、對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。
2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。
4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。
5、負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。
6、參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。
7、負責相關技術文檔的擬訂。
8、負責對業務領域內的技術發展動態進行分析研究。
Ⅳ 什麼是程序員
程序員是從事程序開發、程序維護的專業人員,其工作職責是:
1、負責軟體項目的詳細設計、編碼和內部測試的組織實施;
2、協助項目經理和相關人員同客戶進行溝通;
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析;
4、熟練掌握交付軟體部開發的軟體項目的相關軟體技術;
5、負責相關技術文檔的擬訂。
成為一名出色的程序員的基本規則:
1.扎實的基礎。
數據結構、離散數學、編譯原理,這些是所有計算機科學的基礎,如果不掌握他們,很難寫出高水平的程序。據我的觀察,學計算機專業的人比學其他專業的人更能寫出高質量的軟體。
2. 豐富的想像力。
不要拘泥於固定的思維方式,遇到問題的時候要多想幾種解決問題的方案,試試別人從沒想過的方法。豐富的想像力是建立在豐富的知識的基礎上,除計算機以外,多涉獵其他的學科,比如天文、物理、數學等等。
3. 最簡單的是最好的。
簡單的方法更容易被人理解,更容易實現,也更容易維護。遇到問題時要優先考慮最簡單的方案,只有簡單方案不能滿足要求時再考慮復雜的方案。
以上內容參考網路-程序員
Ⅵ 程序員是做什麼的什麼是程序
程序員:
程序員是從事程序開發、程序維護的專業人員。程序員一般需要會做:確認通過審查方案的目標,輸入數據,分析師,監事,和客戶的輸出要求的項目要求。
通常情況下將程序員分為程序設計人員和程序編碼人員,軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。
程序:
程序是一組計算機能識別和執行的指令,運行於電子計算機上,滿足人們某種需求的信息化工具。以某些程序設計語言編寫,運行於某種目標結構體繫上。
程序就如同以英語(程序設計語言)寫作的文章,要讓一個懂得英語的人(編譯器)同時也會閱讀這篇文章的人(結構體系)來閱讀、理解、標記這篇文章。
(6)程序員是什麼擴展閱讀:
程序員的日常工作:
1、確認通過審查方案的目標,輸入數據,分析師,監事,和客戶的輸出要求的項目要求。
2、安排項目要求在編程序列分析要求;准備工作流程圖和使用計算機知識的能力,題材,編程語言和邏輯圖。
3、編碼工作流程的信息轉換成計算機語言的項目要求。
4、通過輸入編碼信息的計算機程序。
5、確認程序操作進行測試,修改程序序列和/或代碼。
6、准備寫操作指令供用戶參考。
7、保持歷史記錄,通過記錄方案的制定和修訂。
參考鏈接:網路-程序員
網路-程序
Ⅶ 程序員是什麼
程序員(英文Programmer)是從事程序開發、維護的相關專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不是非常清楚,特別是在國內。達內教育
軟體從業人員分為初級程序員、高級程序員、系統分析員,系統架構師,測試工程師五大類。軟考程序員考試屬於是計算機軟體水平考試(簡稱軟考)中的一個初級計算機職稱考試。對於軟考程序員考試並無學歷及資歷條件限制,更無年齡、專業與資歷的限制。一年之內報考軟考程序員可考試兩次,但一次考試確只能報考一種資格,因此報考了程序員考試則無法再報考軟考其他級別或科目的考試。
想做程序員,必須要參加程序員的系統培訓。市面上的培訓機構也比較多,比較雜亂。達內培訓在培訓行業深耕16年,高薪聘請總監級名師全職授課,實施「因材施教,分級培優」教學方案,針對不同的學生制定不同的學習方案,同時達內培訓也有線上免費的試聽課,對編程感興趣可以在線上試聽一下公開課。 免費試聽報名入口
同時考程序員考試採用筆試形式,考試實行全國統一大綱、統一試題、統一時間、統一標准、統一證書的考試方式。主要是做應用軟體,以web(經常是企業級的,如政府、企業的辦公自動化等平台)和移動應用(Android或J2ME/kJava)居多。
Ⅷ 什麼是程序員
程序員,從字面看就是寫程序的人員。
程序員(英文Programmer)是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚,特別是在中國。軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。
初,中級程序員一般叫做碼農。
高級程序員和架構師一般叫做攻城獅
系統分析員是指做需求分析同時懂代碼的那群
測試攻城獅一般指黑盒測試,也就是點點點,所有功能按鈕全點,看看有沒有錯誤,常見錯誤404,500。
總結而言,一隻優秀的程序猿通常有以下特點:(以下來自於網路,詞條:程序猿)
【PMonkey】對技術充滿JI情(因為能夠得到香蕉)
將編程作為一種愛好(不一定,只有少數的程序猿有這一素質) 如果你允許會滔滔不絕地跟你談論技術(程序猿使用特殊的語言,別的人或猴子很難聽懂)
【PMonkey】有過個人的開發經歷(獨立的尋找過香蕉或追尋母猿)
堅持認為某種技術最好(程序猿都很固執)
如果讓他用他認為不好的技術他會非常別扭(同上)
聰明、健談、興趣廣泛(只限於NEET和有關宅話題)
在大學和工作前就開始接觸程序(程序猿從小就是程序猿了)
總而言之,程序猿和它的一些同種族(如網管猿,技術猿)一樣,都是人類用來幫助提高生產力的技術人員,由於許多程序猿的智力很高,所以經常自己去尋找香蕉或母猿而無心工作,但這只是個別現象,總體來說程序猿是一種對人類很有用的動物,它們工作時很勤勞,而且不像業務猿那樣喜歡跳奇怪的舞蹈(也叫增猿舞)吵的人們想鬼畜它,程序猿一般到了30歲左右就會進化成別的猿類(一般是管理猿),不過據報道,也有一些少數一生都是沒有母猿的悲劇程序猿。
程序猿是被詛咒的悲慘生物,它們受到的詛咒有:過度的勞作、永遠不足的睡眠、低廉的收入等等……
程序猿並不擅長戰斗,它們生活中最主要的活動是——在樹葉上打洞,然後將打洞的樹葉放進一個木盒子里念咒語,並聲稱那些是能夠提高族群的食物供給或提供其他神奇功能的偉大產品。但是,因為每個程序猿打洞的方式各不相同,他們之間也會經常爆發沖突,每個程序猿都聲稱自己所用的打洞方式是最好最先進,打出的洞是最美最華麗的,並不惜因此用打洞的樹葉互相投擲。根據一些冒險者收集到的程序猿族群的資料,所謂的打洞方式,有西珈岬式、爪哇式、希沙埔式等等。不過,令人驚異的是,雖然每個程序猿所用的打洞方式都不同,但它們能用幾乎所有的方式來給樹葉打洞,來表達「你好,世界」的意思……
因為長時間的不運動,程序猿的體力普遍低下,不擅長近戰。不過,它們的高超智力彌補了這個缺陷。投擲打洞樹葉是它們常用的攻擊方式,而且,一如它們所宣稱的一樣,那些樹葉有著一些神奇的功能——很多冒險者在受到樹葉攻擊後,雖然受傷並不嚴重,但都不同程度表現出反應遲緩、四肢不聽指揮、眼前一片藍色等症狀,甚至於昏迷不醒。不過,好在這些症狀都不致命,但是這足以保護程序猿遠離冒險者的侵擾。
程序猿只為了保護棲息地才會戰斗,因此,一般冒險者都會繞開它們的地界。而且,由於程序猿的智力達到了能和冒險者交流的程度,甚至有的冒險者和程序猿族群建立了良好的關系,並且得到了它們的打洞樹葉作為向族群提供食物的交換——只是這些禮物在冒險者手上遠不如在程序猿手上可靠……
Ⅸ 程序員叫啥
程序員(Programmer)是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚,特別是在中國。軟體從業人員分為初級程序員、中級程序員、軟體設計師、系統分析員、系統架構師、測試工程師六大類。世界上第一位程序員是埃達·洛夫萊斯。
考試介紹
軟考程序員考試屬於計算機軟體水平考試(簡稱軟考)中的一個初級計算機職稱考試。對於軟考程序員考試並無學歷及資歷條件限制,更無論年齡、專業與資歷。一年可報考軟考程序員考試兩次,但一次考試只能報考一種資格,因此報考了程序員考試則無法再報考軟考其他級別或科目的考試。同時軟考程序員考試採用筆試形式,考試實行全國統一大綱、統一試題、統一時間、統一標准、統一證書的考試方式。
通過國家統一組織的考試,資格考試分為:程序員級(原初級程序員)、軟體設計師(原高級程序員)以及更高水準的:信息系統項目管理師、系統分析師(原系統分析員)、系統架構設計師、網路規劃設計師、系統規劃與管理師。
Ⅹ 程序員是什麼職業什麼職務
程序員(英文Programmer)是從事程序開發、程序維護的專業人員。
一般將程序員分為程序設計人員和程序編碼人員。
軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。
職務:
1、對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。
2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。
4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。
5、負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。
6、參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。
7、負責相關技術文檔的擬訂。
8、負責對業務領域內的技術發展動態進行分析研究。
程序員職業要求:
1、熟練開發工具
作為程序員,掌握至少兩個或三個開發工具是程序員的基礎。其中,C/C++和Java是最推薦的開發工具。C/C++已經成為開發工具高效、靈活的銳利工具。
許多系統級軟體都是用C/C++編寫的。Java的跨平台與Web的良好結合是Java的優勢,Java相關技術JavaOne很可能成為未來主流的開發工具之一。
其次,最好掌握一個簡單的可視化開發工具,如vb、powerbuilder、delphi、cbuilder,這樣可以降低開發難度,強化程序員對象模型的概念。另外,您需要掌握基本的腳本語言,如shell、perl等,至少能理解腳本代碼。
2、熟知資料庫
很多應用都是以數據為中心的資料庫,有很多資料庫產品,其中關系資料庫仍然是主流形式,所以程序員至少要精通一兩個資料庫,非常清楚關系資料庫的關鍵元素,熟練掌握在SQL的基本語法中。
雖然許多資料庫產品提供可視化的資料庫管理工具,SQL是資料庫操作的基礎和常用方法。如果您沒有訪問商業資料庫系統的許可權,那麼最好使用免費的資料庫產品,如mysql、postgres等。
3、了解操作系統
目前,主流操作系統是windows、linux/unix,熟練使用這些操作系統是必要的,但只有這些還遠遠不夠。
作為一個真正的編程大師,我們需要對操作系統及其內存管理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等有深入的了解。
Linux作為開發源代碼的操作系統,是一個很好的學習平台。Linux幾乎具有現代操作系統的所有特徵。雖然關於Windows系統內核實現機制的信息很少,但是通過Internet仍然可以獲得很多信息。了解網路協議TCP/IP。