微信号:imkuqin

介绍:本微信公众号:imkuqin,为程序员提供最新最全的编程学习资料的查询.目前已经开通PHP、C/C++函数库、.NET Framework类库、J2SE API查询功能.

用树莓派学习Linux及Python真的高效吗?

2018-02-05 07:50 程序猿

作者 | 地球的外星人君

来自知乎 https://www.zhihu.com/question/54825393


建议放弃这个想法。

工具只是工具,学习靠的是人。

为了打消这个念头,本文详细解释一下原因。



首先,树莓派是什么?


树莓派是一种便宜的卡片式Linux电脑,风靡全球。它是世界上众多廉价又成熟的电脑之一,只要35美元,而且十分容易上手。 树莓派能替代日常桌面计算机的多种用途,包括文字处理、电子表格、媒体中心甚至是游戏。并且树莓派还可以播放高至1080p的高清视频。 


树莓派有成千上万种玩法,但常常有些人心血来潮买了树莓派后,却突然不知道自己要用它来做什么了。


树莓派能用来做啥?


电脑能做的大部分事情,在树莓派上都能做,而树莓派以其低能耗、移动便携性、GPIO等特性,很多在普通电脑上难以做好的事情,用树莓派却是很适合的。

树莓派更多的用来做如下的事情:


用树莓派打造一个家庭影院

把树莓派配置成无线路由器

用树莓派搭建BT下载服务器

拿树莓派当FTP文件服务器

在树莓派上搭建代码托管服务(SVN)


对于培养动手能力大有裨益,但是具体学习Linux和Python,可以说并不适合。对Linux初学者来说,比较重要的几点:


1. 选择适合自己的Linux发行版

谈到Linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是有一点是可以肯定的,Linux正在变得越来越流行,面对这么多的Linux 发行版,打算从其他系统转到Linux系统来的初学者可能会感到困惑,即便是忠实的 Linux 用户也没有时间和精力去挨个尝试,因此初学者在学习Linux的之前,需要有一个明确的方向,选择一个适合自己的系统开始学习Linux至关重要!


2.养成良好的linux操作习惯

当你进入Linux的学习之后,请不要用windows的工作方式来思考问题,因为它们之间确实有很大的不同,比如它们之间的内存管理机制,进程运行机制等都有很大不同,这些异同点将在下面章节陆续讲述,因此,抛开windows那种思维,用全新的理念尝试去挖掘linux身上特有的潜质,对初学者至关重要。


3. 习惯命令行方式

Linux是一个命令行组成的操作系统,精髓在命令行,无论图形界面发展到什么水平,命令行方式的操作永远是不会变的,Linux命令有许多强大的功能:从简单的磁盘操作、文件存取、到进行复杂的多媒体图象和流媒体文件的制作都离不开命令行。虽然Linux也有桌面系统,但是X-window也只是运行在命令行模式下的一个应用程序。

因此,可以这么说,命令是学习Linux系统的基础,学习Linux,很大程度上就是学习命令,很多Linux高手其实都是玩儿命令很熟的人。


4.理论结合实践

有很多初学者都会遇到这么一个问题,说到系统的每个命令,都很熟悉,但是在系统出现故障的时候,面对出现问题的Linux系统无从下手了。不知道在什么时候用什么命令去检查系统,这是很多linux新手最无奈的事情了。说到底,就是学习的理论没有很好的与系统实际操作相结合。

很多Linux知识,例如每个命令的参数含义,在书本上说的很清楚,看起来也很容易理解,但是一旦组合起来使用,却并不是那么容易,没有多次的动手练习,其中的技巧是无法掌握的。


5.学会使用Linux联机帮助

主流的Linux发行版都自带了非常详细的帮助文档,包括使用说明和FAQ,从系统的安装到系统的维护,再到系统安全,针对不同层次人群的详尽文档。仔细阅读文档后60%的问题都可在这里得到解决。


6.学会独立思考问题,独立解决问题

遇到问题,首先想到的应该是如何自己去解决这个问题,解决方式很多,看书查资料,网络搜索引擎,技术论坛等等,通过这几种方式,90%的问题都能得到解决,通过这种方式一方面锻炼了自己独立解决问题的能力。另一方面技术上也能得到快速提高。


7.由低至高,循序渐进

到这里,Linux的学习路线图,仅给初学者作为参考。

初级阶段:

1.命令是必须要学的,Linux常用的命令大概在80个左右,这些常用命令一定要熟练掌握。

2. 掌握Linux软件包的常用安装方法,例如源码安装,rpm方式安装等等。

3. 学习安装设备驱动程序(比如网卡、显卡驱动)

4. 熟悉Grub/Lilo引导程序及简单的修复操作。

5. 熟悉Linux文件系统和目录结构以及linux基本运行原理。

6. 掌握vi,gcc,gdb等常用编辑器,编译器,调试器。

7. 理解Shell别名、管道、I/O重定向、输入和输出以及shell简单脚本编程。

8. 学习Linux环境下的网络基本组建。

高级阶段:

1:尝试阅读Linux内核源码:

2:尝试编译安装和调试自己的Linux内核:

在阅读源码了解了Linux底层的运行原理后,完全可以编译一个适合自己的Linux系统来。

3:深入学习Shell, Perl,CGI等脚本语言:

这些脚本语言在Linux下非常强大,它们能完成你想做的任何事情,熟练掌握这些语言,可以让你在Linux系统下游刃有余,如鱼得水。

4:构建企业级Linux高可用集群系统:
Linux下有很多开源免费的集群软件,利用这些免费的集群软件完全可以构建出与商业unix系统想媲美的集群系统来。

Python学习的几个阶段:

第一个阶段:初级,掌握Python的语法和一些常用库的使用

第二个阶段:中级,掌握自己特定领域的库,掌握pythonic写法,非常熟悉Python的特性

第三个阶段:高级,从整个工程项目着眼,考虑document,distribution,性能优化等

无论是Linux还是Python工具只是工具,学习靠的是人


学习过程对于硬件都没什么要求,对于知识的掌握才是核心。理论上用树莓派学习当然可以,但对于初学者来讲,特别是Linux相关的不够熟练,还是不太建议你是用树莓派来进行学习。


树莓派是一个很需要DIY能力的“玩具”,非常酷炫,机具创造性但对于入门学习几乎没有什么帮助特别是对于Python,即使Windows环境也完全不会影响你的学习。


记住:在未入门之前,应该尽力去降低自己的学习难度,而不是为了好玩或者其他原因,来凭空给自己的学习道路增加许多麻烦。


你有什么好玩的树莓派玩法,欢迎评论里面交流哦~



●本文编号2917,以后想阅读这篇文章直接输入2917即可

●输入m获取文章目录

推荐↓↓↓
 

Linux学习

更多推荐18个技术类微信公众号

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

 
程序猿 更多文章 盘点那些让程序员目瞪口呆的Bug都有什么? 一个女程序媛征男友的需求说明书 红衣教主周鸿祎最壕一掷:360你财富给行业年终奖加息了! 在程序员面前千万不要说这9句话,我一个同事就死的很惨! 程序员听到bug后的N种反应…
猜您喜欢 你曾因善于拒绝,而收获了什么? 数据人才有多稀缺 大数据人才报告告诉你! 如何建立重构的机制 线下丨硅谷之夜:国内外专家畅谈——科技如何改变教育? 修改Hosts为何不生效,是DNS缓存?