php0基础怎么学,零基础能学软件开发吗?
答案是肯定的,零基础,也可以学习软件开发!
通俗的说,软件开发就是利用代码写软件。所以,要想学会软件开发,首先要学好写代码,要学会如何写代码,就必须学会编程语言。因此,开发哪一种软件,就学哪一种编程语言。
目前企业用的最多的就是Java了,很多企业的软件,网站,系统等都是用Java来开发的,以前学习Java看的是 “ 如鹏网 ”的《这样学Java不枯燥》视频教程,挺不错的,课程体系的设置可以极大的激发对编程的兴趣,快速入门。
通过开发超级玛丽,飞机大战,吃金币,连连看,汤姆猫,电影的弹幕动画等来讲解Java的基础知识点,没想到Java还可以这么学,蛮有成就感的;
具体的可以到 如鹏网 官网上去了解一下,有问题随时提问,老师实时在线答疑。视频教程,课件,源码等都是可以免费下载的。
在学习的过程中,一定要多练习,实践才是硬道理,多练习,多思考,把遇到的问题都总结下来,记好笔记,方便以后复习,持之以恒!
有哪些零基础的学习资料推荐?
前端开发,负责页面展示。学习路线,html+css+javascript+jQuery+bootscrapt之类的框架,前期学很简单,一个<button></button>就能显示一个按钮.要学精通还是有难度的,需要线性代数之类的高级知识。如果没有好的文凭,那可能还需要ps技术。
后台开发,负责后台逻辑,可以选择的java,微软....这是目前最大的两个体系,也各有优势。java前期较简单,前面的学习基本上都是方法调用。但要想精通同样很有难度。选择微软也可以直接从C#入门,前期和java一样易学。
在学习一门语言之前,首先要考虑好选择哪种架构,可分为CS,BS两种。BS是网页开发,CS是桌面应用程序开发。
(仅供参考)
若选择微软 a.桌面开发学习路线是C-> C#或者C++ ->数据库
b. C#->网页开发 html+css+javascript->数据库
若选择java a. 网页开发:javaSE->数据库->html+css+javascript->ajax+xml+(json可选)->JSP&servlet->SSH(之类的框架)
市场上还有很多很多语言,比如PHP,Python....可以去58同城找招聘程序员的信息,看看他们公司的要求,学习公司需要的。选择书籍可以根据上面推荐的语言去查找。最好别选明日科技出版社的从入门到精通系列,坑死人。再次申明,这些文字仅供参考。微软答得很简略,还需要自己再去找找更详细的资料。
过不过时不是谁说了算的,市场会决定,需求会决定,计算机发展史上其实有很多你没听过的语言,那些才叫过时了,基本上书店看不到了,比如C的前身B语言。与其在乎会不会过时还不如搞清楚学习编程的核心是什么,那就是编程思想,而不是语句和代码,语言及其语句和代码是按一定格式来实现你的思想的。其实从任何语言入手都是可以的,各有各的特点和用途,比如说BASIC是微软开发基于初学者的语言,现在大多作为编写应用软件的宏程序(当然JAVA也有脚本语言,就是网页开发里的JS),而VB6是最后一个可视化的BASIC,而目前最新的OFFICE还内嵌VBA,即VB for Application,用户可以借此提高工作效率。玩游戏时常用的按键精灵也是用类VB的语言,如果你会驾驭照样也能有所作为。可以说VB目前已沦为脚本的代表,当然VB6你照样可以有地方下载得到,而由于硬件的提升,其运行效率已经完全能满足要求(我见过牛人VB写的2D游戏,虽然可玩性欠缺,这个和游戏本身的设计有关,但是画面刷新及动画流畅度并不是很不堪),所以关键还在于怎么用。另外VB可以写回调函数,也可以调用Windows的API,不过就是语句多一点,代码重用机制太少,还有个问题就是VB是弱语言,它允许很多模糊的定义,这很方便初学者,但是由于定义模糊也很容易造成混乱,一旦被VB调教成散漫的习惯之后,你在学习其他强类型语言你可能会不适应。而C/C++这类强语言类型,定义严格不容易混淆,但是对初学者的学习过程打击是最大的,时不时报个错你莫名其妙不知道问题再哪里,几番折腾之后你发现编程工作是个累人的活,很是压抑,甚至X的心都有。学习要根据你的立足点,别人无法代替你选择,选择语言的方法就是了解一种语言的局限性,如果它无法满足你的要求,那就暂时放一放。问题是对于初学者你并不知道你需要什么,而作为过来人,告诉你C++好,说面向对象多么美妙,或者说C#更好,因为完全面向对象,你也没体会,为什么我要面向对象,有什么好处?如果几个人有不同的说法,那你肯定没有方向,因为作为新人你无从判断。好了,你既不知道自己要什么,别人说的某语言的特点你也没体会也很莫名其妙,你怎么选择?我就给你级别顺序,“级别”越低的语言越接近机器,对编程人员越不友好(开发效率低,麻烦),但是执行效率高,代码明确直接,比如机器语言就是直接控制CPU每一步操作的。“级别”越高的语言对编程人员越友好,那是因为编译器提供了后台服务,代价就是层层打包,你不知道你的代码到底做了些什么,这也是高级语言存在的意义,解放你的时间和脑细胞。而VB目前属于一个尴尬的地位,不考虑计算机性能,VB属于既没有太高的友好性又没有效率,所以现在我觉得用途最广的就是脚本和宏了,因为更高级的语言比如C#开发效率更高,而且也是可视化的。当然汇编、C/C++、C#、java,PHP,DELPH更专业,有些适用于网页开发有的基于本地底层驱动,硬件控制或者是数据库应用程序或是一般应用程序,而有的都兼顾,针对性不同用途不同,这里所谓的适用是相对的,其实任何语言都可以完成任何任务,只是语言有侧重,你如果用汇编编写网页访问那是很麻烦的事情,所以你的发展方向及语言的侧重点决定你该学习什么,其实思路(逻辑)都是一样的,都是需要训练的,而这些语言的特点网上一搜就知道不需要我多言。选择首学什么没有好坏之分,我的观点:选择一门语言先学习起来,熟练之后再去研究学习其他语言看看有什么区别,至于最终选择看你自己兴趣和要求了,我现在建议你先学C#,好处是语法和C/C++差不多,大部分关键词都一样,今后想学C++一点不别扭,可视化,底层封装,你不需要管很多琐碎的内存管理问题,完全面向对象,培养你面向对象的思想,错误检查比C++更友好,还有狠多好处,比如代码折叠,这个很有用处。顺带说下,我是从汇编学起的,我当时是因为一个游戏盘坏了扇区,找不到源了,只能自己编写汇编读取磁盘扇区去分析,好在游戏程序所在扇区没坏,坏的是关卡数据,因此后来自己编写了个地图编辑器,但是汇编语言的麻烦在于内存定位很麻烦,当时还没有好的编译器,什么都要自己编排,虽然很痛苦,但是这是段难忘的时光,在这期间我了解了CPU读取内存的机制以及数据总线地址总线控制总线这些概念,还有就是电路时序,什么是上升沿什么是下降沿,由此我也懂了SDRAM为什么比DRAM快两倍。然后接触C++,再接触VB,然后C#。
编程有很多领域,应该先从你兴趣开始,有兴趣再决定编程领域,有了编程领域在决定语言.不同的语言对应着不同编程领域,只有确定这些信息了,才知道要看什么书籍。喜欢为WINDOWS开发软件,那么 C语言是必备基础(C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言)。
学好了然后在扩展一门面向对象的语言比如C++ C# JAVA 等.这些是不错的选择。然后光有语言不行,为了软件的质量保证,还需要研究一下系统理论基础,这样你的软件才能做到对系统的作家兼容性和获取最佳性能。
拓展资料:
编程,是让计算机为解决某个问题,而使用某种程序设计语言编写程序代码,并最终得到结果的过程。为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路、方法、和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算机之间交流的过程就是编程。
0基础可以学吗?
首先,答案是肯定的,编程语言是可以零基础学习的。
随着软件开发技术的不断发展,编程语言的使用也越来越方便,总的来说编程语言并不难学,即使没有任何计算机基础,也可以通过一个系统的学习过程来掌握编程语言。
目前经常使用的编程语言有几十种,包括Java、C、Python、C++、PHP、C#、JavaScript、R、Scala等,这些编程语言往往都有自己特定的使用场景,在难易程度上也有一定的区别。通常情况下,Java可以用于Web开发、大数据开发、Android开发等,C语言可以用于操作系统开发、嵌入式开发等,Python可以用于Web开发、大数据开发和人工智能开发等,C++可以用于多媒体领域的开发,PHP主要从事Web开发,C#可以从事Web开发、后端服务开发等,JavaScript主要用于前端开发,R和Scala通常用于大数据开发。
学习编程语言通常并不需要多少计算机基础知识,但是具备一定的计算机基础对于编程语言的学习还是很有帮助的,尤其是对于抽象概念的理解会更加清晰。通常来说,掌握以下计算机基础知识还是有一定必要的:
第一:操作系统知识。操作系统知识对于编程语言的学习还是有较大帮助的,学习操作系统主要是了解操作系统的体系结构、资源管理、程序管理、任务调度等内容。通常来说,系统的学习一下Linux操作系统还是有必要的。
第二:计算机网络知识。计算机网络知识主要描述计算机网络体系结构、数据通信原理、通信协议、安全等内容,掌握计算机网络对于网络编程的理解会起到重要的帮助作用,更容易让学习者建立起画面感。
第三:数据库知识。数据库知识是程序员必须掌握的内容之一,包括数据库的关系结构、Sql语言、事务处理等内容。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网方面的问题,也可以咨询我,谢谢!
需要学习哪些语言和工具?
JAVA,JavaScript,Python,PHP这些应该都可以,你这个零基础很感人啊,想开发网站也很感人啊,想做APP,就更加感人了,不错,很有梦想。
还有web前端也得看看。
至于工具,VC++2010,IDE什么的都需要,再送你一个ps这个没什么好说的,安装好后就可以敲代码了
讲真,你要么找人帮忙,要么去参考别人源代码吧,有梦想是好事。
推荐几个论坛吧
CSDN,开源中国,博客园,马克笔记,stack overflow,v2ex。
加油,路漫漫求远。
如何学习Web开发?
web framework层出不穷,特别是ruby/python,各有10+个,php/java也是一大堆 根据我自己的经验写了一个to do list,按照这个清单,一条一条的学习,事半功倍,很快就能掌握 一共25条,即便很磨蹭,2小时也能搞定一条,25*2=50。只需要50小时就能掌握任意一种web框架各类web框架大同小异:现代web开发框架的6大元素,把握主线,就不会迷路
建议把本文打印到一张A4纸,搞定一条打个勾
web框架学习列表 如何定义 url router如何组织 request handler 函数写一个最简单的request handler 函数如何从get/post请求中取出参数如何定义全局url 拦截函数如何获取/修改/存储 cookie,session数据如何修改/输出 http header 数据如何部部署app 程序服务器部署可以参考读python web 程序的9种部署方式如何配置开发环境如何配置静态文件访问如何访问数据库是否支持ORM支持orm如何维护表结构的变更如何定义/组织/初始化 数据表如何对接orm系统和现有的表结构掌握最基本的add/delete/按字段查询/count/slice/order by如何直接使用sql 访问数据库不支持orm (这样的web框架,不用也罢)如何使用模板系统如何组织/访问 模板文件的目录结构如何在模板中嵌入代码模板是否支持继承结构模板之间如何include如何自定义模板函数如何通过http get/post 获取远程数据如何parse json如何parse xml如何输出为 json如何处理状态码:404和50x如何处理文件上传可选的学习项目 发送emaillog图片处理误区 表单验证辅助函数,很多框架的表单验证部分实现的特别复杂,初学者完全不需要,手写代码处理就够用ORM中的hasone,manytomany,onetomany关系,概念很复杂,其实只是多写/少写一个查询字段的关系,学习成本太高,初学者完全不需要理会,直接跳过。
如何快速学习一个WEB开发框架http://www.pcpob.com/article/view/1939-how-to-study-a-web-framework
如果已经学会了一个PHP框架,再去学习其他php框架,那么会很容易上手。但是如果还没有php框架基础,想去学习php框架,往往是一头雾水,不知道从哪里下手,从我学习php框架的经验,给大家分享一下,如何快速的去学习并掌握一个框架。一,选择一个合适的php框架 在国内,使用zf,ci和tp框架的人比较多,新手可以从中选一个去学习,新手不建议一开始就去学习zf,功力还不够深,学习zf会让你更迷茫。如果php基础实在太差,学习ci和tp都觉得有点难度,那么建议去学习一下我做的框架--canphp框架(简称cp,qq群:74781204),cp=ci+tp的结晶,更为简单,更容易理解。二,选定一个php框架之后,如何去学习第一步,把下载回来的框架压缩包解压,然后把每个目录和文件名,大致的浏览一遍。这样可以大概看出,这个php框架中大致布局和具有哪些功能。第二步,学习输出hello world,hello world很简单,但是对于学习一门新的语言或框架,很重要。第三步,学习理解单一入口和网址解析(即网址路由),单一入口,对于新手来说,可能有点不太好理解。第四步,学习php框架的内置的模板操作,主要学习程序是怎么赋值给模板,怎么加载模板和常用的模板标签第五步,学习数据库的添加,修改,删除,查询,学会简单的数据库操作。第六步,学习php框架常用的函数和类库,php框架中一般会带一些常用的函数和类,可以稍微看一下,此时还没有必要深入研究,等用到的时候再详细的去看手册和样例。第七步,下载基于此框架开源的项目系统下来学习,了解了php框架的执行流程,模板操作,和数据库操作,下载一个开源的系统,下来去学习,学习别人的代码,学得更快。第八步,做项目学习,要熟练掌握一个的框架,需要大量的实践,通过做项目,去深入学习。第九步,阅读框架代码,了解其实现原理
第十步,到这一步,你已经学会了这个php框架。
在StackExchange上有人问了这样一个问题:What should every programmer know about web development?(关于Web开发,什么是所有程序员需要知道的?)里面给出的答案非常不错,所以,我翻译转载过来。 顺便说一下,StackExchange真是非常好,大家可以对同一个答案做贡献和修订,看看这个问题的修订过程你就知道了——专业的问答网站应该怎么去做。这就是我在这篇文章中也说过真正的用户体验是什么样的。
好了,下面是正文(我对原文做了一些批注,也许不对或有误导,请大家指正)
下面的这些东西可能对于大多数人并不陌生,但是可能会有些东西你以前并没有看过,或是没有完全搞懂,甚至都没有听说过。(陈皓注:我相信当你看完这个列表后,你会觉得对于我国的Web开发有点弱了,还是那句话,表面上的东西永远是肤浅的)
接口和用户体验
小心浏览器的实现标准上的不一致,确信让你的网站能够适当地跨浏览器。至少,你的网站需要测试一下下面的浏览器:最新的 Gecko 引擎 (Firefox),一个 Webkit 引擎 (Safari,Chrome, 或是其它的移动设备上的浏览器)IE 浏览器 (测试IE的兼容性你可以使用微软IE的Application Compatibility VPC Images)Opera 浏览器。最后,你可以使用一下这个工具 来看看你的网页在不同的浏览器下是怎么被显示出来的(陈皓注:这个工具就是以前本站介绍过的在不同浏览器和平台上检查你的网站的兼容性)
多考虑一下人们是怎么来访问你的网站而不是那些主流的浏览器:手机,读屏软件和搜索引擎,例如:一些Accessibility的东西: WAI 和 Section508, 移动设备开发:MobiForge.部署Staging:怎么部署网站的更新而不会影响用户的访问。 Ed Lucas的答案 可以让你了解一些(陈皓注:Ed说了一些如版本控制,自动化build,备份,回滚等机制)。千万不要直接给用户显示不友好的错误信息。千万不要把用户的邮件地址以明文显示出来,这样会被爬虫爬走并被让用户的邮箱被垃圾邮件搞死。为用户的链接加上 rel="nofollow" 的属性以 避免垃圾网站的干扰。(陈皓注:nofollow是HTML的一个属性,用于通知搜索引擎“这个链接所指向的网页非我所能控制,对其内容不予置评”,或者简单地说,该链接不是对目标网站或网页的“投票”,这样搜索引擎不会再访问这个链接。这个是用来减少一些特定垃圾页面对原网站的影响,从而可以改善搜索结果的质量,并且防止垃圾链接的蔓延。)为网站建立一些的限制 这个属于安全性的范畴。(陈皓注:比如你在Google注册邮箱时,你一口气注册超过两个以上的邮箱,gmail要求给你发短信或是给你打电话认证,比如Discuz论坛的会限制你发贴或是搜索的间隔时间等等,更多的网站会用CAPTCHA来确认是人为的操作。 这些限制都是为了防止垃圾和恶意攻击)学习如何做 Progressive Enhancement. (陈皓注:Progressive Enhancement是一个Web Design的理念,如:1)基础的内容和功能应该可以被所有的浏览器存取,2)页面布局的应该使用外部的CSS链接,3)Javascript也应该是外部链接还应该是unobtrusive 的,4)应该让用户可以设置他们的偏好)如果POST成功,要在POST方法后重定向网址,这样可以阻止用户通过刷新页面重复提交。严重关注Accessibility。因为这是法律上的需求(陈皓注:Section 508是美国的508法案,其是美国劳工复健法的改进,它是一部联邦法律,这个法律要求所有技术要考虑到残障人士的应用,如果某个大众信息传播网站,如果某些用户群体(如残疾人)浏览该网站获取信息时,如果他们无法正常获得所期望的信息(如无法正常浏览),那可以依据相关法规,可以对该网站依法起诉)。WAI-ARIA 为这方面的事提供很不错的资源.安全
在网上有很多关于安全的文章,但是 OWASP 开发指导 涵盖了几乎所有关于Web站点安全的东西。(陈皓注:OWASP(开放Web应用安全项目Open Web Application Security Project)是一个开放的非营利性组织,目前全球有130个分会近万名会员,其主要目标是研议协助解决Web软体安全之标准、工具与技术文件,长期 致力于协助政府或企业了解并改善网页应用程式与网页服务的安全性。OWASP被视为Web应用安全领域的权威参考。2009年下列发布的美国国家和国际立法、标准、准则、委员会和行业实务守则参考引用了OWASP。美国联邦贸易委员会(FTC)强烈建议所有企业需遵循OWASP十大WEB弱点防护守则)