题
我来自科学和嵌入式编程背景,并且在网络编程方面的经验很少。通过Web编程加快速度的最佳方法是什么?工具和框架建议?
一种方法是潜入学习框架,例如Rails。我开始使用Rails教程进行此操作,但是我发现该框架抽象了许多重要的概念,我应该学习。
总而言之,经验丰富的程序员希望学习Web应用程序编程。
解决方案
几年前,我向自己问这个问题!
这是我发现的简单而有条理的启动网络编程的方法,您可以跳过您已经知道的步骤
要学习网络编程,首先您必须知道
- 什么是网站
- 主要角色是什么
Web服务器,标记语言,客户端脚本,服务器侧脚本,协议(HTTP),浏览器
从浏览器中键入Google.com到加载完整的页面,从而跟踪完整的服务器往返。
为什么HTTP无状态?会议的角色克服这一点?
开始学习HTML和小JavaScript
- 基本标签
- 字幕:-)
- 警报,通过JavaScript更改颜色页面颜色等
- 与HTML,Javscript和CSS一起玩一些乐趣
服务器端脚本
- 从PHP开始
- 使用所有必要的输入 - 键入元素并创建表单
- 用简单的JavaScript进行验证表格
- 检索提交的表单数据并通过PHP显示
我认为您可以快速完成1到5。对于所有新手Web程序员来说,这是有趣的部分,因为他们在使用HTML和CSS时会引起视觉兴奋/
然后转到严肃的东西!!!
目前,您知道网站编程和网站工作的基本内容。
现在,选择最合适的语言,平台和框架是您的责任。
这里没有人无济于事。您必须考虑自己的个人兴趣和未来计划才能决定。
我的建议是使用PHP,因为您在初始阶段就学会了它。
接下来,是数据库。了解如何连接数据库b。基本的SQL查询。选择,插入,更新和删除c。使用数据库操纵用户输入
现在,开始创建个人网站;或任何简单的网站
- 下载任何开源网站并从中学习。
这里有很少的参考资料,可以帮助您
1. W3学校 - 用于学习HTML,CSS,JavaScript,ASP,数据库查询的基础知识
2. php.net- 有关PHP的一切
3.探索开源项目
- http://bitbucket.org/
- http://github.com/
- http://www.codeplex.com/
- http://sourceforge.net/
永远记住,这里有几个人来帮助您;如果发生了任何事情,请将其发布到Stackoverflow中。
找到具有一定程度的网络编程经验的人来指导您;从经验丰富的程序员那里学习总是很容易的。
不要忘记找到一些书籍……对于入门者,您可以结帐 假人
一切顺利!!!
其他提示
您对HTML一无所知吗?这可能是您需要的最基本,最简单但最重要的事情。使自己成为一个简单的网页,使用字体,图像,定位等,每次遇到问题时都查找答案。
从那里移动到CSS,服务器端编程等
我认为您发现这是我们大多数人学习的方式。
从经验来看,最好的方法必须变得太深了。做东西, 犯错误, ,犯很多错误。向他们学习。
有了这么多的替代途径,说您应该带任何一个的事情是一件真正主观的事情。
- 从RAW开始
HTML
. - 然后习惯
CSS
- 通过任何易于使用的学习服务器端编程
scripting languages
像Python或PHP。 - 学
Javascript
. - 然后选择各种网络框架
MVC
用于学习Web应用程序管理。使用适合您喜欢Ruby-on-on-Rails或ASP.NET MVC的框架。如果您根据第三步中未学到的语言切换到任何框架,例如C#(ASP.NET)或Java(J2EE),那么您也必须学习该语言。 - 去做
JQuery
.
也许您应该在使用更复杂的工具(例如框架)之前开始学习基础知识。就像您在使用C ++和库之前从C中的简单简单程序开始一样,您可以从PHP或Python中的简单网站开始,并在JavaScript中使用javaScript的前端开始,只是为了适应它。
然后,当您感到放松时,您可以开始“以正确的方式”制作更清洁的网站。
我同意温和的速度,深深地。
从一开始,您将使用至少4种不同的互动语言:(HTML,CSS,JavaScript和至少1个服务器旁语言。您可能还会在其中包含SQL,然后可能是一些XML。您可能还使用一两个框架(用于JavaScript和您的服务器端代码)。
您将必须从每个明显的基础知识开始。 IE制作一个简单的HTML页面,使用CSS进行样式,使其使用一些JS进行动态,并进行一些基本的CRUD操作,以进入服务器端的内容。但是,在您有基本知识之后,您需要尝试大致同时开发它们。您通常会发现,要改善一个人,您需要改善其他人,请确保拥抱它,而不是通过在潜入其他人之前试图学习一个来与之抗争。立即采取所有方法也将帮助您在进行更大的事情时变得更加灵活。
您会发现,您的大多数问题和最有价值的区域都在每种问题之间的边界上,例如,Ajax调用以更新小部件的呼叫将涉及所有JS,CSS,HTML DOM,SERVER端,服务器端以及可能的SQL 。通过每一层的数据是最大的突破点,如果您真的在一个领域中表现出色,您可能会集中精力修复错误并具有更令人费解的解决方案,而不是查看服务器端代码。
我走的方式是:
- 创建一个个人网站,只有静态内容(仅HTML)
- 使用动态内容扩展网站(使用PHP)
- 将所有内容改革为框架,以更好地分离演示文稿和业务逻辑。
我必须考虑的最大障碍是,如果没有客户端的先前触发器,网络应用程序的服务器端部分将无能为力。