大学四年,我是如何学习编程的?

大学四年,我专业是计算机专业,
但大家也知道,学校的课程和专业不是那么互相连贯,并且无法形成体系。
大学里有基础的Java, 计算机原理,互联网技术,JSP, C语言等课程。
但知识点完全不够成一种进阶关系,也没大的项目可以用来实践。

今天我分享下,我大学走过的路,如何在学校里免费学技术,沉淀一些编程技能。

编程书籍

这是我大学看过的书籍。

设计模式

这里简单介绍一下: 设计模式是软件设计中常见问题的一般可重复解决方案, 可以通过提供经过验证的开发范例来加快开发过程

Head First 设计模式

image

设计模式之禅(第2版) 一本入门的书籍,它用简洁的方式来告诉你什么是设计模式。
极具趣味,容易理解,但讲解又极为严谨和透彻。深刻解读6大设计原则和28种设计模式的准确定义、应用方法和最佳实践。

Objective-C编程之道:iOS设计模式解析

image.gif

大话设计模式 通过老鸟与菜鸟之间的对话让我们了解到设计模式更多的含义与其应该出现的方式。总结的23个设计模式。例子偏多,需要有一些编程基础。

tip: 大话系列丛书,在我的网盘中刚刚更新,有兴趣的可以到网盘下载.

Design_patterns

design_patterns 中包含了许多设计模式的简介,大家可以进行一个参考,也有很多外链接供大家学习,免费的!

其实关于设计模式还有很多要说的东西,不止是书中提到的,我们在平时编码的过程中,也要应用到设计模式,不仅可以提升开发效率,还可以给我们一个完善的编程思想体系。

我总想多啰嗦几句,设计模式 是很重要的一部分,使用好它可以令你的项目结构清晰,代码更加流程化,减少沟通成本。有很多人并不会把它当回事,我相信,通过以上基本书你们可以大概的了解设计模式的魔力!

基础能力

学习编程就如同建一个楼房,你需要将基础只是打稳、打牢靠,这样才能一往无前,好的地基是成长的根本,我们需要稳扎稳打,一步一个脚印!

关于修养

程序员的自我修养

image.gif

程序是怎样跑起来的 从计算机内部的结构开始一步步的深入讲解二进制、内存、数据压缩、操作系统、汇编语言、C语言基础、操作系统与程序之间的关系等。让我们了解到了打开程序背后发生的事儿~

计算机是怎样跑起来的

image.gif

现代操作系统(原书第3版)

image.gif

深入理解计算机系统(原书第3版) 偏向底层的知识,适合一些篇中高级的程序员观看,可以了解很多你不曾想到的知识,还有大量的源码分析参考,??

挑战编程技能 : 57道程序员功力测试题

image

Python编程快速上手:让繁琐工作自动化 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,这本书不仅包括了python基础知识,还有很多例子作为提升,很好的一本python入门书。

Python网络编程(第3版)

image.gif

Python网络数据采集 第一部分重点介绍网络数据采集的基本原理:如何用Python从网络服务器请求信息,如何对服务器的响应进行基本处理,以及如何以自动化手段与网站进行交互。第二部分介绍如何用网络爬虫测试网站,自动化处理,以及如何通过更多的方式接入网络。

机器学习

image.gif

JavaScript高级程序设计(第3版) 本书是JavaScript 超级畅销书的最新版。ECMAScript 5 和HTML5 在标准之争中双双胜出,使大量专有实现和客户端扩展正式进入规范,同时也为JavaScript 增添了很多适应未来发展的新特性。

你不知道的JavaScript(上卷)

image

JavaScript语言精粹 本书通过对JavaScript语言的分析,甄别出好的和坏的特性,从而提取出相对这门语言的整体而言具有更好的可靠性、可读性和可维护性的JavaScript的子集,以便你能用它创建真正可扩展的和高效的代码。

深入浅出JavaScript

image

TopCoder是最开始的在线竞技编程平台之一。它提供了很多的算法挑战,用户可以使用平台上的编辑器直接完成挑战。

每个月该平台会提供几次它们最受欢迎的Single Round Matches,比赛要求用户在特定的时间内与他人竞争,看谁解决问题的速度更快。

TopCoder上排名靠前的用户都是很有竞争力的程序员,他们会定期参加各种比赛。这些用户还可以通过名称为ALGORITHMS WEEKLY BY PETR MITRICHEV的博客平台去发表一些关于编程竞赛、算法、数学等方面的文章。

Coderbyte

https://coderbyte.com/

image

Project Euler提供了很多关于计算机科学和数学领域的挑战。挑战内容大致都是要求挑战者编写一段小程序从而为某个数学公式或方程式提供解决方案。

由于不支持直接在编辑器上编程,因此需要用户在自己的电脑上先写好解决方案,然后在网站上再提供出来。

HackerRank

https://www.hackerrank.com/domains

image

CodeChef是一家位于印度的编程竞赛网站,该网站提供了数百种挑战。

挑战者可以通过在线编辑器进行编程,而且还可以根据自身的编程能力去查看已经分类好的适合于自己的挑战题目(请查看本示例)。

CodeChef有一个庞大的编程社区,为论坛提供帮助,负责编写教程,而且也会参加CodeChef的编码竞赛。

CodeEval

https://www.codeeval.com/

image

Codewars提供了很多的编码挑战,这些挑战都是由他们自己社区提交和编辑的。

挑战者可以用几种语言在编辑器中直接在线完成挑战。用户还可以查看针对每个挑战的讨论以及其他用户的解决方案。

LeetCode

https://leetcode.com/

image.gif

Sphere Online Judge(SPOJ)是一个在线判题系统,提供20000多个编程挑战。

挑战者可以直接通过在线编辑器中提交代码。SPOJ还举办了自己的竞赛,并有一个区域专门供用户讨论编码挑战。他们目前没有像其他网站那样提供任何官方解决方案或社论。

CodinGame

https://www.codingame.com/

image.png

电子书:

image

DOC文档

image

面试题

image.png

python:

image.png

image.png

java:

image.png

只是我局部画的思维导图,很多细节由于篇幅我不不在贴了。

一些开源电子书籍

Flutter 实战电子书

本项目为 Flutter 中文网《Flutter 实战》开源电子书项目,第一本系统介绍Flutter技术的中文书籍,它是Flutter中文社区发起的开源项目之一,旨在帮助开发者入门,系统地、循序渐进的了解Flutter。

作者称:“在全球,随着Flutter被越来越多的知名公司应用在自己的商业APP中,Flutter这门新技术也逐渐进入了移动开发者的视野,尤其是当Google在2018年IO大会上发布了第一个Preview版本后,国内刮起来一股学习Flutter的热潮。

为了更好的方便帮助中国开发者了解这门新技术,我们,Flutter中文网,前后发起了Flutter翻译计划、Flutter开源计划,前者主要的任务是翻译Flutter官方文档,后者则主要是开发一些常用的包来丰富Flutter生态,帮助开发者提高开发效率。而时至今日,这两件事取得的效果还都不错!”

image

还包含电子书和配套源代码。

话不多说,一起来看看这本爆款书籍吧!

深度学习开源书介绍

这本书共包含15个章节。

从目录章节构成来看,理论与编程并不是独立分开,而是随着难度的递增,循序渐进穿插编排的。

大体上可以分为四个部分

第一部分是1-3章。主要介绍人工智能的初步认知,并引出相关问题。

第二部分是4-5章。主要介绍TensorFlow相关基础,为后续算法实现铺垫。

第三部分是6-9章。主要介绍神经网络的核心理论和共性知识,助于理解深度学习的本质。

第四部分是10-15章。主要介绍常见的算法与模型。

除此之外,每个章节里的内容编排也是理论与实战相结合

image

image

从代码来看,上手也是较为容易。

本书电子版地址如下:
https://github.com/dragen1860/Deep-Learning-with-TensorFlow-book/blob/master/%E3%80%90%E3%80%8ATensorFlow2%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E3%80%8B%E3%80%91.pdf

Python数据科学

image

大公司技术博文

美团技术博客

image

这本电子书主要包括前端、后台、系统、算法、测试、运维、工程师成长等7个板块。疑义相与析,大家在阅读中如果发现Bug、问题,欢迎扫描文末二维码,通过微信公众号与我们交流。也欢迎大家转给有相同兴趣的同事、朋友,一起切磋,共同成长。

我已经下载好了。喜欢的同学可以私我获取。

阿里巴巴技术年货

1、《阿里技术参考图册》

image.png

你是否有类似这样的问题——“天天写业务代码的程序员,怎么成为技术大牛,开始写技术代码今天,阿里资深无线开发专家李运华,系统梳理了自己的思考和理解,希望帮助更多同学少走一些弯路。

成为技术大牛梦想虽然很美好,但是要付出很多,不管是Do more 还是Do better 还是Do exercise,都需要花费时间和精力,这个过程中可能很苦逼,也可能很枯燥,这里我想特别强调一下:前面我讲的都是一些方法论的东西,但真正起决定作用的,其实还是我们对技术的热情和兴趣!

免费下载传送门:

《不止代码》

3、《阿里巴巴机器智能计算机视觉技术精选——顶级会议 CVPR 2018收录论文》

image.png

2018 年伊始,万众期待的人工智能学术会议AAAI 2018 在华人春节前一周正式召开,这也标志着全球学术会议新一年的开启。

现在,阿里正式推出《阿里巴巴机器智能技术精选集》,收录多篇AAAI优秀论文,并向业界开放下载。该书集中展示了阿里巴巴的最新研究成果,包罗NLP、搜索推荐、社交网络、基础算法、深度学习等多个方向,希望与致力于AI技术探索的研究者及同仁一起探讨交流。

免费下载传送门:

《阿里机器智能技术精选》

5、《阿里巴巴Java开发手册》

image.png

2017年,在技术发展的历史上,一定是个特别的一年:柯洁与AlphaGo的惊世大战,无人咖啡店开放体验,AI设计师“鲁班”横空出世、三年投入千亿的达摩院正式成立……

在全年发布的近300篇文章中,我们选出 65篇,集结成这套《2017阿里技术年度精选》,分为上、下两册,总计600余页。这套精选集覆盖多个热门技术领域:算法、机器学习、大数据、数据库、中间件、运维、安全、移动开发等,文章内容涉及技术架构、核心算法、解决方案等干货。无论你是计算机相关专业的在校学生、科研机构的研究人员,还是步入社会的IT从业人员,相信都能从中受益。

免费下载传送门:

《2017阿里技术年度精选集上》

《2017阿里技术年度精选集下》

7、《强化学习在阿里的技术演进与业务创新》

image.png

阿里的双11是一次全球商业、科技、数据、智能的大协同,是一个商业社会的大协同,更是一个技术的大协同,是名副其实的世界互联网技术的超级工程。

2017年11月11日晚上10点,阿里巴巴集团CTO张建锋(花名:行癫)连线上海双11媒体中心,为700多位中外媒体记者介绍了阿里技术在双11中取得的突破与成绩,表示“阿里双11是名副其实的世界互联网技术超级工程。”

数据智能、机器智能已经融入到整个系统的每一个方面:整个商品推荐、整个交易链路、包括整个决策都是用机器智能来做的,我们希望将技术变成全社会能够共享的普惠基础设施,从而降低整个社会的创新成本,提升整个社会的创新效率。

免费下载传送门:

《九年双11:互联网技术超级工程》

9、《阿里巴巴Android开发手册》

image.png

随着无线互联网在各领域大行其道,我们再一次见证计算机操作系统这一平台技术的周期性发展规律,既:从一个操作系统的兴起,到平台上应用和开发者的繁荣,再到安全领域技术逐步应用到日常应用研发领域,最后进入到平滑发展或者走向衰退。

作为平台真正进入巅峰期的一个不起眼的标志——安全领域类的技术逐步融入到应用研发领域, 这一现象在Windows、Linux到Android上已被多次验证,屡试不爽。以热修复技术为例,作为安全类技术的标志性衍生产物,其进入到应用化领域开始大行其道时,标志着平台发展开始迈入新阶段,这也意味着应用市场的繁荣程度、应用开发者的思维和研发模式也进入到游戏的下半程。

免费下载传送门:

《深入探索Android热修复技术原理》

写在最后

预祝你大学四年 能学到更多,作为你毕业后拿到第一份工作的资本,加油吧!

来源:Tamic大白

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年11月5日
下一篇 2019年11月5日

相关推荐