Ⅰ 女生是程序員說明腦子聰明嗎
不是。是人家背後多少個日日夜夜的努力得來的。女生一般比較細致、有耐心,心思細膩,更容易注意到男生注意不到的細節。以大多數人的努力程度之低,根本輪不到拼天賦。只要認真學是可以學好的,說不定那些聰明還不一定學得比你好呢。可以確定的是,通過學習計算機,人是可以變得更聰明。
Ⅱ 為什麼程序員的思維很難理解
1、程序員的思維比普通人要嚴謹。
對編程有一定了解的人都能理解這一點,一是一二是二,電腦不認模稜兩可的回答,因為「模稜兩可意味著更多的可能答案」,所以你跟程序員交談的時候,如果你問他「為什麼要這樣問」或「你為什麼聽不懂」,你就會知道你自己的描述有多麼的不嚴謹了。
最簡單的例子,你媽媽讓你去市場買水果,如果看到有蘋果就買一個蘋果,看到梨就買兩個。你看到市場有蘋果和梨,你會買什麼回家?
首先給出一個大前提,在程序上不存在「潛台詞」或者「潛規則」這種東西,唯一起作用的只有「字面意思」。
一般人肯定是買一個蘋果和兩個梨。當然程序員也不是腦子有坑,以一個正常人的思維考慮也會買一個蘋果和兩個梨,但是看到這問題的第一個瞬間的直覺反應,卻是「如果看到梨就買兩個蘋果」。這個問題不存在潛台詞,所以所有人都會直接從字面理解老媽的意圖。
按照程序的邏輯分析,這句話共分為兩個部分,代表兩個程序任務。「如果看到有蘋果就買兩個蘋果」為任務一,條件是「看到有蘋果」,目標對象「買蘋果」,數量「一個」;「如果看到有梨就買兩個」為任務二,條件是「看到有梨」,數量「兩個」,沒有給出新的目標對象。
因此按照程序邏輯來講,第二句話將繼承上一個目標對象,也就是「買蘋果」,所以這句話被看起來像職業病一樣的思維直接翻譯成了「如果看到有蘋果就買一個蘋果,如果看到有梨就買兩個蘋果。」
————————————————————
2、程序員看問題比一般人透徹。
這是職業特性導致的,因為電腦編程的嚴謹性,因此程序員面對一個問題、一個需要實現的目標或者一個bug時,他會思考更底層的問題,並且會習慣性採用歸納法來盡量避免以後可能遇到同樣的問題。
比如用輸入法輸入中文的詞句,有的時候打出了一串拼音,然後按下數字2選取發現不是自己想要的詞,然後發覺數字1對應的才是自己想要的,刪掉,重新輸入拼音,這次按下數字1的瞬間卻發現兩個詞的位置調換了,於是又刪掉重新鍵入,這次認真地看了看,終於選對了想要的詞的序號。
這個時候你會說,啊,我下次應該更小心一點,不要馬虎大意想當然,看清楚了再點。
程序員不這么想,他會想,導致這個問題的看來是輸入法的「詞語順序自動調整」功能,他會自動監測使用者輸入的各種詞語的頻率,來自動調整詞語的順序,底層代碼實現的邏輯很簡單,每個不同的詞對應一個從輸入法安裝到現在的輸入次數的計數器,直接按計數器排列順序就好了;也有的輸入法會監測你輸入後是否會將其刪掉,那麼這時候會被智能識別為打錯字,計數器不會加一。
然後再一思考,這種功能一般都是可以開關的,如果我想要靠記憶記住順序使用而不用輸入法自動調整的話,比如對漢字輸入的速度有一定要求需要考記憶記住漢字序號,我只需要進入輸入法設置將其關掉即可;如果我想要它幫助我調整詞句位置,但是又不需要頻繁地調整,那麼在我有工作需要的時候我會提前關掉,平時開啟即可;而如果我想單純依賴這一功能,那就不用管它,下次看清楚再選就好了。
Ⅲ 程序員聰明嗎
要看在哪方面了,
邏輯思維強 但情商一般不高…………都給人打工了,交際能力都有限
Ⅳ 很牛逼的程序員敲代碼全靠腦子記么
寫代碼要有一定的英語基礎,水平高的程序員因為寫的代碼多了已經把代碼內化了,所以他們寫代碼隨心所欲。
Ⅳ 程序員是不是得特別聰明
聰不聰明到不一定,但是發散思維一定要強,邏輯思維能力要強。
Ⅵ 什麼人算是程序員
mod=viewthread&tid=314起因先聲明,只是談自己看法,和大家討論一下,沒有別的意思 我根據自己的經驗把程序員分為以下幾種 單純沒有腦子的 這種程序員是最讓經理氣的一種,因為大多是剛入門的,或是學生剛走出校門,不喜歡問,也不懂得分析,只是一味的很聽話,為什麼說他們單純呢?那是因為他們從來不會問,不會說也沒有自己的想法,你讓干什麼就干什麼,讓自己怎麼干就怎麼干,聽上去感覺特好的員工,很聽話,如果只是這樣就好了,可怕的是他們沒有腦子,比如你說讓他完成一個增加的功能吧,他們很聽話的給你做出來,但只是一個增加的功能,他根本不會在增加功能之後再給你處理一下刷新數據的問題,或是做一些必要的驗證,更說不上代碼的擴展性,那都是見不著邊的事,不可能。 你說讓做一個查詢功能,他完全有可能給你做出來一個查詢所有的功能,不會管你要不要根據時間,要不要分頁,或是其它的方式的查詢,人家還可有理,會告訴你,你需求上沒說啊,只說要有一個查詢的功能?然後你無語。 有腦子先斬後湊的 這類程序員大致是工作有一年或是兩年工作經驗的人,自認為自己有些經驗了,做了幾個項目,感覺自己NB的不得了了。分配一個功能總有一些自己的想法,其實他自己不知道這些想法還不成熟,只是個人主觀意向,你說讓人家做一個導航條吧,你清楚的告訴他是在頭部用的,要直排下拉類型的。 好了得到需求了,他根本不管你為什麼要這樣做,在做的過程中,他發現自己以前做一些項目里有導航條的,而且很好看,他們想,經理是怎麼想的,設計的還不如我設計的好看,我給他改一下說不定還能得到他的獎勵,於是自己把直排下拉的導航改成了,直排出面板那種的,因為好看,而且還不告訴經理,想給大家一個驚喜,誰知道經理一看,說怎麼改需求了,客戶不要這樣的,然後他就跟你講理,說這樣的好看,而且什麼擴展性還好,技術先進,流行,然後你會很無耐的告訴他,你做的確實很好看,但是客戶不付錢怎麼辦,於是沒辦法在你的強逼之下他不得不改,於是你對他的工作很不滿意,首先是這個人不好管,老自己做主,不把你當回事,怎麼辦,好點的經理會慢慢引導一下,脾氣大的經理會直接扔出兩字滾蛋 我們來分析一下他的心理, 第一種可能就是感覺自己做了很多項目,有一點自大,目中無人的心態,看不起別人設計的東西,總以為自己的技術和代碼很棒了,因為自己在程序界摸爬滾打一兩年了,也算是有所見識了。但他們確不明白,現在的自己正像當前的曹仁學曹操一樣,只是學得其形而為盡其神。大部分的軟體,網站,不能只看網站本身的價值,成功不成功,不是自己說了算,也不是經理說了算,還得看客戶,一句話客戶喜歡的就是好東西,客戶不懂技術啊,你寫的再好,客戶不懂哦,所以一定不要亂改需求,軟體要和市場結合才能真正體現出它的價值,做讓大家喜歡的軟體,而不是單純的技術堆積。 第三種可能是自己實現不了,而又不想學習,感覺浪費時間,所以直接改動一下得了。感覺自己如果寫的話,寫好了還好說,寫不好,耽誤時間,一個導航幾天能不完,會很丟人的。於是要加速。 有腦子,很聽話,很認真,但基礎不好,代碼有局限性 這類型的程序員大多是工作一到兩年的程序員,但和上面的不同,他們很有腦子思路很好,而且很聽經理的話,做東西很認真,做不完了自己會加班寫,學新的東西也很快,但是有一點不好的是,他們有很多理由說自己沒時間學習基礎,這些人一般是在學校沒有學好,出來之後後悔了,學起來很認真,由於學了些新的知識,起點高,看不起基礎的東西,從不想著沒事去看看編程基礎,看看演算法,看看數據結構,總是以為我都能做出這樣的項目了,還看那些小東西會很丟人的,於是在公司從不看回家更不想看,時間長了,技術會有很大的局限性,對某一塊技術很不錯,但是對其它技術不怎麼好,於是在接到一個項目時,總喜歡使用自己現有的,會的技術去實現,轉了一圈又一圈總算是把東西寫出來了,而且還是加班完成了,但是代碼的性能,穩定性,和效率上差的很遠,擴展性也談不上,時間一長,項目一多起來,就會出現多次反工,因為需求是會不斷變化的,於是自己的代碼也要變化,感覺很是理所當然,一個項目沒事,接手的多了就麻煩了,新項目剛到手,老項目就出問題了,不是這里有點小毛病就是那個功能要升級,於是新項目放下,著手改老項目,手上能有三四個項目時,就會忙個不停,改的多了,沒辦法再改了就得重新設計,或是直接說這個功能實現不了。 其實在這個階段的朋友很有潛力的,只要花點心思補習一下自己的技術缺陷,多看看高手的代碼,寫之前想一下,設計一下,自然事半功倍,千萬不要有眼高手低的心態。 不隨便改變需求 他們不會主觀的改變一些東西,不管是對還是錯,如果要改的話他們會在開會時,或是私下跟你提出來,通過後再改,否則會按需求辦事 2.不寫沒有思想的代碼 在寫功能時會加上一些人性化的功能,比果加個小圖標,加一些驗證,處理一些操作習慣,加加快捷鍵,處理好Tab順序,等這些,不用你說,他們自己會處理好。 3.不寫沒有遠見的代碼 4.不寫不負責任的代碼 我們寫代碼一是為客戶用,二是方便其他人看,不單單是自己維護,要對自己的代碼負責,從自己手上出去的代碼代表的就是自己的臉,代碼不好,人家會打臉的。他們不願意挨打所以他們負責。 高手在編程效率方面可能並不比普通程序員快多少,因為他們會吝嗇自己敲下的每一行代碼。這種吝嗇有兩方面的含義,一是項目的架構性和整體性考量,二是從性能和優化的角度進行Coding。其實,這里所映射的是一個開發者的技術視野。 有多位技術專家強調項目執行時的全局觀。面對一個項目,即使是團隊中的普通一員,也要力求從項目整體架構的角度審視開發需求,對各個模塊、介面和通信做最優化的預想和配置。這樣可以從全局審視整個項目的技術布局,預判可能出現的問題。 在確定了整體之後,落實到具體的模塊實現,每一行代碼不但有上下文的考量與規劃,還要具備模塊間的整體布局。這是模塊內的技術視野,比如介面的定義、注釋的可讀性、代碼的執行效率等。當你寫下一行代碼前,要考慮它是否會對整個系統造成影響,是否方便其他介面進行調用,這些都是一個開發高手的技術潛意識。 據一些經常帶領入門級開發者的技術經理介紹,多數人只考慮自己所負責的模塊進行開發,缺乏一個全局性的技術視野和對代碼性能苛刻的態度,這樣雖然能按交付日期完成項目,卻對項目質量和開發者的自我提高有很大阻礙。 開發高手是代碼閱讀者。大多數技術專家的代碼閱讀量是普通程序員的百倍,代碼閱讀的時間比寫代碼的時間要長得多。 多數程序員只把程序開發當成一份工作,他們在乎平台的前景、語言的優劣、報酬的高低;他們不願為一個技術點反復鑽研,不願為一個bug精心測試,不願為自身技術水平的提高多花時間。而開發高手往往具有單純的技術夢想,願意為技術付出自己全部的時間。這幾段話是來自
Ⅶ 程序員是不是腦子很聰明,智商很高的那種啊
一般智商的人別想了,奉勸LZ不要找虐
為什麼,現在寫程序實現一個功能往往沒有現成的,需要你從網上找實例,而網路又很難找到實用的,又要到國外網站上找。而且需要用到很多最新開發庫你見都沒見過,需要學習和掌握。而國內公司個個都要快速開發,又不給你時間。你說這工作是不是需要智商高呀,而且出一個BUG搞死你都找不到原因,智商不高你能勝任的了嗎?