Web全栈开发基础(小白入门版本)

近几个月认真写了写Web全栈代码,有点小收获这里分享一下。我还做了个PPT,资源路径 欢迎拍砖指点!

Web全栈开发是一个听起来很虎的名词。本文从技术层面解释全栈开发,能帮助没有全栈概念,或者说对相关技术比如DjangoNode-js等没有什么认识的读者搞明白这些名词之间有什么关系。

技术栈

这里写图片描述 Web全栈,是将前端技术、后端技术、前后端交互技术、数据处理及系统部署等技能都能用起来的开发方式。 既能写界面,又能写后台,还可以把数据库、系统环境之类的都搞定。

技术选型

做开发不能纯粹为了技术而技术,在做事情前应现有技术选型、评估阶段。比如:当前技术团队有几个懂Java、几个懂PHP、几个懂Python的,将来团队技术方向是什么,现有产品什么样,将来是否要继承,这些都是要考虑的。如果在一个纯Python环境下要求用PHP生态链,那是要被老板骂的。

但作为小白入门级的独立开发者,自然是选择最简单入门最容易的环境,那就是windows系统下的Web开发全家桶——WAMP

这里推荐WAMP是不带感情色彩的,理由只有一个,就是最简单。DjangoLaveral对新手并不那么友好。至于Node-JS之类的,也只是众多技术流派中的一种。

Nginx的反向代理对配置环境的新手来说还是有点麻烦的。在Windows下支持不很好不说,很多东西还得一个一个装。当然,有用MAC的同学可以忽视。

这里写图片描述

极简流Web全栈开发

开发环境安装只需要wampnotepad++即可,版本控制用tortoisesvn足矣。

搭配起环境,你只会感慨,so easy

实际开发中,mysql使用对新手来说还是有点麻烦,更方便的做法是借鉴大数据的HDFS存取方式,使用文件。仅个人网站开发,文件私有方法读取会更高效。

WAP环境最小全栈HelloWorld

文件目录结构

WAMPServerwww目录下,只需要三个文件。index.php是后端入口,home.html是视图页面,data.dbdata.txt也行)是数据存储文件。

index.php
home.html
data.db

index.php最小代码

<?php
if (isset($_GET[‘get_msg’])) {
    echo file_get_contents("data.db");
}
else {
    require_once("home.html");
}
?>

home.html最小代码

<html>
    <head>
        <style>…… </style>  
    </head>
    <body>
        <h1>Hello World</h1>
        ……
    </body>
</html>
<script> ……</script>

为了方便,CSSJS都放在HTML代码中。

请求和返回

后台功能实现后,需要JS代码实现与后端的交互,即用户交互。原生JS最小实现

<script> 
function get_msg_from_server() {
    //console.log(" get_msg_from_server ");
    var em = document.getElementById('content');
    var xmlhttp=new XMLHttpRequest();
    xmlhttp.onreadystatechange=function() {
        if (xmlhttp.readyState==4 && xmlhttp.status==200) {
             em.innerHtml = xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","?get_msg",true);
    xmlhttp.send();
}
get_msg_from_server();
</script>

至此,最小全栈开发完成。本文代码仅示例,更多请到逐梦小站 开发者模式分析。

结语

这里写图片描述

至此,本文结束。想了解更对,欢迎留言或邮件我。最后引用Linux之父Linus的格言:

Talk is cheap, show me the code

版权声明

翼安博客


首发 翼安博客,转载请附链接!

赞赏支持

感谢支持!


建站不易,感谢支持!

推荐阅读
web开发技术栈(框架)总结
Bootstrap-Layui-Amazeui-jQuery-vue-react-AngularJS-ci-Thinkphp-Yii-Laravel-Node-Django-springMVC-apache-nginx-mysql-redis…… 天呐,好多…… 小编虽说出身工业软件,但心里一直藏着一个UI梦。近两年,小编业余时间从零开始摸索web开发,把web开发常用的技术和框
3478

Web前端开发工程师笔试题(2019-3-28 整理16道,含答案)
前端时间因工作需要,整理了一套笔试题。 网上有许多套题,重复的比较多。出于笔试时间考虑,本文摘取16道,包含了CSS基本使用、时间绑定、定时器、存储、ajax和框架原理等内容。 题目偏简单,覆盖知识点勉强算全面。如果有更好的题目,也欢迎补充。 放着这里,希望能给正在准备面试的朋友们带来一点点价值。 ### 1. 一个200x200的div在不同分辨率屏幕上下左右居中,用css实现: di
2415

Git for windows 修改Home路径(版本号:2.14)
前人留下的网络资料有解决1.9版本的这个问题,但对2.14版本已经不再适用。前人资料:http://www.cnblogs.com/fenpho/p/6208896.htmlhttp://www.cnblogs.com/xunzhiyou/p/5028789.html实际操作后,修改/etc/profile文件后,重新开始GitBash并没有生效。由于Git的默认路径在C:\Users\Admin
496

thinkphp6设置Content-type解决header添加不生效问题
thinkphp6设置Content-type解决header添加不生效问题原生php只需要加入header就可以实现输出各种格式的文件内容,如header("Content-type:text/css");然而,在thinkphp6中却不能生效。response总会自动的将内容以网页的形式输出。即自动添加<html>、<body>等标签,无法达到预期的效果。tp6框架中提
5002

【Gtest(Google Test)帮助手册】en-cn
Gtest官方使用文档英文文档获得方式:框架生成的执行文件,在命令行--help即可获得。中文翻译版本操作文档只对使用Gtest(GoogleTest)开发的测试用例有效。通过命令,你可以使用以下功能:选择测试用例: --gtest_list_tests列出所有的测试用例,但并不执行。代码中的用例TEST(Foo,Bar)显示出的结果是"Foo.Bar".  --gtest_f
2378

每天上班都像上坟一样难受,怎么办?三条妙招让上班像踏青
经常听到身边有些朋友抱怨,说每天上班的心情就想上坟。然而,真是如此么?小编相信,每位上班像上坟的朋友,身边不会缺少这样的朋友:每天上班精神抖擞,很有干劲,心情愉悦就像是来踏青一样。他们是怎么做到的呢?其实,上班不愉快无非就是上班时心情不好,感觉焦虑。要知道,这些都是可以解决的!人的一生,就是适应、利用、创造法则的一生。法则就是自然法则、社会秩序和公司规章制度。最无力的时候只能去学习、适应法则,成长
3186

CSDN-markdown编辑器示意效果
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗Ctrl+B斜体Ctrl+I引用Ctrl+Q插入链接Ctrl+L插入代码Ctrl+K插入图片Ctrl
1429

php开发遇到的Access denied for user
php开发遇到的Accessdeniedforuser'root'@'localhost'(usingpassword:NO)首发:2017-09-2413:44:38环境:CentOS6.5+php5.3.3在php开发过程中,我遇到了一个问题:在命令行中登录Mysql完全正常,然而PHP代码读取数据库却出了问题。报错如下:Accessdeniedforuser'root'@'localhost
3235

Linux环境C C++起Socket Server监听8080端口的代码实现
代码抄录自《UNUX网络编程卷一》,在实现开发环境中调试通过,经测试发现可以正常监听。(2017-09-0621:56:31)开发环境:CentOS,g++,VIM功能:C++实现Socket通信的Server端,实现监听8080端口接收到的消息。#include#include/*SeeNOTES*/#include#include#include#include#include#include
2724

CentOS 系统简易搭建FTP服务(四步足矣)
本文作者之前在CSDN发过(2017-09-0313:09:28),现在入驻本站。网上有很多的FTP搭建步骤,但普遍很繁琐,个人临时使用太麻烦。本次实验使用腾讯云服务器CentOS简易搭建FTP服务器,四行命令足矣完成基本使命。yuminstallvsftpdservicevsftpdstartuseradd-m-d/home/uftp-s/sbin/nologinuftppasswduftp目前
2499

解决修改CSS文件后网页显示不生效问题
刚开始学CSS,HTML+CSS+Div虽说是上个世纪就有产生的发明,但我却不会。不过,不要紧,学就是了。问题是这样的:我编写HTML文件,并调用CSS文件实现布局美化。然后,经常出现明明已经修改过CSS文件但HTML页面却并没有产生变化的现象。怎么办?CSS语法作为初学者,首先想到的时自己写错了。所以查找正确的语法,如这一文章中提到的HTML调用CSS管理、美化div,仔细检查,发现语法是OK的
3279

linux中查看C C++程序或调用其中某个函数(类)消耗内存的方法实现
验证C/C++程序或调用其中某个函数(类)消耗内存的方法:获取进程ID,调用/proc/[pid]/status查看消耗的内存页(4KB/内存页)进程ID获取方法UNIX环境高级编程中提到的getpid(),可以获取。头文件``查看内存信息sprintf(FILE_NAME,"/proc/%d/statm",pid);FILE*fp=fopen(FILE_NAME,"r");fscanf(fp,"
2611