任何的事物都有其兩面性,我們無法批判一件事情到底是完全正確還是完全錯誤,只能儘量公平公正的分析事物的方方面面。這也是我一貫看待事物的觀點。
本文是以本人個人個人觀點來探討下“努力與選擇兩者之間該如何權衡”
第一個階段:
新手經常會問一個問題,那就是我到底該選擇什麼語言好?
PHP 好流行,可是JAVA大法也不錯還能開發安卓程序。不過OC貌似更賺錢,可是蘋果好像又出了swift。我到底該學什麼呢?
這裏我想說。正是因爲你不知道你要做什麼,所以你纔會迷茫到底該選擇什麼。
很簡單的道理。如果你要開發蘋果APP 那麼你只能選擇OC 或者swift或者HTML5跨平臺開發。
所以一切的一切都是要根據你到底想做什麼然後才能決定到底該選什麼。
已我個人的經歷舉例。
我真正開始接觸編程是在大學。那時候哪裏懂 這麼多。 PHP 也好 JAVA也好。OC也好。。根本不知道有這麼多語言。
學校是教C#的。那就跟着學了。
後來因爲ACM 比賽需要用C++ 所以就學了C++
到了工作。因爲項目需要。做過ASP 、javascript、OC
這時候大家會發現當你真正需要做某些事情的時候其實選擇很少。
所以先認清自己想做什麼。然後就可以考慮學什麼了。
如果不知道自己想做什麼,那該怎麼辦?
那很簡單,看下哪門語言更容易入門,更適合培養編程的思維。那麼就選擇哪門語言。
當你有了編程的思維之後。那麼一切就很順利了。
第二個階段:
其實我一直覺得第二個階段根本不需要多做描述。因爲當你經歷了第一個階段之後
你的程序猿之路已經慢慢走上軌道了。那時候你會自發的知道自己需要什麼,缺些什麼。
我一直認爲程序猿之路其實難在入門。一旦入門了 接下來你會很清楚的知道自己需要學什麼。自己需要做什麼。
我個人所認爲的第二階段是深入學習(這時候就要努力學習了)
深入學習你想要學的語言。
當你深入學習之後你就可以到達第三個階段。任何語言都只是工具
第三個階段:任何語言都只是工具
而當你到了第三階段之後真的就是任何語言都只是工具,大同小異。其次就是深入核心的東西不同。
最後做一個比喻:
以學車作爲比喻。
假設世界上所有的車都可以開 可以買。
但是你還不會開車。
所以即使讓你去開蘭博基尼你會開麼?
所以一開始要選擇一輛方便學習的車去學會開車
等你學會了開車之後。再選擇一輛自己喜歡的車、或者經常開的車一直開下去。
當你自己的車開熟練了、駕駛技術牛B了那麼再開其他車都是大同小異了。(不管你開什麼車、停車、移庫、啓動這些都是基礎要會的吧?嘿嘿)