中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 網(wǎng)絡(luò)與存儲(chǔ) > 設(shè)計(jì)應(yīng)用 > 程序員真正的價(jià)值是什么?

        程序員真正的價(jià)值是什么?

        作者: 時(shí)間:2017-10-31 來(lái)源:網(wǎng)絡(luò) 收藏

          在科技浪潮澎湃、技術(shù)信息撲面而來(lái)的今天,一位剛畢業(yè)的大學(xué)生如果足夠勤奮,他可以在兩三個(gè)月之內(nèi)掌握一門(mén)編程語(yǔ)言,并編寫(xiě)出像模像樣的軟件,他們的學(xué)習(xí)速度甚至超過(guò)了老一輩的程序員,但是解決問(wèn)題的能力是無(wú)法速成的,只能依靠時(shí)間、經(jīng)驗(yàn)和慘痛的教訓(xùn)歷練而成。有時(shí)候還需要靈感和運(yùn)氣。

        本文引用地址:http://www.antipu.com.cn/article/201710/369443.htm

          “問(wèn):池老師,我是個(gè)不愛(ài)互動(dòng)的人,但是您所有的文章我都看了,非常感謝您的引導(dǎo),我入手了人生第一臺(tái)MBP?,F(xiàn)在問(wèn)題來(lái)了,但是找不到更合適的人解答,只能求助于您了,如果您有時(shí)間的話(huà)。問(wèn)題是這樣的:我有個(gè)32bitunixfile(開(kāi)啟一個(gè)服務(wù)進(jìn)程),在Mac上執(zhí)行時(shí)錯(cuò)誤提示是:execformaterror,但是在服務(wù)器卻可以執(zhí)行,為何?Mac上有可以運(yùn)行的方案嗎?期待您的回復(fù),不勝感激。

          答:和OSX是不同的操作系統(tǒng),可以嘗試在OSX里重新編譯這個(gè)文件。

          問(wèn):非常感謝!如果沒(méi)有文件源碼是不是就只能認(rèn)命了?

          答:可以在Mac上裝Docker,然后對(duì)服務(wù)進(jìn)行端口映射就可以了。

          答:茅塞頓開(kāi)。謝池老師。”

          以上是我和一位讀者的對(duì)話(huà),這位小伙子在拿到答案之后像一縷煙塵一樣消失無(wú)蹤,之后再也沒(méi)有出現(xiàn)過(guò)。

          在微信上加了很多MacTalk的讀者之后,經(jīng)常會(huì)收到一些奇奇怪怪的問(wèn)題,關(guān)于職場(chǎng)、關(guān)于選擇、關(guān)于朋友、關(guān)于Mac、關(guān)于技術(shù)等等,不一而足。但是我能回答的卻很少。問(wèn)題不好沒(méi)法回答,問(wèn)題太復(fù)雜沒(méi)法回答,問(wèn)題領(lǐng)域超出我的認(rèn)知也沒(méi)法回答,耗時(shí)太長(zhǎng)的問(wèn)題我也沒(méi)時(shí)間回答,實(shí)在是慚愧的緊。好在偶爾也能夠幫助一些小伙伴解決一些實(shí)際問(wèn)題,心理上略感安慰,比如上面這個(gè)問(wèn)題。

          把這段程序員之間的對(duì)話(huà)翻譯一下,大致是這么個(gè)故事:

          一位讀者有一個(gè)32位的Unix可執(zhí)行文件,可以在某種版本的服務(wù)器上正常運(yùn)行,運(yùn)行這個(gè)文件作用就是起個(gè)進(jìn)程,開(kāi)端口,然后與其他程序進(jìn)行交互。但是這個(gè)文件拿到Mac上完全沒(méi)辦法運(yùn)行。就在他趴在Mac上愁腸百結(jié)萬(wàn)念俱灰的時(shí)候,突然想到了「池老師」。不就是這個(gè)老家伙把Mac夸的像一朵玫瑰一樣,讓每個(gè)程序員都去采摘么?現(xiàn)在扎手了,你不管誰(shuí)管?于是他給我發(fā)來(lái)消息,意思就是管也得管,不管也得管,您看著辦。

          我拿到問(wèn)題一看,不難。Linux和OSX雖然師出同門(mén),都是從老前輩Unix那兒畢業(yè)的,但是后來(lái)畢竟各練各的,在Linux編譯好的程序不可能在OSX上用,但是在OSX上重新編譯一下可能就沒(méi)事了。我把這個(gè)想法告訴了這位程序員,得到的反饋是:對(duì)不起哥,沒(méi)有源代碼!

          我被這個(gè)冷酷的回復(fù)震驚了,立刻意識(shí)到剛才的想法并不是最優(yōu)解決方案,因?yàn)樵谥匦戮幾g的過(guò)程中,各種包的依賴(lài)關(guān)系和編譯錯(cuò)誤足以讓你焦頭爛額,我隨即提供了B計(jì)劃:在OSX上安裝Docker,輕量級(jí)的容器Docker可以運(yùn)行各種版本的Linux,把文件扔到Docker里,然后通過(guò)主機(jī)和Docker之間的端口映射即可輕松解決這一問(wèn)題。

          雖然這里面會(huì)涉及很多技術(shù)細(xì)節(jié),但是方向是沒(méi)有問(wèn)題的,所以這位程序員立刻表示「茅塞頓開(kāi)」,然后「biu」的一聲就在屏幕對(duì)面消失了,沒(méi)有留給我說(shuō)「不客氣」的機(jī)會(huì)。

          這個(gè)問(wèn)題裝個(gè)Linux虛擬機(jī)也可以解決,但是虛擬機(jī)過(guò)于耗費(fèi)資源,而且不如Docker靈活,所以不是最佳解決方案。Docker是。

          做為一個(gè)程序員,我們除了要掌握多門(mén)程序語(yǔ)言和多種數(shù)據(jù)庫(kù),了解前端技術(shù)、后端技術(shù),通曉網(wǎng)絡(luò)七層架構(gòu),知道TCP/IP三次握手和四次揮手,編寫(xiě)漂亮的代碼,設(shè)計(jì)優(yōu)美的架構(gòu)……之外,我們還要解決研發(fā)、程序運(yùn)行和產(chǎn)品上線(xiàn)過(guò)程中遇到的各種問(wèn)題,而且被要求以最小的代價(jià)來(lái)解決問(wèn)題……我們?nèi)菀讍幔?/p>

          除了編程技巧和程序設(shè)計(jì)能力,解決問(wèn)題的穩(wěn)準(zhǔn)狠是衡量一個(gè)程序員是否優(yōu)秀的重要因素之一,也是資深技術(shù)人員真正的價(jià)值所在。在科技浪潮澎湃、技術(shù)信息撲面而來(lái)的今天,一位剛畢業(yè)的大學(xué)生如果足夠勤奮,他可以在兩三個(gè)月之內(nèi)掌握一門(mén)編程語(yǔ)言,并編寫(xiě)出像模像樣的軟件,他們的學(xué)習(xí)速度甚至超過(guò)了我們這些老程序員,但是解決問(wèn)題的能力是無(wú)法速成的,只能依靠時(shí)間、經(jīng)驗(yàn)和慘痛的教訓(xùn)歷練而成。有時(shí)候還需要靈感和運(yùn)氣。

          很多軍迷讀了大量的軍事著作和歷史小說(shuō),常常羨慕那些名將的風(fēng)采,并浩嘆自己「生不逢時(shí)」。但是名將不是那么容易煉成的。歷史上叱詫風(fēng)云的名將鳳毛麟角,他們親自持刀上陣追擊敵人,見(jiàn)識(shí)戰(zhàn)場(chǎng)的慘烈,目睹敵人的尸體,看到戰(zhàn)友被殺,知道被刀看中會(huì)流血死去,他們冷酷無(wú)情,堅(jiān)如磐石,在全軍即將崩潰的時(shí)候發(fā)現(xiàn)敵人的弱點(diǎn)并進(jìn)行攻擊,在瞬息萬(wàn)變的戰(zhàn)場(chǎng)進(jìn)行決斷,在多次失敗后從無(wú)數(shù)士兵的尸體里站起來(lái)重新出發(fā)去挑戰(zhàn)那個(gè)戰(zhàn)勝你的對(duì)手,在所有人對(duì)你說(shuō)「指導(dǎo)員,我們上吧」的時(shí)候,堅(jiān)定的說(shuō)出那三個(gè)字:再等等!

          如果你做不到這些,那還是做個(gè)最終會(huì)被張飛槍挑的小兵吧。

          優(yōu)秀的程序員同樣如此,菜鳥(niǎo)常常羨慕高手在談笑之間讓難題灰飛煙滅,而自己卻苦苦思索而不得入門(mén)之法,殊不知這些高手同樣經(jīng)歷了名將的那些腥風(fēng)血雨。他們?cè)谇宄康奈⒐饫锞帉?xiě)代碼,在轟鳴的機(jī)房中調(diào)試程序,他們徹夜不眠就是為了解決一個(gè)bug,他們要承受數(shù)據(jù)丟失或上線(xiàn)失敗的痛苦,默默吞下眼淚,準(zhǔn)備下一次的戰(zhàn)斗。不停的學(xué)習(xí)、實(shí)踐和思索,成千上萬(wàn)個(gè)小時(shí)之后,高手始成。

          同樣的問(wèn)題,高手的解決思路和小球是截然不同的。一般來(lái)說(shuō),只要不是世界難題,給足時(shí)間、空間和人力,都能解決。如果你遇到問(wèn)題告訴上級(jí),這個(gè)問(wèn)題交給我了,兩年之內(nèi)搞的妥妥噠,那就不要怪項(xiàng)目組組團(tuán)把你打出翔來(lái),因?yàn)榇蠹乙氖欠址昼娊鉀Q,不是兩年。在這個(gè)唯快不破的年代,我們沒(méi)有這么多的時(shí)間,所以要通過(guò)逆向思維、經(jīng)驗(yàn)教訓(xùn)、輾轉(zhuǎn)騰挪、借力打力等方式以最小的代價(jià)快速解決問(wèn)題。這才是老程序員的價(jià)值。

          再舉個(gè)例子,一個(gè)運(yùn)行良好的線(xiàn)上應(yīng)用在你修改bug增加功能之后重新上線(xiàn)出現(xiàn)了一些莫名其妙的問(wèn)題,比如占用資源增加或運(yùn)行一段時(shí)間宕機(jī)等等,怎么解決?

          常規(guī)的做法就是通過(guò)閱讀日志、模擬線(xiàn)上環(huán)境和調(diào)試程序來(lái)定位錯(cuò)誤。容易的bug用這些方式基本就能搞定了,但是更隱蔽的bug會(huì)耗費(fèi)大量的時(shí)間和人力。更好的方式是什么?

          首先,排查是程序問(wèn)題還是環(huán)境問(wèn)題,把線(xiàn)上程序恢復(fù)到運(yùn)行正常時(shí)的老版本,如果出現(xiàn)了同樣的問(wèn)題,那就是生產(chǎn)環(huán)境發(fā)生了改變。如果運(yùn)行正常,要么是你修改老bug時(shí)引入了新bug,要么是新增加的代碼出現(xiàn)了問(wèn)題。

          其次,閱讀產(chǎn)品的changelog,根據(jù)代碼提交的時(shí)間線(xiàn)構(gòu)建系統(tǒng),通過(guò)二分法排查,定位是哪部分代碼引起的問(wèn)題。

          第三,排除了所有的不可能,剩下的無(wú)論看起來(lái)如何不可能,就是它干的。

          以上只是一個(gè)簡(jiǎn)單的例子,實(shí)際的情況可能比這個(gè)例子復(fù)雜一百倍,需要我們綜合使用各種方式進(jìn)行交叉比對(duì)和錯(cuò)誤排查才能解決。這僅僅是遇到問(wèn)題解決問(wèn)題,更多的時(shí)候是需要你提出問(wèn)題,并解決問(wèn)題,那是更高的境界。

          很多人學(xué)了那么多編程語(yǔ)言,寫(xiě)了十幾年程序,最終依然無(wú)法做到以最小的代價(jià)解決問(wèn)題,不禁讓人扼腕嘆息。

          程序員真正的價(jià)值是什么?以最小的代價(jià)解決問(wèn)題!知行合一,方可無(wú)敵于天下。



        關(guān)鍵詞: Linux 電子工程師

        評(píng)論


        相關(guān)推薦

        技術(shù)專(zhuān)區(qū)

        關(guān)閉