+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2019-08(82)

2019-09(116)

2019-10(2)

给想自学编程又无从下手的小白一些建议

发布于2019-09-06 13:46     阅读(81)     评论(0)     点赞(20)     收藏(0)


最近总有一些小伙伴问我,现在大二,想自学编程,但是

不知道如何下手?

不知道该学哪一门编程语言,c/c++?java?c#?还是php?

不知道c++、Java、php之间有什么区别?

是不是学习java之前要学c?

学习了Java基础之后又该学什么?

如果你也有这些疑问,那就继续看下去,如果没有就可以return了。

首先不要灰心哈,小编到底也是过来人,纯自学的,你们现在遇到的坑,我基本上都爬过。我大二的时候都不知道javascript和Java有什么区别,甚至以为数据库和数据结构有紧密的联系,我现在依然能找到一份满意的工作和待遇!!只要记住——你们现在有大把的时间去爬坑。小编也将从以下几个方面,通俗易懂的表达以下自己的经验和想法,希望可以帮助到大家。

一、首先有必要了解一些常见的编程语言

小编接触到的一些常见的编程语言,c、c++、Java、c#、php、python、javascript、Objective-C、Swift、R等。

1.学习的顺序

小编大学课程中有"谭浩强c语言程序设计"这门课程,我当时想学习Java同时也很迷惑,c和java有什么关系?是不是要学习java必须先学习c语言? 你们有木有如此迷惑过?现在告诉你,没有半毛线关系!你如果想学java,c#,php等任何一门语言,立即就可以学,没有先学c才能学java的必要条件。只不过是说,你如果有了其中一门语言的基础,学习其它的比较容易入门而已,毕竟所有的编程语言也有一些共性,都会有基本的语法,数据类型,顺序结构等。

2.语言特性及归类(此部分也可以直接break(跳过))

当然以下常见编程语言的分类只不过是我个人的理解及浅薄的经验之谈。做个参考就好。按照语言的特性,大概可以这样归类一下:
如c、c++语言是面向结构的。c++扩展了c语言的特性,具有一些面向对象的特性。Objective-C据周围同事说是苹果公司对c语言一种封装,反正是用来开发ios应用的,其语言特性和调用方式与c语言很像,因此如果你有c语言的基础,入门ios开发很easy.
如java 、c#是面向对象的。具有抽象、继承、封装、多态等特性,因此你如果学习了其中一门语言,另一门语言也能很快上手。至于面向结构和面向对象有什么区别,小编不知道如何表达,自行百度吧.
如python、javascript是脚本语言,具有动态语言的特性。意思就是可以再程序运行时改变变量的类型,例如在javascript语言中,声明一个变量赋值为一个数字,运行程序后,你把此变量动态赋值为字符串,没问题是合法的,程序正常运行;相反如果在java(没有动态语言特性的)中声明一个为int类型,如果你给这个变量赋值为字符串类型,程序就会报错编译不通过。

因此,如果你想学习两种编程语言,建议你不要选择特性一样的两种语言学习,例如你如学习了java,你可以选择Python或者c++学习,这样学习的时候可以比较一下不同特性编程语言各自的优缺点,对你以后做架构,选择业务实现的技术方案有很大的帮助。

二、如何选择一门编程语言

了解了基本的编程语言后,相信你又跌入了该学习哪一门语言的坑中。这个问题的关键在于你不知道学了这门语言能干什么!也就是编程语言的应用领域或者开发方向。

以Java为例(小编是学Java出身),Java在移动端,服务端,大数据等领取有着广泛的应用,那么你学习Java基础之后就可以选择这个几个方向,移动端就是Android开发,服务端像Javaweb开发,大数据如hadoop技术等。
c语言可以 嵌入式方向学习;c++ 可以用来开发游戏、游戏服务器框架及游戏引擎、编译器等;c#可以向 winfrom窗体程序开发(就是window上安装的exe程序,如qq),asp.net网站开发技术,服务端开发,Unity3D游戏开发等;javascript,这个语言的方向就太多了,号称全站开发语言,node.js全栈开发技术,web前端jQuery,Vue.js,移动端技术ReactNative等;python,可以用来做网站爬虫,搜索引擎,也可以开发网站,人工智能领域应用更广泛如数据分析,机器学习等。。。。。

小编理解的大概也就这么多,说的并不准确,建议大家去谷歌 or 百度,或者去知乎找,关键词如java开发方向或应用领域。

更加强烈建议大家去一些互联网招聘网站如拉勾网看看一些技术岗位,这样定位更加准确,如下图

这下你总该知道你要学习什么了吧

三、寻找学习路线

当你确定了你想学习的编程语言及以后的开发方向或应用领域后,你肯定又不知所措,我该怎么学习呢,先学什么,后学什么。

这个问题小编就心有余而力不足啦,毕竟也只是学过Android和一点点
javaweb而已,最多知道它俩的学习路线。

但是你可以百度搜索,作为一个程序员搜索引擎才是你最好的老师!!,如你想学习ios,关键词ios学习路线图,肯定有不少。菜鸟要飞的平台上也提供了常见开发技术的学习路线图。小编更推荐你去一些培训机构的官网浏览他们的培训的课程目录,很详细的!否则怎么吸引人呢。

四、我该选择哪一个方向

即使前3步你都OK,你肯定还会问类似的问题,我到底是学Android还是ios,哪个工资高?大数据技术现在很热门,选择haoop吧?

首先,根据你自己的兴趣。这个和不说的一样,作为一个小白,你都不知道Android开发到底做些什么,hadoop又是什么玩意,谈什么兴趣呢?除非你确定你对某一个领域感兴趣,那就去学吧。

其次,你只是为了毕业以后好找工作,待遇好些。这个就稍微能找些实际的参考依据啦,去拉勾网等类似的互联网招聘网站,搜索职位关键词分别看一下对应的职位的数量,比较一下同样的工作经验哪个工资更高。无论你是选择移动端还是we前端还是服务端,只要技术好工资都不低!

还有,新技术相对而言工资是高点,但岗位也少。如大数据,人工智能等这些新技术的岗位也就在一线城市可以搜索到,你学了这些就意味着你必须去北上广深拼搏,否则找不到工作。所以如果你有心仪的奋斗城市,就结合一下该城市的岗位去选择你要学习的技术。

最后,并不是你现在学习了Android开发,工作以后就一定一直做Android。编程技术的变化和发展是很快的,说不定什么时候就被淘汰了;工作后,要根据工作需要学习对应的开发技术。所以最重要的是培养自己学习新技术的能力。而大学期间,最好多学习一些技术,扩展自己的广度,毕业后找工作的选择会多一点。毕竟没有工作的实战场景想提高某一个开发技术的深度是很难的。个人认为,大学期间的学习最大的作用是通过学习不同的技术来寻找真正适合自己的方向。技术深度的提高是在工作的实战中积累的。而提高自己技术广度最好的办法就是自己独立或者和别人合伙,完整一个简单的线上项目,这个过程会让你对很多疑惑豁然开朗!

关注八戒程序猿,发送关键字开源前端】免费赠送web前端视频一套

发送关键字【开源前端】哦!



所属网站分类: 技术文章 > python文章

作者:23dh

链接: http://www.pythonheidong.com/blog/article/99398/

来源:python黑洞网 www.pythonheidong.com

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

20 0

赞一赞 or 踩一踩

收藏该文
已收藏

评论内容:(最多支持255个字符)

相似文章

  从面试官的角度聊聊培训班对程序员的帮助,同时给培训班出身的程序员一些建议

  父与子的编程之旅:与小卡特一起学Python(中文PDF+源码打包) 下载

  人人都想自学编程,为什么坚持下来的没几个?

  编程小白的第一本python入门书(高清版)PDF下载

  编写高质量代码:改善Python程序的91个建议 pdf下载

  0基础小白也能学会的人工智能课-python人工智能视频教程下载

  第一篇博客 分享一个小萌新接触编程的心路历程 希望可以对和我曾经一样的小白有一点点帮助

  前端学习心得(小白自学的学习路程)

  多年心路历程见证从技术小白到收获BAT等大厂研发offer,分享一些经验和感悟

  大学选择计算机专业的同学可以点进来看看 自己的一些小心得 欢迎大家评论呀

优质资源排行榜

 python经典电子书大合集下载 下载次数 8108

 零基础java开发工程师视频教程全套,基础+进阶+项目实战(152G) 下载次数 7545

 零基础前端开发工程师视频教程全套,基础+进阶+项目实战(共120G) 下载次数 7439

 零基础大数据全套视频400G 下载次数 7002

 零基础php开发工程师视频教程全套,基础+进阶+项目实战(80G) 下载次数 6891

 零基础软件测试全套系统教程 下载次数 6502

 全套人工智能视频+pdf 下载次数 6437

 IOS全套视频教程 基础班+就业班 下载次数 4679

 编程小白的第一本python入门书(高清版)PDF下载 下载次数 3106

10  effective python编写高质量Python代码的59个有效方法 pdf下载 下载次数 3073

11  Python深度学习 pdf下载 下载次数 3044

12  使用python+pygame开发的小游戏《嗷大喵快跑》源码下载 下载次数 2998

13  python项目开发视频 下载次数 2998

14  python从入门到精通视频(全60集)python视频教程下载 下载次数 2994

15  黑马2017年java就业班全套视频教程 下载次数 2992

16  python实战项目 平铺图像板系统源码下载,适用于想要保存,标记和共享图像,视频和网页的用户 下载次数 2987

17  利用python实现程序内存监控脚本 下载次数 2986

18  树莓派Python编程指南 pdf下载 下载次数 2980

19  老男孩python自动化视频 下载次数 2979

20  老王python基础+进阶+项目视频教程 下载次数 2972

21  尚硅谷Go学科全套视频 下载次数 2972

22  某硅谷Python项目+AI课程+核心基础视频教程 下载次数 2967

23  Web前端实战精品课程 下载次数 2966

24  Python基础教程 pdf下载 下载次数 2966

25  tron python小游戏 下载次数 2962

26  [小甲鱼]零基础入门学习Python 下载次数 2959

27  老男孩python全栈开发15期 下载次数 2958

28  2017最新web前端开发完整视频教程附源码 下载次数 2948

29  最新全套完整JAVAWEB2018开发视频 下载次数 2926

30  Python算法教程_中文版 pdf下载 下载次数 2913

31  Spring boot实战视频6套下载 下载次数 2909

32  python全套视频十五期(116G) 下载次数 2901

33  Python项目实战 下载次数 2883

34  python全自动抢火车票教程-python视频教程下载 下载次数 2883

35  30个小时搞定Python网络爬虫 含源码 下载次数 2881

36  尚硅谷大数据之Hadoop视频 下载次数 2876

37  简明python教程 (A Byte of Python)pdf下载 下载次数 2873

38  Python Cookbook第三版中文PDF下载高清完整扫描原版 下载次数 2865

39  Python A~B~C~ python视频教程下载 下载次数 2864

40  数据结构与算法视频(小甲鱼讲解-全) 下载次数 2863

41  web小程序表白天数倒计时源码下载 下载次数 2862

42  python基础视频教程 下载次数 2862

43  Python高性能编程 pdf下载 下载次数 2862

44  go语言全套视频 下载次数 2854

45  利用Python进行数据分析 pdf下载 下载次数 2850

46  清华学霸尹成Python爬虫视频-ok 下载次数 2845

47  黑马前端36期最全视频和代码 下载次数 2841

48  2018最新全套web前端视频教程+源码下载 下载次数 2840

49  老男孩Python自动化开发12期 老男孩最强一期python高级运维开发课程 第二部分 70GB 下载次数 2832

50  笨办法学python pdf下载 下载次数 2828