请问,新入行想做程序员的人,如何自学?学什么语言? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
evannan
V2EX    程序员

请问,新入行想做程序员的人,如何自学?学什么语言?

  •  
  •   evannn 2017-12-21 10:33:18 +08:00 8942 次点击
    这是一个创建于 2852 天前的主题,其中的信息可能已经有所发展或是发生改变。
    就信息化与编程而言,码农是这个时代的最大受益者。
    所以,加入我要转入码农行业?学啥语言比较符合未来趋势?

    我就想以后自己写点东西。
    85 条回复    2019-03-28 13:28:20 +08:00
    Doodlister
        1
    Doodlister  
       2017-12-21 10:34:05 +08:00 via Android
    Python ?
    lzjamao
        2
    lzjamao  
       2017-12-21 10:35:07 +08:00
    C 语言,
    lrj2u
        3
    lrj2u  
       2017-12-21 10:52:16 +08:00
    又来一句梗:PHP 是宇宙第一语言!
    gonethen
        4
    gonethen  
       2017-12-21 10:56:06 +08:00
    我觉得是英语
    araraloren
        5
    araraloren  
       2017-12-21 10:56:37 +08:00
    English :)
    cyspy
        6
    cyspy  
       2017-12-21 10:58:07 +08:00
    如果不想只做固定的工作,肯定是先从 C/C++开始学内存和数据结构,最好还有操作系统,然后可以 Java 学面向对象
    skyjerry
        7
    skyjerry  
       2017-12-21 10:58:25 +08:00 via iPhone
    又来骗回复
    evannan
        8
    evannan  
    OP
       2017-12-21 11:05:54 +08:00
    @cyspy 感谢!
    momocraft
        9
    momocraft  
       2017-12-21 11:15:05 +08:00
    随便学一个能做出较完整东西的,朝良性循环努力。可以考虑 js。
    z1s23
        10
    z1s23  
       2017-12-21 11:19:20 +08:00 via iPhone
    汇编,C/C++
    SuperMild
        11
    SuperMild  
       2017-12-21 11:25:23 +08:00   1
    那你想做什么呢,想做网站可以从 PHP 入门,想做手机 app 当然是 java 和 oc/swift,想搞所谓的人功智能可以从 python 开始(同时还要学数学)。至于未来的趋势,你初学不用管这个,反正语言的基础部分都是相通的,并且未来没有人知道。
    dizhang1109
        12
    dizhang1109  
       2017-12-21 11:27:21 +08:00   2
    说学汇编,学 c 的都是误人子弟,即枯燥,学了也找不到工作。初学者培养兴趣最重要 python 或者 java 才是最适合新手学习的,有了兴趣自发会去学习更多的东西
    tttty
        13
    tttty  
       2017-12-21 11:29:17 +08:00
    Java or Python or Js
    liuzhoou
        14
    liuzhoou  
       2017-12-21 11:29:58 +08:00
    lihongjie0209
        15
    lihongjie0209  
       2017-12-21 11:45:06 +08:00
    别学 js 就对了, js 的一部分知识不具有迁移性
    ssdold
        16
    ssdold  
       2017-12-21 11:48:29 +08:00
    一个学化学的人也想转,请问学什么,学了后,做什么工作。
    hbkdsm
        17
    hbkdsm  
       2017-12-21 11:49:39 +08:00
    @ssdold 我也是学化学的,学了 Ruby 干后端
    KNOX
        18
    KNOX  
       2017-12-21 11:51:08 +08:00 via Android
    你现在做的是什么?英语、数学基础如何?想要什么结果?
    inflationaaron
        19
    inflationaaron  
       2017-12-21 11:54:42 +08:00 via iPhone
    有兴趣想要从头掌握 CS 知识的话建议从 Scheme 或 Racket 学起,Lisp 系的语法是最简洁明了的。同时配合阅读 SICP 打基础绝对够了。之后再接触其他 fancy 的语言就比较简单了。合格的程序员从来不会被语言限制住。
    winglight2016
        20
    winglight2016  
       2017-12-21 11:58:59 +08:00
    你不妨写几份简历,分别注明自己有几年的 XX 语言编程经验,投 1000 份出去,看看有多少感兴趣联系你的,你不妨告诉 HR,再等我几年就有经验了,然后选你最感兴趣的语言学呗
    pathbox
        21
    pathbox  
       2017-12-21 11:59:04 +08:00 via iPhone
    Python
    SuperMild
        22
    SuperMild  
       2017-12-21 12:03:24 +08:00
    @inflationaaron 绝对是从入门到放弃系列 233
    evannan
        23
    evannan  
    OP
       2017-12-21 12:08:12 +08:00
    @KNOX 自己会写一些简单的 html 和 css,英语勉强 4 级,现在有空就背单词。文科生。以后想自己写一些自动交易程序,针对股票市场。倒不是为了单纯到找工作。
    inflationaaron
        24
    inflationaaron  
       2017-12-21 12:10:30 +08:00 via iPhone
    @SuperMild 我校 CS135 入门教教 Racket (感觉是为了劝退
    LZRng
        25
    LZRng  
       2017-12-21 12:14:11 +08:00 via Android
    投一票给 python
    wxsm
        26
    wxsm  
       2017-12-21 12:22:27 +08:00 via iPhone
    第一门语言建议选择基础的静态强类型语言,比如 java 或 c,养成良好的编程思想和习惯后,再去接触动态、弱类型语言。
    daliang
        27
    daliang  
       2017-12-21 12:32:56 +08:00   1
    建议先学数据结构和算法,计算机网络,操作系统原理,计算机组成原理,编译原理,数据库原理,模拟电路,数字电路,C,C++,汇编,最后再看看你想干什么,再学别的语言。
    Phariel
        28
    Phariel  
       2017-12-21 12:35:52 +08:00
    @evannan #23 针对量化交易 Python 没跑了
    hcnhcn012
        29
    hcnhcn012  
       2017-12-21 12:36:19 +08:00 via iPhone
    只要肯坚持就好
    shawshi
        30
    shawshi  
       2017-12-21 12:37:01 +08:00
    先学英语再学数学再学 python 再学人工智能。
    clino
        31
    clino  
       2017-12-21 12:39:45 +08:00 via Android
    python 如果只学一门就这个了
    运维 web 人工智能 科学计算
    开发效率高,学习快
    DXpro
        32
    DXpro  
       2017-12-21 12:46:29 +08:00
    想问下楼主 为什么不做设计了?
    nuxt
        33
    nuxt  
       2017-12-21 12:50:10 +08:00
    做设计的不学前端是你的损失,前端现在要求高,工资也高了,但是入门简单。
    evagreenworking
        34
    evagreenworking  
       2017-12-21 12:51:54 +08:00
    人生苦短 我用 python
    Python --> C --> Everywhere
    evannan
        35
    evannan  
    OP
       2017-12-21 12:52:47 +08:00
    @nuxt 简单的前端重构 seo 我都会,参看 huahua00.com80%都是我写得,虽然写得不严谨。
    @DXpro 你知道设计的天花板多低吗?
    kkzxak47
        36
    kkzxak47  
       2017-12-21 12:57:52 +08:00 via Android
    evannan
        37
    evannan  
    OP
       2017-12-21 13:01:23 +08:00
    @Phariel 感谢!
    Keyblade
        38
    Keyblade  
       2017-12-21 13:05:19 +08:00
    @evannan #35 你做设计到顶了吗?
    tosexxx
        39
    tosexxx  
       2017-12-21 13:11:52 +08:00
    有没有说易语言的^...^
    wucancc
        40
    wucancc  
       2017-12-21 13:12:08 +08:00
    想做网站,学 js+nodejs,
    想做数据分析挖掘,人工智能,学 python,
    想做服务器开发,学 go。
    啥也不想干,就是想学学,那就 Python 吧。
    FreshOldMan
        41
    FreshOldMan  
       2017-12-21 14:32:59 +08:00
    劝退学 iOS
    hanxiaomeng
        42
    hanxiaomeng  
       2017-12-21 14:51:24 +08:00
    后端的话,先学 Python 的基础,差不多了然后学 Java。
    anasplrt34
        43
    anasplrt34  
       2017-12-21 14:58:49 +08:00
    然后过一两年离职?也不看看现在市场 JAVA 和安卓 IOS 还要新人么
    xinlai
        44
    xinlai  
       2017-12-21 15:08:30 +08:00
    php 是世界上最好的语言
    wellsc
        45
    wellsc  
       2017-12-21 15:08:48 +08:00
    Python 不好找工作的
    v2dxt
        46
    v2dxt  
       2017-12-21 16:25:21 +08:00   1
    为什么没有人推荐楼主 scala 呢?正好《 Programming in Scala 3rd edition 》出了中文版了
    ivechan
        47
    ivechan  
       2017-12-21 16:33:20 +08:00
    没有基础就无脑前端把。。。简单粗暴, 岗位多。
    moshao6
        48
    moshao6  
       2017-12-21 16:40:26 +08:00
    php 是世界上最好的语言
    believeitcould
        49
    believeitcould  
       2017-12-21 16:45:12 +08:00
    我觉得吧 html 不错,简单的开始嘛
    121121121
        50
    121121121  
       2017-12-21 16:50:30 +08:00 via Android
    @evannan 离散数学 统计学 线性代数都是金融工程基础,
    shuizhengqi
        51
    shuizhengqi  
       2017-12-21 16:51:41 +08:00
    学什么语言,当然是学汉语啊
    btainlee5
        52
    btainlee5  
       2017-12-21 16:53:47 +08:00 via Android
    没人推荐易语言嘛
    evannan
        53
    evannan  
    OP
       2017-12-21 16:54:16 +08:00
    @121121121 不考虑金融工程,公式太多我完全外行。
    gamecreating
        54
    gamecreating  
       2017-12-21 17:03:46 +08:00
    离开这个行业 真心的
    realkenshinji
        55
    realkenshinji  
       2017-12-21 20:27:33 +08:00 via iPhone
    英文 +1
    sumu
        56
    sumu  
       2017-12-21 20:34:16 +08:00
    有点理论基础、又有想法,转行做产品经理吧。学编程,投入大产出低,入门易精通难,非上学期间就开始学,其他阶段都不建议了
    twl007
        57
    twl007  
       2017-12-21 22:46:15 +08:00
    @daliang 学这些不如直接去年念 EE 算了 然而现在 EE 并不好找工作
    inflationaaron
        58
    inflationaaron  
       2017-12-21 23:22:23 +08:00
    @v2dxt 怕不是比 C++还复杂
    ala2008
        59
    ala2008  
       2017-12-22 00:56:39 +08:00
    c and c plus plus : )
    reishi
        60
    reishi  
       2017-12-22 01:52:21 +08:00 via Android
    @winglight2016 以结果为导向,很切合实际。
    monnand
        61
    monnand  
       2017-12-22 02:14:56 +08:00 via Android
    语言都没学叫什么新入行?
    baidang201
        62
    baidang201  
       2017-12-22 08:52:33 +08:00
    python js
    msg7086
        63
    msg7086  
       2017-12-22 09:07:30 +08:00
    先问问,你打算学几年?
    一个正常零基础从大学开始学,到能在公司里起上比较大的作用,最少也要五六年吧。
    keikeizhang
        64
    keikeizhang  
       2017-12-22 09:14:24 +08:00
    英语
    UBcai
        65
    UBcai  
       2017-12-22 09:55:02 +08:00
    java 好找工作
    yomiko123
        66
    yomiko123  
       2017-12-22 10:00:35 +08:00
    无论你学什么,都可以来素材火看视频教程学习
    http://www.sucaihuo.com/video
    rocksolid
        67
    rocksolid  
       2017-12-22 10:06:49 +08:00
    为了工作的话,直接开个招聘网站看看哪个需求多
    vanityfairn
        68
    vanityfairn  
       2017-12-22 10:30:13 +08:00
    还是不要当码农比较好,没有真正的兴趣,还是不推荐入这行~学着玩玩可以,自学想找工作的难度极高。无论是前后端,知识面肯定要广,前后端熟练是必须的(以后端的角度来说)
    mmqc
        69
    mmqc  
       2017-12-22 10:34:20 +08:00 via Android
    如果楼主想学 Python 找工作的话,可以来我的帖子里看看。我看得帖子就是询问 Python 工作的问题的
    zhangsen1992
        70
    zhangsen1992  
       2017-12-22 10:59:36 +08:00
    java
    ankle306
        71
    ankle306  
       2017-12-22 11:12:04 +08:00
    找工作,做码农,学 Java ;学着玩,研究机器学习,用 Python
    lwbjing
        72
    lwbjing  
       2017-12-22 11:19:32 +08:00
    语言先学英语,,学科再入数学。。
    恰好,这两样我都不擅长。。
    fengwei23
        73
    fengwei23  
       2017-12-22 11:21:14 +08:00
    兴趣入门,有时间,学 python ;找工作,时间紧,学 java ;想变得牛逼,又有时间,可以先学习 C 语言
    zhaogaz
        74
    zhaogaz  
       2017-12-22 11:33:35 +08:00
    js 不太行, 我的意见和 @lihongjie0209 这位差不多。 因为里面有些不通用的东西。。。

    针对第一个问题:从目前现状看趋势的话,
    显然是 python 了。py 在上升期。
    java 的话,由于体量很大,也可以说是趋势了。


    自己写点东西的话,就很尴尬了,因为一个语言一般不能解决完整的问题。可能要学不少东西才能做出来。

    如何自学?
    多写写就会了。。。但是一般问如何自学的人肯定是想要问捷径的。很遗憾,没有。

    学哪个语言?
    初期找个面相对象的语言,不要 c++ 不要 js。
    js 的话,在 web 开发方面不可能不接触的,用到再学就行。

    额外
    如果还有精力的话,可以学学楼上说的东西,从头理解有助于之后的进一步学习。
    lihongjie0209
        75
    lihongjie0209  
       2017-12-22 11:38:32 +08:00
    @zhaogaz #74 学 js 的看似学的多, 大部分时间都花在一些犄角旮旯的语言`特性`以及不成熟的工具配置中, 这些东西只有在经历过之后才会发现, 不建议非前端入 js 的坑
    ptrees
        76
    ptrees  
       2017-12-22 11:48:34 +08:00
    python 最容易,学起来不枯燥
    但是要找工作还是学 java 吧
    jtsai
        77
    jtsai  
       2017-12-22 12:05:36 +08:00
    @zhaogaz
    @lihongjie0209

    为什么 js 有些东西不通用,因为前端来讲,js 是唯一的,应用界的第一语言。 你学 node.js 那思想就跟 java php 通用了,目前搞 js 不要太爽,前后端统一个语言,横跨 app 有 react native,桌面有 electron。 一个语言写所有。太适合个人搞事了。

    并且,0 基础比 java 好学,比 python 好找工作,比 php 涉猎广。

    而且以目前唯一都地位,是看不到被其他语言替代都迹象。简直太好了。

    学。
    SuperMild
        78
    SuperMild  
       2017-12-22 12:15:37 +08:00
    入门学哪个主流语言都很好,基础的东西差别不是很大。就入门的程度,还谈不上语言(只要是主流语言)差异的影响。当然,如果确定了发展方向或自己想做的东西,则可以更准确地选择语言,比较搞网页前端离不开 js,搞安卓应用 java 是首选等等。
    dartabe
        79
    dartabe  
       2017-12-22 12:20:21 +08:00
    0 基础我觉得还是先学个 JAVA 或者类似的语言好 里面包罗万象 再学 JS 就快的多了
    enihcam
        80
    enihcam  
       2017-12-22 12:25:27 +08:00
    只会 Java 的程序员一般没什么主见,随波逐流而已。
    flyico
        81
    flyico  
       2017-12-22 12:27:38 +08:00
    java 和 c 系列 选一个
    学会以后再学其他的语言都很容易
    进了这行就不要想着能一个语言吃到老,学习是一辈子的事
    sensui7
        82
    sensui7  
       2017-12-22 15:19:18 +08:00
    https://i.loli.net/2017/12/22/5a3cb0cdde80a.png
    https://i.loli.net/2017/12/22/5a3cb0ce51d03.png

    2 张图, 一张是 github pull requst, 招聘数量, 语言排行按照 3:3:2 的权重的平均数排序, JS 第一
    一张是 github 和招聘数量的平均数再乘以 tiobe 语言排行指数, Java 第一, python 则始终排第三
    hugedata
        83
    hugedata  
       2017-12-22 15:47:07 +08:00
    xz
        84
    xz  
       2017-12-22 17:49:43 +08:00
    python2 是世界上最好的语言 O(∩_∩)O
    crazyjin
        85
    crazyjin  
       2019-03-28 13:28:20 +08:00
    你需要先理清思路,制定学习方向,然后再选择编程语言。这里有个教程可以帮助你,挨着看吧。
    https://www.zixuebiancheng.cn/wiki
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1481 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 16:25 PVG 00:25 LAX 09:25 JFK 12:25
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86