后端开发是如何搞定APP开发的--《前端那些事》

简介: 个人技术背景:从业10年,一直做后端相关的开发工作,对JavaScript的基本语法有一定的了解,完成过公司内的运营后台的前端开发工作,使用boostrap来解决窗口适配等问题,对前端知识的掌握停留在jQuery及基本的页面逻辑编写上。近几年对APP开发有浓厚兴趣,想独立将自己的想法通过APP落地实现出来,期间接触过ios开发swift,Android开发,以及一些前端框架phonegap、flutter以及vue,目前通过flutter以及vue搭建出了APP,当前处于发行前期。本篇文章旨在向大家介绍作为一名多年经验的后端开发,是如何一步一步的独立实现APP的开发和搭建前端部分的工作的。

讨论范围


2010年以前,前端开发一般指的是网站端将页面翻译成JavaScript,并对多种浏览器比如IE、Firefox、Opera、世界之窗等做兼容;随着Chrome的崛起以及移动互联网的普及,跨端的前端框架如雨后春笋般出现,从Facebook的reactjs到Google的flutter(立意点是一处写多端用提升效率降低成本,并尽可能减小相比于原生开发语言带来的性能影响),再到各个应用程序的小程序,近十年,相比于其他的开发者,前端开发者的世界可谓是轰轰烈烈。


所以当下的前端,它不再仅仅指代以往的前端开发(将页面通过JavaScript实现出来),它还包括终端开发(包括Android、IOS以及其他的一些端)、跨端开发、小程序开发、视觉UI设计等。标准的软件开发流程大致如下:


用户调研  ->  产品原型  ->  视觉设计  ->  前端开发  ->  后端开发  ->  测试上线


可以看到,从用户调研完成开始到后端开发之前,其实都是前端开发的范畴,有些公司会分类为前台、中台、后台。


而本文,我们讨论的范围是作为一名后端开发,如何独立实现APP的开发上线。

技术选型

当前,APP主要分为Android和IOS两个系统平台,其中Android开发语言为Kotlin、Java(Google在2019正式宣布kotlin代替Java成为Android开发的首选语言),IOS的开发语言为Swift、Objective-C。


一个人同时掌握多套终端开发技能是不难的,然而作为一名有追求的程序员,最大的特质是懒,即同样的逻辑是不太愿意重复实现的,另外也比较浪费时间;另外,IOS开发需要向苹果公司购买证书,个人开发者每年99美元,我们只是先自己折腾一下,短期内考虑只推出Android平台的app就好。


基于以上,我决定选择一种跨端的框架来实现。


上手试试


开发工具:

Android studio  Google官方提供的IDE,我这里用于跑Android模拟器

HBuilderX         UNIAPP官方提供的IDE,用于开发app页面逻辑


uniapp项目常规的目录结构及解释如下:(注:App.vue和main.js的注释写反了)

image.png


以简单的用户信息页面为例,模板代码如下:

<template><viewclass="user-info-root"><viewclass="user-info-item user-info-item-avatar"><viewclass="user-info-item-title">        头像
</view><viewclass="user-info-item-value"><imageclass="user-info-item-value-avatar":src="userInfo.avatarUrl"mode="aspectFill"></image></view><!-- <view class="user-info-item-go-to"></view> --></view><viewclass="user-info-item"@click="goToUpdateName"><viewclass="user-info-item-title">        昵称
</view><viewclass="user-info-item-value">        {{userInfo.nick}}
</view><viewclass="user-info-item-go-to"></view></view><viewclass="user-info-item"@click="goToUpdateGender"><viewclass="user-info-item-title">        性别
</view><viewclass="user-info-item-value">        {{userInfo.gender === 1 ? '男' : '女'}}
</view><viewclass="user-info-item-go-to"></view></view><navigatorclass="user-info-item"url="/pages/cityList/cityList"><viewclass="user-info-item-title">        地区
</view><viewclass="user-info-item-value">        {{userInfo.province}} {{userInfo.city}}
</view><viewclass="user-info-item-go-to"></view></navigator><viewclass="user-info-item"@click="goToUpdateDescription"><viewclass="user-info-item-title">        个人描述
</view><viewclass="user-info-item-value">        {{userInfo.description}}
</view><viewclass="user-info-item-go-to"></view></view></view></template>

获取数据的逻辑如下:

asyncloadUserInfo() {
uni.showLoading({
title: '数据加载中...'  });
let [userInfoData] =awaithttpUtils.postJson("/api/user/info", {});
this.userInfo=userInfoData.data;
uni.hideLoading();
},

虚拟机展示效果:

image.png


涉及后端的表结构设计、HTTP接口的提供这里就不展开了。

至此,在模拟器上我们可以顺利的创建页面、编写逻辑、渲染页面了。


经过两个多月的开发,APP已基本成型,页面端向大家分享一下:

image.pngimage.pngimage.png


总结

随着移动互联网的发展,前端领域发展的尤为迅速,当下我们可以借助许多成熟的跨端框架,通过自己擅长的开发方式进行多端应用的实现,提升效率的同时,也让更多个体开发者可以方便快捷的实现自己的想法,在此向这些开源的跨端框架致敬。


通过两个多月的开发,整体体验下来对框架由陌生到熟悉,中间遇到了非常多的坑,也走到了几个死胡同,学到很多,而这些不亲身实践是很难想到的和体会到的。


而这两个多月里,整体的创意设计、架构设计、APP逻辑开发、后端开发的占用实践比例大致是1:1:3:1,相信如果重头再来开发的话,APP逻辑开发的耗时占比将于后端开发差不多。


感谢跨端框架,助力我实现APP自由。


过程中如果有更多需要交流的,欢迎留言评论或者发邮件给我,我的邮箱swmabby@gmail.com

目录
相关文章
|
3天前
|
开发框架 前端开发 JavaScript
uniapp开发鸿蒙,是前端新出路吗?
相信不少前端从业者一听uniapp支持开发鸿蒙Next后非常振奋。猫林老师作为7年前端er也是非常激动,第一时间体验了下。在这里也给大家分享一下我的看法
32 17
|
4天前
|
JSON 缓存 前端开发
HarmonyOS NEXT 5.0鸿蒙开发一套影院APP(附带源码)
本项目基于HarmonyOS NEXT 5.0开发了一款影院应用程序,主要实现了电影和影院信息的展示功能。应用包括首页、电影列表、影院列表等模块。首页包含轮播图与正在热映及即将上映的电影切换显示;电影列表模块通过API获取电影数据并以网格形式展示,用户可以查看电影详情;影院列表则允许用户选择城市后查看对应影院信息,并支持城市选择弹窗。此外,项目中还集成了Axios用于网络请求,并进行了二次封装以简化接口调用流程,同时添加了请求和响应拦截器来处理通用逻辑。整体代码结构清晰,使用了组件化开发方式,便于维护和扩展。 该简介概括了提供的内容,但请注意实际开发中还需考虑UI优化、性能提升等方面的工作。
45 11
|
1天前
|
前端开发 数据库 UED
uniapp开发,前后端分离的陪玩系统优势,陪玩app功能特点,线上聊天线下陪玩,只要4800
前后端分离的陪玩系统将前端(用户界面)和后端(服务器逻辑)分开开发,前者负责页面渲染与用户交互,后者处理数据并提供接口。该架构提高开发效率、优化用户体验、增强可扩展性和稳定性,降低维护成本,提升安全性。玩家可发布陪玩需求,陪玩人员发布服务信息,支持在线聊天、预约及线下陪玩功能,满足多样化需求。[演示链接](https://www.51duoke.cn/games/?id=7)
|
7天前
|
供应链 搜索推荐 API
1688APP原数据API接口的开发、应用与收益(一篇文章全明白)
1688作为全球知名的B2B电商平台,通过开放的原数据API接口,为开发者提供了丰富的数据资源,涵盖商品信息、交易数据、店铺信息、物流信息和用户信息等。本文将深入探讨1688 APP原数据API接口的开发、应用及其带来的商业收益,包括提升流量、优化库存管理、增强用户体验等方面。
44 6
|
8天前
|
机器学习/深度学习 前端开发 算法
婚恋交友系统平台 相亲交友平台系统 婚恋交友系统APP 婚恋系统源码 婚恋交友平台开发流程 婚恋交友系统架构设计 婚恋交友系统前端/后端开发 婚恋交友系统匹配推荐算法优化
婚恋交友系统平台通过线上互动帮助单身男女找到合适伴侣,提供用户注册、个人资料填写、匹配推荐、实时聊天、社区互动等功能。开发流程包括需求分析、技术选型、系统架构设计、功能实现、测试优化和上线运维。匹配推荐算法优化是核心,通过用户行为数据分析和机器学习提高匹配准确性。
37 3
|
6天前
|
前端开发 搜索推荐 安全
陪玩系统架构设计陪玩系统前后端开发,陪玩前端设计是如何让人眼前一亮的?
陪玩系统的架构设计、前后端开发及前端设计是构建吸引用户、功能完善的平台关键。架构需考虑用户需求、技术选型、安全性等,确保稳定性和扩展性。前端可选用React、Vue或Uniapp,后端用Spring Boot或Django,数据库结合MySQL和MongoDB。功能涵盖用户管理、陪玩者管理、订单处理、智能匹配与通讯。安全性方面采用SSL加密和定期漏洞扫描。前端设计注重美观、易用及个性化推荐,提升用户体验和平台粘性。
32 0
|
10天前
|
人工智能 小程序 数据处理
uni-app开发AI康复锻炼小程序,帮助肢体受伤患者康复!
近期,多家康复机构咨询AI运动识别插件是否适用于肢力运动受限患者的康复锻炼。本文介绍该插件在康复锻炼中的应用场景,包括康复运动指导、运动记录、恢复程度记录及过程监测。插件集成了人体检测、姿态识别等功能,支持微信小程序平台,使用便捷,安全可靠,帮助康复治疗更加高效精准。
|
17天前
|
存储 缓存 负载均衡
后端开发中的性能优化策略
本文将探讨几种常见的后端性能优化策略,包括代码层面的优化、数据库查询优化、缓存机制的应用以及负载均衡的实现。通过这些方法,开发者可以显著提升系统的响应速度和处理能力,从而提供更好的用户体验。
44 4
|
23天前
|
存储 前端开发 Java
深入理解后端开发:从基础到高级
本文将带你走进后端开发的神秘世界,从基础概念到高级应用,一步步揭示后端开发的全貌。我们将通过代码示例,让你更好地理解和掌握后端开发的核心技能。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的信息和启示。
|
26天前
|
存储 缓存 监控
后端开发中的缓存机制:深度解析与最佳实践####
本文深入探讨了后端开发中不可或缺的一环——缓存机制,旨在为读者提供一份详尽的指南,涵盖缓存的基本原理、常见类型(如内存缓存、磁盘缓存、分布式缓存等)、主流技术选型(Redis、Memcached、Ehcache等),以及在实际项目中如何根据业务需求设计并实施高效的缓存策略。不同于常规摘要的概述性质,本摘要直接点明文章将围绕“深度解析”与“最佳实践”两大核心展开,既适合初学者构建基础认知框架,也为有经验的开发者提供优化建议与实战技巧。 ####

热门文章

最新文章