怎样学习开发软件?
首先告诉你的是,计算机高级编程语言都是相似相通的,会了一门编程再去学习另一门会很容易。所以先选择一个比较简单的入个门,知道编程这么回事,对编程有一定的了解,然后再去深入学习和研究自己喜欢的那方面。下面主要面向两种人分别推荐,第一种是什么基础都没有的,对电脑也不熟悉的人。另一种是了解一点电脑的基础和使用,会通过百度查询遇到的某些问题,能独立解决一些问题的人。
不同语言输出hello world
如果你是第一种人。没有任何基础,不了解什么是编程,对计算机也不是很了解,那么推荐C语言。一般来说,计算机相关专业,都会开设C语言课程,C语言是高级语言里边最基础的,并且是面向过程的,所以相比较其他高级语言,学习起来入门简单些。刚开始学习C语言编出来的程序都是黑框框,没有界面,如果想做个正经用的软件,肯定得有界面,这个以后可以通过别的语言学,因为C语言写带界面的程序太麻烦了。因为C语言基础,简单,易上手,所以被大部分学校选为计算机基础课程。
除了上述原因,最重要的一个就是C语言搭建编译环境很方便,下载一个C语言的IDE即可,不需要进行其他的配置,所谓编译环境,就是你写代码并且编译代码的地方,也就是你的工作站,C语言的编译环境,安装一个编译工具就搞定,方便。万事开头难,所有的人学编程刚开始大部分都会在搭建开发环境上卡住一阵,所以一般推荐零基础的同学看视频学习,因为大部分视频都是教你搭建环境的,跟着视频一步步操作,比看书容易些。并且这些基础课程免费的很多,没必要花钱购买。
网易云课堂搜索C语言显示的结果
除了C语言入门,还可以通过学习网页编程语言入门,因为编写网页的语言相比较而言简单点,并且写好网页就能看到界面,有成就感。刚开始接触编程除了了解编程,更应该培养兴趣,增加成就感。不然刚上手就去研究电脑或者手机的带界面的程序,那太难了,打击你的信心。
网页编程可以从HTMl入手学习,这个非常简单,并且这个写好之后用浏览器直接打开就能显示你写的东西,并且这个甚至可以不用编译环境,直接用记事本来写,很省事。你要是不承认这是一门语言的话,可以去学PHP或ASP.NET。这俩也都不难,但是需要搭建开发环境,跟着视频去做的话,也是不难的,就是安装几个工具,这俩语言的优势同样也是写了就能看到成果,并且语法简单。
在学了这些基础课程之后,大家肯定就对编程有了一定的认识,然后根据自己的兴趣,去学习你想开发的软件所用的语言,这时候学起来就比较容易了,以后再怎么学习就有目标了。不了解的事请,总是入门难,一旦入了门,那将得到飞快的提高。
第二种人,就是那些有一点点计算机的使用基础,能善于使用搜索引擎的同学。可以直接上手学习JAVA或者Python,这俩都是面向对象的高级语言,也是目前很火的语言。像这种比较火的语言,或者像C语言那种比较经典的语言,教程资料都比较好找。遇到问题也比较容易能搜到解决方法。这两种语言最大一个问题就是需要搭建环境,这个对于小白来说,还是挺麻烦的,需要安装一些环境,然后配置环境变量,然后设置编译环境,下载一些常用的库等等。在这安装和使用过程中,可能会遇到各种各样的问题,出现各种奇葩问题,有些甚至跟着老师视频一步步操作,最后都无法运行,所以这类语言仅仅适用于那些对计算机使用有点基础的,并且会自己查百度,能自己动手的同学学习。如果身边恰好有个懂这些的朋友,跟着他学习下或者让他帮忙配置下开发环境,也是可以的。
这些一旦入门之后可以直接深入研究,拿JAVA来说,它是跨平台的,写好一个程序,无论是哪个系统,只要他装了java的环境,都可以直接运行这个程序,并且java除了开发软件还能做网站。一旦会使用这些高级语言,你会发现同样实现一个功能,C语言可能需要写几百行代码,而java或者Python可能只需要写几十行代码就能完成。这些高级语言封装了很多功能,你直接调用就可以。所以在实现某些功能的时候更方便。
等你学的差不多的时候,多看看网上别人写的源代码,自己尝试做一些能做的小项目。如果学的是C或者Python这些,可以做一些数学题的运算程序,求面积、体积,或者写个进制转换器之类的。如果学的是HTML或者PHP,尝试自己做个属于自己的小网站,实践是最锻炼人的。这时候尽量买本参考书,因为这本书需要来回翻,所以推荐买实体书。至于买哪一本,可以根据你学习的语言去选择,询问下相关行业前辈的意见或者去搜索下网友的意见。
软件开发人员是做什么的?
软件开发人员是各种计算机程序而又不限于计算机程序,比如运行这嵌入式设备上的程序等的开发者,他们设计和编写用于构建从操作系统到应用程序到视频游戏的一切的代码。
如何成为软件开发者?
- 学习一门或多门编程语言,编程语言是开发程序的工具,因此首先学习并掌握一门编程语言。选择编程语言需要根据自己的程序方向来定,比如前端软件则可以考虑HTML+CSS+js/ts,大数据处理可以考虑Python,PC程序则可以考虑C(++/#), Rust等。
- 弄清自己学习开发的目标。比如选择哪个行业,医疗健康,工程,互联网等。例如,如果您想在医疗保健领域工作,您可能需要围绕数据隐私法以及如何存储和访问患者记录等问题建立行业知识和技能。
- 可以拿一个认证或者学习几门课程。通过专业的训练,来掌握相关的专业能力。
- 投入练习,无论你选择接受正规教育还是自学,你都需要花时间学习编程语言并尝试开发。这是深入了解开发过程的关键,这将帮助您成为更高效、更准确的专业人员。
- 打造个人的软件开发经验,将自己一个个小的项目经历构造成一个系统的项目体系,这样可以丰富自己的个人工作经历。
- 拓宽自己的开发技能,包括但不限于数据库语言sql, 版本管理工具git, 集成开发环境linux等。
- 扩宽非开发技能相关的技能,作为一名软件开发人员,您将负责在处理项目时向其他人提供指导。你还必须解释事情是如何运作的,并回答客户和主管可能提出的问题。
- 取得一些证书,认证有助于为潜在雇主验证你的技能,并证明你的熟练程度,如果你没有很多工作经验,这会很有帮助。
- 相信自己。
答主用我的亲身经历来分析分析这个问题,首先,我觉得应该从两个角度来回答这个问题。第一,从心态上,第二从学习方式方法上。
心态上
我们都知道做任何事情如果有明确的目标,那么在自身的学习动力上就会更加有方向,更加明确知道自己要什么。
比如题主学习软件开发是为了后面能从事这方面的工作,那么后面我们是要以这行吃饭的,是要养活自己的,或者说的更远一点是要生存的,那么如果不努力学习后面还有退路吗?
比如学习软件开发只是兴趣使然,那么题主是想能做出个什么东西,或者说是为了达到什么个目的,那如果不学如何能达到自己的目的?
学习方式方法上
知道自己的目标之后,学习上就很好开展了。
如果是为了生活,那么就很好开展了,现在的你没有退路了,除了学好软件开发你没得选了。如果是为了兴趣那你的找准自己需要学的知识点
首先从学习时间上给题主一个建议,如果可以最好在学习的这段时间远离游戏,不要玩手机,也不要想太多,尽管去学习。
其次从从学习方法上在所有的学习中我们的基础概念其实是最简单的,那么听懂之后不要想别的了,练吧,有多少练习就做多少练习。打个比喻,我们都能看懂扣篮是怎么个动作,但是我们能立马跟着做出来吗?不能吧,我们要做到只能通过大量的练习才能做到。一个道理你懂了理论,只能通过大量的练习才能才能把这个概念运用熟练。
最后一定要学会适当的总结,把自己的最近学习的内容做一个梳理,要理清楚自己掌握到什么程度了,该补哪里,哪里是需要加强记忆的?做好有自己的一套学习笔记,这样后面需要问题还可以拿出来翻看。
最后的最后希望题主能坚持住,学习本来就是一个长线的投资,不可能一蹴而就,只能多多练习多多积累,需要一颗有毅力的心。
这是答主从自己的身上给出的建议,从心态上,和从学习的方式方法上,希望能帮到题主。可能语言表达不够好,如果有更好的方式方法的小伙伴可以在下方评论,或者点个关注,我们来一起探讨探讨
一、既然是从零开始,先来个简短的普及,如果要从事软件开发,你至少需要学会的东西:
1、一门编程语言(C、C++、Java、PHP、Python、Html等),2、熟悉一种操作系统(Windows、Unix、Linux/类Linux、Android、IOS等),3、简单的算法和数据结构。
二、先确定你学习完软件开发后想从事的工作,比如游戏开发(LOL,吃鸡,手游等);前端开发(网页、微信小游戏、Android/IOS APP等);后台服务器,数据库(支撑前端运行的技术和数据);嵌入式(驱动、单片机等)。
三、确定方向后,再选择相应的编程语言,如游戏开发(C++为主);网站,小游戏(H5/CSS/js等)、Android(Java为主);IOS(Objective-C、switch);后台服务器(Java、Python等);数据库(MySQL、Oracle、SQL Server等);嵌入式(C、汇编等)。
四、编程语言基础内容学习的难易程度,大致:C>C++>JAVA>其他。但是基础之后,每门语言的扩展都是很广很深的,都有难度和乐趣。
五、操作系统也会根据你选择的方向基本定型,如游戏基于Windows比较多,手游和APP就基于Android和IOS、嵌入式基于Linux(类Linux)单片机较多、H5和Java跨平台都适用。