各位大神解答一下我关于计算机的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
freeday
V2EX    Python

各位大神解答一下我关于计算机的问题

  •  
  •   freeday 2022-10-24 14:10:50 +08:00 via Android 2922 次点击
    这是一个创建于 1133 天前的主题,其中的信息可能已经有所发展或是发生改变。

    计算机初学者应该首选什么语言呢,零基础自学那种 目前我自学的是 Python 语言,因为想到以后可以自己研发一个程序,我是想着靠这个赚钱的 说一下自己目前的情况吧 18 岁,高中刚毕业,打算在大学自学计算机,大学专业非计算机类 有没有什么书推荐一下,目前用的是图灵社区的 Python 三剑客 有什么关于自学计算机的建议,各位大神可以解答一下,有啥资源网站也可以分享一下 刚刚刷知乎看到了这个社区就翻墙进来了,顺便注册了一个账号,会认真看帖的 希望各位回复,谢谢!

    43 条回复    2025-04-07 17:04:45 +08:00
    Kasumi20
        1
    Kasumi20  
       2022-10-24 14:22:26 +08:00   1
    第一门语言学脚本的,基本都废了,建议先 C 或者 Java ,在 Linux 下面学,搞清楚什么是编译,汇编,链接
    goofish
        2
    goofish  
       2022-10-24 14:29:38 +08:00   5
    https://csdiy.wiki/ 跟着大佬自学,打开计算机世界的大门
    lostberryzz
        3
    lostberryzz  
       2022-10-24 14:29:43 +08:00
    “因为想到以后可以自己研发一个程序,我是想着靠这个赚钱的”

    这一点很难,其他的都可以,就和你打游戏一样,就是一个爱好。
    deplivesb
        4
    deplivesb  
       2022-10-24 14:33:03 +08:00
    "因为想到以后可以自己研发一个程序,我是想着靠这个赚钱的"
    那你多半想多了。
    先学 C 吧,别上手就动态语言。
    icepie
        5
    icepie  
       2022-10-24 14:34:47 +08:00
    我也是差不多这时候开始正式学自学计算机的... 建议拿项目驱动自己的学习...很推荐 1L 说的在 Linux 下学, 先自己尝试装 Linux , 在过程中了解一下操作系统, 再学一些语言基础, 我也推荐拿 C 入门, 书籍建议不要瞎买. 先定个小目标 比如你想做个网站, 写个小工具, 有想法后去查查别人怎么实现的, 你再一步步去实现, 在过程中就能学到很多东西了
    liuzhedash
        6
    liuzhedash  
       2022-10-24 14:35:08 +08:00   1
    python 如果已经看过,可以试着学下 django ,做个简单的网站。
    如果要考写代码赚钱,非计算机专业自学不太够,建议抽空上个培训班。
    icepie
        7
    icepie  
       2022-10-24 14:35:52 +08:00   3
    "靠这个赚钱的" 如果你是这样想的话...别自学了, 找个培训班, 毕业后随便找个班上吧
    kop1989smurf
        8
    kop1989smurf  
       2022-10-24 14:39:54 +08:00
    语言的话,C 相对比较好上手。
    两个优势:1 、初期概念少,负担小。2 、相对更贴近计算机原理。

    C 语言上手了,搞明白了 if 、for 、变量、方法(函数)、异步、输入输出的基本概念,再去上手一门面向对象的相关语言( Java 、C#均可)。这样你就基本掌握了编程的基本要领,可以去实现你自己的逻辑了。
    jimmyismagic
        9
    jimmyismagic  
       2022-10-24 14:41:20 +08:00
    非计算机专业就不要学 c 了,学 python 挺好的,加个 nodejs ,前端再了解一下,在 linux 下搞,不要想着赚钱
    Thymolblue
        10
    Thymolblue  
       2022-10-24 14:43:19 +08:00 via Android   1
    现在 C 和 Python 在很多大学里面都是公共科目,建议选修 C 。我也是从 Python 零基础开始学的,计算机的内容一点不懂,结果后面踩了许多坑。有一条学习路径建议是直接学 C++ Qt ,感觉 Qt 的文档对新手比较友好,源码也比标准库和 Boost 那些更容易看懂,而 Qt 的 API 感觉就是在写 Python 。参考资料的话推荐 C++ primer 和 Qt 官方文档和 Qt 官方例子,加上 stack overflow 基本能解决百分之 99 的问题。使用 Qt 的还有一点是很多工具都是封装好的,对于我们这种 0 基础非专业的人说先不用太着急纠结于太底层的东西,先起一个程序感觉更加重要。另外 Java 路径我没有试过,我仅会 Cpp 。
    cmdOptionKana
        11
    cmdOptionKana  
       2022-10-24 14:45:24 +08:00
    鉴于你还年轻,一切皆有可能。

    我认为第一门语言的选择并不重要,事实上不同的大学也有不同的选择,比如有零基础的人上大学第一门是学 C++ 或 Java 或 Python ,都有,都是没问题的。

    你可以看网站、看视频学,但强烈建议在此同时必须买一本该语言的最经典的入门书(每种语言都有自己的经典书籍)。不建议完全脱离书本只看网文、视频。

    学完语法基础后,先做几个最最简单的练手程序,这个必须做,因为单纯学语法相当于在岸上学游泳,到了做一个完整的程序时,才是下水。不下水是不可能学会游泳的。

    做完最最简单的练手程序,就选一个稍大型的程序,可以参考别人的大学毕业设计题目,做完这个,你就正式入门了,相信到了这个时候,你就不需要问别人,自己已经知道接下来要学什么以及怎么去学了。
    msg7086
        12
    msg7086  
       2022-10-24 14:47:22 +08:00
    先学 Python 后学 C 。起步学 C 基本就是奔着劝退节奏的。
    以前编程入门都是 Pascal ,现在 Pascal 没落了建议 Python 之类的语言起步。
    当然也不要拘泥于一种语言,Python 拿来入门不代表以后就要写 Python 。后期转 Java ,转 C#,转 C 或者 C++,转 nodejs 都是可以的,编程的本质没有太大差别,只是语言的主要用途和周边的类库不太一样。

    赚钱这个就不好说了。
    julyclyde
        13
    julyclyde  
       2022-10-24 15:01:10 +08:00
    作为非科班,学一点技能便利一下日常工作还是值得提倡的
    想入行就算了。本行业不缺这点人
    wangtian2020
        14
    wangtian2020  
       2022-10-24 15:24:28 +08:00
    Javascript nodejs
    Javascript 写网页前端用见效快强反馈学习动力
    nodejs 后端最速 hello world 传说
    apake
        15
    apake  
       2022-10-24 16:27:16 +08:00   1
    入门 用 python 学计算, 学抽象思维, 学函数式. 用 C 学计算机, 了解底层运行原理.
    先重点学计算, 自己理解编程是什么. 然后用 C 去学计算机.
    推荐书目:
    1. 计算: how to design program(htdp), sicp(前三章), sicp-Python 版本( https://composingprograms.com/).

    2. 计算机: 编码-隐匿在计算机背后的语言, C 语言程序设计:现代方法, csapp(初学有难度, 先熟悉 linux 使用, 结合 the linux programminmg interface(tlpi) 和 operating system: three easy pieces 了解 os 和 linux 系统编程).
    renhou
        16
    renhou  
       2022-10-24 16:59:05 +08:00
    > 想着靠这个赚钱的
    这个有没有一个大致的想象?比如说是一个看不见的程序提供功能或数据,或者是一个看得见的网站或 app?
    单纯的去学整个语言或者是计算机是非常枯燥乏味的,建议是有目的的学,我学 xx 就是为了做 xx
    这样也会让你主动的知道应该学什么。比如你的目的是做一个网站,你学了 python 可以写服务器,那么下一步你就可以学 js 等。

    虽然很 nb 的框架或者库是可以挣钱的,但是更多来说赚钱的是商业模式而不是技术
    搞清楚自己的目的,如果你是为今后可能从事计算机做准备建议从学习算法开始(笑
    renhou
        17
    renhou  
       2022-10-24 17:01:27 +08:00
    补充一点,如果有看书的习惯可以看看书,没有看书的习惯建议搜 b 站视频看着学
    registerrr
        18
    registerrr  
       2022-10-24 17:02:28 +08:00
    大学专业非计算机类 想靠这个吃饭最好还是转专业
    westoy
        19
    westoy  
       2022-10-24 17:05:48 +08:00
    你打算拿 python 辅助一下以后的工作, 学这个挺有性价比的

    打算入行找活儿的话, 除非以后研究生甚至博士转图形、数据那种, 不然学 python 等于白学
    freeday
        20
    freeday  
    OP
       2022-10-24 17:31:42 +08:00 via Android
    @julyclyde 我如果实在想入行后面再找个培训班,入行也不是不行,重在能力
    freeday
        21
    freeday  
    OP
       2022-10-24 17:42:00 +08:00 via Android
    @liuzhedash 后面会找个培训班的,我也觉得自学还是有很多不足
    freeday
        22
    freeday  
    OP
       2022-10-24 17:42:39 +08:00 via Android
    @Kasumi20 p 语言感觉比较好上手啊,而且一来就可以做一些小游戏啥的,我感觉很有趣
    ClericPy
        23
    ClericPy  
       2022-10-24 18:27:16 +08:00 via Android   2
    非科班首选 js Python
    靠这行吃饭还是得回去看计算机那几本书
    然后找工作时候会发现,除非项目经验够丰富,人家更看重的可能偏偏是语言以外的那部分... 语言只是个开始
    0001110001011
        24
    0001110001011  
       2022-10-24 19:01:54 +08:00   1
    可以考虑考虑 先学学 单片机,然后再学点 c, c++ 等等.
    这样软硬件 都了解下
    mikewang
        25
    mikewang  
       2022-10-24 19:29:22 +08:00   3
    @Kasumi20 第一门学脚本怎么就废了
    我是从 Javascript 开始入门,后面学 C 的时候非常轻松,之后 C++、Java 的面向对象编程也都是水到渠成的事情
    虽然 Python 一般不算是 C 系的,但是思想也是类似的。例如 a = b = [],为什么和 a = []; b = []不一样
    深入之后肯定会有底层的思想的。
    上来就学编译原理,不是件好事。
    niantoudeyisi
        26
    niantoudeyisi  
       2022-10-24 22:04:21 +08:00 via Android   1
    感觉 go 挺好的
    freeday
        27
    freeday  
    OP
       2022-10-24 22:54:00 +08:00 via Android
    inframe
        28
    inframe  
       2022-10-24 23:32:58 +08:00
    学习路线可以参考 csdiy 那个教程 roadmap 加上计算机系的学习规划大纲,就挺好的
    但里面只是一些小点,没有标志性的里程碑。

    一些想法么,随着时间和阅历的变化,会有新的认识。

    换个专业最好,最省事。

    不转专业的话,我的看法哈,大四毕业的时候,能踏踏实实自学完这些的一部分,
    刷个 985 CS 研究生,或者到时候疫情估计约有可能实现了转折点,加点钱上海外硕( English 先过关,跑国外读书可能容易一点,毕竟¥¥¥)

    这样的作为打工人入职时候的敲门砖就非常结实,
    算起来,还有 3 年半去完成这个路线的实践

    当然,到时候走科研路线刷个 Phd 也是可以的
    mascteen
        29
    mascteen  
       2022-10-24 23:38:26 +08:00 via Android
    renmu
        30
    renmu  
       2022-10-25 00:46:42 +08:00 via Android
    首先开始不要学 c
    Jelly27
      &nbs; 31
    Jelly27  
       2022-10-25 08:48:56 +08:00
    根据我自身的学习经历,初步了解计算机就看《 编码-隐匿在计算机背后的语言》,大神级别的书,高中生都能看懂,语言还是推荐 C ,它是架起与底层的桥梁,也方便之后学其它语言,C 语言书籍推荐看《 C primer plus 》,大白话,通俗易懂,之后数据结构与算法、数据库、计算机网络、操作系统之类的见仁见智了
    duke807
        32
    duke807  
       2022-10-25 09:34:52 +08:00 via Android
    『鸟哥私房菜』上册(下册服务器版本可以不看)

    另外,千万不要去报培训班
    qzhai
        33
    qzhai  
       2022-10-25 10:18:36 +08:00
    建议 先学 C ,倒不是为了让你多了解 C ,主要还是先学 C 的语法,学会语法在学数据解构,在学你想学的语言。
    LXGMAX
        34
    LXGMAX  
       2022-10-25 11:32:47 +08:00   1
    楼上各种建议很多,但接触这门一定要学计算机组成原理,能让你清楚知道代码是怎么在机器上跑起来的,也能反哺如何写代码效率更高
    Kasumi20
        35
    Kasumi20  
       2022-10-25 11:42:46 +08:00
    @mikewang 我不关心 a = b = [],为什么和 a = []; b = []不一样,因为我从来不写这种谭浩强代码,我只知道假如要写一个 HTTP 服务,node.js 两行代码搞定和用 C 一步步搞定的水平要求不在一个层次
    julyclyde
        36
    julyclyde  
       2022-10-25 14:13:13 +08:00
    @freeday 真不是能力问题
    现在行业内人口太多了,赚不了钱的
    lijiangang886
        37
    lijiangang886  
       2022-10-25 14:56:47 +08:00
    转专业吧
    计算机专业学生学啥你学啥
    joApioVVx4M4X6Rf
        38
    joApioVVx4M4X6Rf  
       2022-10-25 19:41:54 +08:00
    初学者先培养兴趣叭。。上来学什么 java c 什么汇编乱七八糟的,直接兴趣没了。
    可以 python + js ,python 万金油,人工智能,web 后端都能弄,js 主要就是给 web 后端搞个界面,
    然后再搞个云服务器,把自己的网站弄上去
    我刚开始就是这么来的,还挺好玩的,后来自己慢慢坚持下去了
    mikewang
        39
    mikewang  
       2022-10-25 23:00:43 +08:00
    @Kasumi20 别听见个“谭浩强代码”就拿出来用,这还真不是玩 UB 。
    先搞清楚引用和拷贝的差别,浅拷贝和深拷贝的概念,再评价这句代码比较合适。
    不能把编译,汇编,链接,说的头头是道,结果连 is 和 == 的差别都说不清楚。
    Kasumi20
        40
    Kasumi20  
       2022-10-27 21:28:16 +08:00
    @mikewang 不是我听见就用, 是我看见这个代码, 就 emmmmm......总得找个词语形容一下吧, 这种语法层面的东西, 你死记硬背有什么用呢, 你要赋值就好好写, 多写几行又不会死.

    所以说建议先 C 呢, 你一会引用一会拷贝的, 搞 C 的不会不知道自己一行代码下去会影响几个字节
    llsquaer
        41
    llsquaer  
       2022-10-28 12:26:56 +08:00
    非科班..python 入手..python 感觉里面遇到的坑多了,自然你回去学习 C, 或者 java,

    python 非常好入门..如果直接从 C 开始,起步比较高,容易放弃.

    反而你学会了一种简单的语言,更容易去理解其他语言..

    其实首先是需要有这个编程思维,然后才能去深入.

    高中那会儿就是 C 直接干趴下放弃了,很多年后才巧合下才开始学习的 python, python 遇到问题回头再去看 C 发现没当年那么吃力了.但不会自己去写 C,毕竟没练过.看的懂就行.
    gumupaier
        42
    gumupaier  
       2022-10-29 16:40:40 +08:00
    go
    ddzzhen
        43
    ddzzhen  
       237 天前
    还是先 C 吧,计算机简单的话就都学了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2596 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 15:04 PVG 23:04 LAX 07:04 JFK 10:04
    Do have faith in what you're doing.
    ubao msn 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