Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于Web的C语言开发_C - Fatal编程技术网

基于Web的C语言开发

基于Web的C语言开发,c,C,我是一名C程序员,对web开发不熟悉。哪种web-C技术(开源)适合我快速学习web开发 更新:我的问题基于客户端和服务器技术。现在很多“web编程”都是在客户端进行的。除非您研究(或发明)从C到Javascript的交叉编译器,否则您不会在人们的浏览器中运行大量C代码 当然,在服务器端,如果你愿意,你可以自由地用C语言编写东西,有些人也可以。在有人建议你使用语言替代流行语言之前,我想告诉你,你需要用C语言进行web开发,就是要知道如何用C语言进行开发,并了解协议、标记、,图书馆的需求在这里是最

我是一名C程序员,对web开发不熟悉。哪种web-C技术(开源)适合我快速学习web开发

更新:我的问题基于客户端和服务器技术。

现在很多“web编程”都是在客户端进行的。除非您研究(或发明)从C到Javascript的交叉编译器,否则您不会在人们的浏览器中运行大量C代码


当然,在服务器端,如果你愿意,你可以自由地用C语言编写东西,有些人也可以。

在有人建议你使用语言替代流行语言之前,我想告诉你,你需要用C语言进行web开发,就是要知道如何用C语言进行开发,并了解协议、标记、,图书馆的需求在这里是最小的。没有人会告诉你哪一个适合你的需要和你对美的感知。

我不知道现在有任何大量使用C(不是C++)进行web开发的情况,更不用说可以“快速学习”的情况了。这不是一个适合整个任务的语言,尽管Web应用程序中的一些特定模块可以用C语言来写,甚至C++也是最有可能的。

< P>我知道这听起来很傲慢。但是不要说你是一个“C程序员”,你应该说你是一个“程序员”,学习一些更适合网络编程的语言。这会很有趣,你会成为一个更好的程序员,应用程序也很可能会更好


我知道理论上你可以用任何语言编写一个好的web应用程序,但在实践中,有很多方面可以使用更流行的语言(在“webapp意义上”)编写更容易。很多例子,如果没有其他的话。

在客户端,您几乎没有选择。您需要了解HTML/CSS/Javascript的使用方法

在服务器端,您有很多选择

在我进入web开发之前,我是一名C程序员,当PHP出现时,我被它所吸引,因为它在语法上与C有相似之处,而且(甚至更好),还有很多标准C库函数(sprintf、fread等)

PHP也是一个不错的起点,因为它的性能和过程语言一样好,如果您从未做过任何远程OO,您可能会发现它提供了一个很好的方法让您的脚湿了


这并不是说PHP是这个星球上最棒的语言。问题很多。但是作为一种“第一种面向web的语言”,对于一个有着浓厚C语言背景的人来说,我很难想出更好的方法,在服务器端,有人可能会争辩说,用C创建一组cgi仍然是可能的,这些cgi加上一些精心编制的客户端代码(html+css+javascript),可能会产生一个最先进的web应用程序

然而,根据我的经验,这是一条非常艰难的道路,如果不深入了解web应用程序所处的非常特殊的环境,几乎不可能走这条路。另外,最终的结果充其量只能是一头类似弗兰肯斯坦的野兽。相信我,我已经做到了

我给你们的建议是开始研究网络开发。也就是说,客户端html+css+javascript和服务器端脚本解决方案。选择像php这样的脚本解决方案可能会让您受益匪浅,因为它在语法上接近C,但这是工作中最简单的部分。了解客户端(html+css+javascript)如何协同工作以创建美观、可靠和用户友好的web应用程序是您需要重点关注的问题。由于你有C编程的背景,脚本编写方面将更容易开始

祝你好运


我不知道现在有任何大量使用C(不是C++)进行web开发的情况

虽然不是开源的,但G-wanweb服务器是我所知道的唯一一个用C语言开发Web的例子

它允许您编写动态运行的C脚本:


考虑到你在C语言方面的经验,这可能会有所帮助。

你可以试试KORE

Kore是一个易于使用的web应用程序框架,用于用C编写可伸缩的web API

Kore公开了一个易于使用的API来构建应用程序。下面是一个用C编写web应用程序的简单示例。代码将用“Hello world”响应所有请求


我想这或多或少是清楚的,他说的是服务器端部分。我的问题基于客户端和服务器端。我正在更新这个问题。小心在你的帖子中不小心使用了标签。谢谢,克里斯。我不知道这是允许的;-)如果您愿意编写自己的URL调度、身份验证、DB层、模板处理器和其他许多第一次(第二次)会出错的东西,那么对库的需求是最小的。独自编写是一种很好的学习方式,但创建专业web应用程序却是一种非常不幸的方式。事实上,更常见的是使用已经出错的库并将其归咎于此。事实上,你提到的DB层意味着你还没有读过我的答案-它不是web开发的一部分。这绝对是最好的答案。是的-memcached作为用Cmemcached编写的东西的一个例子并不完全是web内容,尽管它被大量用于web。在我们的时候,我支持C++的想法。“PHP”最初是指“个人主页”。这正是语言的优点;-)是的,这正是PHP最初的优势所在。它增长了,所以他们把名字改为“PHP超文本预处理器”,这是对人们在网络上做的很多事情的一个很好的描述。如果有另一种以web为中心的语言,您认为对于纯C(笑话自己写)程序员来说是一种更容易的过渡,请推荐它。
#include <kore/kore.h>
#include <kore/http.h>

int page(struct http_request *);

int
page(struct http_request *req)
{
    http_response(req, 200, "Hello world", 11);
    return (KORE_RESULT_OK);
}
$ kore create myapp
$ cd myapp
$ kore run
compiling myapp.c
myapp built succesfully!
[parent]: running on https://127.0.0.1:8888
[parent]: kore is starting up
[wrk 0]: worker 0 started (cpu#0)