软件是什么?前端,后端,数据库

软件是什么?

由于很多东西没有实际接触,很难理解,对于软件的定义也是各种各样。但是我还是不理解,软件开发中的前端,后端,数据库到底有什么关系呢

这个问题足足困扰了三年半,练习时长三年半,希望能为你解惑!


前端 : 数据渲染

  • 发送请求
  • 接受响应数据
  • 将数据渲染到页面上

后端 : 数据逻辑处理

  • 捕获请求
  • 根据请求从数据库中取出数据,进行数据处理
  • 将数据响应给前端

前后端数据交互 : 【ajax】

  • 根据url(ip地址)进行数据的交换

数据库 : 数据存储

  • 接收后端请求,按照要求取出数据\存入数据

服务器 :不关机的电脑 

  • 或者可以叫它 软件
  • 服务器连接到互联网中,基本上可以24h找到
  • 1000个人不同时间打开同一个app首页,都是一样的

1-后端

在大学里开始接触编程时,没人告诉我前端,后端分别干什么?为什么要学习数据库?

第一阶段 : c
#include <stdio.h>
int main() {printf("Hello, World!\\n");return 0;
}

一个黑框框打印出了“hello world!”

有点高兴,也有点失落。

我运行了我的第一个“hello world!”,我看着精美的软件与黑不溜秋的弹框。

它好像在嘲笑我的自大,他们说逻辑好学编程就不错!他们说这些软件都是由这些代码组成的,我要怎么才可以让它精美呢?继续跟着老师学习吧!


第二阶段:Java
class Main{public static void mian(String[] args){System.out.println("hello,world");}
}

oh!这次用的是Java语言,它不是黑框框了,是白框框

老师怎么讲错了这个函数的用法?这样学习下去,是不是要和c语言一样,学一半就结束了?

我该如何实现精美的软件!我有点烦躁了!

我不想听老师将的课了,但我想知道软件如何设计出来的!

欢迎来到bilibili大学,你好!我是你的Java导师,我叫阿伟,你可以称呼我:暖男·阿伟!

我完成第一款软件 : 拼图小游戏

但是阿伟老师好像说,好看的效果由前端来完成的

斗地主的很多逻辑是通过算法和数据结构实现的

并且数据不应该存储在本地.txt,应该存储在数据库中更安全


第三阶段:算法与数据结构

cao!这是什么玩意,我要长脑袋了

感谢遇到 :“执 梗”大佬,算法真的很有趣

2-数据库

第四阶段 : MySQL

学校也开了数据库,课上完后,我好像只会在数据库中操作数据!!

我如何在Java中将数据存入MySQL呢?

数据库学了,但是感觉差了点什么...

第五阶段:JDBC

JDBC的作用:可以通过java代码操作数据库

emm,太复杂了,理解mysql我就用两天,放弃.....

我到底要怎么学?没有兴趣学起来真的很难。。

第六阶段:Mybatis

这就是 mybatis : np!

我终于可以在Java中操作数据库了

第七阶段 :springboot

woc!这玩意也看不懂!Java怎么还有注解@,我先看看一些其他知识点吧

xml,json,Maven,软件工程,软件设计....

我好像可以看懂了,你好,哔哩哔哩Javaweb

我完成了’talis智能辅助系统’的后端

根据开发文档:捕获请求,请求处理,数据获取,数据处理,响应数据

我好像明白后端的意义了 : 为前端提供数据处理

3-前端

第八阶段:HTML+CSS

在小小的网页里面画啊画

静态页面弄出来了,但数据操作据说要用Javascript

有点等不及了,我想将前后端连接起来,我要去学JavaScript

第九阶段 : Javascript

这门语言好奇怪,怎么没有int,String这些修饰符

oh! 原来这门语言是这样的 : 基础逻辑 + 页面操作

基础操作不变,多了页面操作,可以捕获html对象,也可以操作浏览器对象

油猴好像就是JavaScript写的,嘿嘿嘿

我勉强可以理解JavaScript,但是我的大学也快结束了,

我必须要知道我大学究竟学了一个什么

第十阶段 : Vue

哦豁!谁知道Vue前面还有一个 :ajax

第十一阶段 : Ajax

黑马大学提供了API,在axios中的 url 设置为api的地址,我就可以获取到数据了

axios({url:'',method:'请求方法',[默认get]params:'查询参数',data:{参数名:值}
}).then(result => {// 对服务器返回的数据进行操作
}).catch(error => {// 处理错误
})

我想起了接口文档! 我是不是可以将url设置为我springboot项目里面的地址

nice! 耗时三年半,我终于理解了软件开发!

项目 :

        需求分析 : 指定需求

        接口文档 : 根据需求分析制定接口文档

        建立数据库 : 创建MySQL数据关系表

        创建项目 : 根据接口文档进行前后端分离开发

                后端,通过请求返回响应数据

                前端,根据根据响应数据进行页面渲染

        打包部署 : 服务器 = 不关机的电脑


前端发起请求 -> 后端捕获请求 -> 分析请求 -> 调用数据库 -> 返回数据 -> 数据处理 -> 响应前端 -> 前端渲染数据 

4-总结

耗时三年半 :

从一无所知 到 两眼一抹黑

从紧跟老师步伐 到 哔哩哔哩自我学习

回顾过往,重新深挖

莫道桑榆晚,红霞映漫天


因为不知道究竟在学什么?所以一直在寻找

很多东西不知道用来干什么?没有深入学习

本篇仅仅为我亲生体验,毕竟人不可能理解未知的事件。

是非对错,但凭心愿,莫问前程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/411999.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】八大排序之计数排序算法

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 一.计数排序简介及思想 二.计数排序代码实现 三.计数排序复杂度分析 &#x1f4cc;时间复杂度 &#x1f4cc;空间复杂度 结语 一.计数排序简介及思想 计数排序(Cou…

7、DETR:基于Transformer的端到端目标检测

目录 一、论文题目 二、背景与动机 三、创新与卖点 四、具体实现细节 模型架构 简易代码 五、结论与展望 六、一些资料 一、论文题目 End-to-End Object Detection with Transformershttps://arxiv.org/abs/2005.12872 二、背景与动机 在计算机视觉领域&#xff0c;目标…

使用docker搭建LNMP架构

目录 环境准备 下载安装包 服务器环境 任务分析 nginx部分 建立工作目录 编写 Dockerfile 脚本 准备 nginx.conf 配置文件 生成镜像 创建自定义网络 启动镜像容器 验证nginx MySQL部分 建立工作目录 编写 Dockerfile 准备 my.cnf 配置文件 生成镜像 启动镜像…

如何利用SD-WAN升级企业网络,混合组网稳定性更高?

随着企业信息化的升级&#xff0c;传统网络架构已经无法满足企业复杂的、多样化的组网互联需求。 企业多样化的组网需求包括&#xff1a; 一是需要将各办公点互联起来进行数据传输、资源共享&#xff1b; 二是视频会议、ERP、OA、邮箱系统、云服务应用程序等访问需求&#xff…

F-Droid:开源Android应用的宝库

F-Droid&#xff1a;开源Android应用的宝库 引言 F-Droid是一个开源应用程序存储库&#xff0c;旨在为安卓用户提供自由、隐私和安全的应用程序。它最初于2010年由Ciaran Gultnieks创建&#xff0c;因为他认为Google Play Store上的应用程序不够透明和安全。F-Droid的目标是为…

elasticsearch[二]-DSL查询语法:全文检索、精准查询(term/range)、地理坐标查询(矩阵、范围)、复合查询(相关性算法)、布尔查询

ES-DSL查询语法&#xff08;全文检索、精准查询、地理坐标查询&#xff09; 1.DSL查询文档 elasticsearch 的查询依然是基于 JSON 风格的 DSL 来实现的。 1.1.DSL 查询分类 Elasticsearch 提供了基于 JSON 的 DSL&#xff08;Domain Specific Language&#xff09;来定义查…

码住!软件测试人员的基本有哪些?

在软件测试领域&#xff0c;许多人误以为软件测试只是简单的点点鼠标、看看屏幕就能完成。然而&#xff0c;软件测试的复杂性远不止于此。作为一名软件测试人员&#xff0c;你需要具备多项技能和素质来保证测试的有效性和质量。 打字技能可以事半功倍 打字是软件测试人员必备的…

[linux]使用libqrencode库生成二维码数据

一、需求 要将一段数据生成为二维码&#xff0c; 二、方案 使用linux标准库&#xff0c;通过libqrencode将需要写入的信息转为二维码图片数据。 三、实现 3.1编写c文件 #include <stdio.h> #include <stdlib.h> #include <qrencode.h> int main() {QRc…

Facebook广告优化

通过Facebook广告优化来提高产品销量&#xff0c;以下是一些步骤和技巧&#xff1a; 1、确定目标受众&#xff1a;在Facebook广告平台上&#xff0c;您可以根据性别、年龄、地理位置、兴趣爱好等多种因素来定义您的目标受众。通过细分目标受众&#xff0c;您可以更精准地将广告…

[足式机器人]Part2 Dr. CAN学习笔记- Kalman Filter卡尔曼滤波器Ch05

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记 - Kalman Filter卡尔曼滤波器 Ch05 1. Recursive Algirithm 递归算法2. Data Fusion 数据融合Covarince Matrix协方差矩阵State Space状态空间方程 Observation观测器3. Step by step : Deriatio…

jmeter-线程数设置为1,循环10次没问题,循环100次出现异常

一、多次尝试&#xff0c;发现出现异常的接口大致相同。 解决办法&#xff1a;在第一个出现异常的接口下添加超时时间&#xff0c;固定定时器&#xff1a;2000ms&#xff0c;再次运行就没问题了。 二、压力机自身存在的问题 1&#xff09;在网络编程中&#xff0c;特别是在短…

查找国外文献的技巧

文章目录 一、方法二、配置参考 一、方法 xrelay&#xff08;1年&#xff09; 其他手段&#xff1a; 手段1手段2 需要自己去看怎么配置 二、配置 google浏览器走代理的配置&#xff1a; 配置步骤&#xff1a; 方法1&#xff1a;https://steemit.com/cn/causenet/7-switc…