项目开发的基本流程大致如下:

1.需求分析;

2.设计架构,数据库结构,数据量评估、模块结构、接口、业务逻辑;

3.开始搭环境,建数据库,部署到开发环境;

4.给前端提供假数据,以便并行开发;

5.完成业务逻辑代码,单元测试和集成测试;

6.代码审查,性能测试;

7.发布到测试环境;

8.修复Bug;

9.上线。

一、前端

1.概述

前端指的是用户可见的界面,网站前端页面也就是网页的页面开发,比如网页上的特效、布局、图片、视频,音频等内容。前端的工作内容就是将美工设计的效果图的设计成浏览器可以运行的网页,并配合后端做网页的数据显示和交互等可视方面的工作内容。前端开发用到的技术包括但不限于html5、css3、javascript、jquery、Bootstrap、Node.js 、Webpack,AngularJs,ReactJs,VueJs等技术。

1)Html:超文本标记语言,意思就是不止是文本的语言(还包含图片、链接、音乐、甚至程序等非文本元素),html用于人与浏览器之间的交流,html的特性可以跨平台展示,在pc、移动端可以看。

2)CSS:层叠样式表(也有级联样式表等叫法),是用来表现HTML或XML等文件样式的计算机语言。CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。

3)Javascript:一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果,通常通过嵌入在HTML中来实现自身的功能。

2.工作内容

前端工程师主要的工作职责分为三大部分,分别是传统的Web前端开发,移动端开发和大数据呈现端开发。Web前端开发主要针对的是PC端开发任务;移动端开发则包括Android开发、iOS开发和各种小程序开发,在移动互联网迅速发展的带动下,移动端的开发任务量是比较大的,随着5G标准的落地,未来移动端的开发任务将得到进一步的拓展;大数据呈现则主要是基于已有的平台完成最终分析结果的呈现,呈现方式通常也有多种选择,比如大屏展示等。

二、后端

1.概述

后端是指用户看不见的东西,通常是与前端工程师进行数据交互及网站数据的保存和读取,相对来说后端涉及到的逻辑代码比前端要多的多,后端考虑的是底层业务逻辑的实现,平台的稳定性与性能等。后端开发(以java为例)主要用到的是包括但不限于Struts spring springmvc Hibernate Http协议Servlet Tomcat服务器等技术。

2.语言

后端开发常见的一些语言:

1)PHP:(Hypertext Preprocessor,“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。php的优势就是免费、快捷、跨平台性比较强。编辑简单,实用性强,更适合初学者。

2)Java:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。但入门难度也比较高,复杂。

java有安卓、web、搞嵌入式等方向。javaweb就是指web方向的,分服务器端(后端)和web前端。java web包括了jsp,servelt以及一些框架比如spring,structs以及与数据库交互的知识,侧重于后端开发,但也涉及到了html,css等前端技术。

3)Python:Python是一种面向对象的解释型计算机程序设计语言,Python具有丰富和强大的库。它常被称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。在数据分析和交互、探索性计算以及数据可视化等方面,相对于R、MATLAB、SAS、Stata等工具,Python都有其优势。近年来,由于Python库的不断发展(如pandas),使其在数据挖掘领域崭露头角。

4)C:C语言是一门面向过程的、抽象化的通用程序设计语言,与C++、C#、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

5)Go:Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。

6)Ruby:一种简单快捷的面向对象(面向对象程序设计)脚本语言,Ruby归根结底源于Perl和Lisp两类语言,与C,C++,C#,java是不同大类。优点是语法简单,适合于快速开发。

3.工作内容

后端工程师的主要职责集中在平台设计、接口设计和功能实现三大部分。平台设计主要是搭建后端的支撑服务容器;接口设计主要针对于不同需求进行相应的功能接口设计;功能实现则是完成具体的业务逻辑实现。

三、前后端交互

前后端交互的数据格式主要有:xml,json,form,iframe

四、客户端

客户端(Client)或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行。

至今为止,主流的两种网络连接模式为C/S和B/S模式,即客户端/服务器端和浏览器端/服务器端。因此,所说的客户端更应该理解为C/S。

当用户使用域名而不是IP地址访问网络资源时,系统会对需要访问的域名进行解析,即找到域名对应的IP地址。首先查询本地的域名信息缓存,如果查询成功,则返回相应的IP地址,否则向本地域名服务器发出DNS请求。

Web客户端主要指web浏览器(Browser),主要组件包括用户界面(User Interface)、浏览器引擎(Browser Engine)、渲染引擎(Rendering Engine)、网络(Networking)、UI后端(UI Backend)、JS解释器(JavaScript)、数据存储(Data persistence)等。

游戏客户端是将游戏中的很多资源储存起来的软件。玩家通过客户端输入指令,客户端翻译成数据发送给服务器,服务器处理完给出结果,然后再由客户端翻译成图形化表现出来告诉玩家。

移动客户端即手机、平板等移动设备上运行的软件。

五、数据库

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。根据存储模型主要可分为网状数据库、树状数据库、关系型数据库、面向对象数据库等。商业应用中主要是Oracle、DB2、Sybase、MS SQL Server、Informax、MySQL等关系型数据库。

数据库设计包含的内容:

1.根据业务需求设计E-R图;

2.根据E-R图设计逻辑关系表;

3.根据3范式实现逻辑关系表;

4.创建库、表,并完善约束、编写触发器;

5.编写实现业务逻辑的函数、存储过程等;

MySQL数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。由于其体积小、速度快、开放源码等特点,一般中小型网站的开发都选择MySQL作为网站数据库。MySQL最大的缺点是其安全系统,主要是复杂而非标准,同时没有一种储存语言,这是对习惯于企业级数据库的程序员的最大限制。

Oracle数据库由甲骨文公司开发,是一款在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上最流行的关系型数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。Oracle的应用,主要在传统行业的数据化业务中,比如:银行、金融这样的对可用性、健壮性、安全性、实时性要求极高的业务;零售、物流这样对海量数据存储分析要求很高的业务。oracle的缺点就是维护起来比较麻烦一些,对硬件和管理员的素质要求都非常高。

六、服务器

1.服务端基本架构

服务端通常被叫做云端,也就是我们说的云服务器,云服务器是指物理机房托管在第三方,而不用自建机房。每个机房都有应用服务器、数据库服务器、交换机、网络端口和外网光缆构成。

负载均衡服务器是用来处理大规模请求的服务器,通常对于一些访问量比较高的系统来说,负载均衡就显得尤为重要,负载均衡服务器的作用就是将同时进来的大量访问请求根据系统应用服务器的忙碌程度进行动态调度,可以把负载均衡服务器理解成服务端的调度中心,它负责流量的动态分配,根据对应的应用服务器的负载情况,动态分配请求到不同的应用服务器。

2.数据接口及结构

数据接口是指客户端与服务器进行数据传输和交互的数据协议,数据接口是一种数据交换的标准。例如我们通过客户端的登录功能向服务器发起登录的请求时,客户端将用户名和密码通过数据接口经网络传递给服务端,服务端判断处理完成后再将处理结果通过数据接口反馈给客户端,客户端根据服务端返回的结果进行登陆反馈处理,数据接口扮演的是信息传递的角色,根据不同的产品功能,对应的数据接口也会有所不同

3.服务端与客户端的交互模型

客户端请求—服务器获取并解析客户端请求---服务器响应---客户端获取并解析服务器响应,这种模型叫请求响应模型,这是互联网技术产品实现信息交互的一种数据交换模型,通过这个模型主要完成信息的发送、处理和响应。这个模型主要由三个模块组成、客户端、服务端和中间的互联网,在这个模型中还包括了数据的流动。

前端、后端、客户端、数据库、服务器的简单总结相关推荐

  1. 浅谈前端、客户端、服务器、后台、与下位机之间的关系

    一.概述 每次做项目总是会涉及到服务器与下位机之间的通讯,往往会涉及到客户端.服务器.前端.后台.下位机这些概念,对于做电子研发的初级工程师来说,往往会理不清这些概念,所以这篇文章打算简单的介绍下这些 ...

  2. web前端后端的连接:Servlet简单演示

    一.简介 1.项目中我们一般使用IDEA用作后端开发,HBuilderX用作前端开发.要实现前后端的连接,需要通过Servlet来实现. 2.什么是servlet呢? Servlet(Server A ...

  3. 夺宝答题王小程序完整源码(含前端/后端以及数据库脚本)

    [实例简介] 环境要求: centos php7.0 mysql5.6,t'hinkphp实现的后端 域名配置好https 建议使用宝塔环境一键配置 将后台代码上传至网站根目录 修改数据库配置文件\d ...

  4. php答题抽奖源码,夺宝答题王小程序完整源码(含前端/后端以及数据库脚本)

    [实例简介] 环境要求: centos php7.0 mysql5.6,t'hinkphp实现的后端 域名配置好https 建议使用宝塔环境一键配置 将后台代码上传至网站根目录 修改数据库配置文件\d ...

  5. Windows网络编程入门:简单的客户端和服务器通信程序调试

    昨日入手Windows网络编程经络这本书,第一章给了Echo客户端和服务器的简单通信实例程序.从小白到入门目测都是比较苦逼,居然想不到怎么来测试结果.什么同时运行啊.分别编译运行啊乱七八糟的想法就开始 ...

  6. java前段与后端是什么意思_java前端后端分别是指什么?

    详细内容 在介绍java前端后端之前,大家需要简单了解什么是Java?下面我们就给大家详细介绍Java以及Java前端后端的概念,希望对需要的朋友有所帮助! Java是一门面向对象编程语言,不仅吸收了 ...

  7. linux运维-BS模型|前端|后端|数据库都是干嘛的?

    BS模型 最近陷入疯狂的画图中,模拟一个信息管理系统开发的流程,来了解运维和数据库模块的工作内容(没有项目可以做,就自己创造项目啊) 基于目前都是BS模型的web开发,即用浏览器登录系统,而不是下载客 ...

  8. 求职知识整理一(前后端分离,前端模式,数据库知识点:sql,MySQL,Oracle,jdbc)

    目录 今日事: 1.前后端分离(常见的是前端写静态页面,后端套用模板) 2.前端开发中的MVC/MVP/MVVM模式 一.数据库(MySql,Oracle,SQL Server)(基本的数据库操作语句 ...

  9. python后端从数据库请求数据给到前端的具体实现

    先来贴一窜代码让大家理解前端/后端/数据库的工作原理, 首先简要说明:前端向后端请求数据,后端根据前端请求数据的类别分析其需求,并连接到数据库获取相应数据: 来一段简单的实例代码模拟淘宝商城: 前端代 ...

最新文章

  1. python 仪表盘数据显示_跟小白学Python数据分析——绘制仪表盘
  2. 直播 | CVPR 2021论文解读:引入因果结构的解耦表征学习
  3. bean找不到报空指针_为什么C指针可以实现函数间的通信呢?
  4. Java 基础 之 标识符
  5. [NewLife.XCode]数据层缓存(网站性能翻10倍)
  6. e2e 自动化集成测试 架构 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step (四) Q 反回调...
  7. 回味颜宁演讲:“勇敢做独一无二的你”
  8. QT Core | 信号槽03 - 自定义信号与槽
  9. 面向对象 VS 面向过程
  10. [缓存]关于memcached的详细介绍以及用法
  11. 我不是bug神(JVM问题排查)
  12. css img 适配尺寸_img图片自适应布局_HTML5教程_郭隆邦技术博客
  13. [转载] 全本张广泰——第一回 开篇聊闲天 青楼是非多
  14. android-async-http框架之与网络进行数据交互
  15. 侯捷《深入浅出MFC》中“Hello, MFC”如何改写到VS2012中
  16. DIY多快充协议太阳能充电器!----锂电池充电电路
  17. IFIX组态软件WINCC INTOUCH数据库 日志SQL记录,时班日报神器
  18. Linux安装MariaDB
  19. hls视频demo搭建简易服务器模拟运行
  20. 试用期不合格通知单可以签吗?

热门文章

  1. 优步北京B组奖励政策
  2. tf.ones、tf.zeros、tf.ones_like、tf.zeros_like、tf.fill、tf.eye、tf.one_hot、tf.range、tf.linspace函数
  3. 吐血分类整理 Windows 11的170个快捷键
  4. Vue生命周期总结(四个阶段,八个钩子函数)
  5. 我的股票交易成长经历
  6. 图灵的停机问题背后令人着迷的数学(哲学)原理
  7. 修复使用vimplus后,修改终端字体为Droid Sans Mono Nerd Font的时候虽然已经安装了但是找不到的情况
  8. 华为WLAN技术:AC/AP 实验
  9. java 开源商城_让这个Java语言的开源商城系统火起来
  10. C语言初级学习---一个文件调用另一个源文件函数!