大家好,今天小编关注到一个比较有意思的话题,就是关于怎样学习linux不枯燥的问题,于是小编就整理了3个相关介绍怎样学习Linux不枯燥的解答,让我们一起看看吧。
学python有没有必要先学Linux?
你只是想单纯的学习Python的基本语法和操作,完全可以在windows系统操作,当然你要是想学linux,让项目在linux系统下跑,可以学习linux的简单操作,看你的实际情况是怎样的。
我不知道你学Linux的目的是什么。
python是跨平台的语言。如果只是学习语法,那么Linux和Windows都可以。
但python的功能需要安装各种库才能发挥。而不同系统下,库有所区别,甚至有些库只有某个系统的版本,其它系统没有。
因此,要选择Linux还是windows,关键看你将来工作中需要使用的库。看这些库是支持Linux还是windows。
当然,如果两者都兼容就更好,这样选择哪个系统都一样,哪个熟悉用哪个。
我觉得也不用太刻意去专门学习,因为linux其实如果不去研究底层的话,也没什么难得,只是要记很多指令,他不能像windows一样用鼠标,所见所得。
事实上python用的最方便的,还是在linux平台,如果你真想学好python,而且你也没有linux的很多经验,你可以把电脑安装成ubuntu,这个系统的好处是可以让你逐步从windows上的习惯慢慢转换成linux系统。
另外,如果你学习python 开发,推荐这个好东西虚拟环境conda ,这个可以管理你多个版本的python,为什么会有多个版本python问题呢。因为开源世界里,很多包都会有依赖,这个时候你会很痛苦,或许刚来的你不会遇到,随着深入你会发现,linux下的东西不像windows一样都给你做好了,在这个世界里什么都是零件,什么都要你已经来组装,尤其当用到源码安装模块的时候,你真心有想砸电脑的冲动😎。
你想学习一门编程语言,那么也就是说你想成为一个工程师了。其实无论是不是学习Python语言,亦或是想要学习其他的语言,你都必须去学习Linux操作系统。
虽然在绝大多数个人电脑上运行的操作系统都是微软的windows操作系统。但是运行在机房里面的服务器,绝大多数都是Linux操作系统。也就是说如果你编的程序真正的要在服务器上跑的话,那么一定是会接触到Linux操作系统的。
所以学习Linux操作系统就是一个必须的事情。
当然有很多人会觉得学习Linux操作系统会非常的枯燥以及困难,这个观点是非常不正确的。在我看来Linux操作系统的学习要比windows操作系统要简单的很多。首先不会有什么注册表之类的东西。在Linux操作系统上,无论什么东西都是一个文件而已。只要理解了Linux操作系统的思想,那么学习他很多的东西都会变得异常的简单。
作为一个工程师的话,对于命令行的使用一定要非常优秀的,如果你的命令行使用的不是很流畅,那么一定会限制你作为工程师的提升上限的。不是说学不好,而是说不能达到顶尖的那种地步。
在windows操作系统上进行编程,用一个恰当的比喻就是穿着棉袄洗澡。
你貌似很开心的样子,实际上当你使用了Linux操作系统之后,你就真的不想再回去了。
玩游戏除外。
我认为哪怕是.net工程师,都有必要去学习一些Linux的技能。
你上次只是我的个人观点,如果各位看官有不同的观点,欢迎在评论区中给我留言,我会认真的答复每一条评论的。
谁能给我推荐几本linux的书?从基础到进阶提高的linux书?
我持续断断续续看linux书籍有两年了,买了书,图书馆也借了好几本,目前发现何明老师的linux书籍,比较适合新手,每样都解释很清楚,示例很详细,对示例每行分析介绍。不像其他书籍,给出命令,结果,然后大概说一下就完了。这本书适合新手小白看看。
现在中国处于互联网高速发展的黄金时期,而作为[_a***_]架构的核心系统linux可谓是风声水起,现在就把学习linux可能会用到的工具书推荐一下
1.经典的肯定要推荐《鸟哥的私菜基础篇》。最好看第三版,因为第三版又在原有基础上增加了200页左右的内容,比较新,这本书可以说是linux学习爱好者的经典教材了,反正我周围看到的很多同事或朋友基本是以此书作为入门教材起步的,如果没有基础,看这本书会比较吃力,因为里面有很多专业术语和很抽象的概念,所以一定要边看,边依照里面的内容做实验,如果能掌握里面内容的80%左右,刚刚大学毕业的大学生,就可以到互联网企业从事linux系统运维的实习岗位了,工资基本应该在5-7k之间吧(但还不算是入门),这本书算是linux系统的入门教材,但是linux和windows有着本质的不同,但要记住一句话:在linux里面一切皆文件。而windows却有着一个叫作注册表的东西作为底层支撑,限制会比较多,所以把这点区别要弄清楚,不可混淆了。
2.鸟哥的私房菜-服务器架设篇。如果基础篇掌握的差不多了,就可以看这部服务器架构篇了,这里会教给你怎么样搭建服务器,比如:Web(做网站用),DNS(域名解析服务器),ftp(文件共享文件服务器),NTP(时间同步服务器),这些就是最基本的,当然可能还有别的,搭建服务和集群其实是比较简单的,关键是要理解里面的思路。学习方法在这里就会非常重要,学习过程中肯定会枯燥,因为学习本身就是反人性的,但人性本身就是懒惰的,所以一定要战胜人自有的惰性,学到这里要学会制定***,不然很容易前功尽弃的。
3.深入浅出MySQL。如果真能把前面两本书的内容搞的八九不离十,基本算是入门了,但是学习只是学习linux系统的东西,本身并不会让你在就业时有多大的优势 ,为啥呢?因为学的太窄了,学习linux怎么能不学习数据库呢?所以这里再推荐一本数据库的入门书籍(比入门要难一些,但比难的要简单些,全基础的东西),就是这本叫作:《深入浅出MySQL》,如果学习linux是为了做一名小小的linux系统管理员,这本书可以满足对数据库的学习需求。像基本的增 删 改 查,安装,配置,优化,数据冷热备份,数据恢复,数据迁移等等,所以作为小小的系统管理员,这些还是要知道的。
不管你从事的是开发还是运维,这三本书的学习都会对你学习有帮助的,如果你是开发linux内核,那就另当别论了,unix环境高级编程就比较适合你了。
学习嵌入式难吗,嵌入式学习路线有哪些?
学嵌入式有细分,包括单片机编程、linux驱动编程、linux应用编程、Android应用编程等方向。首先需要明确往那个方面学习发展。
单片机学习路线
- C语言多数大学大一时期就会教授,上手较容易,程序语法简单。对嵌入式比较关键的是学好运算符表达的含义尤其是位运算,还有函数封装使用,指针的应用,结构体等用户自定义结构的使用,链表其实在linux或Android平台等使用动态内存分配的场景较好用,ARM核的“低端”芯片中当然也会用,学习数据结构或程序编程思想中有较为重要的地位,实际开发依据需要再学习也可以。
- 51单片机,历史悠久,资料丰富。很多国内厂商会研发自己的51内核单片机,大同小异的操作方式,比较友好的是中文资料众多,厂商提供的绝大多数是中文文档。郭天祥的51教程比较经典,网上可以搜到。从51单片机可以说把单片机家族的多数外设都接触了一遍,是入门极好的途径。
- ARM内核单片机在国内应用场景众多,物联网中广泛使用,代表厂商有NXP,ST,还有Microchip、TI等有着不错DSP处理能力的芯片厂商提供不错的产品。从好入手出发,TI的MSP430系列和ST的M32或M8都是不错的选择,教程众多。这方面的单片机比51的外设和性能丰富了不止一点点
- 不论是51还是ARM内核单片机,一定要实践,看教程再多不如动手敲出来看现象,再思考。买有教程配套的开发板是最合适的,如上图这种开发板大把的。教程的实例可以直接对应开发板的IO引脚,让学习者更方便看实验结果。从现象出发看教程讲解,试着自己改动一些内容,看现象的变化再思考怎么发生的,这样参与感强,容易激励自己继续学下去。
- 一切的一切前提需要先学习C/C++语言,否则程序都无法看懂,别的不用扯~~
linux驱动学习路线
学linux驱动最好有单片机的外设和基本通信协议比如IIC、SPI等基础,需要会用linux操作系统,在系统中能进行linux命令行操作,学会在linux和windows下交叉编译程序,这方面教程网上也有,相比单片机的教程就没有那么多比较系统的了。比较好的收费居多,毕竟难度也要上一个等级,氪金学习能接受的也OK。
- C语言基础同样是需要的,毕竟linux内核也是C写的,看不懂就啥也别说啦... 除了上一标题中提到的C需要掌握的内容,linux中还要继续深究其自带的API,包括文件IO的编程,进程线程的使用,信号量等同步机制的实现等等内容,这些在linux应用编程中同样重要。
- 还有linux下的shell命令常用的需要掌握,方便日后学习的进行。在linux操作系统中虽然也有windows一样的图形界面供使用,但在效率和专业性方面,还是命令行来得快~ 命令行界面稍显枯燥,但学习惯了打起来还是很爽的。
- 说完了操作系统方面的,就要看看linux内核驱动了。通常使用linux内核作为驱动的平台都是相对高端的产品,ARM7及以上等级的SOC中常见,这些芯片里跑linux或者后面说的Android系统进而能处理更加复杂的业务。那怎么把linux系统放进这样的芯片里并能在pc机上的linux操作系统中调试就需要学习了。这部分内容包括内核的编译裁剪与移植,根文件系统制作与挂载,交叉编译环境的搭建等等一众内容,需要极大的耐心去修改,下载到对应开发板再调试。
- SOC中拥有了linux系统就可以进行驱动的进一步学习了。这部分要学习三种字符[_a1***_]驱动模型,等待队列,内核中断机制,poll&select机制,内核定时器和同步机制,IIC、input子系统等等内容,需要看着内核源码来修改编译,期间会涉及许多单片机知识,所以有基础的看源码也不至于太累而坚持不下去。
- 上面这些事情都一定一定要配合一个开发板来进行,如下图,这个不实操真的白谈。做完基本可以在自己的板子上完成类似单片机的所有操作,还能做出视频播放效果,文件管理功能等,类似一台界面不那么好看的手机了。学习驱动主要在很多做高端产品的公司会需要人来移植系统到自己的平台上进行开发,工程比较复杂,当然待遇也不错。
还有两个学习路线放到下次回答,这次先说到这里啦,谢谢支持(#^.^#)
到此,以上就是小编对于怎样学习linux不枯燥的问题就介绍到这了,希望介绍关于怎样学习linux不枯燥的3点解答对大家有用。