V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
magic3584
V2EX  ›  程序员

求推荐下非科班要补哪些基础?

  •  
  •   magic3584 · 30 天前 · 5986 次点击

    求推荐视频,国内国外都行。

    书的话我刚才搜索了《 Linux 内核设计与实现(第三版)》,扫描的 PDF 放在手机上看不清。买个 Kindle 的话貌

    似电子书也不全。如果购买的话可以去哪里?

    平常只断断续续的刷 LeetCode

    第 1 条附言  ·  30 天前
    请问哪里能购买便宜电子版的书籍?网上下的很多都是不清晰的,看不清也确实影响心情。

    已知图灵社区但是我觉得比纸质的没便宜太多。。。
    69 条回复    2021-04-27 14:21:36 +08:00
    qzlzwhx
        1
    qzlzwhx   30 天前   ❤️ 2
    linux 内核设计和实现,我认为可以往后再看,先看操作系统原理相关的书。其他的:数据结构找一个靠谱的网课学完一遍就行了,mysql 数据库建议<高性能 mysql>+<innodb 引擎内幕>.网络:<tci/ip 协议>但是比较厚,建议读第一第三册。也可以找其他大类似于大话 tcpip 协议这种书。这些应该都是基础性的吧。其他的框架组件相关的,看你哪个方向了。
    zifangsky
        2
    zifangsky   30 天前   ❤️ 2
    你都没说你现在做的是哪方面工作,其他人怎么给你建议你需要补哪些基础?
    delete26
        3
    delete26   30 天前   ❤️ 4
    408?
    计算机组成原理,数据结构,计算机操作系统,计算机网络
    putaozhenhaochi
        4
    putaozhenhaochi   30 天前 via Android   ❤️ 1
    CSAPP
    VersionGod1
        5
    VersionGod1   30 天前   ❤️ 1
    主要就是数据结构吧,其他看看计算机组成原理,操作系统,C 语言啥的
    magic3584
        6
    magic3584   30 天前
    @zifangsky #2

    抱歉大佬,我是 iOS 的。我是觉得工作方面的话自己知道要学哪些,但是基础可能就太多了,数电模电的还需要看吗?
    magic3584
        7
    magic3584   30 天前
    @delete26 大佬能否说的再详细点?
    ericls
        8
    ericls   30 天前 via iPhone   ❤️ 1
    名词解释就够了 你只是不知道名字而已
    hitmanx
        9
    hitmanx   30 天前   ❤️ 2
    如果是指计算机组成原理、操作系统之类的,可以先看 CSAPP,这个 Stanford 有公开课的视频,但是书里的内容更全更多。里面各个领域都有些涉及,不深,但是很精华。然后哪儿想了解更多,再去看对应的东西。
    Tecrafter
        10
    Tecrafter   30 天前   ❤️ 1
    1.一或多门编程语言
    2.数据结构与基础算法
    3.计算机网络
    4.操作系统
    5.编译原理
    6.计算机组成
    7.数据库
    8.设计模式
    ...
    raaaaaar
        11
    raaaaaar   30 天前 via Android   ❤️ 1
    那可就多了。。还是看你要用到什么,就直接去学什么,想系统学的真的很多。。
    Flymachine
        12
    Flymachine   30 天前   ❤️ 1
    这类书不推荐买电子版,阅读体验实在不太好,也不好记笔记或做题。当然如果有 10 寸以上平板+触摸笔的话可以考虑电子书格式的,毕竟屏幕够大了。

    实体书的话可以考虑买“扫描版”,比英文原版便宜得多,比中文版都便宜。不过不是所有的工具书都有扫描版。
    英语不好的话可以考虑买口碑好的中文版,有些中文版翻译质量很差,还不如抱着词典啃原版。

    我一般是在亚马逊买,但这类书其实哪都能买。

    我也觉得先补《深入理解计算机系统》,也就是 CSAPP,会好一些。
    shlabc
        13
    shlabc   30 天前   ❤️ 1
    几十本书,假设 1000 元,这个钱如果省了,极大概率也学的不系统,不清晰。工欲善其事。
    Carlgao
        14
    Carlgao   30 天前   ❤️ 1
    最好的方法,去看科班都开什么课,然后就去找对应的书,不一定是教材书也可以是别人推荐评分高得那种。
    junas7
        15
    junas7   30 天前   ❤️ 1
    数电模电太底层了,毕竟好像也没接触到汇编语言。其实可以看一下一流大学的计算机专业都学了些什么,然后按自己需求选择
    zone10
        16
    zone10   30 天前   ❤️ 6
    很多所谓科班动不动让人从数学物理开始学习, 然后列出一条长长的书单, 我都怀疑他本人是否看完. 作为一个写了几年代码的程序员, 虽然离资深的大佬相距甚远, 但是学习经验还是有的, 我觉得自低向上的学习方法完全是错误的, 应该自顶向下学习, 先从自己业务相近的方面入手, 就算是水平不高的视频、博客,完全没有关系, 先学习把 demo 搞出来, 之后在深入, 开始看官方英文文档, GitHub 源码, 才是正确学习方法. 上来就内核, 说真的, 有几个科班的程序员真的看完看懂了?
    JRight
        17
    JRight   30 天前   ❤️ 3
    CSAPP, 计算机网络:自顶而下方法,Operating Systems: Three Easy Pieces.
    Pythoner666666
        18
    Pythoner666666   30 天前   ❤️ 1
    csapp
    lucays
        19
    lucays   30 天前   ❤️ 1
    @zone10 主要是,自底向上,东西太多,和自己平时做的也没啥关系,看完就容易忘了,要反复看,又会觉得浪费时间
    lucays
        20
    lucays   30 天前
    @lucays 不过自顶向下是实用角度的,尤其不适合面试吧。。
    qq648988741
        21
    qq648988741   30 天前   ❤️ 4
    1. 数据结构:程序员可以不关注硬件,软件部分就是代码的逻辑实现,其中数据结构是基础,推荐橘黄色的算法书,进大厂就刷 leetcode ;这部分我觉得熟悉常见数据结构,了解常见算法就够了。
    2. 操作系统:推荐电子科技大学的蒲晓蓉老师的操作系统课程,看完觉得意犹未尽再翻翻现代操作系统或者 csapp 吧,这部分其实只要看下进程、内存、文件系统就够了
    3. 计算机网络:推荐自顶向下,看两章就够了,应用层和传输层,更下的层说实话用不到。这里工作用到的更多的是 http,看下图解 http 之类的,有需要看下图解密码学。
    4. 数据库: 不是很懂,没有推荐的
    5. 编译原理:不推荐太早看,代码写多了再来看,前期直接跳过。如果你是前端程序员,至少接触过 babel 这一类工具,了解过原理之后再来学习,这门课太早接触我觉得真的没用,编译原理晦涩难懂
    6. 买书建议在京东买,打折的话不太贵,计算机的书全部买下来也花不了几百块钱,相对工资来说真的不算啥。更难的是坚持看下去,不管是一开始的入门阶段,还是入门之后的精益求精,贵在坚持,加油吧
    7. 最后补充下个人理解:这个阶段最重要的不是深入细节,熟悉原理这一类的,看到不懂的部分直接跳过就行了,先大概过一遍建立计算机的一些基本思想和概念,比如分层和抽象、时间和空间、接口和实现、分治等等等等,先悟到这一层,再回头看书能快很多,接下来再去深入一些感兴趣的细节部分,我觉得就差不多了
    love2020
        22
    love2020   30 天前   ❤️ 1
    @magic3584 我买了很多电子书,一块钱一本
    magic3584
        23
    magic3584   30 天前
    感谢楼上各位大佬的指点和推荐
    magic3584
        24
    magic3584   30 天前
    @love2020 #22 大佬指个路?
    love2020
        25
    love2020   30 天前
    @magic3584 加我 qq OTMxODgzMjAw
    yugiwu
        26
    yugiwu   30 天前
    做啥补啥吧,科技树还想都点亮嘛?
    raaaaaar
        27
    raaaaaar   30 天前 via Android
    很多知识是有前置的,比如汇编,操作系统,数电,机组这些,几乎是一条路线,不按那个路线来学很难学好
    focused
        28
    focused   30 天前 via Android
    @delete26 考研的好兄弟?
    delete26
        29
    delete26   30 天前
    @focused 是想考🤗
    x940727
        30
    x940727   30 天前   ❤️ 1
    CSAPP+CMU 15-213+MIT 6.824+算法(第四版)
    IsaacYoung
        31
    IsaacYoung   30 天前 via iPhone   ❤️ 1
    6.s081 cs144 还是 143 忘了
    focused
        32
    focused   29 天前 via Android
    @delete26 加油,今年刚上岸
    Johnoo
        33
    Johnoo   29 天前   ❤️ 1
    刚搞定图灵 213 本矢量 PDF 电子书,哈哈哈
    Nachtblut
        35
    Nachtblut   29 天前   ❤️ 1
    magic3584
        36
    magic3584   29 天前
    @Johnoo #33 大佬可否分享?
    Jooooooooo
        37
    Jooooooooo   29 天前   ❤️ 1
    当然是 网络, 操作系统, 数据结构三大件.
    imn1
        38
    imn1   29 天前
    看(领导)脸色
    cnrting
        39
    cnrting   29 天前 via iPhone
    现在做个 CRUD BOY 要求那么高的吗
    levelworm
        40
    levelworm   29 天前   ❤️ 1
    CSAPP 建议想办法买北美原版或者北美原版的影印版,Pearson 国际版的质量极其差,千万别看。我就吃了亏,结果发现答案很多都不对。

    另外楼上那个 teachyourselfcs 也蛮好的,比较全面,现实中我觉得你就挑感兴趣的看看就是了。
    0x000007b
        41
    0x000007b   29 天前
    @zone10 因为学校就是自底向上教的,所以都这样建议┑( ̄Д  ̄)┍
    beexu
        42
    beexu   29 天前   ❤️ 1
    现代操作系统、计算机网络、深入理解计算机系统、数据结构和算法、计算机程序的构造和解释。目前我也是在读这几本。
    xuanbg
        43
    xuanbg   29 天前   ❤️ 1
    写代码真正用得到的基础,想来想去也就是数据结构。
    darknoll
        44
    darknoll   29 天前   ❤️ 1
    非科班上来就看 linux 内核,是不是有点过了?
    laravel
        45
    laravel   29 天前   ❤️ 1
    计算机课程啊

    数据结构与算法、高数、线性代数、离散数学、数据库原理、网络原理、操作系统原理、编译原理。。
    magic3584
        46
    magic3584   29 天前
    @levelworm #40 请教这个咋区分?网上找了一个很清晰的像是原版那种
    flyff1991
        47
    flyff1991   29 天前
    @love2020 扫描的质量咋样?
    flyff1991
        48
    flyff1991   29 天前   ❤️ 1
    @magic3584 只要看看 iOS 岗位的面试要求,不用从科班开始补。学完你也用不到
    flyff1991
        49
    flyff1991   29 天前
    @Johnoo 加个矢量是什么意思
    hahaayaoyaoyao
        50
    hahaayaoyaoyao   29 天前   ❤️ 1
    magic3584
        51
    magic3584   29 天前
    @flyff1991 #48 面试就是考基础啊 [笑哭]
    levelworm
        52
    levelworm   29 天前 via Android
    @magic3584 英文的吗?应该可以查版号
    Johnoo
        53
    Johnoo   28 天前
    @flyff1991 为了区分扫描版,矢量版可以无限放大不损失清晰度,扫描版放大就模糊。
    kloudmuka
        54
    kloudmuka   28 天前
    两条腿走路,一条腿学业务,另一条腿学理论。

    业务就从你感兴趣的方面开始,直接看教你从项目入手的视频,比如从零开始搭建 XXX 这种,推荐看国外的,比如 traversy media 之类。

    理论按 34 楼那个提纲来学,比那些乱七八糟拼凑电子书的教程好了太多,明显是经过科班实践过的,这个提纲我估计你要完全掌握的话大概需要 1000 小时左右。
    janus77
        55
    janus77   28 天前
    操作系统原理 网络协议 数据结构和算法 这是比较初步的一些
    mmmfj
        56
    mmmfj   28 天前   ❤️ 1
    我感觉看你目的是啥吧,如果是为了进大厂那只刷 LeetCode 就行,如果是个人追求那自然是越底层越好
    mseasons
        57
    mseasons   28 天前
    觉得买书无所谓钱吧……也没多少钱
    levelworm
        59
    levelworm   28 天前 via Android
    @mmmfj 赞同,底层比较有意思
    hushuguo
        60
    hushuguo   28 天前   ❤️ 1
    机组、网络、数据结构和操作系统
    flyff1991
        61
    flyff1991   27 天前
    @Johnoo 你这搞定是找人买吗
    Johnoo
        62
    Johnoo   27 天前
    @flyff1991 来自互联网收集,哈哈哈
    anonymous256
        63
    anonymous256   27 天前
    @levelworm #40 机械工程出版社 , 有 CSAPP 的第三版英文原版,印刷质量还是不错的。100 多块钱。
    如果答案有问题,影响也不大,网上也都能找到。
    magic3584
        64
    magic3584   27 天前
    @levelworm #40 大佬请教下我这个是哪个版本的?版号对上是北美,但是又有 PEARSON 字样
    ![WX20210412-112225.png]( https://i.loli.net/2021/04/12/HR8l2pawqBdf1ck.png)
    levelworm
        65
    levelworm   27 天前
    @anonymous256 不是,国际版的问题是,题目也和非国际版不一样,而且没有 errata 和答案。每道题目都和原题差不多,就是改变数字这种,但是答案就不一样了。你可以在 github 上找到学生自己修订的版本,问题是我不敢相信啊。

    当然机械出版社那个是哪个版本我就不知道了。
    levelworm
        66
    levelworm   27 天前
    @magic3584 看 ISBN 是北美版,应该是对的。这是第二版,不过无所谓了,学习第二版第三版无所谓的。另外我不是大佬,我计算机刚入学第一学期呢。
    magic3584
        67
    magic3584   27 天前
    @levelworm #66 羡慕,我也想从新上大学,并且要学计算机 [哭]
    flyff1991
        68
    flyff1991   25 天前 via iPhone
    @Johnoo 可分享的不
    love2020
        69
    love2020   12 天前
    @flyff1991 都是正版的,不是扫描
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2055 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 11:16 · PVG 19:16 · LAX 04:16 · JFK 07:16
    ♥ Do have faith in what you're doing.