Questions tagged «web-development»

Web开发是为World Wide Web或Intranet开发网站所涉及的工作的广义术语。

9
显示网站的注册用户数
我正在构建类似于《黑手党战争》的在线游戏。我当时想在首页上显示注册用户的数量,但后来我想到: “如果新用户看到注册用户总数为5怎么办?!” :D 这对于我仍在增长的游戏来说太尴尬了。然后另一个想法来自: “为什么我不显示500呢?!” ;) 没有人会知道实际上是否有500个用户注册到我的网站,除非他们当然开始实际玩游戏并与其他玩家互动。 但是,我只是觉得这是不道德的。如果这会对我的网站产生负面宣传该怎么办?! 我应该伪造这个号码您有什么看法?还是应该老实显示?还是应该等到拥有1000个真实帐户后才开始显示数字? 最重要的是这合法吗?:D

8
在CL和Python之间进行Web开发
我来自Java背景,在阅读了Paul Graham的这篇小文章之后,我开始想知道如何选择一种新的语言,即Common Lisp,以加快工作速度(我是一名Web开发人员)。 我目前正在编写宠物项目,但我有一些未来的业务计划。保罗在论文中谈到LISP是“秘密武器”。我不知道十年后这个说法是否正确,但是我将脚趾插入了一个不错的CL教程中,看起来LISP对于Web开发可能更胜一筹。 Paul还提到Python是我真正熟悉的不错的选择。我的问题是:我将来的Web项目应该选择哪个? 我在想什么: 我不会开发桌面应用程序,因此可以选择我喜欢的任何语言。 python似乎有一个很大的社区,因此与lisp相比,它拥有更多的库/框架 我发现Lisp具有某些功能(例如宏),在其他任何地方都找不到 我通常独自工作或与其他1-2位程序员一起工作,但要找到一个精通Lisp知识的人可能很难 所以你怎么看?

3
如果大型公司总是违反网络最佳实践,那么它们是如此重要吗?
通常,有许多规则和最佳做法可帮助优化网站,吸引新客户,并通常在使用户体验快速,流畅和令人愉悦的同时(有时)减少服务器负载。 而且,通常,大型公司不会费心使用这些最佳做法。在最大的网站上,除了少数公司(例如Google),我们可以看到: 表格布局,而不是最小化的JavaScript,应该没有CSS精灵,几个CSS文件,侵入性的JavaScript,即使在那些简单易行的情况下,在中调用JavaScript文件<head/>等。 无意义的错误,烦人的弹出窗口,需要填写大量字段的注册表,寄存器上的UX问题¹,愚蠢的问题和无法使用网站²的情况,网站关键部分上令人困惑的情况³,多次重定向,慢速页面等。 一方面,由于它们的成功部分或完全依赖于网站,这些公司为开发,优化和托管其网站付出了巨额资金;另一方面,他们不断违反最佳做法,而拥护这些最佳做法的人们则解释说,遵循这些最佳做法有助于实现更好的用户体验和更快的网站,而占用的环境更少(在托管于数千台服务器上的网站上不可忽略) 。 在这种情况下,提出以下要求是合乎逻辑的: 如果真正成功的大公司的网站和称职的员工确实有很多钱,并且那些对网站优化的关注不断违反这些最佳实践,那么这些最佳实践是真的吗? 或者,换句话说,如果这些最佳实践如此重要,并且对优化网站有很大帮助,那么为什么这些公司不关心它们? 让我们以Dell.com为例。我敢肯定,他们会聘请最好的人来创建他们的主页。他们的主页使用表格布局。这是否意味着那些说表格布局不好的人错了?这是否意味着戴尔聘用的最好的人才不称职? ¹第一个示例:eBay使得在注册时无法在两个字段中都粘贴您的邮件地址,从而使注册表格的使用时间更长,除了惹恼用户之外,没有其他理由;最佳做法是禁止复制,但允许粘贴。第二个示例:Microsoft Live将密码的长度限制为16个字符,没有任何明显的原因。 ²例如,当您很长一段时间没有去亚马逊时,它说密码无效,然后要恢复密码,询问您上次交易的信息,如果您已经使用过该帐户,则该帐户将不可用从未与该帐户进行过任何交易。 ³例如,Dell使得无法订购没有任何硬盘的机架服务器,而如果您已经拥有要重用的硬盘,这将是完全有效的。 optimization这种优化包括局部刷新以更快地发送最重要的内容,研究等待页面加载的时间与使用网站的人数之间的关系等 。⁵对于戴尔,微软等公司。 ⁶至于eBay或其他基于网络的公司。

6
一个程序员可以自己做什么?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 随着软件产品需要整个团队的开发,一个程序员可以自己完成多少工作?换句话说,一个人可以写Photoshop,MS单词等吗?如果他们做不到,那么Web开发会成为程序员可以做很多事情的领域吗?

4
解释模型视图控制器
我在开发动态网站方面的经验主要限于Java Servlet。我已经使用Tomcat开发了各种Java servlet,并且我毫不犹豫地说我对这项技术以及前端的客户端HTML / CSS / Javascript相当精通。 当我想到“动态网站”时,我认为:用户请求带有查询字符串的URL,服务器接收查询,然后继续动态输出HTML以响应查询。这通常涉及与数据库的通信,以便获取请求的数据以进行显示。这基本上doGet是Java方法背后的思想HttpServlet。 但是,这些天来,我越来越多地听到有关诸如Django和Ruby on Rails之类的较新框架的信息,它们都利用了“模型视图控制器”架构。我已经阅读了许多 解释MVC的文章,但是我很难真正理解其好处。我知道一般的想法是将业务逻辑与UI逻辑分开,但是我看不出这与普通的Web编程有什么真正的不同。从本质上讲,Web编程迫使您将业务逻辑(后端服务器端编程)与UI编程(客户端HTML或Javascript)分开,因为两者存在于完全不同的编程领域。 问题: MVC在Java servlet之类的东西上提供了什么?更重要的是, MVC到底是什么?与使用Java servlet(甚至是Java servlet)甚至更传统的方法来开发动态网站时,MVC有何不同?像CGI这样的旧版本?如果可能,在解释MVC时,请提供一个示例,说明如何将MVC应用于Web开发过程以及它如何带来好处。

9
网站的动态和静态类型语言[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 该语句表明,静态类型语言不适用于网站: 我将与建立网站进行对比。呈现网页时,通常您会在网页上交互许多组件。您在这里有按钮,在那儿有小部件,网页上有数十个小部件,网站上可能有数十个或数百个动态的网页。对于具有如此大的表面积的系统,使用静态类型的语言实际上是不灵活的。当我想交互地按动按钮而不是什么时,我可能会发现很难在Scala中编程并使用它渲染网页。如果整个系统必须是连贯的,就像整个系统必须进行类型检查一样,只是为了能够左右移动按钮,我认为这确实是不灵活的。 资料来源:http : //www.infoq.com/interviews/kallen-scala-twitter 它是否正确?为什么或者为什么不?

4
为什么XSLT在网络上很少使用?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2年前关闭。 XSLT是成熟的,被广泛接受的标准。 它可以在浏览器(甚至在旧的IE中)和服务器端使用(nginx具有XSLT模块,当然可以从编程语言中使用它)。它的实现是经过编译的,因此应该比Python或JS快得多。JS实现Saxon JS至少可以用作后备。Jinja,Angular,Ruby的Slim,ASP和PHP模板还差得远。 可以在IDE中轻松验证XSL模板。有多少个IDE可以帮助Jinja或Angular? 用XSLT分解UI和数据似乎是一个绝妙的主意。 诚然,在某些特殊情况下,实现可能会给出不同的结果,但这仅是在客户端进行模板处理才是问题。与HTML,CSS和其他在客户端完成的操作相同。 那么,为什么不使用XSLT?

1
登录到文件还是数据库表?
我正在开发一个使用MS SQL来处理各种数据的Web应用程序:包括用户,用户帐户,用户许可证,许可证价格,发票。 我需要记录用户对系统的实时使用情况,并将其用于每月计费:例如,每当用户获得特定页面/ URL时就记录一次,并在月底根据所获取的页面数向用户计费。 是否应该将这些日志事件写入MS SQL数据库的表中? 是否应将这些日志事件写入非SQL的仅追加日志文件? 我应该为每个用户将这些日志事件写入不同的日志文件吗? 这不是一个特别庞大的网站:例如,最多10,000个用户,每个用户平均每天进行5个可记录事件=> 50,000个事件/天= 30个事件/分钟= 18,000,000个事件/年。 我问是因为这两种选择似乎都是可行的,而且我看不出是否有明显的优势。 与计费事件相关的数据很简单,例如: 用户ID(SQL中与Users表的外键关系) 日期和时间 计费页面的URL 我对这个问题的回答如下: 将日志写入数据库表的一些好处: 关系完整性:例如,记录的事件与有效的用户ID相关联(通过将用户ID定义为表之间的外键) 易于阅读的账单:例如SELECT COUNT GROUP BY,获得每个用户的日志事件数的计数 写入日志文件的一些好处: 性能更容易:SQL较少使用,例如仅用于用户登录事件,而大多数仅用于读取 易于管理:通过移动旧日志文件而不是通过从数据库中删除/存档,例如在年底时更易于归档旧数据 如果我的答案有误,请告诉我;或夸大某事的重要性;或忘记了一些重要的考虑。 和/或,如果与我的答案不同,请告诉我您的答案是什么。

2
在Web应用程序的客户端上存储5000个元素
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 我刚刚对ASP.Net开发人员进行了电话面试,在初步介绍之后,面试官问我第一个技术问题: “如何在Web应用程序中为每个用户在客户端存储5000个元素”。 我的回答开始于 每个元素的平均大小是多少?我们真的必须在客户端存储这么多的数据吗?我们不能将其保留在数据库中,并以某种方式将其链接到用户会话/客户端ID 。 他的回答是“不,您告诉我如何将其存储在客户端,考虑到每个元素都是一个包含大约8个字段的记录,包括int / string和一个普通的表行”。 我说:“可以将它们保留在会话中,但是由于会话是在服务器端为每个用户维护的,因此可能会变得昂贵,或者另一种选择是将大量数据存储在cookie中”,我还说我不是确定是否可以在Cookie中存储大量数据。我提到有HTML5存储选项,但我还没有使用它。由于它基于SQLite,因此理论上可以存储那么多数据。 那是面试官有些讽刺地说的地方,因此您在Web开发方面拥有3年的经验,并终止了面试。 我想知道,我做错了什么?还是在客户端存储数据方面我真的缺少一些基本知识。

1
Web开发的GIT工作流程
很久以前,我与之合作的Web开发人员小团队开始使用git进行Web开发。那时我们只是致力于直接登台或掌握,然后在两者之间频繁合并。总比没有好,但也很混乱。 不久之前,我们采用了gitflow工作流程。尽管它肯定比以前出现的混乱更好,但它似乎有些繁琐且过于释放/面向里程碑。我的开发人员经常要求我弄清楚它应该如何工作,什么应该合并而不应该合并。一般而言,它似乎不适合用于Web开发工作,在Web开发工作中,我们经常部署代码,而没有跟踪特定的发布里程碑。 根据朋友最近的建议,我已经开始关注GitHub Flow。在这里阅读Scott Chacon的帖子,可以很好地解决这一难题: 那么,为什么不在GitHub上使用git-flow?好吧,主要的问题是我们一直都在部署。git-flow过程主要围绕“发行版”设计。我们实际上没有“版本”,因为我们每天都会部署到生产中,通常一天要部署几次。 FWIW,我也在Atlassian的网站上看到了这种很好的工作流汇总:https ://www.atlassian.com/git/workflows#!workflow-feature-branch 但是,它们看起来都像是在一个小型团队中,对于Web开发而言是错误的选择,并且它们又针对主要的应用程序发布而不是频繁/每日发布。 这是关于SE的一个问题,要求比较git-flow和github-flow /programming/18188492/what-are-the-pros-and-cons-of-git-flow-vs-github -流 一般而言,这是一个很好的答案,但是正如我在meta.programmers.SE下方的评论中提到的那样,这似乎表明有关最佳通用工作流程实践的问题属于此处,我希望除了git-flow和github以外,还提供更多可能的答案-flow,而特定于Web开发。因此,我认为这里值得提出一个新问题。 这样一来,对于一个小型Web开发团队来说,您发现最佳/首选的基于git的工作流程是什么?是github-flow还是其他东西?

5
关于Web开发角色的服务器,我需要了解什么?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 我知道这听起来可能有点含糊,所以我将尝试进一步解释... 在从事自营开发人员多年之后,我现在正在寻找商业Web开发人员。我对服务器和托管的唯一经验是通过FTP上传并使用CPanel / WHM。我要使用的角色是Web开发PHP,MySQL,HTML,CSS类型角色,但是在最近的采访中,有人问我有关在服务器上进行设置的问题,我不知道在说什么...这不理想! 在不了解更多信息的情况下,很难解释我到底想学什么,但是基本上,这只是我作为Web开发人员应该知道的服务器元素?如果您是Web开发人员,除了上载文件之外,您还可以处理服务器吗?Web开发团队是否经常设置诸如Subversion(SVN)和版本控制系统之类的东西,这就是他们所说的吗?

4
是否有任何静态类型的Web脚本语言?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 2年前关闭。 似乎有两种主要方法来设置Web服务器后端。您可以使用LAMP堆栈,并在服务器端代码中使用PHP或Python(或Ruby或JavaScript,而不以P开头)之类的代码。这些脚本语言往往是动态类型的,具有以下所有缺点:动态类型语言带来的性能,正确性和可维护性,但是更新服务器很容易,因为所有页面生成逻辑都存储在外部脚本中。 广泛使用的另一种主要体系结构样式是ASP.NET,其中页面生成逻辑是用编译代码编写的。这倾向于使用静态类型的语言,因此您获得了受益于编译器的代码,但是所有页面生成逻辑都已编译到服务器中,这意味着如果您需要更改某些内容,则必须关闭服务器,然后用新的版本替换它。 这让我感到奇怪。为了兼顾两者的优势,是否存在使用静态类型的服务器端脚本语言?

2
如果使用GPL或AGPL Web应用程序框架/ CMS,会有哪些法律风险?
试图在SO上问这个问题,但在这里被提及了... 我是否正确地说,使用诸如Composite C1之类的GPL网络应用程序框架不会使公司有义务共享我们针对所述框架编写的源代码? 那是AGPL的目的,对吗? 这是否也适用于KendoUI之类的Javascript框架? 如果我们要下载该GPL,那么我们对框架所做的任何更改都必须提供给其他人。 换句话说,仅将网站内容加载到我的浏览器中并不是在“传送”或“分发”该软件。 我一直在争论我们应该避免使用GPL Web框架,现在在研究之后我很确定自己是错的,但还想征询其他意见? 赛斯

11
如何保存一个年轻而垂死的项目?
我匿名发布此信息,因为我不想陷入潜在的麻烦。 我有一个大问题。 我最近加入了一个不到一年的团队。我从一个月开始从事此项目。公司结构如下: 所有者(非技术人员) 项目经理(非技术) 首席开发人员(技术,但不擅长) 这个项目是一个使用ASP.Net的网站,首席开发人员为此设计了一个糟糕的体系结构。您将不得不信誓旦旦,但是基本上,构建网页的要求方式是在Debug模式下通过VPN在单个网页上给我们3分钟以上的加载时间。 螺旋式发展到其他同事都同意他们花更多的时间等待页面加载而不是实际开发。 现在最大的问题是这个。项目经理不了解技术并接受它。他特别指出,他相信首席开发人员会在应用程序体系结构上做出正确的选择。 团队中没有人知道所有者的意见,但是每个人都害怕在这种经济中动荡(尤其是我自己)。 你会怎么做?

5
擅长后端,但前端不好
我想开始Web开发,我一直在学习php。 我有Java,Python和C ++的 经验,这种经验使我擅长于Web开发的后端。 但是我在设计和图形方面很糟糕。 我要启动网站。 你们建议我做什么? 如果您的建议是要更好地使用图形,那是个好方法吗? 我也想知道你们在设计和图形上使用了什么,什么是学习的好地方?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.